The App Loads
Home and Billing opened without login. John Deere’s directory and User Notifications text loaded; Halliburton appears as a workbook choice.
Read-only browser checks. No new translation, sheet edit or deployment.
Open ForgeLessons ↗A standalone lesson-authoring and localization app. The workflow has moved forward; a few recovery and content-quality gaps still need attention.
Home and Billing opened without login. John Deere’s directory and User Notifications text loaded; Halliburton appears as a workbook choice.
Read-only browser checks. No new translation, sheet edit or deployment.
Open ForgeLessons ↗Vercel-hosted jobs completed after the browser closed in the recorded release proof. The grid shows all languages, inline editing and up to 50 rows.
Worker release evidence ↗Adam asked to keep all ForgeLessons work—including troubleshooting—in this channel. Miguel agreed. Related history is now consolidated into this context.
Channel-home decision ↗Superseded: monorepo extraction-in-progress wording, sign-in-only workflow, browser-must-stay-open execution, and initial missing-Sentry status. Slack’s topic/purpose still contain the old monorepo wording; they were not changed.
A source-linked conceptual diagram of the reported architecture—not a fresh infrastructure audit.
Select workbook, lesson and languages. Start Redo once; display progress and Stop.
Vercel Queues drives the job independently of the browser; work is bounded and recoverable.
OpenRouter / Luna is the recorded provider choice. Validate language, markup and protected content.
Save through the API, verify cells, then record History. Sheets remains authoritative for Unity text.
For English VO preparation, exclude parenthetical text and pronounce DEF as “def.” Do not rewrite visible English or claim a pronunciation prediction was audio-tested.
Latest narration correction ↗English, keys, formulas, markup and reviewed work remain protected. Uncertain writes require reconciliation; zero verified saves does not prove nothing reached Sheets.
General UI incident ↗Google Sheets remains the source of truth; GitHub → Vercel replaces the monorepo duplicate.
Meeting and delivery thread ↗Notes, images, authoring controls, no-login access, OpenRouter, refined UI and Sentry were reported delivered.
Sentry release ↗Hosted-worker proof plus all-language grid and inline editing shipped.
Hosted-worker proof ↗Simpler Redo, quality checks, caps and capitalization landed. General UI timeout recovery remains unfinished.
Billing evidence ↗Target cells only, as reported in the exact-change audit. This is a repair-count graph—not a translation-quality score.
English: zero reported changes. Three non-capitalization issues were left untouched: C50, C60 and E70 in 650 P-Tier Hotspot Information.
Exact changes and source audit ↗Earlier “30 → 1 requests” figures were offline planning, not measured end-to-end speed. The newer HTML-heavy request-sizing fix still needs a fresh authorized throughput check.
Captured from the live site on September 17. Screenshots show read-only observations; they do not prove every action or backend safeguard.
Snapshot: 17 September, 16:02:50 UTC. Figures are partial and are not final invoices.
GitHub reported net Actions charges: $0.00.
Bars compare the displayed provider figures, not allocated total ownership cost. Missing shared charges are not zero.
$10/day + $300/calendar month: conservative AI reservations, with UTC resets. The OpenRouter key also reports a $10 daily provider limit.
$4.497 monthly reservations ≠ charges. Do not add reservations to provider usage, receipts or estimates.
Shared Supabase, Sentry, Cloudflare and other unallocated costs keep the all-services total Unknown. GitHub’s separate repository budget does not create an aggregate app cap.
Scope of the released controls ↗Latest reviewed run: 102 uncertain cells, six pending. Smaller requests were released; a new completed translation run was not. Inspect retained output and actual cells before a bounded rerun. Incident ↗
210P_GrabJoysticks appears at A343 and A401. The duplicate blocked loading in the reported incident. Establish intended identities; do not silently rename keys. Duplicate-key report ↗
Review the newly observed User Notifications candidates and the three untouched hotspot cells. Green/filled status is not a bilingual quality review. Excluded hotspot cells ↗
Miguel’s latest rule: never touch English. Live help copy still advertises deliberate editing of any cell. Confirm enforcement safely; do not write real English to test it. Controlling requirement ↗
Recheck Halliburton language columns, automatic workbook discovery, formula-heavy add/reorder and live ForgeBuild/ForgeBoard registration before claiming completion. Earlier blockers may be stale; this refresh did not retest them.
Recommended routing: Miguel for intended lesson content; app maintainer with Adam for recovery, policy and hosting decisions. These are not new assignments. No paid rerun or repair is authorized by this report.
The same curated documents saved under /Users/forgebot/forgeapps/channels/forgelessons/. Expand any section for decisions, tasks, people, operating rules and source links.
Last reviewed: 2026-09-17.
ForgeLessons is a standalone lesson-authoring/localization app at https://lessons.forgefx.dev, sourced from forgefx/forgelessons on main. #forgelessons (C0C0NLUA1F0) is now the agreed home for all related development and troubleshooting; relevant history from #miguel_forgebot has been incorporated. Old monorepo, login-only and browser-must-stay-open guidance is superseded.
Current read-only browser observation: v2026.09.16.5, John Deere's 45 tabs, two workbook choices, working Home and Billing pages. Reported architecture: Vercel hosted queue workers, Supabase durable jobs/history/notes, Google Sheets authoritative strings, OpenRouter/Luna translations. Billing exposes $10/day and $300/month AI reservation limits; all-services spend is still Unknown.
Keep English untouched. Preserve formulas/markup/keys, match label capitalization, and test only in Playground. Latest open work: General UI timed-out translations still stopped after the request-sizing fix; Item Inspection duplicate keys; outstanding target-language review candidates; English-edit UI/policy mismatch. Existing green dots and successful code releases do not certify linguistic quality or recovery of old jobs.
The visual preview includes the architecture, milestones, sourced repair-count graph, current screenshots, costs and open work. Read STATE.md and TASKS.md for exact evidence boundaries; THREADS.md/SOURCES.md retain provenance.
---
channel: forgelessons
slack_id: C0C0NLUA1F0
visibility: public
last_reviewed: 2026-09-17
access: readable
---
Last reviewed: 2026-09-17. Historical release statements below are Slack-reported, not a rerun of their tests.
Billing snapshot: 2026-09-17T16:02:50.536Z. OpenRouter monthly key usage $0.4841; Vercel project charges $3.0096; GitHub reported net Actions charges $0.00. AI reservations $0.0843 today / $4.497 this month are NOT charges and must not be added to them. All-services total remains Unknown. Provider coverage is partial, delayed, and excludes unallocated shared costs.
New read-only observation: User Notifications row 16 shows French text in pt-BR; row 17 shows Spanish text in pt-BR and fr-CA. These are review candidates, not repaired cells. A green sheet dot is not proof of linguistic correctness.
Halliburton missing-language columns and automatic workbook discovery were older unresolved reports; current state needs a focused check. Live copy still advertises deliberate English/manual edits, which conflicts with Miguel's later blanket no-English-change direction; record this as a policy/UI gap, not proof that enforcement was tested.
Last reviewed: 2026-09-17
Channel: #forgelessons — C0C0NLUA1F0.
- Product goal: begin with lesson localization and spelling/grammar review, then support collaborative authoring, steps, programmer/author notes, field dictation and images. Google Sheets remains authoritative for lesson strings consumed by Unity; Supabase stores workflow records and supplemental content. Origin ↗.
- Standalone forgefx/forgelessons supersedes apps/forgelessons and the earlier ForgeLang proposal. Never treat deleted monorepo app paths as current source.
- Regional targets: Brazilian Portuguese pt-BR, Latin American Spanish es-419, Canadian French fr-CA. Preserve literal source identifiers such as pt/es rather than renaming workbook or Unity keys.
- English is read-only for agent work: Miguel's latest explicit rule is “Do not touch the english column, ever.” Earlier generic manual-editor support does not override this. Report spelling findings without applying them. Rule ↗.
- Preserve keys, formulas, HTML/XML structure, attributes, image IDs, placeholders, units, reviewed locks and newer edits. Localize only visible text. Recognized step-label formulas keep calculations; translate their text literals rather than flattening them.
- Match English Title Case and ALL CAPS in target labels, including slash-separated labels.
- UI should be simple: Redo lesson, visible whole-job progress, Stop; all languages side by side, horizontal scrolling, 50 rows/page, inline editing. Durable jobs remain an implementation detail, not a user-facing batch maze.
- Playground is the designated test tab. Never use real production lessons for mutation QA. Authorization ↗.
- Release discipline: bump the version; tests/typecheck/lint/build; push main; verify Git-triggered Vercel production SHA and rendered version. No direct vercel deploy.
- English voice-over preprocessing is separate from display strings: exclude parenthetical text; pronounce DEF as def, not letters or expansion. Pronunciation suggestions are not audio-tested proof. Correction ↗.
- Provide clickable links and meaningful progress updates; Miguel requested roughly five-minute/milestone updates and explicit blocker notices.
Last reviewed: 2026-09-17. Decisions are explicit human directions; implementation reports are in STATE.md.
- Centralize all ForgeLessons development and troubleshooting in #forgelessons; Adam requested, Miguel agreed. September 17 ↗.
- Use standalone forgefx/forgelessons; delete duplicate monorepo app. September 9 ↗.
- Main-only release workflow with version bump and exact live-version confirmation. September 10 ↗. Historical dev branch existence is not proof of current branch inventory.
- GitHub main → Vercel, never direct deployment commands. Deployment direction ↗.
- Remove personal sign-in/admin gates for the initial internal workflow; Adam explicitly reconfirmed the no-login choice. Decision ↗.
- OpenRouter for API flexibility; use GPT-5.6 Luna after sanity/structured tests. Decision ↗. This is not a subscription-backed web executor.
- Miguel chose Option 1A; Adam approved practical implementation without feature loss or design hacks. Design ↗.
- Adopt browser-independent worker, then multilingual grid; Miguel approved Vercel option. Worker approval ↗.
- Simplify translation UX; hide batch mechanics, retain safety controls. Redo direction ↗.
- Remove daily token cap, but later impose $10/day and $300/calendar-month dollar controls. Billing ↗.
- English must never be changed; preserve target capitalization and dynamic formulas. English rule ↗.
- Narration review excludes parentheses; DEF should be pronounced def. Voice rule ↗.
Last reviewed: 2026-09-17. Suggested owners below are routing recommendations, not new assignments. This context task does not authorize repairs or paid reruns.
Last reviewed: 2026-09-17. IDs resolved from Slack evidence.
- Miguel (U036N1SESP8): product workflow requirements, lesson/translation QA, day-to-day feedback; approved Playground as test surface.
- Adam Kane (U0J1D5G87): architecture, hosting, release, cost and access decisions; requested channel consolidation.
- ForgeBot (U0B9SM7MVB5): implementation, investigation, evidence-backed context maintenance. Bot release messages are reports, not independent proof in this refresh.
- Jon and River: mentioned as future field authors; this does not assign them current delivery tasks.
- Formal ownership/escalation beyond these observed roles remains unconfirmed.
Last reviewed: 2026-09-17. All selected threads were fetched completely, not just first replies.
- Consolidate support here ↗ — current channel-home decision.
- Product origin and requirements ↗ — machine-aware localization and broader authoring goal.
- Word–Sheets–Unity drift ↗ — upstream pain, not proof of a shipped end-to-end VO integration.
- Standalone deployment/access ↗ — deployment issue later resolved; no need to recreate old access troubleshooting.
- Meeting and authoring delivery ↗ — includes final v2026.09.10.1 release after earlier incomplete attempts.
- Provider and model decision ↗ — later OpenRouter/Luna choice supersedes temporary direct-OpenAI Astra configuration.
- Design Option 1A ↗ — approved and refined, mobile user feedback.
- Sentry and footer ↗ — reported real ingestion, replay off.
- Translation architecture and UX ↗ — 139 replies read; hosted-worker, formula, progress, throughput and validation evolution.
- Markup preservation ↗ — existing row verified; that thread ended with stronger reconstruction not yet released. Later reports say HTML protections remain; do not infer exact patch closure without source inspection.
- Billing ↗ — AI hard limits versus unknown aggregate spend.
- Wrong-language recovery ↗ — targeted validation, up to two corrective attempts.
- Capitalization / English / duplicate keys ↗ — completed case repairs; unresolved duplicate-key issue.
- General UI timeout ↗ — sizing fix delivered; failed translation not rerun.
- Narration preprocessing ↗ — latest parentheses/DEF correction controls.
Last reviewed: 2026-09-17.
Last reviewed: 2026-09-17.
1. Read this context and the source thread before acting. Route ForgeLessons troubleshooting to this channel.
2. Resolve new facts against standalone forgefx/forgelessons, not old apps/forgelessons references. For coding/release work load forgelessons-release-policy and inspect live repository guidance.
3. Treat English as read-only; restrict authorized mutation QA to Playground. Inspect formulas and displayed values separately.
4. For stopped translations inspect job/attempt records, retained output, Sheets cells and History before retrying. Zero verified saves does not establish zero writes.
5. Use footer service lights as initial clues, not conclusive diagnosis. Check Sentry and exact errors; green does not prove translation correctness.
6. No silent replay of uncertain paid requests. New wrong-language corrective attempts are bounded and budgeted; old uncertain jobs require reconciliation.
7. Track AI reservations separately from charges and shared-service unknowns; retain UTC budget semantics.
8. Refresh with channels/scripts/refresh-channel-context.ts for scoped bounded evidence. Active agent performs semantic curation; extend important truncated threads to completion.
9. Preserve evidence in gitignored channels/_reports/. Update stable memory, decisions and temporary state separately; summarize last. Never publish raw Slack packets or secrets.
10. A preview is a dated review snapshot, not a live dashboard. Verify deployed marker, desktop/mobile rendering, images and crawler metadata before sharing.
Coverage: 24 top-level messages from #forgelessons and 100 recent messages from #miguel_forgebot; 26 selected threads read completely. Older Miguel-channel history exists. Raw Slack packets and credential attachments are not published.
Standalone source ↗ · Meetings ↗ · Historical walkthrough ↗ · Historical QA video ↗
The QA video is a historical three-take recording with disclosed gaps, not a continuous long-running translation. This report used Slack meeting summaries, not a new Fireflies transcript review.