בס״ד

CURRENTSTATE — the operational spine

docs/CURRENT_STATE.md · last changed (pre-VM history) · rendered from GitHub master

CURRENT_STATE — the operational spine

⚠️ REFERENCE ONLY — NOT the system of record (marked 2026-06-01). This file's last real update was 2026-05-19 (Session 36) — it is 11+ days stale and predates Sessions 39–41. docs/CONTEXT.md is canonical for current state. Read this only for historical Session-36 context; do not act on its statuses without checking CONTEXT.md. For MIS specifically, canonical = MIS/docs/MIS_SACS_CALIBRATION_MODULE.md; this file's MIS notes (incl. the L28 PORTFOLIO_OVERLAP line) are stale — GATE-4 contamination is legacy-only, synthV2 is the clean path, equity $22,135 is a snapshot (re-fire before use), production swap NOT approved. (Propagated 2026-06-04 PM, ZW-ENGINE-V9.)

Newest update: 2026-05-19 11:42 PM EDT - Session 36 cont · Cluster A MIS deep-dive briefing shipped

Session 36 cont — Tuesday 2026-05-19 EOD (Cluster A · MIS deep-dive)

Briefing shipped: outputs/2026-05-19_23-42_briefing_mis-deepdive-cluster-a.html — six sections answering Sam's full Cluster A brief.

Top findings (each with file:line evidence in §4 of the briefing):

🔴 P0-1: Sunday 5/17 holdings paste did NOT land — email shows 10 positions, paste was 24. ABBV/COST/KO/UNG/SLV/SCHG/SCHZ/SGOV/BA/ABNB/GOOG/ORCL-Margin all invisible to MIS. META qty wrong (8.25 vs 10.806). AFRM 15 sh stale by 12 days. Sam re-pastes from outputs/2026-05-14_16-55_action_holdings-paste-block-CORRECTED.md to v1 sheet Trade_Log_Imported tab.

🔴 P0-2: FSE dormant — Session 1 infrastructure + Session 3 resolver shipped; no auto-trigger. Email reverts to old Snapshot gate if menu isn't clicked. Fix: 3 lines in misRunFullRefreshNow().

🔴 P0-3: Schwab 24+ days stale — OAuth functions exist, nothing calls them. "5d stale" hardcoded.

🟠 P1-1: REDUCE/EXIT thresholds coded line 5955-5965 but no caller wires them into render. ORCL -11%, AMZN +23%, AFRM +27% all get text warnings only, no state graduation.

🟠 P1-2: Afternoon delta brief not implemented — Power Hour is a full re-render (issue #7).

🟠 P1-3: High Conviction Setups still plaintext (issue #5 unshipped).

🟠 P1-4: VolPenalty=40 still in Reference Rules. Sam locked target=15. Manual sheet fix.

8-vs-36 paradox RESOLVED — intentional readability cap at line 2256. Working as designed.
PORTFOLIO_OVERLAP gate shipped 5/15 — but operates against 10-position view because paste didn't land.
BLUF visual (#3) shipped + Sam-confirmed.

Section 6 of briefing = "MIS → 100% useful" playbook: daily rhythm (25 min) · money mgmt rules · up/choppy/down market protocols · ETF vs single-stock decision tree · momentum bang-for-buck · which 5 tabs to actually read. Sam reads this as the operating manual for what's there today, separate from the upgrade list.

Constraints honored: read-only pass · no MIS master push · no clasp push · no sheet edits · no Gmail sends · no new GitHub issues.

Open loops to next session:
1. Sam re-pastes 24-row holdings block (P0-1) before next trading day.
2. Sam manual VolPenalty=15 in Reference Rules.
3. Next MIS code session: P0-2 → P0-3 → P1-1 → P1-2 in that order. Code-only branch (commit a83cc3c blocks direct push).
4. High Conviction badges (#5) + Trade Progress visual (#6) in next UI session.
5. Backtest tracking (#9) — high-leverage parked, 5099 HIST_MOMENTUM rows ready.


Session 36 — Tuesday 2026-05-19

Emails (3 — Sam reviews/sends)
- Mildred weekly briefing — SENT by Sam (10 hrs/week locked + deliverable checklist + 4-wk review).
- HOA decision → Asher Gulko — SENT by Sam (12-mo plan terms; $5,609.30 down due Fri 5/22).
- Eden #20028 demand letter → Asher — draft 19e410c3623cb9ea (full context; $20K, ~79 days
past due). Older Eden drafts 19e41033a3c9bb29 + 19e40ef6ac2e28c5 to be deleted.

Start Here v0.1 (Personal Command Inbox)
- command-inbox/start-here.gs — action engine: Action_Queue + Action_Events tabs,
routeCommand_, 5 seed cards, tests. Code.js rewritten — secret + sheet ID moved to Script
Properties (INBOX_SECRET, INBOX_SHEET_ID); doPost now calls routeCommand_.
- Both pushed to the live script via clasp. Deployed Web App still serves the OLD version
until Sam deploys a new one. Remaining = Sam's UI checklist in docs/START_HERE_EXECUTION_LAYER.md.
- Old hardcoded webhook secret retired — Sam sets a fresh INBOX_SECRET + updates iOS Shortcut.

Other
- GitHub repo audit → docs/GITHUB_REPO_AUDIT_2026-05-19.md (G1-G4 in SCOPE_BACKLOG).
- BOS-sheets 4 backlog commits backed up to GitHub. command-inbox template files → graveyard.

New pickup - Wednesday 2026-05-13

LevSMS second pass / Ops portal
- Added dedicated deploy packet in levsms-router-apps-script/: DEPLOY_CHECKLIST.md, TWILIO_CONSOLE_CAPTURE.md, and sheet-template/ CSVs for every backend tab.
- Added Ops portal briefing: outputs/2026-05-13_16-20_action_levsms-router-go-live.html.
- Rebuilt outputs/index.html; Ops portal now indexes the LevSMS go-live briefing.
- Apps Script router uses ContentService.MimeType.TEXT for the TwiML body because Google's current Apps Script ContentService.MimeType enum does not include XML. If Twilio rejects due to strict text/xml, move the same logic to Cloudflare Worker or Netlify Function.
- Google Drive native Sheet creation/upload attempt returned 403 Forbidden; reconnect Drive with create/upload scope before asking Codex to create the backend Sheet directly.

LevSMS / Twilio
- Sam reported Twilio is finally connected / OK to work for LevSMS.
- Gmail search in the connected mailbox did not show a clean A2P approval email; current status is Sam-reported from Twilio console until console fields are pasted/screenshot.
- Public site remains https://levsms.com/, source levsms-site/, support support@levsms.com, public number (516) 585-2323, Netlify site ID fe444885-3be5-40f8-bd67-a92904ec7c03.
- No production SMS command router was found in local code outside docs/static site.
- New local router scaffold: levsms-router-apps-script/. It is an Apps Script TwiML inbound router, Sheet-backed, no Twilio secrets needed for first inbound replies.
- Next action: create/choose LevSMS backend Google Sheet, install Code.js, run setupLevSmsSheet(), deploy Web App, paste URL into Twilio Messaging Service inbound webhook, test MENU/HELP/STOP/START/MINYAN.

CM Invoice System
- Local repo CM_Invoice_System is one commit ahead: bb55a88 update invoice customer code format.
- Invoice numbers now use INV-NNN-CUSTCODE; customer code uses first 3 letters of first usable customer word + first 3 letters of next usable word + non-NY state. Example: FAME LAKEWOOD NJ -> INV-002-FAMLAKNJ.
- Live Apps Script push is blocked by Google clasp reauth (invalid_grant / invalid_rapt). Sam needs to run clasp login before I can push the live sheet script.
- GitHub push was not completed because the safety review requires explicit confirmation before pushing private/business docs/code to https://github.com/zee78900/CM_Invoice_System.git.

Last updated: 2026-05-07 · 5:50 PM EDT (Session 28 desktop pickup, Sam driving)

🆕 Session 30 — Friday 2026-05-08 noon (BLUF visual fix shipped + Issues bridge)

Sam's morning critique of MIS Morning Brief (visual issues):
- BLUF reads "SPY up 0.55%, Healthcare weak -0.96%, 8 ADD-state names: PG, PDD, IBIT…" — tickers visually flat next to action labels (ADD vs PDD)
- Game Plan + High Conviction + Trade Actions + Holdings + Trade Progress all have same lack of visual differentiation
- Wanted GitHub Issues approach for tracking specific fixes — agreed, filed today

Shipped (production script 1yBMztL4 clasp pushed ~12:30 PM):
- 🎨 misBuildBLUFHtml_ new function — inline HTML BLUF replaces plain-text BLUF in HTML render path: tickers bold + dark · percentages colored span (green +, red -, bold) · direction arrows ↑↓ · ADD/SETUP-ONLY rendered as colored badges (green/amber pills) · middle-dot separators · 3-line layout
- Plain BLUF text path unchanged (plaintext email still works)
- Verifies on next morning brief auto-fire (Mon 5/12 9:46 AM)

5 GitHub Issues filed in zee78900/MIS:
- #3 — BLUF visual fix (✅ already shipped, awaits Mon verify)
- #4 — Game Plan: bold tickers + action label badges
- #5 — High Conviction Setups: bold tickers + colored % + arrows
- #6 — Trade Actions / Holdings / Trade Progress: same visual treatment
- #7 — Afternoon update concept (separate delta-only brief 2:30 or 3 PM)

MIS_SACS_sandbox (Sam asked what it is):
- Sheet 1HtMOd-UCLcwEPF46UhL1p9p4ElIovvoE8W7xGcJD5BM titled MIS_SACS_sandbox_2026-05-03 (note trailing space)
- Created May 3, last modified May 3 23:19 (one-day sandbox)
- Owner: sam@hookstreetcapital.com
- Contains Macro Context columns + Breakouts/Lean In/Reversals/Caution scoring lists — looks like a one-off SACS scoring experiment from May 3
- NOT actively running anything; no triggers visible from outside; harmless leftover
- Recommendation: archive or delete (not in use). Sam can do this via Drive when convenient.

Other recent sheets confirmed:
- MIS_PRIMARY_2026-05 (1HEmRev) — production V11, modified today 12:06 PM (auto-triggers + manual fires)
- MIS_ARCHIVE_production_2026-05-03 (1cosuFr) — v11.0f Schwab + plaintext creds, modified yesterday
- rebuild mis claude excel build (1bG2pxv) — May 5 sandbox
- MIS_v2_archive_for_backtest_2026-05-03-1_z gemini fixes_v2 (1F31zPca) — May 3 broken from Excel-roundtrip per memory
- All MIS-related; only V11 (1HEmRev) is canonical

MIS toFixed-on-null bug fix (Sam ran TEST_FAST and got TypeError):
- Bug: TypeError: Cannot read properties of null (reading 'toFixed') on misSendPowerHour300_TEST_FAST run after my BLUF + Yahoo + Brent changes
- Root cause: Brent row had sym: '' for primary GoogleFinance, producing odd cell states with downstream null-coercion edges
- Fix 1: skip primary formula write entirely when sym is empty (Brent now goes straight to Yahoo + ETF fallback)
- Fix 2: triple-guard pctSpan/arrow in misBuildBLUFHtml_ — explicit v == null || typeof v !== 'number' before isFinite (global isFinite coerces null→0)
- Fix 3: same triple-guard on htmlMacroPriceStr and htmlMacroDeltaStr
- Pushed to production 1yBMztL4 ~12:55 PM

iPad/iPhone home-screen icon for the Netlify-dropped PWA:
- Sam: when "Add to Home Screen" the icon was generic "H" because no apple-touch-icon meta tag was in the HTML
- Fix: added inline SVG apple-touch-icon (dark blue square, gold "HS", grey "OPS") + apple-mobile-web-app-title "HookStOps" + standalone-app meta
- Updated outputs/pwa-deploy/index.html — Sam re-drags the folder into Netlify (or runs netlify deploy --prod --dir=outputs/pwa-deploy after netlify login), deletes old home-screen icon, re-adds. Next add will show clean dark icon with HS+OPS letters.

Netlify CLI installed (took ~4 min via npm install -g netlify-cli):
- netlify --version confirms 26.0.1 installed
- One-time netlify login from Sam's terminal needed (browser OAuth) before I can deploy directly via CLI
- After Sam logs in once: future deploys via netlify deploy --prod --dir=outputs/pwa-deploy from this session

MIS Deep Review built end-to-end (Sam ask 5/8 ~2:30 PM):
- File: outputs/2026-05-08_14-40_mis-deep-review.html (gitignored, light/dark adaptive)
- Read MIS_PRIMARY_2026-05 sheet end-to-end via Drive MCP at 2:32 PM
- Sections: Market read · Sector tape · Top 10 SACS · Per-ticker verdict · Yesterday's queue vs Sam's execution · System self-assessment · Learning loop · Action list ranked · Risk flags
- Key finding: Sam executed only AFRM (8 sh sold Thu PM at $67.35) from the 10-item Friday queue. PYPL/MRVL/VOO/AVGO/GOOG/AMZN/SCHZ all unchanged. Recommendations still valid Monday with light decay.
- VolPenalty weight 40 is over-rejecting good winners (AVGO +26%, AMZN +29%, MRVL +83% all show REJECTED FinalState). Sam's resume marker target = 15. Open calibration item.
- Live Guard tab is 8d stale (last refresh 4/30). SHOCK_DOWN flags non-actionable.
- Top 10 SACS today: ITA 85.46 · SLV 84.43 · DIS 77.86 · UBER 77.85 · NVDL 76.33 · PM 75.13 · PLD 74.43 · PG 73.92 · BIDU 72.68 · SMCI 72.01

VIX since-open line moved to white-bg stamp row (~2:50 PM push):
- Was inside dark regime header, hit same Outlook iOS auto-invert bug as timestamp
- Now lives in white-bg stamp row alongside timestamp + GF disclaimer
- Color-coded: green if VIX falling >1%, red if rising >1%, slate if flat

MIS afternoon push wave (Sam ran TEST_FAST + Power Hour, found multiple issues):

Bug + fixes shipped to production 1yBMztL4 between 12:30 PM and 1:30 PM:
- toFixed-on-null TypeError → triple-guard in BLUF/macro pulse helpers + skip empty-sym formula write for Brent
- Top header timestamp invisible in Outlook iOS light mode → moved to its own white-bg row below the dark regime header (auto-invert can't kill dark-text on white)
- Macro Pulse units → Gold now shows /oz, WTI/Brent show /bbl, BTC/ETH no unit, ETF fallbacks labeled "(proxy, not spot/oz)" so confusion is visible
- Holdings empty/sparse → misReadHoldingsCleanRows_ now reads from Trade_Log_Imported tab when populated (Sam's broker-reality paste). Falls back to HOLDINGS_CLEAN only if Trade_Log_Imported missing. New helper computes live prices from Tickers tab. All 3 accounts (Fid Margin Z29720600, Fid Cash Z29835692, Schwab 898) now visible.

iOS home-screen icon — now real PNGs (was SVG, iOS rejected silently):
- 4 PNG sizes generated via Pillow: 180×180 (apple-touch-icon), 192, 512, 32
- Dark blue square, gold HS letters, grey OPS subtitle
- index.html updated to reference PNG files
- Sam to redrop pwa-deploy/ folder into Netlify, delete old icon, re-add to home screen

3 new GitHub Issues filed in zee78900/MIS:
- #8 — Holdings: Trade_Log_Imported as source of truth (already shipped, awaits verify)
- #9 — Backtest / recommendation tracking system (PARKED, design first)
- #10 — Sheet-to-bones audit (PARKED, sequenced after current closures)

Issues filed earlier (#3-#7) still active. #3 BLUF visual fix → Sam confirmed today "looked pretty okay, discernible."

Eden Inv #20028 status (mid-day 5/8):
- No inbound on email thread 19e0523e863ded68 since Sam sent Final Notice 9:11 PM Thu
- No WhatsApp reply from Sharona (per Sam's earlier check this morning)
- Deadline tonight EOD. If silence holds, decision is Sam's: stop pinging, take steps available.


🆕 Session 29 close — 2026-05-08 12:10 AM EDT (18+ hour day)

Late-night closes:
- 🔧 Yahoo Finance real-world prices added to MIS Macro Pulse — misFetchYahooQuote_ helper does UrlFetch to query1.finance.yahoo.com/v8/finance/chart/... for BTC/ETH/Gold/WTI/Brent/DXY. Yahoo wins over GoogleFinance. ETF fallback retained as last resort. Pushed to production 1yBMztL4 at 11:45 PM. Brent (BNO ETF fallback) added as new row.
- 🎨 PWA viewer access fixed by Sam ~11:30 PM — Manage Deployments → "Anyone" (no Google account). Verified via curl: anonymous now works. Going forward I won't clasp deploy --deploymentId on the PWA project (resets access setting); only clasp push for code-only changes.
- 📋 PWA viewer file at outputs/2026-05-07_pwa-obligations-view.html — live obligations table, light/dark adaptive, 7/14/30-day filter buttons, raw JSON toggle. Works on desktop. Phone access blocked by Edge mobile caching old file — force refresh OR re-tap from OneDrive.
- 📨 Session close-up Gmail draft in Sam's drafts (subject: [CLAUDE CODE · SESSION 29 CLOSE] Fri May 8 morning view ...). Sam taps Send Friday morning to land it in inbox as morning briefing. Light/dark adaptive HTML.
- 📋 Session close-up HTML at outputs/2026-05-08_00-10_session-close-29.html — full session log, classified open loops, file list, doctrine notes.

Doctrine memory landings (3 new):
- feedback_classifier_first_doctrine.md — 5-status classifier + 7 gate questions before any code
- feedback_done_means_survives_tuesday.md — external boring Definition of Done + per-system acceptance tests
- user_extracting_sam_from_bottleneck.md — long-game = less necessary not less valuable

Friday 5/8 morning sequence (locked):
1. ~7 AM EDT — Claude produces manual morning brief draft, pings Sam, Sam taps Send
2. ~6-9 AM — Sam reads AFRM AH price, adjusts gap response if needed
3. 9:30 AM — Sam fires Friday open queue per outputs/2026-05-08_friday-open-queue.md
4. During day — watch Eden inbound (email + WhatsApp Sharona)
5. EOD Fri — Eden deadline lands; Sam decides next move

Parked tonight (doctrine-aligned, NOT building):
- BOS-side morning brief automation (Apps Script trigger) — after 2-3 days of form lock
- PWA viewer at real URL via HtmlService — Fri or Sat
- Phantom audit script — after morning brief form locks Mon-Fri x5
- v3 light/dark adaptive HTML rewrite — only if Sam color verify fails


🆕 Session 28 desktop pickup — 2026-05-07 5:50 PM EDT

Today's actuals (verified via primary sources, not memory):

iPhone Claude Code session 28 deliverables (parallel session):
- audits/2026-05-07-power-hour-deep-analysis.html — v3 mobile dark-mode HTML
- audits/SESSION_28_HANDOFF_2026-05-07.md — full session log
- 4 Gmail drafts: Deep Market Analysis v1/v2/v3 + POST-CLOSE v4 (light/dark adaptive pattern)
- PR #2 OPEN as DRAFT in zee78900/MIS — branch claude/market-analysis-portfolio-review-bQTvu

Friday 5/8 open queue (from Session 28 handoff):
1. AFRM (held 7 sh remaining): conditional gap plan post-earnings
2. COST: TRIM 25% above $1010 (broke trigger at close)
3. PYPL: EXIT FULL (29 sh, -34%, override engine HOLD)
4. MRVL: EXIT FULL (1 sh, +74%, Live Guard BLOCKED)
5. VOO: TRIM 50%
6. SCHZ: EXIT (near target redeploy)
7. SLV: ADD limit above $71.50
8. DIS: ADD limit above $108
9. UBER: watch for $80 reclaim
10. GOOG: CLOSE ($32 useless pos)

Eden Inv #20028 — two-channel push tonight (5/7 evening):
- 📧 Email "Invoice #20028 — Final Notice" sent 9:11 PM EDT · NEW thread 19e0523e863ded68 · To: Abe + Eli · Cc: Huvie + Sharona + Jessica + Mildred + Chanie · Deadline: EOD Fri 5/8. Vulnerable register ("I rallied for and was part of the video for the mikvah... I'll be honest — it's been hurtful"). Two-paragraph structural pivot (cold facts to Abe, personal weight directly to Eli). Drops "take the steps available to me" closer; subject line "Final Notice" carries the weight.
- 💬 WhatsApp to Sharona (Eli's wife, also cc'd on the email) sent this evening (outside Gmail MCP visibility) · "Good evening. It's been two weeks. I'm hurt." · Calls back to Sharona's April 24 reply ("I'll review all the things you sent, and I'm speaking with my husband") — two weeks of silence after that promise. Channel choice: Huvie has been silent across all channels; Sharona is connected to Eli AND is on the email cc — personal pressure routes through her to Eli. Different from a Huvie-direct push (Huvie has been the bottleneck the whole time).
- Both channels watching for inbound Friday: wire confirm OR written dispute (email path) · any Huvie/Eli reply at all (personal path).

Open security items (audit done 2026-05-07):
- ✅ PWA API key — ROTATED + DEPLOYED at 5:47 PM EDT
- ⏳ Schwab/Finnhub creds in MIS V11 Control tab (plaintext) — sheet-only exposure, lower risk than git, but rotate per Schwab credential rotation open loop
- ⏳ 02_apps_script_claude_router.gs workspace-root file has life-context (STR addresses, Chanie name + town, partner names) — only visible to GitHub-authenticated Sam; mitigation = 2FA + strong password
- ✅ Public repos confirmed clean (no Chanie/9312/Huvie/Mildred/Eden mentions)
- ✅ outputs/ + .claude/ properly gitignored


🆕 Session 26 update — 2026-05-06

New facts locked today (data + decisions):

Codex parallel session deliverables (today):
- 14 launch-packet docs updated, all aligned to LevSMS branding
- New STATUS_2026-05-06_LEVSMS.md tracking doc
- DELAWARE_CERTIFICATE_OF_FORMATION_DRAFT.md + EIN_APPLICATION_WORKSHEET.md + OPERATING_AGREEMENT_SINGLE_MEMBER_DRAFT.md ready for Sam final-click
- TWILIO_NEW_CAMPAIGN_FINAL_FIELDS.md has copy-paste-ready fields for Twilio resubmission

Workspace deliverables (today):
- outputs/2026-05-06_15-40_command-center_session-26.html — interactive 13-section command center for Sam to read on iPad mini
- docs/obligations-v3/ — new canonical Obligations schema (CSV + 6-tab architecture proposal)
- docs/workflow/WORKFLOW_ARCHITECTURE.md — 4-device + cadence + Mildred boundary map
- MIS/data/Trade_Planner_Replacement.csv — 13 real holdings ready to paste into V11
- MIS/docs/HOLDINGS_FIX_PASTE_INSTRUCTIONS.md — 4 conditions before re-enabling MIS triggers
- HS_SRVC/MIS_Genesis_Context.md + SACS_ZScore_Analysis.md — converted from .docx (the 8 SACS bugs explained)

Open loops at session 26 close (full inventory by area):

🔴 NOW (Sam-only, blocking):
- Schwab + Finnhub credential rotation (15 min, runbook in HTML §10)
- HOA Master board run y/n (May 14 deadline = 8 days)
- 3 Twilio voice batches (~3 min) — unblocks Codex resubmission
- Update Twilio brand LEVTEXT → LEVSMS in Twilio console
- PYPL/COST/VOO/SCHZ/KO/AVGO confirm real or phantom

🟠 THIS WEEK:
- Email Huvie tomorrow morning (decision: email vs call)
- Eden Inv #20028 ($20K) — Abe meeting Thu May 7
- Forward OVH receipts to Mildred (Sam committed in AOB)
- Mildred resends Smart Devices List link → Sam passes to "the guy"
- Alex onsite Mon May 11 (both 9312 + 9332)
- Yankie Twillory call Sun May 10 — 3 voice-note questions prep before
- Call US Bank about Bus 0049 19.49% APR — promo restoration?
- May expense coverage given no May STR bookings

🟣 DECIDE (sitting):
- MIS Option A/B/C (open 6+ days now)
- v2 Control Panel lift into v1 — when migrating to Obligations v3
- iPad mini purchase
- PWA deploy timing
- Backport Excel rebuild bug fixes to V11 (greenlight?)
- 2 unmerged GitHub branches (claude/zw-system-audit + claude/organize-email-folders)

🟢 LATER:
- 5 missing card balances (Rocket Money CSV import)
- hookstreetcapital.com advisory one-pager
- Family money dashboard (Stam HTMLs visual template)
- Tax organizer 2025 prep (Passover Ventures $9,750 blocking)
- Wife GEICO car situation
- Israel summer trip (July + Aug) flights + lodging
- Doctor appointment for Sam
- Amazon return for Libby

Eden Gardens — open question Sam raised (5/6 close):
Sam mentioned moving "a lot of Eden Gardens stuff as stale" and asked about the sheet/formulas state. I have not audited eden-gardens-os/ repo or the Eden Operating OS sheet this session. Honest answer: I don't know if the Eden tracker is consistent with current reality. Next session task: quick audit of eden-gardens-os/ files + Eden Operating OS sheet to surface what's stale, what's current, and whether the formulas still make sense given Inv #20028 still outstanding + engagement effectively concluded April 7.

Memory rules reinforced today:
- Sam's drafting style: don't soft-commit · flag missing artifacts · leave channel decisions open · no filler closers
- v1 obligations canonical (not v2) — don't get this wrong again
- Newer doesn't equal righter — reconcile contradicting sources before asserting


🌱 BACKBURNER SURFACING RITUAL — proposed system

Sam asked end of Session 26: "have the back burner items appear a way that makes sense... a way to track them or build them."

The problem: backburner items are scattered (SCOPE_BACKLOG.md L1-L29 home items + M-series · CURRENT_STATE LATER section · this file's other sections · drafts in Gmail · Stam HTMLs · iPhone reminders Sam avoids · in his head). They don't get reviewed on a cadence, so they age without progress and one of two things happens: (a) they become urgent unexpectedly, or (b) they fade out without being decided.

Proposed ritual — 4 cadences, ONE source:

SOURCE OF TRUTH:  docs/SCOPE_BACKLOG.md         (already exists, 43+ items)
                  ↓
    ┌─────────────┼─────────────┬─────────────┐
    ▼             ▼             ▼             ▼
SUNDAY        WEEKLY       MONTHLY       SEASONAL
WEEKLY        SURFACE      CULL          UNBLOCK
REVIEW        (per HTML)   (every 30d)   (per quarter)

1. Sunday Weekly Review (existing — sharpen it)

After the Operations Summary email fires Sun ~11:26 AM, run a 10-min ritual:
- Open docs/SCOPE_BACKLOG.md
- Scan all sections (LIVE → SHORT-TERM → MEDIUM → LONG-TERM → TAX)
- Pick 3 items to advance this week (active, with bumpers)
- Pick 1 item to retire (no longer relevant) → archive section
- Mark last_touched: YYYY-MM-DD on what you reviewed

2. Weekly Surface (in the HTML I produce)

Every end-of-session command center HTML gets a 🌱 BACKBURNER SURFACE section near the bottom. It auto-rotates 3 items based on:
- Items not touched in >14 days (staleness)
- Items with explicit unblock_trigger that's now true (e.g., "Orlando trip happened" → unlocks vendor onboarding)
- Items aged > 60 days with no action → flagged for cull decision

You read on iPad → 60 seconds → "act / defer / drop" decision per item → tell me next session → I update.

3. Monthly Cull (every 30 days, ~10 min)

First Sunday of the month, scan SCOPE_BACKLOG for:
- Items > 60 days old with no progress → archive or drop
- Items where context has changed (e.g., property sale OFF — if any items assumed sale ON, retire them)
- Items where "captured by" person/event no longer relevant

4. Seasonal Unblock (every 90 days)

End of quarter: review long-term parked items (the L-series in SCOPE_BACKLOG). Some are home maintenance (L14-L29 — bookshelf, mattresses, sprinkler blowout, screen doors) — those have natural seasonal triggers (spring/summer). Others are major projects (Malca Yenta LLC L1-L6, Mom's Wholesale OS L7) — quarterly review whether the unblock has happened.

Schema — 4 fields each backburner item gets

- item: "Buy iPad mini for review/click workflow"
  category: tools
  captured: 2026-05-06
  last_touched: 2026-05-06
  unblock_trigger: "budget allows" OR "deciding it's worth it"
  staleness: 0d
  decision: pending  # pending | active | dropped | done

This becomes the SCOPE_BACKLOG row format going forward.

Why this works for Sam

To implement (next session): retro-fit existing SCOPE_BACKLOG.md rows with the 4 new fields. Add a "🌱 BACKBURNER SURFACE" section to the HTML template. Pattern locks.


🆕 Session 25 update — 2026-05-05

Closed today:
- ✅ OVH/Camille $1,716 — 3 Zelles sent from 9332 SOMMERSET 2528 (Indig Jan $400 + Stove Feb $916 + Fishman Feb $400). Receipts at STR-Operations/9332-Sommerset/payments-out/2026-05/. Per Friday 5/1 2:30 PM draft, the $1,200 disputed remainder remains open pending OVH documentation. Sam will wait for Camille's response.
- ✅ Mildred → Alex confirmed Mon May 11 for roofing + soffits + faucet at 9312/9332. Mildred scheduled.
- ✅ MIS Holdings reconciled from 4 broker CSVs — 13 real positions across 3 accounts, $19,977 invested. AVGO/COST/VOO/PYPL/SCHZ/KO confirmed phantoms in MIS Trade_Planner. Output: MIS/data/holdings_reconciled.csv + MIS/data/trade_log_imported.csv. See MIS/docs/HOLDINGS_RECONCILIATION.md.
- ✅ ChampionsGate Master HOA PDF filed + 4 deadlines logged → STR-Operations/HOA/ChampionsGate-Master/
- ✅ Living-file consolidation pattern startsoutputs/2026-05-05_session-25.md replaces N chained briefings per session
- ✅ Daily Draft Scanner Apps Script drafted (NOT deployed) → docs/scripts-pending/dailyDraftScanner.js. Closes the Camille-fell-through-cracks pattern (drafts as record but never proactively scanned daily).
- ✅ Dashboard architecture documenteddashboard/README.md. 3-layer plan: CURRENT_STATE.md (this file, Layer 1 truth) + outputs/ (Layer 2 detail) + Astro static site behind Netlify Identity (Layer 3 view). ~3-5 hr build when Sam greenlights. Lee/lee-os.html is UX seed.
- ✅ MASTER_HANDOFF ingested — Sam's strategic context doc reconciled with workspace truth (3 conflicts, 5 confirmations, 7 new items)

Newly added to backlog (5/5):
- 🔴 HOA Master board run — May 14 deadline (9 days). Sam decision pending.
- 🟠 MIS Trade_Planner replacement — paste holdings_reconciled.csv into Sheet next session
- 🟠 MIS render port (Morning + Power Hour) — ~30-60 min next MIS session
- 🟠 Yankie Twillory call Sun May 10 — send 3 voice-note questions before
- 🟠 PYPL/COST/VOO/SCHZ/KO confirm — Sam tells me if pre-Nov-2025 real positions or phantoms to delete

Still open (carry-forward):
- 🔴 MIS Option A/B/C — sitting 5+ days, no decision (bind script to v1 / port v1 → production / leave as-is)
- 🟠 Eden Inv 20028 ($20K) — Abe meeting Thu May 7
- 🟠 Schwab API re-auth — 6d stale, blocks LLY-in-Holdings tracking
- 🟠 Production triggers kill — still firing alongside v1 (6 emails/day instead of 3)

Memory rules reinforced today (after retraction of bad delete list):
- feedback_verify_empty_drafts.md — Gmail plaintextBody may be empty while htmlBody has full content. Always get_thread to confirm before classifying drafts. Subagent missed this once today; retracted and apologized to Sam.
- New: timestamp every claim with source ("per draft 19de4d535cf9c067 on 5/1") instead of asserting as bare fact. Newer ≠ more right; reconcile, don't replace.


Generated 2026-04-28 PM · Created in response to Apr 28 brutal teardown: "You do not have an intake problem. You have a routing and closure problem."

What this is: the SINGLE table that says what's real right now. Replaces the scattered open-loops across SCOPE_BACKLOG.md, MASTER_ACTION_MAP.md, CONTEXT.md, and ad-hoc memory files.

Format: markdown table for now. Should migrate to a Google Sheet (likely a tab in Monthly Obligations v2 or a standalone Sheet) once Sam picks the location.

Three surfaces (per CLAUDE.md operational compression rule):
1. Today Board — a filtered view of this table (Status = today or now)
2. CURRENT_STATE (this file/sheet) — system of record for tasks/loops/items
3. Weekly Review — Sunday/Friday close-loops + archive + pick next 3


Schema

Column What
Area Money / MIS / Eden / STR / CM Invoice / Mom / Mildred / Wife / Kids / Home / Business / Tax
Item Single sentence describing the loop
Status now · today · this-week · parked · blocked · done · archived
Owner Sam · Mildred · Chanie · Asher · Mom · Vendor · Bank · Claude
Next Action The literal next physical step. NOT "follow up" — what does the next physical step look like.
Due Date YYYY-MM-DD or n/a
Source Link URL to the canonical artifact (Sheet, email thread, doc, draft)
Last Verified YYYY-MM-DD when this row's facts were last confirmed real
Confidence verified · inferred · stale
System of Record Which sheet/system owns the underlying data (Monthly Obligations v2, CM Invoice, etc.)

Session 26 close — 2026-05-06 evening

Two tracks landed this session:

Track A — BOS canonical sheet flip (v2 → v1):
- ~hookstreet-workspace/Code.gs:11 OBLIGATIONS_SHEET_ID now points to 1L_rxCSOnc... (v1 CANONICAL)
- ~hookstreet-workspace/CLAUDE_CODE_KICKOFF.md:96 updated
- CLAUDE.md:134 source-of-truth table updated — v1 canonical, v2 marked stale snapshot
- Next action: when PWA deploys, $475 NatGrid update + APR↑US-Bus-0049 + Barclay→Citi reissue all live in v1, will read correctly

Track B — MIS 3PM Power Hour visual upgrades (4 changes shipping in next email):
1. NEW SECTION 💼 YOUR HOLDINGS (LIVE) 4-col card grid between header + Macro Pulse
2. Phantom filter: misReadHoldingsCleanRows_ honors Trade_Log_Imported allowlist if tab exists
3. Direction arrows ↑/↓ on every Lean In · Watch · Starter · Holdings row
4. Holdings sorted by |P&L%| desc — biggest movers first

Code committed MIS@7996607. Manual run + clasp re-auth runbook: MIS/docs/RUN_3PM_POWER_HOUR_MANUAL.md.

Blocked on: clasp re-auth (invalid_grant) before push lands. Sam runs clasp login then clasp push from MIS/ → manual fire misSendPowerHour300 from Apps Script editor → verify in Outlook iOS.

RESOLVED 7:11 PM EDT: Sam re-authed + clasp pushed to V11. MIS code is LIVE. Sam ran §1 manual test path.

RESOLVED 7:43 PM EDT — PWA chain verified end-to-end:
- New standalone Apps Script "Hook Street OS API" deployed (AKfycbw8...)
- Web App URL public: https://script.google.com/macros/s/AKfycbw8WZ8ey9Oe_Ov-34zdi1pXvaHl6WoftfOwzvU8yMGqN3xkPFA-LjB3W5sf6OEyIU5t/exec
- ?route=health{"status":"ok"}
- ?route=obligations&days=14 → real v1 obligations (Arievim, Camp Agudah, Chase PV 6377, Fifth Third mortgage, Shellpoint 9332, Selene 9312, etc.)
- Chain proven: PWA → v1 sheet (1L_rxCSOnc) → live JSON
- Code in repo at ~hookstreet-workspace/pwa-api-script/ (workspace commit 4ae07e4)

Next session pickup: when iPad mini arrives → §3 (drop hookstreet-os-app.html on Netlify drop, add to Home Screen, paste API URL + key). Also: tighten API key (currently the placeholder string) before wider use.


Session 27 CM note - 2026-05-06

CM Invoice review updated the local truth:

Session 28 CM source-map note - 2026-05-07

Additional CM/Mom review clarified the spreadsheet evidence:

Live rows (Apr 28 PM seed — minimal, expand from here)

🔴 NOW (today, blocking)

Area Item Owner Next Action Due Source Last Verified Confidence SoR
Money US Bus 7496 APR jumped 4.9% → 19.49% Sam Call US Bank, ask for promo rate restoration 2026-04-30 docs/MAY_AUTOPAY_PREFUND_2026-05.md 2026-04-28 verified Monthly Obligations v2
Money Pre-fund ~$7,150 firm + $712 conditional Sam Send Chanie May 7792 list ($3,381) + verify 5609/1260 2026-04-30 docs/MAY_AUTOPAY_PREFUND_2026-05.md 2026-04-28 verified Monthly Obligations v2
Money Darchei routing 7792 vs 5609 conflict Sam Open Apr Chase 5609 statement, search "Darchei" or "9001723462" 2026-04-29 .claude/memory/reference_chase_7792_routing.md 2026-04-28 inferred Monthly Obligations v2 + bank statement
Money Eagle's Eye Pool recurring payment Sam Click QB notification, complete recurring setup 2026-05-05 Gmail thread 19dd3570a3c50c95 2026-04-28 verified QuickBooks
Family Wife's mother birthday call Sam Phone call 2026-04-29 .claude/memory/user_wifes_mother.md 2026-04-28 verified n/a
CM Invoice Validate Phase 1-7.5 build manually Sam Run 15-step test in CM_VALIDATION_PLAN.md 2026-04-30 CM_Invoice_System/CM_VALIDATION_PLAN.md 2026-04-28 verified CM Invoice Sheet (1nMTEl_eYpAsQ...)
CM Invoice 🐛 BUG #1: Save Invoice writes 001, Save PDF generates 002 (mismatch) Claude Fix in sacrificial test mode (Rule 10): At Save Invoice, write current formula value to log; at Save PDF, READ from log not formula. Test against TEST_CUSTOMERS array first. next CM session this conversation 2026-04-28 PM 2026-04-28 verified CM Invoice script
CM Invoice 🐛 BUG #2: Pop-up prompts have no dropdowns (free-text invoice #, customer #) Claude Kill the menu prompts entirely. Invoice_Entry tab cells are the only entry path. (Order: fix #2 SECOND.) next CM session this conversation 2026-04-28 PM 2026-04-28 verified CM Invoice script
CM Invoice 🐛 BUG #3: Customer parser fragile (BRENDA-CHICAGO → BR--002) Claude Confirm rivkat2000 identity + audit Customers tab seed → harden formula for 1-word + city formats. (Order: fix #3 LAST — depends on knowing real customer-name format.) next CM session this conversation 2026-04-28 PM 2026-04-28 verified CM Invoice script
Personal LIJ $110.37 — verify if still owed (recurring cal reminder, age unknown) Sam Log into LIJ portal or call 866-763-2906; only pay if actual balance exists 2026-05-01 personal cal · scan 2026-04-28 PM 2026-04-28 inferred LIJ account

🟡 THIS WEEK

Area Item Owner Next Action Due Source Last Verified Confidence SoR
Eden Inv 20028 ($20K · 56 days past due) — Abe response Abe Perkowski Passive watch; reply when received 2026-05-03 Gmail thread 19dc0cb521182bb1 2026-04-28 verified Eden Gardens engagement contract
HOA Sheila callback (Di Masi Burton) Sheila Passive watch; NO further emails 2026-05-11 (14d window) Gmail thread 19dd0af2e2a58514 2026-04-28 verified Asher Gulko
BOS Run EDEN_FIX_OWNER_COLUMN_2026_04_26 Sam Open BOS v1 Apps Script editor → run function flexible docs/CONTEXT.md Session 16 cont 4 2026-04-28 verified BOS v1 Sheet
MIS Trigger duplicate cleanup Sam Run Delete All Project Triggers + Create Default Triggers in MIS Apps Script this week docs/MIS_REVIEW_2026-04-27.md § email firing 2026-04-28 verified MIS Sheet (1cosuFrU...)
Mom Invoice Get new sheet's .clasp.json updated to v2 script ID Sam → Claude Confirm script ID 106wdSg6lMTsqBaGBtH93j_D0AbSrjUtKuRM2WzdjKE7tq5Vqbe1ZQPAp; Claude updates clasp + pushes flexible this conversation 2026-04-28 verified CM Invoice repo
Personal Call FL handyman 407-799-0323 Sam Phone call this week PICKUP draft 19dd11eb0ab20849 2026-04-28 verified n/a
Mom Invoice Wide Invoice_Record canonical archive Sam Test one invoice save, verify populated Item1_*/Item2_*, save PDF, then use Edit Invoice by # to restore it. Optional Invoice_LineItems is later reporting only. next CM session CM_Invoice_System/CM_SOURCE_MAP.md 2026-05-07 verified CM Invoice Sheet
Mom Invoice ~~Identify rivkat2000@gmail.com~~ ✅ CLOSED — Sam confirmed = Mom (Rivka). The Drive folder owner IS Mom managing her own ops. done n/a n/a this conversation 2026-04-28 PM 2026-04-28 verified n/a
Mom Invoice ✅ Customers tab seed verified to include Mom's real customer names — confirmed BRENDA-CHICAGO (CUST-007), FAME (CUST-034), FAME LAKEWOOD (CUST-035), FAME POMONA (CUST-036), RADIANCE (CUST-066), and 85 others. Seed is sound; bug is in the parser, not the data. done n/a n/a Code.js:1358-1450 2026-04-28 verified CM Invoice Customers tab
BOS-v1 🐛 BUG: OPS_IDS.hsUnified removed but lines 495+533 still reference it — STR + Transport/Jobs sections of Operations Summary email may be silently broken Claude Restore hsUnified: '1qDqEMI-sudCcCqWybs19M_0-ynq6qs8156vsYqgY36E' in OPS_IDS OR delete the broken sections (Rule 4 minimum viable) this week HookStreet-Business-OS/sheets/src/Code.js:394-398,495,533 2026-04-28 verified BOS-v1 script
Workspace BOS repos relationship clarified — NOT duplicates, parent + nested child by design. Recommendation: status quo + move command-center/ to graveyard. Sam DEFERRED — Sam wants to keep frozen repos, find sync points. See outputs/2026-04-29_00-06_prep_tomorrow-cm-validation-mis-design-phone-triggers.html § 3 for relationship map. flexible this conversation 2026-04-28 PM 2026-04-29 verified GitHub
Workspace lawn-coop-proposal/ (local) + zee78900/north-woodmere-lawn-coop are SAME project. Local has no remote → never syncs. Sam cd lawn-coop-proposal && git remote add origin https://github.com/zee78900/north-woodmere-lawn-coop.git && git fetch && git reset origin/main this week local fs + gh inspection 2026-04-29 2026-04-29 verified GitHub
Workspace HS_SRVC folder = 1 stale xlsx (HS_SRVC_v1.xlsx, 552 KB, Feb 6) Sam Open xlsx → if content now in HookStreetServices-Site/SERVICES_CONCEPT.md archive xlsx; else extract to MD then archive this week local audit 2026-04-29 2026-04-29 verified local fs
Phone iPhone Shortcut → Apps Script Web App URL (Pattern 1) — design ready, not deployed Sam Pick first sheet to deploy with doPost handler. Recommend BOS-v1 (daily snapshot send) or CM (save invoice). Generate shared secret. Deploy as Web App. flexible outputs/2026-04-29_00-06_prep_tomorrow-cm-validation-mis-design-phone-triggers.html § 6 2026-04-29 verified n/a
MIS Validation framework designed (15 tests · sacrificial mode w/ TESTAAA) Claude Write full docs/MIS_VALIDATION_PLAN.md when Sam ready to walk it. Gates: trigger screenshots first (tests 5-6); FSE Session 1 for tests 7-15. flexible outputs/2026-04-29_00-06_prep_*.html § 2 2026-04-29 verified MIS Sheet
Workspace Output format rule updated — HTML default for outputs/. MD only for docs/audits. n/a (rule) applied going forward n/a this conversation 2026-04-29 2026-04-29 verified n/a
Workspace Code architecture decision: KEEP bound for CM/MIS/BOS-v2; consider STANDALONE for BOS-v1 (cross-sheet) and Voice Intake (already standalone). Claude Defer migration — non-trivial: re-create script project, re-install triggers, re-test. Logged for future. parked outputs/2026-04-29_00-06_prep_*.html § 5 2026-04-29 verified each script project
Personal 📞 Wife's mother birthday call Sam Phone call — TODAY Wed Apr 29 2026-04-29 personal cal · user_wifes_mother.md 2026-04-29 verified n/a
Money 📲 Send Chanie May 7792 list ($3,381 Darchei + BYAM) Sam Text/email list with amounts + dates so she funds 7792 by 1st 2026-04-29 docs/MAY_AUTOPAY_PREFUND_2026-05.md · reference_chase_7792_routing.md 2026-04-29 verified Monthly Obligations v2
Money 📞 Call US Bank Bus 7496 — APR jumped 4.9% → 19.49% Sam Phone US Bank, ask promo rate restoration 2026-04-29 inbox flag Apr 28 voice note 2026-04-29 verified US Bank
Workspace Wed/Thu/Fri tactical plan n/a (informational) Read outputs/2026-04-29_00-30_plan_wed-thu-fri-go-week-finish.html n/a this conversation 2026-04-29 2026-04-29 verified n/a
Workspace 3/6/12 month strategic deep-insights briefing n/a (informational) Read outputs/2026-04-29_00-30_briefing_deep-insights-3-6-12-month-outlook.html (subagent generating) n/a this conversation 2026-04-29 2026-04-29 inferred n/a
Personal Pay LIJ $110.37 (recurring annual) Sam Phone 866-763-2906 2026-05-01 personal cal 2026-04-28 verified n/a
Travel FL trip May 10-25 (15-day window) — pre-stage anything time-sensitive Sam Block any non-remote work; pre-fund autopays before May 10 departure 2026-05-09 personal cal · DL 1528 / AA 1922 2026-04-28 verified n/a
Workspace BOS Daily Snapshot data sources mapped (Sam's "where does it pull from" Q) n/a (informational) Pulls from 4 sheets: (1) bound Monthly Obligations — own tabs incl GROCERY_LIST, IDEAS · (2) Quick Capture Form Responses (1Wp4Opb...) every 30 min · (3) HS Unified (1qDqEMI...) STR_Properties + Master_Activity_Log · (4) Daily Tracker (1ZGADlm...) open tasks. Eden Operating OS referenced in code comments but NOT actually pulled. n/a HookStreet-Business-OS/sheets/src/Code.js:24-37,395-398,413-553 2026-04-28 verified BOS-v1 script

🟢 PARKED — pick up after current week stabilizes

Area Item Owner Next Action Due Source Last Verified Confidence SoR
MIS FSE Session 1 (INTC end-to-end) Sam 90-min focused block when ready flexible docs/MIS_FSE_ARCHITECTURE.md § 8 2026-04-28 verified MIS Sheet
News Pick Path A/B/C for daily news brief Sam Read docs/NEWS_BRIEF_DESIGN.md § 3 paths · choose flexible docs/NEWS_BRIEF_DESIGN.md 2026-04-28 verified n/a
Repo eden-gardens-os public → private Sam gh repo edit zee78900/eden-gardens-os --visibility private (or via web UI) flexible PICKUP draft 19dd11eb0ab20849 2026-04-28 inferred — may already be private; verify GitHub
Repo Voice Intake v0.1 deployment Sam clasp create from terminal + paste API key + create Gmail label flexible hookstreet-voice-intake README 2026-04-28 verified hookstreet-voice-intake repo
Repo Trigger registry doc + cleanup Claude Inventory all triggers across MIS / BOS / CM / VoiceIntake; Sam approves; delete duplicates this week (per teardown) docs/TRIGGER_REGISTRY.md (TBW) n/a n/a each script project
Home Sprinkler open + repairs + gardener Sam Vendor calls this week (spring open) SCOPE_BACKLOG L20 2026-04-28 verified n/a
Home Handyman bundle (electrician/glazier) Sam One half-day visit for L18-L23 flexible SCOPE_BACKLOG L18-L23 2026-04-28 verified n/a
Family Wife's mother FL trip May 24-25 Chanie Coordinate Sunday dinner 2026-05-24 .claude/memory/user_wifes_mother.md 2026-04-28 verified n/a

⚪ FROZEN (per teardown's "kill, freeze, or finish")

These exist but are NOT active. Each has condition to reactivate.

Area Item Reactivation condition
Build Command Center web app (Next.js / Supabase / Netlify) After Sheets + intake stable. Not before.
Build Signal OS scaffold After CURRENT_STATE proves itself.
Build News brief Path B email pipeline Sam picks Path A/B/C first
Build Malca Yenta LLC + LevSMS + domains + Twilio After kosher carrier outreach + business plan validated
Build Lawn Co-op blast 30-home threshold
Build Lee/ repo Sam decides Triage #5
Build AbnbCalc improvements Discrete, not part of operating system
Build Hook Street Services productization After CM Invoice + MIS stable
CM Invoice All Phase 8+ features (P&L view · Google Form intake · charts · multi-shipment · resale cert alerts) After Phase 1-7.5 validation passes

How this changes the workflow

Before this doc: open loops scattered across SCOPE_BACKLOG (53 rows), MASTER_ACTION_MAP (Apr 16 stale), CONTEXT.md session entries, individual memories, Gmail drafts, output briefings. Asking "what matters today?" requires reading 10+ files.

With this doc: filter by Status = now → that's today. By today → today's bumpers. By this-week → the week ahead. Single table, single answer.

Migration plan (defer until Sam confirms)

This is currently a markdown file. Sam should choose:
- Option A — keep as MD, refresh manually each session-close. Good for portable, version-controlled, paste-into-mobile-Claude.
- Option B — migrate to Google Sheet tab (likely a new "CURRENT_STATE" tab in Monthly Obligations v2 OR a new standalone Sheet). Live, queryable, can drive a Today Board view via filter.

My recommendation: B. Sheet supports filter views (Today Board = filtered subset), conditional formatting (status colors), and direct edits without git commits. MD is a stub; the live spine should be a Sheet.


Update cadence (rule)

This file MUST be updated whenever:
- A new loop opens (voice note, email, draft, conversation)
- A loop closes (mark done then archived after 7 days)
- Status changes (parked → this-week, etc.)
- Sam answers a question that resolves an inferred to verified

Sundays + Fridays: scan done rows older than 7 days → move to archived section at bottom (or archive sheet/file).


Last updated: 2026-04-28 PM · Source of truth for Sam's open loops · Replaces scattered tracking across SCOPE_BACKLOG / MASTER_ACTION_MAP / CONTEXT.md / individual memories.

Source trail · docs/CURRENT_STATE.md @ master · rendered 2026-07-02 7:23 PM EDT by scripts/build-docs.py · the .md in the repo is the truth; this page is the phone-readable view