{
  "version": 1,
  "updated": "2026-05-14T22:00:00-04:00",
  "categories": [
    "substrate",
    "bets",
    "website",
    "customer-aceves",
    "family",
    "3d-printing",
    "process",
    "business-leads",
    "manage-app"
  ],
  "severities": [
    "critical",
    "high",
    "medium",
    "low"
  ],
  "statuses": [
    "open",
    "in-progress",
    "blocked",
    "done"
  ],
  "issues": [
    {
      "id": "issue-001",
      "title": "Fix /our/ index week tiles — content doesn't shift on day tap",
      "category": "substrate",
      "severity": "medium",
      "status": "in-progress",
      "page": "/our/index.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Calendar.html week tiles work correctly. Applying same pattern to index. Being addressed in this commit.",
      "assigned_to": "cc",
      "estimated_effort": "small"
    },
    {
      "id": "issue-002",
      "title": "Cloudflare KV binding not set up — /our/ stays local-per-device",
      "category": "substrate",
      "severity": "high",
      "status": "done",
      "page": "/our/setup-backend.md",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "DONE 2026-05-14 night. Verified via /handoff/get?key=test returning 404 not-found (KV bound) instead of 503 kv-not-bound. Auto-resolved by CC during session-start auto-discovery.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-003",
      "title": "Aceves tracker % is hardcoded — refactor to JSON-driven like print-status",
      "category": "substrate",
      "severity": "low",
      "status": "open",
      "page": "/handoff-blocks/aceves-paint-2026-05-11.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Currently editing HTML to update %. Next step: create /handoff-blocks/aceves-status.json with shape {pct_complete, tasks_done, tasks_remaining, hours_logged, hours_remaining, quote_variance}; refactor the .html to fetch + render. Same pattern as print-status.json drives /our/. Effort: ~30 min once Aceves job is invoiced (no point refactoring before final state is known).",
      "assigned_to": "cc",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-004",
      "title": "Notes scraping MVP only on Aceves page — deploy to other work pages",
      "category": "substrate",
      "severity": "medium",
      "status": "open",
      "page": null,
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Next step: copy the notes-inbox component from /shared/components/notes-input.html to /handoff-blocks/peter-scott-shed-2026-05-12-visit.html (KV: notes-peter-scott-shed-2026-05) and /personal/3d-printing/dashboard.html (KV: notes-3d-printing). Each auto-registers in notes-registry. ~10 min per page.",
      "assigned_to": "cc",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-005",
      "title": "Calendar redesign not yet deployed to /personal/calendar/current.html",
      "category": "substrate",
      "severity": "low",
      "status": "open",
      "page": "/personal/calendar/current.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Next step: apply the tap-day pattern from /our/calendar.html — replace the static Mon day-view with a 7-day strip + dynamic panel. The hand-coded events become a JS event map. ~45-60 min refactor. Stretch: skip unless Sam asks for it, since /personal/calendar/current.html is a Sam-only page and is functional.",
      "assigned_to": "cc",
      "estimated_effort": "large"
    },
    {
      "id": "issue-006",
      "title": "Customer portal nav doesn't include /bets/ link",
      "category": "manage-app",
      "severity": "high",
      "status": "blocked",
      "page": "manage/index.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Blocked on manage-app session — 28k-line file, strict CLAUDE.md process. Defer to dedicated session.",
      "assigned_to": "cc",
      "estimated_effort": "small"
    },
    {
      "id": "issue-007",
      "title": "samesolutionsllc.com cache — verify CF cache fully purged after 127b970 commit",
      "category": "website",
      "severity": "low",
      "status": "open",
      "page": "https://samesolutionsllc.com/",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Sam manual: CF dashboard → Caching → Purge Everything or Purge URL. Verify visually after.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-008",
      "title": "Customer portal page missing logo",
      "category": "manage-app",
      "severity": "medium",
      "status": "blocked",
      "page": "manage/index.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Blocked on manage-app session (same as #006).",
      "assigned_to": "cc",
      "estimated_effort": "small"
    },
    {
      "id": "issue-009",
      "title": "Player stat tables missing series column data (G1-G4 compilation)",
      "category": "bets",
      "severity": "low",
      "status": "open",
      "page": "/bets/teams/pistons/2026-05-13-game5.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Next step: WebFetch ESPN box scores for the 4 prior series games (G1-G4 against the matched opponent IDs), compute per-player averages, fill the Series column. ~20 min for the marquee 7 players. Lower priority since series is now over (CLE 4-3 if G7 happened, see G6/G7 pages).",
      "assigned_to": "cc",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-010",
      "title": "Season stats marked '—' for Mobley/Harden/LeVert/Reed",
      "category": "bets",
      "severity": "low",
      "status": "done",
      "page": "/bets/teams/pistons/2026-05-13-game5.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "DONE 2026-05-14 night. Auto-resolved per automation rules (low + bets + cc). Verified from ESPN: Mobley 18.2/9.0/1.7/54.6%/31.9; Harden 23.6/8.0/43.4%/37.5%/34.8; LeVert 7.4/41.7%/33.3%/19.2; Reed 7.8/4.5/61.7%/13.9.",
      "assigned_to": "cc",
      "estimated_effort": "small"
    },
    {
      "id": "issue-011",
      "title": "Bets calendar week-strip redesign not deployed",
      "category": "bets",
      "severity": "low",
      "status": "open",
      "page": "/bets/calendar.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Next step: copy the tap-day pattern from /our/calendar.html into /bets/calendar.html; team manifest already feeds clickable team names. Use /shared/css/palette.css [data-theme=sports][data-team=X] tokens for per-league accent. Effort: ~30-45 min. Defer until at least one of the per-team pages adopts the shared palette tokens so the look is consistent.",
      "assigned_to": "cc",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-012",
      "title": "Quote conversation with Jon tomorrow — outcome TBD",
      "category": "customer-aceves",
      "severity": "high",
      "status": "open",
      "page": "/handoff-blocks/aceves-paint-2026-05-11.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "$420-560 over original quote. Three options: honor quote / honest split / full actual. Sam to decide before sending feedback survey + invoice.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-013",
      "title": "Jon's account in manage app not created",
      "category": "customer-aceves",
      "severity": "high",
      "status": "open",
      "page": "manage/index.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Needed for app onboarding strategy. Blocks #014.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-014",
      "title": "Email invite flow not sent to Jon",
      "category": "customer-aceves",
      "severity": "high",
      "status": "blocked",
      "page": null,
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Blocked on #013 (account creation).",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-015",
      "title": "SS-Q010 final amount pending conversation",
      "category": "customer-aceves",
      "severity": "high",
      "status": "open",
      "page": null,
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Depends on #012 outcome. Then update invoice in manage app.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-016",
      "title": "App download link on landing page — verify deployed",
      "category": "website",
      "severity": "medium",
      "status": "open",
      "page": "https://samesolutionsllc.com/",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Confirm visible after CF cache purge (#007).",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-017",
      "title": "Win's teacher name unknown — needed for Thu AM call",
      "category": "family",
      "severity": "critical",
      "status": "done",
      "page": "/personal/status-tracker/win-school-absence-2026-05-15.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "DONE 2026-05-14 night. Mrs. Stout. Baked into call script + email template.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-018",
      "title": "Win's grade unknown",
      "category": "family",
      "severity": "high",
      "status": "done",
      "page": "/personal/status-tracker/win-school-absence-2026-05-15.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "DONE 2026-05-14 night. 2nd grade. Baked into call script.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-019",
      "title": "Sam's phone for absence script not captured",
      "category": "family",
      "severity": "high",
      "status": "done",
      "page": "/personal/status-tracker/win-school-absence-2026-05-15.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "DONE 2026-05-14 night. (248) 568-5861 from CLAUDE.md. Baked into call script + email template. Last name still TBD on the absence page — note added 'confirm with mom if needed' but the call doesn't actually need it.",
      "assigned_to": "cc",
      "estimated_effort": "small"
    },
    {
      "id": "issue-020",
      "title": "Boarding facility decision — Club Pet vs Megan",
      "category": "family",
      "severity": "medium",
      "status": "open",
      "page": "/our/",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Need to decide before Friday morning drop-off.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-021",
      "title": "Confirm boarding bordetella requirement",
      "category": "family",
      "severity": "medium",
      "status": "open",
      "page": null,
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Most boarders require current bordetella vaccine. Confirm with chosen facility.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-022",
      "title": "Phillies — 6 more perfect prints needed by Friday",
      "category": "3d-printing",
      "severity": "critical",
      "status": "in-progress",
      "page": "/our/print-status.json",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "3 dual prints required: Wed eve, Thu AM, Thu PM. Tight but doable if A1 runs clean overnight.",
      "assigned_to": "sam",
      "estimated_effort": "large"
    },
    {
      "id": "issue-023",
      "title": "Pirates — 4 more perfect prints needed",
      "category": "3d-printing",
      "severity": "high",
      "status": "open",
      "page": "/our/print-status.json",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Final batch Thu evening after Phillies prints clear the queue.",
      "assigned_to": "sam",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-024",
      "title": "Chain print status — red plate in progress, verify completion",
      "category": "3d-printing",
      "severity": "low",
      "status": "open",
      "page": "/our/print-status.json",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "33 links/plate, already have 66+ ready. More than enough — just verify the red plate finishes.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-025",
      "title": "Filament inventory not updated with actual remaining grams",
      "category": "3d-printing",
      "severity": "low",
      "status": "open",
      "page": null,
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Manual weigh / Bambu Studio estimate. Update after Thu prints.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-026",
      "title": "Pistons G5 outcome — log result and bet outcomes after game",
      "category": "bets",
      "severity": "medium",
      "status": "done",
      "page": "/bets/teams/pistons/2026-05-13-game5.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "DONE 2026-05-13 night. CLE 117-113 OT. Result section + lessons added on page. Framework: 1W/4L; Mitchell U 26.5 was the only winning leg. Sam's actual: $10 Sameshot LOSS.",
      "assigned_to": "cc",
      "estimated_effort": "small"
    },
    {
      "id": "issue-027",
      "title": "Bankroll tracker update after G5 settles",
      "category": "bets",
      "severity": "medium",
      "status": "done",
      "page": "/bets/bankroll.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "DONE 2026-05-13 night. Sameshot stake $2.50→$10 (Sam's actual), marked LOSS. Removed 4 non-placed Bet Card entries (framework-only). Paper bankroll $1000→$990.",
      "assigned_to": "cc",
      "estimated_effort": "small"
    },
    {
      "id": "issue-028",
      "title": "No standardized 'definition of done' for CC tasks",
      "category": "process",
      "severity": "medium",
      "status": "open",
      "page": null,
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "What counts as 'shipped'? Validate JS / verify deploy / smoke check? Codify per category.",
      "assigned_to": "sam",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-029",
      "title": "No scheduled scanner for issue list (process gap)",
      "category": "process",
      "severity": "low",
      "status": "done",
      "page": "/handoff-blocks/automation-rules.md",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "DONE 2026-05-14 night. Session-start procedure (8 steps) lives in /handoff-blocks/automation-rules.md. Manual scan at every CC session start, not cron-automated. Adequate for current pace. Cron later if needed.",
      "assigned_to": "cc",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-030",
      "title": "Recalibration conversation pending",
      "category": "process",
      "severity": "high",
      "status": "open",
      "page": "/handoff-blocks/recalibration-2026-05-13.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Scaffold built tonight. Conversation with planning chat tomorrow. Decisions doc to be created after.",
      "assigned_to": "sam",
      "estimated_effort": "large"
    },
    {
      "id": "issue-031",
      "title": "Medical 3D printing — follow up with Win's art teacher for friend intro",
      "category": "business-leads",
      "severity": "low",
      "status": "open",
      "page": "/personal/business-leads/medical-3d-printing-2026-05-13.html",
      "added": "2026-05-13T22:23:00-04:00",
      "added_by": "sam",
      "notes": "Don't push. Mention casually at next natural interaction with the teacher.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-032",
      "title": "Pistons G6 — fill in analysis input when lines are out",
      "category": "bets",
      "severity": "medium",
      "status": "open",
      "page": "/bets/teams/pistons/2026-05-15-game6.html",
      "added": "2026-05-13T22:50:00-04:00",
      "added_by": "sam",
      "notes": "G6 page scaffolded with analysis input box (fill-in-bracket pattern). Sam fills it when Thu AM lines drop; CC expands on next session per /handoff-blocks/bets-analysis-scanner.md.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-033",
      "title": "Information Architecture Phase 1 build — shared components, palette tokens, cross-linking convention",
      "category": "process",
      "severity": "high",
      "status": "in-progress",
      "page": "/shared/components/",
      "added": "2026-05-13T22:50:00-04:00",
      "added_by": "sam",
      "notes": "Sam's #1 priority for next 1-2 weeks per the 2026-05-13 recalibration. Phase 1 foundations being built this session: /shared/components/ + /shared/css/palette.css + cross-linking convention + substrate-map dashboard. Phase 2+ = incremental migration when pages are touched for other work, not big-bang. Originally framed as 'Modularity refactor' (audit at /personal/status-tracker/modularity-audit.md).",
      "assigned_to": "cc",
      "estimated_effort": "large"
    },
    {
      "id": "issue-034",
      "title": "App Store submission — decide priority for 2026",
      "category": "process",
      "severity": "low",
      "status": "open",
      "page": "/personal/ai-hub/app-store-path.md",
      "added": "2026-05-13T22:50:00-04:00",
      "added_by": "sam",
      "notes": "Research doc captured. Decision question: is App Store an acquisition channel or vanity metric? PWA on home-screen does ~95% of native. ~$300-500 + 6 weeks if Sam decides yes.",
      "assigned_to": "sam",
      "estimated_effort": "large"
    },
    {
      "id": "issue-035",
      "title": "Sameshot rebrand — apply to /bets/index.html, other team pages",
      "category": "bets",
      "severity": "low",
      "status": "done",
      "page": "/bets/",
      "added": "2026-05-13T22:50:00-04:00",
      "added_by": "sam",
      "notes": "DONE 2026-05-14 night. Verified via grep — no remaining 'Longshot Parlay' / 'longshot-parlay' / class=longshot occurrences in /bets/. G5 was the only page using the term; future pages use Sameshot from /bets/_templates/nba-prop-analysis-template.html and the parlay framework.",
      "assigned_to": "cc",
      "estimated_effort": "small"
    },
    {
      "id": "issue-036",
      "title": "Roll out analysis input box pattern to other game pages",
      "category": "bets",
      "severity": "low",
      "status": "open",
      "page": "/handoff-blocks/bets-analysis-scanner.md",
      "added": "2026-05-13T22:50:00-04:00",
      "added_by": "sam",
      "notes": "Next step: when creating any new game page in /bets/teams/<sport>/<date>-*.html, include the analysis-input box section from the G6 canonical pattern. Reuse /shared/components/notes-input.html template (or the inline variant on G6). KV key pattern: analysis-<page-path-slash-replaced>. Auto-registers in analysis-registry. Per-game effort: trivial (copy a 30-line block).",
      "assigned_to": "cc",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-037",
      "title": "Build planning-chat-to-CC pipeline — eliminate copy/paste step",
      "category": "process",
      "severity": "medium",
      "status": "open",
      "page": "/handoff-blocks/ai-coordination/",
      "added": "2026-05-14T02:00:00-04:00",
      "added_by": "sam",
      "notes": "Currently Sam manually pastes planning chat's CC prompts. Future: planning chat writes to /handoff-blocks/ai-coordination/planning-to-cc.md, Sam runs one command to update repo, CC reads at session start. Sam just says 'go.' Requires either repo write access for planning chat OR a sync mechanism Sam triggers with one command.",
      "assigned_to": "future-session",
      "estimated_effort": "large"
    },
    {
      "id": "issue-038",
      "title": "Substrate map dashboard — /personal/status-tracker/substrate-map.html",
      "category": "process",
      "severity": "medium",
      "status": "done",
      "page": "/personal/status-tracker/substrate-map.html",
      "added": "2026-05-14T02:00:00-04:00",
      "added_by": "sam",
      "notes": "DONE 2026-05-14 (commit 945cbbb). Python build script + JSON + HTML dashboard live. Initial scan: 251 files, 221k words, 112 shells, 12 sections. Re-run script after structural changes.",
      "assigned_to": "cc",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-039",
      "title": "URL rename to samehub.pages.dev",
      "category": "process",
      "severity": "low",
      "status": "open",
      "page": "/handoff-blocks/url-rename-procedure.md",
      "added": "2026-05-14T02:00:00-04:00",
      "added_by": "sam",
      "notes": "Cloudflare Pages dashboard step. Code can prep; Sam executes. Current placeholder 'samesolutions-equipment-service.pages.dev' is awkward.",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-040",
      "title": "/our/ product validation — ask CeCe what coworkers liked specifically",
      "category": "business-leads",
      "severity": "high",
      "status": "open",
      "page": "/our/",
      "added": "2026-05-14T02:00:00-04:00",
      "added_by": "sam",
      "notes": "Rain Collective signal — CeCe's salon coworkers expressed interest in /our/ hub. Validation needed before product decisions on Path 5 (software/app direction). Specific feedback pending: what did they like? what would they want it to do for the salon?",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-041",
      "title": "Split SameI and Career Exploration into separate hubs",
      "category": "substrate",
      "severity": "medium",
      "status": "open",
      "page": "/personal/ai-hub/",
      "added": "2026-05-14T02:00:00-04:00",
      "added_by": "sam",
      "notes": "Next step: mkdir /personal/samei/ and /personal/career/; move /personal/ai-hub/samei/* → /personal/samei/; move /personal/ai-hub/career/* → /personal/career/; leave /personal/ai-hub/index.html as a redirect-style landing page noting the split. Update all internal links. Run substrate-map builder after to verify nothing broken. Effort: ~45 min. FLAGGED (multi-page refactor — could break links).",
      "assigned_to": "cc",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-042",
      "title": "June 4 friends meeting prep — populate /personal/friends-meeting-2026-06-04/",
      "category": "business-leads",
      "severity": "medium",
      "status": "in-progress",
      "page": "/personal/friends-meeting-2026-06-04/",
      "added": "2026-05-14T02:00:00-04:00",
      "added_by": "sam",
      "notes": "Folder + 5 scaffolds created this session (index, paths, skill-mapping, substrate-tour, leads + empty decisions.md). Content fills in over next 3 weeks. Reframed as founding-moment pitch + invitation, not brainstorm.",
      "assigned_to": "sam",
      "estimated_effort": "large"
    },
    {
      "id": "issue-043",
      "title": "Pittsburgh medallion production tight — may need gift count reduction",
      "category": "3d-printing",
      "severity": "high",
      "status": "open",
      "page": "/our/#pittsburgh",
      "added": "2026-05-14T02:00:00-04:00",
      "added_by": "sam",
      "notes": "Need 4 more perfect Pirates + 6 more perfect Phillies = 7 print cycles ~24-28 hrs. Friday departure ~36 hrs away. Honest options documented on /our/ trip card. Sam to discuss with CeCe before Thu evening — gift expectations vs production reality.",
      "assigned_to": "sam",
      "estimated_effort": "large"
    },
    {
      "id": "issue-044",
      "title": "Weekly recalibration cadence — Sunday nights",
      "category": "process",
      "severity": "medium",
      "status": "open",
      "page": "/handoff-blocks/recalibration-decisions-2026-05-13.md",
      "added": "2026-05-14T02:00:00-04:00",
      "added_by": "sam",
      "notes": "Adopted in 2026-05-13 recalibration. First scheduled: Sun May 17 (likely in Pittsburgh or driving home). 60-90 min, same 10-area structure, keep/change/drop output.",
      "assigned_to": "sam",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-050",
      "title": "Decide on pet dental cleaning add-on (~+$100/month total)",
      "category": "family",
      "severity": "low",
      "status": "open",
      "page": "/personal/pets/",
      "added": "2026-05-14T22:00:00-04:00",
      "added_by": "sam",
      "assigned_to": "sam",
      "notes": "Vet offered dental cleaning addition to wellness plan: +$50/month per dog (+$100/month total). Decision needed within ~30 days. Current plan is $100/month for both dogs. Adding dental brings total pet wellness to $200/month. Worth it long-term (prevents dental disease) but evaluate against other monthly expenses. Decide by mid-June 2026. Reference: /personal/pets/",
      "estimated_effort": "small"
    },
    {
      "id": "issue-049",
      "title": "Operating manual — keep evolving as Sam articulates new patterns",
      "category": "process",
      "severity": "low",
      "status": "open",
      "page": "/handoff-blocks/ai-coordination/working-with-sam.md",
      "added": "2026-05-14T04:00:00-04:00",
      "added_by": "sam",
      "assigned_to": "cc",
      "notes": "When Sam names a new pattern about himself (in conversation, in thoughts inbox, in recalibration), capture it in /handoff-blocks/ai-coordination/working-with-sam.md. Living doc. Auto-eligible: minor additions and refinements. Escalate: structural changes or removing existing rules. Read at session start (step 0).",
      "estimated_effort": "small"
    },
    {
      "id": "issue-048",
      "title": "Cockpit: surface 'almost-ready' thoughts prominently — pattern Sam identified late May 13/14",
      "category": "substrate",
      "severity": "high",
      "status": "done",
      "page": "/personal/status-tracker/ripening.html",
      "added": "2026-05-14T03:45:00-04:00",
      "added_by": "sam",
      "assigned_to": "cc",
      "notes": "DONE 2026-05-14 'go' session. Shipped: (1) /personal/status-tracker/ripening.html — full capture surface with green/yellow/grey ripeness picker, 3 tier sections, per-item ripeness change + promote + dismiss; multi-line paste splits into items; localStorage fallback when KV missing; Cmd/Ctrl+Enter saves; (2) Dashboard panel — 'Ripening' as the TOP panel above Critical, shows top 5 active items sorted by ripeness rank, count summary in header; (3) /our/ quick-add — two new destination buttons 'Ripening · act now' (green) and 'Ripening · right moment' (yellow) for zero-friction capture from the hub; (4) Promote-to-issue queue — items marked Promote get queued in KV key 'ripening-promote-queue' for CC to convert into issues.json entries on next session (step 5b in automation-rules.md). Original text preserved on the ripening item. Sam's explicit 'go' authorized acting on HIGH severity against default ESCALATED rule.",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-047",
      "title": "Lens prototype shipped — gather feedback when Sam shows people, iterate based on what confuses",
      "category": "product",
      "severity": "low",
      "status": "open",
      "page": "/personal/builder-ideas/lens/",
      "added": "2026-05-14T03:30:00-04:00",
      "added_by": "cc",
      "notes": "4 demos shipped (click / typing / freeze / page-load) + index + SPEC.md + shared lens.css/.js. Next step: Sam shows to 2-3 visual-learner friends, collects 'what got confusing?' feedback, iterates. Specifically watch for: layer 7 (gates) and layer 8 (binary) likely feel hand-wavy; that's intentional but may need a 'how this is simplified' callout if people ask.",
      "assigned_to": "sam",
      "estimated_effort": "medium"
    },
    {
      "id": "issue-045",
      "title": "Auto-discovery scan ran clean on 2026-05-14 — no newer planning-chat content found",
      "category": "process",
      "severity": "low",
      "status": "done",
      "page": "/handoff-blocks/automation-rules.md",
      "added": "2026-05-14T02:30:00-04:00",
      "added_by": "cc",
      "notes": "Tracking entry for the auto-discovery scan run at this session start. All 5 sources checked (mnt/user-data, planning-to-cc.md, /handoff/get?key=cc-prompt-latest, /handoff/get?key=automation-rules, repo CC-*.txt). Nothing newer than this prompt. Procedure is working.",
      "assigned_to": "cc",
      "estimated_effort": "small"
    },
    {
      "id": "issue-046",
      "title": "Deploy verification failed — KV data endpoint=400; handoff endpoint=400",
      "category": "infrastructure",
      "severity": "critical",
      "status": "done",
      "page": null,
      "added": "2026-05-14T06:55:00.963865+00:00",
      "added_by": "cc",
      "notes": "DONE 2026-05-14 night. CC-introduced bug — verify-deploy.py used '__probe' as the probe key, but my own endpoints reject leading-underscore keys (KEY_RE in /functions/handoff/*.js requires alphanumeric start). Fixed to 'probe'. Re-ran verify-deploy: all 9 checks pass (KV data 200, handoff 404 not-found). False alarm; demonstrates the auto-create-on-failure path works. Issue self-resolved by CC per automation rules (self-introduced infrastructure bug).",
      "assigned_to": "sam",
      "estimated_effort": "small"
    },
    {
      "id": "issue-051",
      "title": "Keychain mold from 3D print scrap — pick approach + buy materials",
      "category": "business-leads",
      "severity": "low",
      "status": "open",
      "added": "2026-05-14",
      "added_by": "sam",
      "assigned_to": "sam",
      "notes": "Research doc + master SCAD at /personal/business-ideas/scrap-to-keychain/. Recommend silicone mold over 3D-printed master ($20-30 to test). Upgrade to hot-press or aluminum mold if usage justifies. Logo SCAD uses placeholder geometry — replace with real SS logo SVG when exported."
    },
    {
      "id": "issue-052",
      "title": "Set up GitHub MCP for true planning-chat-to-CC automation",
      "category": "process",
      "severity": "medium",
      "status": "open",
      "added": "2026-05-15",
      "added_by": "sam",
      "assigned_to": "sam",
      "notes": "Weekend project. GitHub MCP would let planning chat write directly to repo, eliminating all copy/paste and enabling true remote CC triggering via git hooks or watch scripts. Current state: /handoff/post + Queue CC button on root hub gives partial improvement but Sam still has to open CC and say \"pull latest\". Real fix is GitHub MCP. Document Option F at /handoff-blocks/pipeline-options.md."
    },
    {
      "id": "issue-053",
      "title": "Google Calendar integration (read first, then write)",
      "category": "process",
      "severity": "medium",
      "status": "open",
      "added": "2026-05-15",
      "added_by": "sam",
      "assigned_to": "sam",
      "notes": "Plan at /handoff-blocks/integrations/google-calendar-integration-plan.md. OAuth setup is real work (~3-5 hours total). Schedule as weekend project post-Pittsburgh. Phase 1 = read-only with G badge on /our/calendar, Phase 2 = explicit push button, Phase 3 = two-way sync (optional)."
    }
  ]
}