docs(convoy): post-ship metrics and operator checklist for Phase 3

Record Neon migration applied, scan_attempts snapshot, and backfill gate.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Randall Stillwell 2026-08-14 21:48:58 -05:00
parent b2c02cb45b
commit a9d16d2e4d
2 changed files with 27 additions and 6 deletions

View file

@ -14,7 +14,7 @@ skip:
- a11y
- design
- flag
status: in-progress
status: shipped
created: 2026-08-14
depends_on:
- improve-scan-card-detection
@ -113,7 +113,27 @@ unknown-card fallback.
- [x] Brief 3 — identify kNN route + client escalate order
- [ ] Threshold bake-off on real crops
- [ ] Re-measure auto-match % excluding `not_a_card`
- [ ] Operator: `npm run backfill-embeddings` on prod/staging after migrate
- [ ] Operator: `AI_GATEWAY_API_KEY` + `npm run backfill-embeddings` on Neon (migrate applied 2026-08-15)
## Post-ship (2026-08-15)
**CI fixes:** PR #162`lib/card-embed.js` allowlist + pgvector migration
graceful skip on non-superuser homelab CI.
**Neon operator:** `1782000000001_add-card-embeddings` applied manually
(pgvector + columns + index + pgmigrations row). Full backfill pending
`AI_GATEWAY_API_KEY` in operator env.
**scan_attempts snapshot** (90d, n=250, pre-backfill / no L0 traffic yet):
| Signal | Value | Baseline |
| --- | --- | --- |
| L1 escalate | 78.4% (87/111) | 76.7% |
| L1 matched | 5.4% (6/111) | 5.8% |
| L2 not_a_card | 43.9% (61/139) | 44.6% |
| End-to-end auto-match | 10.0% (25/250) | 10.3% |
Re-measure after backfill + preview scanning for L0 `layer=0` rows.
## Likely file ownership

View file

@ -169,10 +169,11 @@ on all three (no new routes or visual language).
- [x] Pull `scan_attempts` baseline (2026-08-14)
- [x] Open worktree `scanner-identify-upgrade` from `main`
- [x] Seed sub-convoys #1#3
- [ ] Architect: pick up `tighten-scan-identify-hot-path` first
- [ ] Re-measure `scan_attempts` after #1 ships
- [ ] Architect: `improve-scan-card-detection` (or parallel if files stay disjoint)
- [ ] Architect: `scan-visual-catalog-search` after warped crops exist
- [x] Architect: pick up `tighten-scan-identify-hot-path` first
- [ ] Re-measure `scan_attempts` after all phases ship (post-backfill)
- [x] Architect: `improve-scan-card-detection`
- [x] Architect: `scan-visual-catalog-search` after warped crops exist
- [ ] Operator: merge #162 CI fix, `npm run migrate up`, `npm run backfill-embeddings`
## Worktree