What's new — TroveSnap Tracker
Release history of the tracker itself (separate from the work-item activity feed,
which logs changes to the TroveSnap plan). Current version is shown in the
footer and the ✨ What's new tab.
v1.44.1 — 2026-06-20 · No GitHub links — CC-Analysis deploys with the tracker
- Removed all GitHub-source links from the Overview row (partners may not have GitHub). Moved
docs/CC-Analysis -> docs/tracking/CC-Analysis so its pages + infographics deploy with the
tracker; same-root links for roadmap.json / HITL / D9. Dropped the un-deployed Merged Plan +
User Stories hub links (a separate docs-site — deploy it on its own to re-add).
v1.44.0 — 2026-06-20 · Working doc links + design docs deploy with the tracker
- Moved
docs/design → docs/tracking/design so the design + pain-points docs deploy under
the tracker root (build output is docs/tracking) and their links actually work. Pain points,
Design & enhancements, and Web feature breakdown are now linked from the Overview link
row and the UI/UX tab.
- Fixed the broken Overview links: same-root targets resolve (Requirements → the rendered
requirements.html); docs that live outside the deploy root (Merged Plan, User Stories,
CC-Analysis, Vision Spec, Competitive Strategy, roadmap.json, HITL tasks, D9) now point to
GitHub source instead of dead ../ paths.
v1.43.0 — 2026-06-20 · Roadmap reflects work: gate status derives from items
- Gate status now derives from its work items (non-backlog items all done = passed; any
done/in-progress = in progress), so product milestones, the phase timeline, and gate chips
show real Platform & Contracts progress instead of 0%. Wave 1 now lights up P1 passed
- P2/P5/P9 in progress; overall ticked 16%→18% to POC. Respects explicit done + HITL-only gates.
v1.42.0 — 2026-06-20 · Phase serves-surface + wrapping fix + linked design docs
- Phase cards now show a
serves Web/App/Harness tag (explicit per-phase in roadmap.json;
derived for sprint cards) so it is clear what each phase delivers.
- Fixed the Phases & gates card wrapping — Gates / Sprint-work columns stack in the
3-across view and only split two-up when a phase is focused (full width).
- Design & enhancement docs (
docs/design/, HTML-rendered) are linked from the UI/UX
tab; the estate-seller pain-points page has per-pain SVG illustrations.
v1.41.2 — 2026-06-20 · Crosswalk serves-surface tags
- Each crosswalk sprint card now shows a derived serves Web / App / Harness tag —
computed from which UI/UX features its gates unblock (not hand-set), so the execution
view links to the surfaces without color-coding.
v1.41.1 — 2026-06-20 · Deepened web audit + done-card stripes
- The UI/UX web audit is now code-grounded per component: each card carries an
evidence line (component + line depth + demo-vs-live + bypass). It surfaced the key
finding — most seller/marketplace UI is built on
*DemoData, while the /trovesnap
workspace is live but through the quarantined troveSnapApi / /api/appraise paths.
- Done sprints in the "How it maps" crosswalk now get the faint diagonal-stripe
(closed) treatment, matching the Live Board.
v1.41.0 — 2026-06-20 · New UI/UX readiness tab (3 surface timelines)
- New UI/UX tab: three parallel surface timelines — Harness · Web · App — with
feature-level snapshots placed by the wave that makes each feature contract-ready.
Each card shows today's audited state (live / built-unwired / partial / planned) and
the gates it's gated by (with live gate status). Grounded in the route inventory +
the legacy quarantine (D32) so "built ≠ ready" is explicit (⚠ bypassing). QA
gates/sprints attach to a surface as its features reach live.
- Source of truth:
docs/tracking/ui-readiness.json (surfaces × features × readiness +
gating) — edit it like the rest of the plan.
v1.40.1 — 2026-06-20 · Crosswalk: phase + sprint descriptions, click-to-filter
- The "How it maps" crosswalk now shows each phase's goal under its name and a
general description for every sprint (
sprintDates[].desc).
- Clicking a phase in the crosswalk jumps to + filters that phase in the Phases &
gates section below — the two sections are now linked.
v1.40.0 — 2026-06-20 · Phase → Sprint → Gate made obvious + sprint driver type
- The execution hierarchy is now explicit on the Overview. A new "How it maps"
crosswalk shows each phase and the sprints it runs (driver-badged + gate counts +
status), so Phase → Sprint → Gate → work item reads as a tree. (Nesting is clean —
no sprint spans phases.)
- Sprints carry a driver — LLM (Claude/Codex agent-driven) or human
(Paul/contributor-led), some with HITL — badged on the Sprint index, the crosswalk,
and every gate. Closes the gap where human-vs-LLM was only inferable from item owners.
- Each gate's sprint is a clickable chip now (jumps to that sprint), not muted text.
v1.39.0 — 2026-06-20 · Static pages = the git plan (no overlay staleness)
- Static pages now render the git plan only. The Supabase live-state overlay
(
tracker-state.json) is no longer applied at build time — it could silently rot and
make the Overview/other pages look stale (e.g. a day-old "Updated" date). The Live
Board (app.html) stays the live view. Clean split: static = plan, board = live.
(tracker-state.json removed; tracker:sync is now vestigial.)
- The Overview "Updated" date auto-derives from the freshest source (the
updated
fields + the latest item-log date), so it can no longer go stale by hand.
tracker:check freshness guard warns when a source updated field lags the latest
item-log date, keeping the committed plan honest.
v1.38.0 — 2026-06-20 · Gate badges on Live Board work-item cards
- Work-item cards on the Live Board now show their gate badges (e.g.
P2, P3)
next to the requirement badges — reverse-mapped client-side from sprint-meta
(gates[].wi), so a card shows every gate it helps satisfy.
v1.37.0 — 2026-06-20 · Grid status badges (consistent) + Active/Closed/Queued filters
- One consistent status pill for every sprint state —
● active, ✓ closed,
queued — replacing the old mix of a pill + plain text. A single sprintState()
drives the row badge, the expanded-sprint header, and the filter chips, so they
never disagree (closed now reads as a real badge, not text).
- Active / Closed / Queued filter chips with counts beside the Full/Kanban toggle:
click to filter the grid by status (multi-select; click again to clear).
v1.36.0 — 2026-06-20 · Live Board = sortable sprint grid with expandable rows
- The Live Board is now one sortable grid of all sprints, replacing the
select-one-chip model. Columns: Sprint · Status · Items · Points · Gates ·
Started · Ended · Progress — click any column header to sort (toggles
asc/desc); default is plan order.
- Each row expands in place to that sprint's full detail — donut + gates +
requirements (
sprintHead), the status kanban, and any backlog it spawned.
Expand all / Collapse all controls; in-flight sprints auto-expand on load.
- Full view ↔ Kanban only toggle above the grid controls how much each expanded
row shows — the complete sprint view, or just the kanban columns.
- Backlog is a row too — expand it for the parked cards + drag-to-sprint
buckets (drag-and-drop preserved).
- Recent activity moved to a right-side drawer (toggle from the toolbar;
closed by default so the grid gets full width) — same pattern as the Issues
drawer. Owner filter + ★ My Tasks unchanged.
v1.35.0 — 2026-06-20 · Sprint started + ended (retro-done) dates
- Sprint index now shows Started + Ended columns on the
/sprints page (and on
each sprint's detail header). Ended = the retro-done date — it only appears once
the sprint is recorded in status.retros (D23), so a sprint that's done but not
yet retro'd (e.g. P&C Wave 1) reads as started-but-not-ended until its retro closes.
- Dates are a git-owned source field,
status.sprintDates ({ "<sprint>": { started, ended } }) — set started at kickoff, ended when the retro completes. Exposed in
sprint-meta.json (started/ended) so the Live Board can surface them next.
v1.34.0 — 2026-06-20 · Audited sprint moves + git→live sprint reconciliation
tracker:promote now moves sprints, not just status. Two new modes:
--to-sprint "<name>" (move the listed items to a sprint) and --sync-sprints
(reconcile every item's live sprint to the git plan's sprint field). Each move
writes a move_sprint audit row — same explicit, dry-run-by-default, never-on-deploy
contract as the status promote (D29).
- Fixes "a git re-plan didn't move the board." The D36 wave split re-assigned the
23 Platform & Contracts items into 5 waves in
status.json, but the Live Board still
showed them in the old single bucket — the reseed never overwrites live sprint
(WI-041/D29) — so every wave sprint read 0 items / 0% (it looked like Wave 1 was
never active). --sync-sprints reconciled all 23 to their waves, audited.
v1.33.0 — 2026-06-20 · Live Board polish + audited status promote
- Closed-sprint badges — a sprint chip whose work items are all done now reads
as closed: ✓ glyph (vs ● active), struck-through name, muted hatched fill;
legend shows ● = active · ✓ = closed.
- A sprint shows the backlog it spawned — selecting a sprint lists the backlog
items created from it (e.g. at its retro) under a "Backlog created from this
sprint" section (driven by an
originSprint tag → sprint-meta.backlogBySprint).
- Backlog view = sprint buckets, not a status kanban — parked cards on the left,
one drop-target bucket per open sprint on the right; drag a card onto a sprint
to move it (opens the editor with that sprint preselected so the audit reason is
still captured).
npm run tracker:promote — explicit, audited git→live status sync (dry-run by
default; writes an internal_tracker_events row; never fires on deploy). Fixes
"done in git but stuck on the board" without weakening the reseed contract (D29).
v1.32.0 — 2026-06-19 · Specs tab + per-spec pages + app surface map
- New Specs tab — the technical contracts in
docs/specs/ (P1–P10) render as
browsable pages (specs.html index + per-spec pages, GitHub source links).
- Each work-item page gets a Spec document section linking to its rendered spec.
- App surface map (
app-surface-map.html) — maps the trovesnap.com app screens
to the phase/sprint that makes each real (the shell is S1/done; fill-in spans C/D/E/F).
v1.31.0 — 2026-06-19 · Tools used + Files & artifacts (D28)
- Item pages record what was actually done: a Tools used section (the basic
tool calls) and a Files & artifacts section listing files changed as
{ path, change: new|modified } (new/MOD tag + GitHub link) — "files are
artifacts" (D28).
- The Findings section now rolls up
item.findings + every log[].findings
(deduped) — no longer empty while the log card lists findings.
v1.30.0 — 2026-06-19 · Richer item update logs
- Item pages get a proper Update log: dated callout cards with
markdown bodies, embedded tables, and findings bullets (was a flat
list) — matching the engineering-log quality bar. Header reads "X% · N/M tasks
complete".
- Log entries accept
{ ts, title, body (markdown), table|tables, findings[] }.
- Populated WI-039/040/041 with goals + real update logs (incl. the
tracker:check results table) as worked examples.
v1.29.0 — 2026-06-19 · Tracker Hardening (integrity check, decoupled reseed)
tracker:check plan-integrity gate (WI-039) — fails the build on duplicate
WI/requirement ids, broken gate/requirement/item refs, unknown sprints,
owner/reviewer labels not in the people map, and double-counted summary rows;
warns on coverage gaps + TBD owners. Wired ahead of docs:tracker.
- Reseed decoupled (WI-041) — a local
docs:tracker no longer writes the prod
DB; the reseed runs only on deploy (CF_PAGES) or npm run tracker:push. The
SQL seed no longer clobbers live HITL status/waiting_on/notes.
- Completion rule (WI-040) — a sprint is "done" when its work items are done
(matches the live board's retro trigger); gates are shown as a separate axis.
Summary rows are zero-pointed so velocity isn't double-counted.
v1.28.0 — 2026-06-19 · Issues filters (state + labels)
- The Issues page and the Live Board drawer now have an All / Open / Closed
toggle (with counts) and label-filter chips (bug, enhancement, documentation,
question… — derived from the issues, each with a count).
- Factored the issues UI into one shared
issues-ui.js so the page and the drawer
stay in sync. (Sets up using labeled GitHub issues for HITL/QA later.)
v1.27.0 — 2026-06-19 · Tech-debt cards (when / which sprint / scheduled)
- The Overview Tech debt panel is now styled cards (not flat bullets),
newest first, each showing when it was flagged (relative — "flagged
yesterday (date)"), the sprint it surfaced in, the source work item, and
where it's scheduled (e.g. → WI-040, or "accepted (low priority)").
techDebt entries can now be { note, found, sprint, scheduled } (plain
strings still work).
v1.26.0 — 2026-06-19 · Governance, retrospectives, Issues, cleanup
- Shared protocol — root
llminterchange.md + AGENTS.md/CLAUDE.md so Codex
and Claude work from one memory; new decisions D22–D27 (independent analysis
on response, poster = initiator, "closed round ≠ closed retro", agree → HTML
proposal → human approves → apply, findings tagged by author).
- Retrospectives — run as deliberations, finalized in
retrospectives/
(renamed from sprintretro/). Each retro renders to its own HTML page; the
Retros tab lists completed retros; closed sprints link to their retro
(sprint index + per-sprint pages). Tracker Foundation retro closed + applied.
- Tracker Hardening sprint — the approved retro actions: story-point
double-count fixed (summary rows zero-pointed; granular slices carry points),
Spine slices added, integrity/reseed/coverage/doc work items queued.
- GitHub Issues — a first-class Issues tab with an open-count badge, a
dedicated issues page, and a slide-out drawer on the Live Board, via an
Access-gated server-side proxy (the token never reaches the browser).
- Live Board — Backlog filter badge added to the sprint bar.
- Cleanup — removed the redundant static Board (redirects to the Live
Board); Decision log now renders as readable cards (was an unreadable
giant table); honor an explicit item
sprint so parked/Backlog items show.
v1.25.0 — 2026-06-19 · Live sprint-complete detection + planning what-to-do
- Retro alert is now live: a sprint is recognized as complete the moment its
last work item is marked done on the Live Board (computed from live items,
not the build-time plan) — the "run a sprint retrospective" banner appears on
the next refresh. Sprints already in
status.retros are excluded.
- Added light "What to do" notes to the planning/GTM items (WI-022–025
doc refreshes + WI-031 positioning) so no build item is left without guidance.
v1.24.0 — 2026-06-19 · Implementation plans across all build items
- Authored concrete Implementation plans for the rest of the build items —
Spine (WI-026, gate-grouped B1-B5), Operational C5/C6 (WI-027), Capture
(WI-028), Vision (WI-029), Demand/Recovery (WI-030), Mobile (WI-019), Harness
(WI-020), Deploy (WI-021), and Research (WI-037/038). Multi-gate items are
grouped by gate.
- Every forward build item (15) now carries data-model / lib / API / UI /
acceptance detail. Items with a Checklist (Platform & Contracts) point to it
instead of showing an empty prompt.
v1.23.0 — 2026-06-19 · Item pages: Implementation — what to build
- Item pages gain an Implementation — what to build section: concrete,
build-ready plans grouped by Data model · Domain (lib) · API · UI ·
Acceptance — actual tables/columns, helper modules, endpoints, and UI, not
just a pointer to the spec.
- Authored for the build slices WI-032–036 (rooms/zones, label batches, bulk
ops, client reports, vision scan contract). More items to follow.
implementation is a new status.json field ([{group, items[]}]); items
without one show a prompt to derive it from the linked requirement + specs.
v1.22.0 — 2026-06-19 · Item pages: work description + clickable spec links
- Each item's Requirements section now shows, per linked requirement, the
work (statement), Done when (acceptance), and clickable spec links —
derived from
requirements.json, so an item gets a real description + links to
the source specs with zero per-item authoring.
- Source citations everywhere (item pages + Requirements register) are now
GitHub links (
TriuneAmigos/TroveSNAP/blob/main/…, with the section note
preserved) instead of broken relative paths.
- Maintenance model: to describe an item's work, keep its requirements rich
(statement + acceptance + sources) — the item pages inherit it. Per-item
goals/todos remain optional extras.
v1.21.0 — 2026-06-19 · Retro alerts + My Tasks; research cleanup
- Completed-sprint alert: the Live Board shows a top banner when a sprint is
done but has no retrospective — e.g. "Tracker Foundation sprint completed —
run a sprint retrospective" (dismissable; clears once the sprint is listed in
status.retros).
- ★ My Tasks: one click filters the board + Human-tasks panel to the
logged-in person (owner = you), so each user sees just their work.
- Research cleanup: gathering vs tagging separated — HITL-RESEARCH-001/002
are now gather the photo sets (Justin); WI-038 is build the tagging corpus
from the gathered sets (Paul). All research HITL + the Gmail module (WI-037)
are Justin; the corpus build is Paul.
(Note: the Research sprint has 2 work items + 5 HITL tickets — the HITL
tickets show in the Human-tasks panel, not the work-item kanban.)
v1.20.0 — 2026-06-19 · Auto-reseed (no more manual SQL)
- New
tracker-push.mjs: pushes the git plan (items + HITL tasks) into the
triunalabs-internal Supabase tracker via REST. Folded into npm run docs:tracker, so every Cloudflare deploy auto-reseeds — no more running
0002_seed_trovesnap.sql by hand. Run npm run tracker:push to sync without a
deploy.
- Safe upsert for both items and tasks: new rows inserted in full; existing
rows get only definitions refreshed — live
status/sprint and
status/waiting_on are preserved. Keyless by design (skips with no
TRACKER_SUPABASE_KEY); best-effort (never fails a deploy).
v1.19.1 — 2026-06-19 · Remove breadcrumb; Live Board shows all plan sprints
- Removed the "Documentation / …" breadcrumb from every generated page.
- The Live Board sprint bar (and the edit modal's sprint dropdown) now include
all plan sprints from
sprint-meta.json, so a planned-but-unseeded sprint
(e.g. Research & Discovery) shows up and is selectable.
v1.19.0 — 2026-06-19 · Research sprint + contributor review
- New Research & Discovery parallel phase → a parallel Research sprint
(runs alongside the POC build). Gates R1–R5: garage/estate field corpora,
estate-seller pain-point interviews, an early beta cohort, and research-driven
feature prototypes. New product milestone PM11 Customer Research & Beta.
- Research tasks: human data-collection as HITL research tickets
(HITL-RESEARCH-001…004, reviewer = Paul, evidence + review→accept); buildable
features as work items — incl. the Gmail local-sales discovery module
(WI-037, owner Justin) and a field-sample corpus pipeline (WI-038).
- Contributor review + ownership: work items gain a reviewer field;
cards show the reviewer and a "needs review" badge when in the review lane;
the Live Board gains an Owner filter ("his vs mine"). New requirements area
Customer Research & Beta (REQ-RESEARCH-001…005). (decision D22)
v1.18.0 — 2026-06-19 · Requirement badges on cards, titles in detail
- Kanban cards (Live Board + generated sprint boards) now show requirement
badges — compact, status-coloured REQ-ID pills that deep-link to the register
(clicking a badge navigates without opening the card's edit modal).
- Item detail pages gain a Requirements section listing each requirement
as id + status + full title + link, instead of just badges.
- Per-item requirements (+ status) are carried in
sprint-meta.json so the live
board can render badges without a Supabase schema change.
v1.17.0 — 2026-06-19 · Live Board: sprint requirements
- Selecting a sprint badge now shows a Requirements panel for that sprint
(the requirements its gates reference) — each with its status pill and a link
to the full register entry (
requirements.html#req-…).
- The All view does not list requirements (that would be noise); it shows a
one-line link to the full requirements register instead.
- Per-sprint requirements are carried in the generated
sprint-meta.json.
v1.16.0 — 2026-06-19 · Promote architecture reqs to accepted
- Promoted 37 technical/architecture requirements from proposed → accepted
(their design is settled in accepted spec docs; build not yet complete):
contract, vision, spine, ops, capture, plat, sec, mcp, demand, infra, surface.
- Kept proposed (business decisions, not architecture): the 3 HITL business
reqs (BIZ-001/002, PARTNER-001), GTM copy/analytics/monetization
(GTM-001/003/004), and the pricing plans (MON-002).
- Status mix is now: 6 verified · 20 implemented · 75 accepted · 7 proposed · 1
deferred.
v1.15.0 — 2026-06-19 · Full-vision requirements register
- The Requirements tab is now a structured, full-vision register from
requirements.json (was a thin POC-scoped markdown table). 109 requirements
across 21 areas, each mapped to its phase gate + sprint, with honest status
(proposed / accepted / implemented / verified / deferred) and priority.
- Filterable by area and by status; each requirement links to its gate
and work items; requirement-ID badges across the tracker now deep-link
to the specific requirement.
- Decomposed from the vision/plan/spec docs (vision-scanning 7 scan types +
contracts, data-model layers, ingestion/security, MCP tiers, ops floor,
capture/connectors, appraisal, disposition/demand, alerts, buyer app,
surfaces, infra, monetization, ecosystem). All existing
REQ-… IDs preserved
so roadmap gates + work items still resolve. (decision D21)
v1.14.0 — 2026-06-19 · Phases & gates: phase filter badges
- Phases & gates is now badge-filtered (same idea as the Live Board's sprint
bar): an All badge plus one per phase (coloured by state, with a ● dot on
the active phase and a gates-passed count). Pick a phase to focus it full
width; pick All to see every phase.
- Top-of-page navigation auto-selects the phase: clicking a product-milestone
card, a gate chip, or a timeline node jumps to Phases & gates and selects that
phase (gate chips select the gate's phase and flash the gate). The user can
switch back to All anytime.
v1.13.0 — 2026-06-19 · Live Board sprint sections + merged detail
- "All" view is now sectioned by sprint — each sprint is its own titled block
with its own kanban, item/point counts, gate count, an active badge, and a
link to its full sprint page. No more one flat board mixing every sprint.
- Clicking a sprint badge merges in the sprint-detail view: a header with a
progress donut, points, gates-passed, an active badge, plus the Gates
panel (each gate showing what satisfies it — WI / HITL), and the Human tasks
(HITL) list scoped to that sprint's gates. The board itself is filtered to
that sprint.
- Parallel active sprints: the active badge is derived per sprint, so multiple
sprints can show as active at once (e.g. Foundation HITL + Sprint 1).
- Gates come from a new generated
sprint-meta.json (gates are a plan attribute,
not live state), which the board fetches and merges with live item statuses.
v1.12.2 — 2026-06-19 · Gate ← work / HITL linkage
- Sprint pages now show what satisfies each gate: "Satisfied by WI: … ·
HITL: …" under every gate row (or "No linked work yet" for an unlinked gate).
- New Human tasks · HITL section on each sprint page. This answers why
A7 (S-corp) and A8 (trademark) looked orphaned — they're HITL-QA
gates satisfied by business tickets (HITL-BIZ-001/002/003), not code work
items. The linkage existed in the data (
task.milestone); now it's visible.
v1.12.1 — 2026-06-19 · Correct sprint status
- Bug fixed: the Sprint Index could label a sprint queued while it already
showed progress (e.g. Surfaces & Delivery read "queued · 24% · 1/4 gates"
because WI-017 and gate S1 are done). The status only checked for in-progress
work, ignoring work that was already done or gates already passed.
- Sprint status is now derived consistently: done only when every gate and
item it owns is complete; active when it's the current sprint or has any
progress (in-flight items, a done item, or a passed gate); queued only when
nothing has started.
v1.12.0 — 2026-06-19 · Stable codes (fix git/DB desync)
- Bug fixed: WI-### codes were position-derived, so inserting an item shifted
later codes; with the safe re-seed (preserves live status/sprint by code), some
DB rows ended up pinned to the wrong item (e.g. WI-009's sprint was stale).
- Codes are now pinned in
status.json (explicit code), so they never
shift. One-time migrations/0003_resync_items.sql clears + reloads the DB to
realign. Add a fresh code when creating a work item.
- Link colour: the Live Board's hyperlinks now use the gold accent like every
other page (no more jarring browser-blue).
v1.11.0 — 2026-06-19 · Consistent styling
- The Human-tasks (HITL) list is now mini-cards (border, shadow, hover,
code pill) to match the kanban cards instead of flat divider rows.
- The WI/HITL code pill is now shared, so it renders consistently on cards,
the HITL list, and the Recent activity feed.
v1.10.0 — 2026-06-19 · Sprint filter badges
- Sprint filter chips above the Live Board kanban: All + one per sprint
(with item counts). Click to filter the board to a sprint.
- Active sprints are obvious — any sprint with in-progress / review / blocked
work shows a green ● dot and green outline.
v1.9.0 — 2026-06-19 · HITL via tickets, Backlog, Tech debt
- HITL handled in tickets: the Live Board's Human-tasks panel is now a clean
list that links to each task's ticket page (the ask + upload + review live
there) — no more inline controls crammed onto the board.
- Backlog bucket: items parked via "Move → Backlog" show in a dedicated
Backlog section on the Live Board (out of the status lanes) and as a Backlog
entry in the Sprint Index — a bucket to reassign at sprint retro.
- Tech debt list: work items can carry
techDebt: [...] (flagged by the
LLMs during sprint work); it shows on the item page and bubbles up into a
Tech debt panel on the Overview, each linked to its source work item.
v1.8.0 — 2026-06-19 · Trim redundant gate panel
- Removed the standalone "Phase gates" chip dashboard — it duplicated the
gate chips on the product-milestone cards and the detailed Phases & gates
summaries.
- Clicking a product-milestone card now scrolls to its phase in
Phases & gates; clicking a gate chip scrolls to and flashes that gate's
row (which carries the full description). One detailed gate view, not two.
v1.7.0 — 2026-06-19 · HITL task pages + business gates
- Each HITL task now has a detail page (
hitl/<id>.html) with the ask,
details, acceptance, and an on-page upload → review widget — so a
partner gets full context instead of a vague list row. Overview panels + the
Live Board link to them.
- HITL tasks carry richer descriptions (BIZ-001 S-corp plan, BIZ-002 review,
BIZ-003 trademark, PARTNER-001 Justin).
- New business gates: A7 "S-corp formed & signed" and A8 "Trademark
cleared" (HITL-BIZ tasks now map to them), plus a Business Foundation
product milestone (A4 · A7 · A8).
- Work items can reference HITL tickets (
hitl: [...]), shown on the item page
and back-linked from the HITL page.
v1.6.0 — 2026-06-19 · Overview navigation + clearer scope
- The header box no longer reads like "Sprint 1 has 52 gates" — it now shows
Whole roadmap: X/52 gates (all phases) · %-by-points, with the active
sprint on its own line.
- Click-to-navigate: clicking a product-milestone card (or a gate chip
in it, or a Start→POC node) jumps to that gate in the Phase gates
dashboard and expands it; clicking a phase in the timeline jumps to that
phase's summary below.
- Clearer explainer: product milestones (span phases) vs phase gates
(checkpoints) right on the panel.
v1.5.0 — 2026-06-19 · HITL file upload & review
- Human tasks panel on the Live Board: each HITL task (e.g. "Draft S-corp
filing plan") can take an uploaded file, which attaches to the task, moves
it to review, and is logged (
file_events).
- Review flow: open the attached file via a short-lived signed download
URL, and set the task status (approve → done, return → waiting) with a reason.
- New Access-gated endpoints:
/api/tracker-upload, /api/tracker-file,
/api/tracker-task. Files live in the private internal-files Supabase bucket
via the service role; the browser never holds a key.
v1.4.0 — 2026-06-19 · Story points & weighted progress
- Work items now carry story points (Fibonacci; architecture/coding pieces
weighted up). New
points column on internal_tracker_items.
- Progress is points-weighted — the overview KPI and every sprint show
done pts / total pts and a %-by-effort bar, instead of counting items
equally (so big build items finally move the needle correctly).
- Points shown on cards, the item at-a-glance, and the Sprint Index.
v1.3.0 — 2026-06-19 · HITL tasks link to their work item
- The Overview Waiting on humans and Partner contribution ledger panels
(and the per-phase Human tasks list) now link each HITL task to the relevant
work item ("Open WI-… →"), so a partner who sees a task knows where to go.
v1.2.0 — 2026-06-19 · Single edit surface
- The Live Board is the one place to edit. The per-item pages no longer have
inline status/sprint controls — they're the read/detail view now, showing
current status + sprint with an "edit on the Live Board →" link.
- Live Board cards link to their item page (a "details ↗" link); clicking the
card body still opens the quick-edit modal.
- Removed the obsolete per-page write layer (
tracker-app.js).
v1.1.0 — 2026-06-19 · Safe re-seed + maintenance guide
- Re-seeding is now safe: re-running
0002_seed_trovesnap.sql refreshes plan
fields (title, owner, priority, risk) for existing items but no longer
overwrites live status/sprint — so adding new items or refreshing the
plan never reverts edits made on the Live Board.
- Maintenance guide (
MAINTENANCE.md) — how to run and maintain the whole
tracking system (for the Codex handoff).
v1.0.0 — 2026-06-19 · Live tracker
The tracker became a live app — edit on the board, see changes instantly, no
redeploy.
- Live Board (
app.html): reads and writes Supabase live through the
Cloudflare-Access-gated Function — changes appear on refresh with no
redeploy, no sync, no commit.
- Inline editing: click a card → change status/sprint with a required
reason → saved instantly with who / when / why.
- Recent activity feed from
internal_tracker_events (last 25 changes).
- Canonical identity: each Cloudflare login email maps to one person
(Paul / Mark / Justin), so the audit is consistent across emails.
- What's new badge + this changelog + version tracking.
v0.5.0 — 2026-06-19 · Supabase state + Cloudflare Access
- State + audit + HITL moved to the
triunalabs-internal Supabase project
(internal_tracker_items / _events / _tasks); git stays the source of the
plan.
- Cloudflare-Access-gated write path (Pages Function): single sign-on, the
service-role key stays server-side, actor taken from the verified identity.
- One-time seed from the git plan + a pull-sync overlay for the static
view.
v0.4.0 — 2026-06-19 · Milestones, timeline & sprints
- Two milestone levels: major Product Milestones on a Start → POC
timeline vs phase Gates; the gate dashboard is now click-to-expand.
- Sprint-level view: a sprint index, per-sprint detail pages, and an
active-sprint hero; status ladder extended with Queued and Review.
- Tabs render as HTML views (Requirements / Decisions / Retros / Model)
instead of raw
.md/.json.
v0.3.0 — 2026-06-19 · Item detail & codes
- CaseTracker-style item pages: at-a-glance dependency table (depends-on /
blocks / retires), header progress bar + risk, a Verify (done-when) section, a
rich titled update log, and prev/next navigation.
- Work-item codes (
WI-###) everywhere.
v0.2.0 — 2026-06-19 · Roadmap depth
- Roadmap deepened to 9 phases / 52 gates, including a build-first
Platform & Contracts phase and a Surfaces & Delivery phase.
- Product-milestone rollup, testing-gate types (code vs HITL QA),
cost-on flags, and a sprint-retrospective process.
v0.1.0 — 2026-06-18 · First tracker
- Generated overview, milestone dashboard, phase timeline, kanban
board, and per-item pages from
status.json / roadmap.json.