Adobe-OEM (Second-Brain)
Vault: second_brain Path: Adobe-OEM
index.md
Adobe OEM — Project Index
Current state (compiled truth — 2026-07-07)
What: Weekly Adobe OEM usage reporting for the Algolia↔Adobe OEM contract (Q-47553). Three surfaces: (1) a data pipeline (CSV → JSON), (2) a Next.js dashboard on Vercel, and (3) an HTML email with Gmail-draft automation. Analytics live in a Hex report ("Adobe OEM Usage") owned by colleague Michael Pankonien; Arijit edits it via the browser.
Why: Give Adobe (Piyush Singhal, Siddharth Sahni) and Algolia leadership (manager Piyush Patel) a trustworthy weekly view of search/records/apps consumption vs contract quota, and flag over-consumption early. Current headline: usage is pacing well over plan and the driver is the Test/Staging parent app — essentially one app, HZ9GMWFEDD / cm-p152603-e343265 (algoliastage@adobe.com), ≈40.3M of ≈41.6M staging term search.
Repo: ~/Dropbox/AI-Development/Adobe report/adobe-oem-dashboard/ (git, branch main). Dashboard live at oem-usage-dashboard.vercel.app.
Hex report: project Adobe-OEM-Usage-7DRNx1Y3TVEa4DKwNpXZaf, workspace ec8d7adc-d435-47ec-841b-ff2cff6432a3. Published app: /app/Adobe-OEM-Usage-7DRNx1Y3TVEa4DKwNpXZaf/latest. Refreshes weekly (Mondays, ~00:00 Paris).
Contract (Q-47553): Term Feb 2026 – Jan 2027. Quotas: 75M search / 50M records / 1,500 apps. Prod parent EX9JOVML7S; Staging parent J50O6J0MJP.
Billing basis (email/report): search = combined (prod+staging) term-to-date; records = MAX-in-month; apps = prod-only. Term-to-date combined search ≈ 61.5M (prod 19.87M + staging 41.65M) at 2026-07-06.
Latest change (2026-07-07) — Hex child-app detail, LIVE
On the Hex Month-over-Month Usage tab there are now two auto-updating tables:
- Production child apps (SQL 146, parent EX9JOVML7S) — 1,727 apps, top GTH4AUT0Y6 = 6,447,429.
- Staging child apps (SQL 148, parent J50O6J0MJP) — 144 apps, top HZ9GMWFEDD = 40,257,032.
Each has app_id + a downloadable CSV. Both are no-input dataframe (DuckDB) queries over the report's materialised stage_prod_adobe_child_apps, so they refresh every weekly run like every other table. The standalone "App Detail (CSV)" tab was deleted. Local source of truth: repo scripts/hex-child-app-detail.sql.
Hard-won Hex lessons (see memory note hex-published-input-binding)
- An interactive dropdown feeding one cell via
{{ }}does NOT bind on Hex's published app-run (proven 4 ways incl. rename +is definedguard) — works on-demand, publishes with errors. Use no-input tables for weekly-published cells. - Assign a cell to an app tab with the per-cell "ADD TO TABS" panel icon (cell top-right toolbar), NOT the "…" menu's "Add to section" (that's notebook grouping). Deleting a tab does not delete its cells.
Key paths
| Artifact | Path |
|---|---|
| Resume state | repo: SESSION.md |
| Pipeline | repo: scripts/update.sh (consolidate → push → draft) |
| Email renderer | repo: scripts/render-email.js |
| Data | repo: data/adobe_oem_consolidated.json |
| Dashboard | repo: src/components/Dashboard.tsx |
| Hex child-app SQL (two tables) | repo: scripts/hex-child-app-detail.sql |
| Hex critique for Michael | repo: docs/hex-app-review-for-michael.md |
| Staging over-consumption email (draft) | repo: scripts/draft-staging-note.js |
Timeline (append-only, cited)
2026-07-07 — Hex child-app detail shipped; project wiki initialised
- Rebuilt the child-app detail as two auto-updating tables (Production + Staging, each with
app_id+ CSV) on the Month-over-Month Usage tab; deleted the extra "App Detail (CSV)" tab. Published and verified live on/app/…/latest. Source: this session (persist 2026-07-07);repo scripts/hex-child-app-detail.sql; memoryhex-published-input-binding. - Established the two Hex mechanics above (dropdown-won't-bind-on-publish; ADD-TO-TABS for tab assignment).
- Earlier same session: hid the R&D Brief dashboard page; added a prod-vs-staging search-consumption stacked bar chart with always-on value labels; published a "Cumulative Search Requests: Production vs Staging" line chart on the Hex Month-over-Month tab; corrected email basis to combined term-relative; created weekly Gmail draft; drafted (saved, not sent) a staging-over-consumption email to Adobe. Source: session log + memory
project-state,feedback-email-basis.