29 Commits

Author SHA1 Message Date
Alexander Rozhenko
79e7a4f61f fix #2: header pill refreshes itself after swipes, undo and new batches
loadStats() only ran once at boot, so the live/fresh/new pill (and the
list sub-line) went stale until a full reload. Refresh it, debounced and
fire-and-forget, after any decision change, when a new batch lands, and
on app foreground. Adds two fe_walk_v11 regression checks + a UI-SPEC note.
2026-11-13 15:58:36 -04:00
Torres
66d3cc4da3 docs: apply the v1.1 UI-SPEC amendments (A-I) from V1.1-BUILD.md
§2 card geometry contain/blur bullet · §2 loud empty state · §7.3 header
pill fresh counter · §10.1 batch-formula-v2 composition sentence · §10.2
dry-catalog note · §10.3 violet SECOND LOOK band + dossier mirror · §10.5
minimal rubric + rubric_debug visibility · §11.3/§11.4 info-first doors
and the viewer walk-back chain.
2026-11-13 14:05:33 -04:00
Torres
2160ba6ce8 feat(v1.1): item 9 — batch formula v2 compose rewrite (AMENDS the frozen '<=5 returns' rule)
Allocator now: reserved returns (>=2 whenever eligible stock exists,
role order, surprising-gate on reserved nope slots, cap-4 family) ->
wildcards (2) -> fresh (remainder, capped at 23; wilds draw from the
fresh pool without consuming fresh slots) -> fill returns to size (role
order, <=2 re-nopes total, two-pass family cap: 4 preferred, 8 rescue for
fill slots only). MAX_RETURNS dies; FRESH_CAP=23, MIN_RETURNS=2,
RETURN_FILL_FAMILY_CAP=8 land. Rich day = 21 fresh + 2 second looks +
2 wildcards (the sign-off shape); dry day fills to 25 with returns; 0/0/0
composes an empty section; shortfalls are never padded.

Docs: module docstring, RANKING.md section recipe and DATA-MODEL returns
eligibility rewritten to the v1.1 contract (+ rubric_debug pref noted).

Selfcheck: A1-A8 compose matrix on deterministic staged pools (21/2/2
rich; 5 fresh + 20 SL fill incl. wild-from-fresh derivation; 21/2/2
sign-off; 12-return dry with <=2 nopes + LAST_TWO re-compose; 40 fresh ->
23+2 then the 15 leftover with zero overlap; 0/0/0 empty; family-cap 8
fill rescue; rested/gate-blocked re-nope rules). Pool-honest note: the
spec's A2 '5 fresh + 18 returns + 2 wild' assumed 7 fresh listings —
wildcards are by definition never-swiped, so a 5-fresh day reads 5 fresh
total (3 new + 2 wild) + 20 second looks.
2026-11-13 13:53:33 -04:00
Torres
7a1d14f23a docs: v1.1 build authorized — Glenn's sign-offs (>=2-SL default, violet band, Backspace alias); status -> implementation 2026-11-13 13:22:16 -04:00
Torres
829d43851b docs: v1.1 implementation specification 2026-11-12 15:04:40 -04:00
Torres
381b6c8a9c docs: v1.1 round 2 — fresh counter, loud empty state, batch formula v2 (25-target, second-look fill), Second Look band pop 2026-11-12 14:51:43 -04:00
Torres
7e4c41cffd docs: v1.1 gains section-counter bug fix + dry-catalog messaging (diagnosed live 2026-11-12) 2026-11-12 14:44:07 -04:00
Torres
d1c3adddff docs: version map — v1.1 (QOL batch, awaiting build order) / v1.2 (analytics suite + fresh-ledger reset) 2026-11-12 14:39:07 -04:00
Torres
085b2bc2ce docs: BACKLOG — v1.1 photo treatment decided: option C (fit + blurred backdrop) for card + info hero 2026-11-12 14:37:31 -04:00
Torres
e77ed38ebf docs: BACKLOG — gallery mirror gap (galleries not locally hedged; primaries only) 2026-11-12 14:35:15 -04:00
Torres
eff1ae313f docs: BACKLOG — v1.1 QOL wishlist (shortcuts, tap flow, photo fit, rubric) + analytics phase notes 2026-11-12 14:31:29 -04:00
Torres
47cecbc28b docs: record v1.0.0 Gitea release (tag on main head) 2026-11-12 14:17:38 -04:00
Torres
d4cb6bc2e8 docs: P4 complete — tailnet sidecar authorized, biketinder node serving, first phone swipes; exit criteria met 2026-11-12 14:06:09 -04:00
Torres
e1db51c461 docs: P4 deployed — stack live under podman-stack-bike-tinder.service, nightly import+read+backup armed, in-container requests fix, sidecar pending one-time tailnet auth 2026-11-12 10:03:54 -04:00
Torres
d663f1eeb5 deploy: P4 runbook — deploy/rollback/logs/import gating/backup-restore drill/phone checklist + one-time sidecar key step 2026-11-12 09:59:45 -04:00
Torres
8a0c566a68 docs: backlog — dry-pool UX + agent feedback notes (2026-11-12) 2026-11-12 09:38:00 -04:00
Torres
44202c3679 docs: B1 receipts — confirmed the 1 un-enriched item is a photo-less ad at source (placeholder by design) 2026-11-11 00:38:57 -04:00
Torres
a50ed1e593 docs: B1 receipts — gallery counts corrected (639/640 carry imgs; 1 un-enriched falls back to legacy single image) 2026-11-11 00:38:38 -04:00
Torres
7441f0550b docs: B1 shipped — photo experience v2 built, verified (walk 390/390, selfcheck 31/31), live on :9453 (2026-11-11) 2026-11-11 00:37:54 -04:00
AlexanderRozhenko
6de2fcc1bd docs: B1 (photo experience v2) contract frozen — UI-SPEC §11 (galleries, photo flip, fullscreen viewer, repeat rotation), DATA-MODEL B1 additions; PLAN/BACKLOG: B1 pulled forward before Phase 4 2026-11-10 23:57:33 -04:00
AlexanderRozhenko
8c1946db8e docs: PLAN — Phase 3 built, verified, and live (Torres build $3.80/25-25; Alex independent verification; second-look fix 1e4d840; live integration 2026-11-11 + calibration pass) 2026-11-10 23:41:49 -04:00
AlexanderRozhenko
8060852b83 docs: backlog - Glenn's photo-experience v2 idea queue (multi-image galleries, Tinder-style photo swipe, fullscreen viewer) 2026-11-10 23:12:29 -04:00
Alex (Hermes)
40b42b1d40 docs: freeze Phase 3 contract - sections (25), second looks with rounds, match points + tank gauge, agent pass; UI-SPEC v3 + DESIGN/RANKING/DATA-MODEL/PLAN additions 2026-11-10 22:52:51 -04:00
AlexanderRozhenko
49e284ff56 docs: record Phase 2 build + verification (dedupe/backfill resolved, proof URLs) 2026-11-10 21:43:33 -04:00
AlexanderRozhenko
9bc6948861 docs: freeze Phase 2 contract — UI-SPEC v2 (approved mockup A, stack engine, deltas) + DATA-MODEL P2 addendum (migrations, cursor pagination, media mirror) + frozen mockup reference 2026-11-10 21:11:27 -04:00
AlexanderRozhenko
d8510c184a docs: record verified Phase 1 results (twin counts in SOURCES; phase status + Phase 2 backlog in PLAN) 2026-11-10 19:00:00 -04:00
AlexanderRozhenko
670648b17a docs: housekeeping - branch policy, Tailscale sidecar deployment (no host coupling), dedicated import cron plan 2026-11-10 18:09:16 -04:00
AlexanderRozhenko
18bf31f361 docs: add SOURCES, DESIGN, DATA-MODEL; record v1 decisions (Kijiji source, rank-all deck, badge-only feed); vendor hunt reference modules 2026-11-10 17:48:32 -04:00
AlexanderRozhenko
fc3aad1e93 docs: initial set - README, PLAN, UI-SPEC, RANKING 2026-11-10 17:38:01 -04:00