openvibers/openvibe.tools Commits
Plan T8, groundwork T8.md READY NOW items for… (#8)
Changes
@@@ -11,7 +11,7 @@let currentTool = null; // active tool IDlet uploadedFile = null; // File objectlet uploadedFiles = []; // merge: the files in the order they are joined-- let resultId = null; // retention ID from /api/process++ let resultId = null; // retention ID from POST /api/v1/tools/:id/run/* ---------- DOM refs ---------- */const $ = (sel) => document.querySelector(sel);@@@ -42,6 +42,9 @@ MEDIA_PUBLIC_URL=https://openvibe.media#TOOLS_LIMITS_MINUTE=120#TOOLS_LIMITS_HOUR=3000++# The shared guard's mode (apps/_shared/guard/index.js): today's default is 'report' (log only); T8 step 2 flips this to enforce.++#TOOLS_GUARD=enforce++# ── Satellites: jobs (img, audio, docs read the same tools.env) ──#TOOLS_JOBS_CONCURRENCY=2#TOOLS_JOBS_CONCURRENCY_AUDIO=1@@@ -10,8 +10,6 @@* - Dollar Tree ($1.25 fixed price model)* - Grocery Outlet (discount pricing data)* - Fred Meyer / Kroger (API + built-in pricing)-- *-- * Nutritional data from USDA FoodData Central API*/const axios = require('axios');@@@ -19,6 +17,7 @@ const cheerio = require('cheerio');const { haversine } = require('./utils');// ─── Store Definitions ─────────────────────────────────────────────++// searchUrl/storeFinderUrl (fredmeyer, safeway, dollartree, groceryoutlet) and fredmeyer's krogerApiBase are link metadata shown to users, not request hosts — the egress ALLOW inventory needs no entry for them (walmart is scraped, so its URLs are real hosts).const STORES = {walmart: {name: 'Walmart',
@@ -11,7 +11,7 @@
@@ -11,7 +11,7 @@
let currentTool = null; // active tool ID
let currentTool = null; // active tool ID
let uploadedFile = null; // File object
let uploadedFile = null; // File object
let uploadedFiles = []; // merge: the files in the order they are joined
let uploadedFiles = []; // merge: the files in the order they are joined
- let resultId = null; // retention ID from /api/process
+ let resultId = null; // retention ID from POST /api/v1/tools/:id/run
/* ---------- DOM refs ---------- */
/* ---------- DOM refs ---------- */
const $ = (sel) => document.querySelector(sel);
const $ = (sel) => document.querySelector(sel);
@@ -42,6 +42,9 @@ MEDIA_PUBLIC_URL=https://openvibe.media
@@ -42,6 +42,9 @@ MEDIA_PUBLIC_URL=https://openvibe.media
#TOOLS_LIMITS_MINUTE=120
#TOOLS_LIMITS_MINUTE=120
#TOOLS_LIMITS_HOUR=3000
#TOOLS_LIMITS_HOUR=3000
+# The shared guard's mode (apps/_shared/guard/index.js): today's default is 'report' (log only); T8 step 2 flips this to enforce.
+#TOOLS_GUARD=enforce
+
# ── Satellites: jobs (img, audio, docs read the same tools.env) ──
# ── Satellites: jobs (img, audio, docs read the same tools.env) ──
#TOOLS_JOBS_CONCURRENCY=2
#TOOLS_JOBS_CONCURRENCY=2
#TOOLS_JOBS_CONCURRENCY_AUDIO=1
#TOOLS_JOBS_CONCURRENCY_AUDIO=1
@@ -10,8 +10,6 @@
@@ -10,8 +10,6 @@
* - Dollar Tree ($1.25 fixed price model)
* - Dollar Tree ($1.25 fixed price model)
* - Grocery Outlet (discount pricing data)
* - Grocery Outlet (discount pricing data)
* - Fred Meyer / Kroger (API + built-in pricing)
* - Fred Meyer / Kroger (API + built-in pricing)
- *
- * Nutritional data from USDA FoodData Central API
*/
*/
const axios = require('axios');
const axios = require('axios');
@@ -19,6 +17,7 @@ const cheerio = require('cheerio');
@@ -19,6 +17,7 @@ const cheerio = require('cheerio');
const { haversine } = require('./utils');
const { haversine } = require('./utils');
// ─── Store Definitions ─────────────────────────────────────────────
// ─── Store Definitions ─────────────────────────────────────────────
+// searchUrl/storeFinderUrl (fredmeyer, safeway, dollartree, groceryoutlet) and fredmeyer's krogerApiBase are link metadata shown to users, not request hosts — the egress ALLOW inventory needs no entry for them (walmart is scraped, so its URLs are real hosts).
const STORES = {
const STORES = {
walmart: {
walmart: {
name: 'Walmart',
name: 'Walmart',