Hito activo: Septiembre

Última sincronización: 2026-09-28 (auto via GitHub Action — no editar a mano). Deadline: 2026-09-15 · -13 días restantes Repo: gala1234/thefittclub


Estado del hito

████████████████████ 99% (875.5/888 pts)

MétricaValor
Tickets totales313 (306 done · 0 en vuelo · 7 pending)
Puntos restantes12.5 pts
ETA (early)2026-10-05 (1 semana)
ETA (late, +50%)2026-10-08
Fuente velocitycalendar (pts/wk) · 76.13 pts/week (n=141) · semanas de calendario, últimas 4 semanas cerradas
Coste por ticket (no es ritmo)6.2 h/pt de reloj abierto·cerrado (n=453)
Velocity calendar76.13 pts/week (n=141, last 4 wks)
¿Llega a deadline?⚠️ En riesgo (ETA early 20 días después de deadline)

🧭 Orden de ejecución (brújula)

Espejo del bloque compass:septiembre del board (_docs/03-tickets/00-board.md). Editar allí, no aquí.

🧭 Septiembre — orden de ejecución (brújula, refrescada 2026-09-21 tras la poda del backlog). Norte, cumplido en su primera mitad: la oleada salió el 17-09 por el grupo de WhatsApp con la dirección app.thefittclub.com; las tres pantallas del primer día (T699 panel, T670 cierre, T581 evaluación) cerraron con veredicto de comprensión. Lo que manda ahora es la segunda mitad, que ningún criterio de salida escribió: de las 19 que entraron ese día, 18 no han entrenado.

MEDIDO EL 17-09         121 socias legacy · 65 con acceso · 19 primeros accesos en un día (antes: 0) · 2 entrenaron
LA PODA DEL 21-09       233 pendientes leídos uno a uno: 7 muertos · 4 duplicados · 39 mal etiquetados · 183 vivos — **APLICADA el mismo día** (su go: `implementa todos estos cambios`)
                        informe con la prueba de cada fila: _docs/03-tickets/_nightly-audit/2026-09-21-backlog-pruning.md
                        y su lectura en el vault: 100_Desarrollo/03_Priorizacion_Backlog.md
QUEDAN EN SEPTIEMBRE    9 — los ocho que una socia migrada ve o sufre HOY, más T803 (activación), abierto en la poda
SALEN (hecho)           → Beta: T326 T574 T587 T591 T723 T727 T745 T794 T797 T798 T800 · → Producción: T724 T796 T799 T801 T802
  • Los ocho que se quedan, en este orden. T588(M) — cerrar sesión no cierra nada; una cookie revocada sigue entrando siete días, /admin incluido. Es el P1 sobre cuentas vivas y tu decisión del 15-09: el único de seguridad que no espera. Toca auth: go explícito tuyo al activar. · T773(S) — el siguiente de la secuencia que fijaste el 17-09 (T771 → T703 → T773): seis de siete eventos no distinguen migrada de nueva; es la única forma de saber qué pasó con las 18. · T777(S) — un login que falla en la red no dice nada; un iPhone real el 18-09 en la puerta por la que pasan todas. · T775(M) — quince pantallas de error en treinta días delante de socias y Sentry solo guarda UnknownError; diagnóstico primero. · T790(M) — las de F2/F3 perdieron «Ronda N de M» desde la migración 0094. · T627(S) — cinco fichas Legacy piden un número que el clip contradice; necesita tus cinco dictámenes. · T774(S) — /es/soporte le vende el método a quien ya pagó. · T387(M) — la encuesta de Semana 0 aplicada al motor de ~14 socias, con su consentimiento.
  • T803 sale de septiembre → Beta (2026-09-24, tu decisión). Tu criterio, que corrige el norte de esta brújula: las socias legacy usan la app según vean, sin empujar a las ~100 — las dudas llegan a tu teléfono personal. Te bastan 5-10 que la usen por su cuenta y te den feedback. «18 de 19 no han entrenado» deja de leerse como un problema a resolver. Orden de ahora: T588 · una rama con T777+T738+T732 · T773 · y T584 (el dominio: www muestra «Plan Expired»).
  • Las tres decisiones, tomadas el 21-09 con el voto del arquitecto y de la PM (informe § 10): (1) T54 sale del camino de T20: lanzamiento solo en euros, T20 se queda la columna de moneda, T54 → Producción con disparador «primera compradora fuera del euro». (2) El ticket de activación se abre ya (T803), con T773 como su medición y no como precondición. (3) La regla de entrada «un hallazgo no es un ticket» está en el harness (00-new-ticket.md Paso 0, PR #1812 fusionada) con su plantilla de ledger en _docs/ops/. Y T29 se parte: el presupuesto de rendimiento es T804(S, Beta).
  • Cerrado desde la brújula del 11-09: T699 T670 T581 T386 T771 T703 T730 T772 (anulado, absorbido en T386) T569 T614 T785 T786. Ya no queda nada de la oleada por enviar; lo que queda es que entrenen.

Carga de trabajo

EffortTicketsPtsDetalle
XS10.5 ptsT807
S33 ptsT627 · T774 · T777
M39 ptsT387 · T588 · T790

Contenido real por producto

Derivado del código en cada corrida — la fase cuenta como contenido REAL solo si existe drizzle/seeds/catalog/products/ritual/<producto>-phase<N>-data.ts. El scaffold dummy (T211) NO cuenta. Dos Ritual Core distintos — no confundirlos.

ProductoF1F2F3F4Real
Ritual Core Legacy (prod_ritual_core_legacy) — el producto de las socias vitalicias — pipeline T65✅✅✅✅4/4
Ritual Core nuevo (prod_ritual_core) — futuro: versión del Legacy con varias sesiones por día para elegir duración (express/base/progressive)⬜⬜⬜⬜0/4

En vuelo ahora

(ningún ticket de Septiembre en Active ni QA)

Listos para activar (sin bloqueos)

Estos tickets no tienen dependencias pendientes — pueden pasar a Active con un “go”:

#TicketTítuloEffortModelDomain
16T387Q3 personalization seed: Semana-0 survey → migrated members’ physical profilesMmixedcontent-migration
—T588Revoked sessions lose access on the next protected requestMopusauth
—T627The eleven Legacy counts where the clip says one number and the app asks for anotherSfablecontent-migration
—T774The support page sells the method to a member who already bought, and claims an inbox that does not existSmixedcontent-migration
—T777A login that fails on the network says nothingSopusauth
—T790The player names the round and the series from the rows, not from a repeat counterMmixedplayer
—T807Count the deploys that strand a member, before fixing themXSopusinfra

Grafo de dependencias

Tickets con dependencias explícitas (de la sección “Blockers / dependencies” de cada spec):

  • T774 (The support page sells the method to a member who already bought, and claims an inbox that does not exist) → depende de: T386 ✅

Próximas 4 semanas

Tickets de Septiembre proyectados por semana (basado en velocity + cola de prioridad):

SemanaTickets SeptiembrePtsOtrosRiesgo
Wk1 (2026-09-28)T387311 tix (34 pts)✓
Wk2 (2026-10-05)—0—✓
Wk3 (2026-10-12)—0—✓
Wk4 (2026-10-19)—0—✓

Backlog completo Septiembre

#TicketTítuloBriefEffortModelDomainDeps
16T387Q3 personalization seed: Semana-0 survey → migrated members’ physical profilesAplicar la «Encuesta - Semana 0» (archivada por T300) al perfil físico de las so…Mmixedcontent-migration—
—T588Revoked sessions lose access on the next protected requestUna sesión revocada seguía entrando incluso en administración. Consultar su vige…Mopusauth—
—T627The eleven Legacy counts where the clip says one number and the app asks for anotherT611 aligned the counts she had ruled on and wrote «cualquier cuenta sobre la qu…Sfablecontent-migration—
—T774The support page sells the method to a member who already bought, and claims an inbox that does not exist/es/soporte se pinta en dos estados y el copy solo está pensado para uno. …Smixedcontent-migrationT386
—T777A login that fails on the network says nothingiPhone, /es/registro, 18-09: el fetch del login cayó en la red (`TypeError: …Sopusauth—
—T790The player names the round and the series from the rows, not from a repeat counterLas sesiones de F2/F3 llevan cada vuelta escrita fila a fila y el player ya no d…Mmixedplayer—
—T807Count the deploys that strand a member, before fixing themEl 21-09 una socia dijo Cuando le doy a comenzar no se activa. Hay un camino e…XSopusinfra—

Completados en Septiembre

TicketTítuloEffortCerrado
T25Support form backend (tickets + auto-reply)M2026-09-04T10:52:32Z
T35Cookie consent banner + legal-surface completionM2026-05-29T23:08:35Z
T38Branded error pages: routing + HTTP layer (404, 500, offline)S2026-07-31T18:19:23Z
T40Auth hardening: rate limiting + health-data consentL2026-05-30
T41Rebrand system core (DESIGN.md v5, foundation for T97–T104)L2026-05-22T16:45:32Z
T42AI code review automation (PR-gate via Anthropic API)M2026-05-19T13:05:27Z
T43AI-Agent Security Checklist + Endpoint AuditM2026-05-21T09:15:00Z
T44LLM input/output hardening (provider-aware, Workers AI primary)L2026-05-22T23:00:00Z
T45Dependency supply-chain policy (lockfile + Dependabot + action pinning + SBOM)M2026-05-19T23:06:58Z
T47Repo layout convention + dep-cruiser enforcementM2026-05-20T18:02:47Z
T48Seeds consolidation (first layout migration)M2026-05-20T21:25:08Z
T49EU compliance umbrella (DPIA + DPAs + retention + breach SOP + VAT + cross-system GDPR cascade)L2026-06-24T05:12:29Z
T50Accessibility WCAG 2.1 AA baseline + CI enforcementM2026-05-20T22:45:03Z
T51Admin BO audit log (transversal)L2026-05-29T17:08:11Z
T52PWA contract + service worker strategy + Lighthouse gateL2026-08-02T13:53:24Z
T55Analytics tool selection + GDPR-clean wiringM2026-06-06T13:33:30Z
T5656b — Public status page + incident CMSL2026-07-20
T57Per-product retention design (Rituales / Módulos / Cápsulas)M2026-06-24T11:09:27Z
T60Cook thefittclub-eu-compliance-advisor skill via Skill CreatorS2026-05-29T14:51:09Z
T61Pre-MVP lead magnet (decision + production)M?
T65Zenler Content Pipeline: Ritual Core Legacy → MVPL2026-09-04T15:51:19Z
T67Skills as pre-commit / CI deterministic gateS2026-05-19
T68Setup Loops + migracion SendGridS2026-05-28
T69DB schema leads + bilingual guides + migrationsM2026-06-07T00:11:37Z
T70Pagina /auto-test (surface completa: UI + logica + resultado)L2026-07-28T17:09:59Z
T71Auto-test bonus PDF delivery (3 variants, ES+EN)M2026-08-03T11:34:18Z
T72/guias + /guias/[slug] (listado + detalle + form descarga)L2026-06-21T04:45:08Z
T73Ritual Core waitlist (Home section + founding members)M2026-06-24T12:26:21Z
T74Worker API /api/leads (POST)M?
T75Loops sync (webhooks + journeys)L2026-05-28
T76Email templates Loops (3x5 = 15 emails, ES/EN)L2026-05-28
T77PDFs a R2 + signed URLsS?
T78Analytics tracking (lead magnets)M2026-08-03T20:38:16Z
T80Test architecture: 4-layer pyramid + tests/e2e/ restructure + ADRM2026-05-19T07:44:39Z
T81Observability service unit tests + T27 QA theaterS2026-05-19T08:07:45Z
T84Adapt to react-router 7.15 + @types/react 19.2 strictnessS2026-05-20T08:36:47Z
T85i18n stack major upgrade (i18next 24→26 + react-i18next 15→17 + http-backend 3→4)M2026-05-22T23:38:54Z
T86Vite 6 → 8 upgradeM2026-05-27T09:20:15Z
T88Board + spec blocker auto-cleanup on ticket closeS2026-05-20T10:15:17Z
T89lint-board-blockers regex false positives on dates and filename slugsXS2026-05-20T13:22:28Z
T90Pre-commit hooksPath auto-wire + board lint coverageXS2026-05-20T15:54:04Z
T91PR subscription poll-back protocolXS2026-05-20T17:13:15Z
T92Resolve EvolutionChartsPanel ↔ ui/index.ts circular importXS2026-05-20T20:16:22Z
T94Breakpoints: Tailwind default contractS2026-05-21T13:51:54Z
T97Rebrand: auth surfaces (signup / login / reset-password)L2026-05-31
T98Rebrand: global navigation + footerM2026-05-30T12:53:53Z
T99Rebrand: dashboard “Mi espacio” Phase M (umbrella — close handoff gaps)M2026-06-16T20:43:53Z
T100Rebrand: player session shellL2026-06-19T17:25:00+00:00
T101Rebrand: onboarding flowM2026-06-14T00:47:48Z
T102Rebrand: landing Hito 1 (lead-magnet funnel homepage)M2026-06-13T09:41:35Z
T103Rebrand: account / profileS2026-06-20T15:29:12Z
T104Rebrand: error pages (404 / 500 / offline)S2026-07-31T11:17:18Z
T110Consolidar 4 audit jobs en uno (palanca #3 cost mitigation)M2026-05-22
T116Backfill dependency-justification.md rows missed by T85 (+ stale security-baseline.md note)XS2026-05-23T05:23:28Z
T119CI test gate: vitest unit + component as required check + anti-trivial-test defensesS2026-05-23T18:58:26Z
T121Skill .usage-log.jsonl persistence in remote-only modeXS2026-05-23T18:58:26Z
T136Canonical brand pages for LLM citation: /metodo + /faqM2026-06-16T10:12:11+00:00
T152De-medicalise UI copy: clinical framing → body-awareness languageXS2026-05-29T19:48:49Z
T153Resend email infrastructure (unified)L2026-05-28
T167Apply edge WAF rate-limit rule on domain migrationXS2026-09-04T10:12:28Z
T172Bilingual media + subtitles schemaL2026-06-01T18:46:07Z
T173i18n schema consistency cleanupM2026-06-01T16:30:55Z
T174i18n storage-pattern gate (enforce ADR-0010 mechanically)M2026-06-01T22:24:17Z
T175Design SSOT: single canonical source + versioning policyM2026-06-10T22:50:40Z
T176Component reuse contract + enforcement gateM2026-05-31T18:25:38Z
T177Forms SSOT: primitive library + migrate hand-rolled formsL2026-05-31T21:25:27Z
T178Buttons SSOT: route all CTAs through <Button>L2026-06-01T10:07:35Z
T179BentoCard consolidation: 6 files → 1 variant-driven primitiveM2026-06-18T17:03:24Z
T180Modal consolidation: composable bodies over one Modal baseM2026-06-24T13:36:00Z
T183BO: per-locale media upload (es/en) for catalog contentL2026-06-01T20:02:49Z
T184Retire legacy shared media columns + dummy per-locale media seedM2026-06-01T21:26:33Z
T190Reduce Cloudflare preview request consumption (avoid free-tier daily cap)XS2026-06-03T09:54:34Z
T192Custom domain cutoverS2026-09-06T19:40:18Z
T193Zenler legacy membership migration (users + access + progress)M2026-06-05T12:08:08Z
T194Legacy payment transactions ledger (preserve full Zenler purchase history)M2026-06-05T17:21:21Z
T195Formalise payment_transactions retention + erasure in security-baseline.md §4XS2026-06-05T18:55:27Z
T197Onboarding consent coherence + skip-to-generic escapeL2026-06-25T16:42:17Z
T200Safe-start gate: no active program before postpartum-readiness floorM2026-06-26T10:46:00Z
T201fix: legacy seed generators emit BEGIN TRANSACTION (D1 rejects it)XS2026-06-05T18:22:56Z
T202Back Office payments ledger view (read-only)S2026-06-05T18:45:00Z
T203BO payments: membership filter + payment detail viewM2026-06-05T23:21:38Z
T204Ritual Core Legacy: product definition + cohort eligibility + entitlement seedM2026-06-06T08:22:27Z
T205Retention: computed re-engagement (pause / lapse)M2026-06-06T11:41:42Z
T210Footer + nav “Próximamente” state + resolve unlinked public pages (absorbs T165)M2026-06-06T14:35:45Z
T211Seed: Ritual Core Legacy phases (21 sessions/phase + 2→3 & 3→4 transitions)M2026-06-06T15:41:00Z
T214Legacy position backfill (currentPhase + mainSequenceDay from real Zenler progress)M2026-06-06T18:55:17Z
T215Archive Zenler data before losing accessM2026-06-07
T218Back Office: page media assets library (marketing images + videos)L2026-06-12T06:03:16Z
T219Front-end page-asset consumption layer (slot registry + hook + fallback)M2026-06-12T19:07:40Z
T220Rebrand: biblioteca (member catalog)L?
T221Rebrand: fase actual (current-phase detail surface)M2026-06-16T15:45:04Z
T222Rebrand: module & capsule detailM2026-07-01T20:29:14Z
T223Drift-audit: auth surfaces (T97) vs Main StyleS2026-06-11T08:25:21Z
T224Drift-audit: global nav + footer (T98) vs Main StyleS2026-06-11T15:08:24Z
T225Fix: password show/hide toggle dead until field interaction under iOS autofillS2026-07-01T22:26:50Z
T226Nav state matrix + scroll-overlap aterrizaje (Main Style)M2026-06-11T17:09:34Z
T230Fix: home loader 500s when page-asset resolution fails (page_media_assets missing in prod D1)XS2026-06-13T10:17:44Z
T231Dashboard hero: session-meta block (stats + materials)S2026-06-13T17:44:59Z
T232Dashboard collection data projection (DAL for the vitrina)M2026-06-13T18:12:50Z
T233Dashboard “Tu Colección” vitrina + StateVacio convergenceL2026-06-13T19:59:13Z
T234Dashboard progress card → FaseActualCardM2026-06-14T14:24:49Z
T235Capsule “Reto” (challenge) product concept: data + backofficeM2026-06-13T20:59:38Z
T236Collection cards: per-addon urgency countdownS2026-06-13T22:41:26Z
T237Brand doctrine: motivation vs anti-gamification (rewrite the rule)S2026-06-13T17:44:59Z
T239BO-configurable onboarding step groups (data-driven wizard, per product)L2026-07-02T12:24:39Z
T240Playwright E2E infra fix (auto-install Chromium in ephemeral containers)XS?
T243Back Office media: upload reliability + CF resource deletion + subtitle validationM2026-06-15T07:46:13+00:00
T244Scalable multi-surface page-asset slots (extends T219)M2026-06-15T15:29:40Z
T254Back Office: pick from existing Cloudflare Stream / Images library (no re-upload)M2026-06-15T12:14:47Z
T256BO media library + landing media rendering (CF Images variants, editor preview, founder video, list filter/sort/paginate)XL2026-06-15T18:40:31Z
T258Landing card media (BO-managed) + hero image-or-videoM2026-06-15T20:15:51Z
T261Rebrand: El Método (/metodo · /method)M2026-06-19T21:49:13Z
T262Rebrand: FAQ (/faq)M2026-06-19T23:43:25Z
T263Rebrand: Soporte (/soporte · /support)M2026-06-20T08:28:22Z
T264Rebrand: dashboard StateVacio / StateOferta — land the HERO “Estados del Dashboard” designL2026-06-16T19:13:17Z
T265Fix: dashboard needs_onboarding classifier disagrees with the onboarding route (CTA bounces to dashboard)S2026-06-16T20:38:34Z
T266Physical-profile delivery model: decouple delivery_type from postpartum recencyL2026-06-19T06:37:45Z
T271fix: completed prod_ritual_core_legacy sessions don’t appear in “Your library”S?
T274Account credential: role/tier badge + member numberM2026-07-25T15:55:00Z
T275Account privacy section: GDPR export + delete logicL?
T276Account physical: wire the stimulus readout to the real derived planM?
T278Profile avatar upload (member photo, R2-backed)S2026-06-25
T283Wire lead-magnet email delivery (/api/leads → Resend)S?
T287fix: guide PDF upload presign returns HTML (UI-route action) → move to resource routeS?
T289fix: R2 signing hard-500s authed surfaces (missing creds / sign failure) → degrade gracefullyS2026-06-21T17:40:00Z
T291fix: Fase 1 techniques broken in the app (BO works) — library queries wrong product for legacy users; player technique video not rendering + desktop overlapM2026-06-23T20:15:28Z
T295Unified TechniqueViewer redesign (player + biblioteca) + acquisition ceremonyL?
T297Technique acquisition loop polish: immersive library viewer + “new technique” library-nav indicatorM?
T298Dashboard welcome row: mobile edge/border-radius clipping of kicker + switcherXS2026-07-03T14:45:25Z
T300Archive all Zenler data before account access expires (~1 month)S2026-09-01T22:02:42Z
T317AEPD pre-launch: Privacy Policy (Art. 13) + RAT + go-live checklistM2026-06-25T16:42:17Z
T319Profile ambassador programme (referral code + discount + points ledger + waitlist)L2026-08-02T10:47:40Z
T320Lead multi-tag model (accumulating funnel/origin/lifecycle tags) + Zenler re-importM2026-06-27T17:19:30Z
T322BO email event analytics (delivered/opened/clicked/bounced) + privacy updateL2026-08-23T14:39:45Z
T329Accessibility baseline: resolve the expired T41 contrast deferrals for realM2026-07-01
T338Fix: prep-mode dashboard loop — restore START + retarget prep banner to the playerS2026-07-03T14:00:08Z
T353fix: dashboard progress counters must reflect reality (same-day repeats, cross-product leak, completion idempotency)M2026-07-26T17:05:00Z
T354fix: player completion screen shows false “end of this phase” — next-session states (locked / loop / next phase / continue)M2026-07-26T22:20:56Z
T355fix: library seal badge never clears (multi-unlock asymmetry, per-device state, techniques-facet-only witness)M2026-07-28T10:16:24Z
T356fix: trained-day bucketing uses UTC, not the member’s real day (Europe/Madrid evening sessions land on the wrong date)M2026-07-27T11:11:22Z
T358fix: session shows “0 min” when routine blocks are tagged under a non-resolved product-modality (per-modality duration fallback)S?
T364fix: the CI flags step turns a tolerated warning into a red buildXS2026-08-02T13:06:57Z
T368E2E progress-state fixtures: seed personas for every player next-session stateM2026-07-26T22:20:56Z
T371E2E fixture accounts still live in production carrying real training dataS2026-08-05T09:14:12Z
T374Doctrina v4: ventanas F3-F4 [3,6], config-only (sustituye el suelo plano [5,5])S2026-07-28T17:09:59Z
T377fix: tfc-brand-vocab-lint is blind to the brand’s forbidden tech-copy phrasesXS?
T378fix: Art. 9 health data is processed with no demonstrable consent record for pre-ledger membersM2026-07-29T23:32:57Z
T380fix: the sign-in form puts her password in the URL if she submits before the page hydratesXS2026-07-29T23:35:58Z
T381Contact the members holding Art. 9 data without a consent recordS2026-08-05T07:56:41Z
T382fix: the verify-email wait state drifted from its delivered designS2026-08-07T13:36:29Z
T386Legacy migration go-live: the wave went out on WhatsApp; measure it and close what it left openM2026-09-18T08:53:15Z
T389Shell viewport band: a page is the viewport minus the top navigationS2026-07-31T11:17:18Z
T403fix: a switched-off ambassador programme takes the whole profile page downXS2026-08-02T13:04:34Z
T406fix: the phase-schedule editor deletes every day it declined to showS2026-08-02T14:59:29Z
T409Testimonial capture form + curation SSOT (“Tu historia”, circular arc 4)M?
T417The Privacy Policy publishes four retention deadlines that nothing enforcesM2026-09-08T13:44:03Z
T420fix: phase-change modal shows invented track totals and the wrong progress counter (+ presentation pass)M2026-08-17T16:58:51Z
T423study: the progression engine and which of its parameters the Back Office should ownM2026-08-08T08:16:47Z
T424One owner for host configuration (canonical origin, brand entity @id, link base)S2026-08-08T08:35:35Z
T425fix: the auto-test pill row hardcodes the phase count the Back Office ownsXS2026-08-07T20:41:25Z
T426fix: the SessionStart hook never wires core.hooksPath in a remote sessionS2026-08-08T13:29:47Z
T427Seed phase_unlock_conditions for phases 2, 3 and 4 (the gate silently falls back to code)S2026-08-11T11:07:03Z
T428One question bank, soft voice: onboarding and auto-test ask the same questionsL2026-08-11T17:01:37Z
T429The progression engine, rebuilt: per-phase base weeks + per-answer rules, no clampXL2026-08-11T21:31:07Z
T430The Back Office grid: every answer’s effect on every phase, with impact previewXL2026-08-12T06:15:06Z
T431fix: the auto-test publishes the wrong product’s numbersS2026-08-10T15:55:41Z
T432Member-facing phase descent, and free movement between phases already earnedL2026-08-12T10:19:13Z
T433Start a programme over from zeroM2026-08-17T20:01:00Z
T434Tell her when her effort will not unlock the level test, and whyL2026-08-18T09:03:09Z
T457The prod content deploy is broken, and the snapshot that protects Back Office edits was never committedM2026-08-16T08:27:37Z
T468The result she reads is derived from the number she gets, not from a parallel scoreM2026-08-20T13:37:09Z
T471fix: persistEngine rewrites the engine in sequential statements — a mid-write death serves a mutilated engine to every memberS2026-08-12T07:27:37Z
T472Engine grid legibility: label the cells, explain saturation where it happens, and a guide that matches the screenM2026-08-12T21:43:29Z
T473See and set which engine governs each product, from the Back OfficeM2026-08-14T07:35:41Z
T474Track thresholds move onto the engine; purge the ghost unlock thresholdsL2026-08-14T11:50:45Z
T475Onboarding questions born from the assigned engine, plus the founder’s own extrasL2026-08-14T16:39:16Z
T476Level-up tests follow the engine: coverage per transition, and no test offered after the last phaseM2026-08-15T11:11:19Z
T477The engine seed stops masquerading as the engine: honest degradation, observedM2026-08-15T23:28:36Z
T478fix: a racing double-submit of a passed evaluation writes duplicate “passed” history rowsS2026-08-16T10:17:31Z
T479The onboarding question library shows and edits visible_in_autotestXS2026-08-16T15:12:58Z
T480fix: two phase lookups still match raw sort_order against the phase numberXS2026-08-16T19:22:51Z
T496Browser verification as an implementation step: the local Playwright harness, universalizedM2026-08-15T14:15:41Z
T497fix: The assessment route ignores productId: every member is evaluated as Ritual CoreS2026-08-15T13:42:35Z
T498fix: taps land on a loaded-looking screen and nothing happens (start-session + player close, production, iPhone)M2026-08-15T22:55:54Z
T499fix: session duration double-counts perSide exercises whose demo clip already shows both sidesS2026-08-16T11:29:56Z
T502fix: passing a phase evaluation shows “Error” on screen — the api.* routes answer HTML, not JSONS2026-08-16T19:52:46Z
T507Cloudflare zone for thefittclub.com (NS migration from GoDaddy)S2026-08-28T12:30:00Z
T508Better Auth accepts app.thefittclub.com (allowedHosts gap)XS2026-08-24T08:55:15Z
T509app.thefittclub.com as emergency alias on the Pages projectS2026-08-29T11:10:00Z
T510Member comms: what to do during LaLiga block windowsXS2026-09-03
T511Canonical origin flip off pages.dev onto app.thefittclub.comM2026-09-06T18:51:50Z
T514fix: the last two api.* routes still answer HTML — api.auth.$ and api.progress-imageS2026-08-16T21:17:09Z
T516fix: the offline write queue has no producerM2026-08-24T13:22:38Z
T517fix: the offline surface promises downloads that do not existXS2026-08-16T22:25:21Z
T518fix: the Offline handoff still ships the defect T517 removedXS2026-08-20T16:32:18Z
T521She can see how she advancesL2026-08-28T17:29:29Z
T522Nothing in the toolchain asks whether she understandsM2026-08-23T17:15:59Z
T523The moment she earns a phase passes in silenceM2026-08-22T19:02:17Z
T524The Back Office tells the truth about the auto-testS2026-08-29T12:55:18Z
T525One weeks floor for the member and for the funnelS2026-08-29T14:21:26Z
T526The three result texts describe her path, not her muscleS2026-08-31T09:48:48Z
T527The smoke job stops paying for fonts it does not renderXS2026-08-20T12:59:02Z
T529fix: the Offline handoff still specs a banner that was never builtXS2026-08-20T22:28:50Z
T530BO broadcasts reach pure-customer members (unblocks the legacy invitation)M2026-08-21T13:17:41Z
T531The ascent-test kicker names the member’s own productXS2026-09-02T14:47:33Z
T532T128 language-debt cleanup: allowlist to zero dated entriesM2026-08-21T04:08:57Z
T535The block-window screen tells the truthS2026-08-23T11:26:32+00:00
T539fix: the session-end screen asks twice, breaks its scale and hides its own buttonS2026-08-28T16:35:00Z
T543fix: the visual sweep’s host guard accepts productionS2026-09-02T13:25:59Z
T553Calibrate the comprehension gate so a good screen can pass itS2026-09-04T23:10:57Z
T561The three bonus guides still promise what T468 deletedM2026-09-05T09:37:05Z
T562The Rituals SSOT documents the engine that was deletedS2026-09-04T23:10:57Z
T563Product truth read from the database and the code, not from proseM2026-09-05T08:53:50Z
T567The method document the repository does not haveM2026-09-04T23:10:57Z
T568Fix: the effort question promises a progression Legacy does not haveM2026-08-31T11:56:51Z
T569Seven lifecycle events fire without the analytics grant, and the RAT says consentS2026-09-11T19:10:10Z
T570fix: orphan rows reach a production migration unannouncedS2026-09-03T20:03:49Z
T571A second stage for the comprehension judgeM2026-09-05T08:46:35Z
T580A gauge for the metered Cloudflare resources, before the next one ambushes usS2026-09-06T19:40:18Z
T581The evaluation intro never says what skipping costs, and names a criterion it does not defineS2026-09-12T08:49:53Z
T582The .subhdr atom: what T531 changed in it, and what it still owes the other surfacesS2026-09-06T00:13:16Z
T585fix: admin child routes are reachable without the layout’s admin gateS2026-09-03T19:41:43Z
T586fix: withdrawing health-data consent leaves the raw onboarding answers in placeS2026-09-05T23:58:09Z
T590fix: the profile’s Subscription tab shows a mock invoice history to real membersXS2026-09-05T21:06:45Z
T592Every email a woman reads passes the founder’s P6 voice filterS2026-09-03T22:03:38Z
T595fix: a content recut leaves ghost sessions in a member’s LibraryS2026-09-04T14:15:33Z
T596The delivered form has a live character counter and a placeholder select; the shipped primitives have neitherS2026-09-06T00:13:16Z
T597fix: hola@thefittclub.com reaches nobody, and the product publishes it in eleven placesS2026-09-04T15:00:28Z
T598Nobody can read the support tickets the form now storesS2026-09-04T13:05:26Z
T599The local smoke rung fails on a hydration budget it was never sized forS2026-09-05T22:41:46Z
T600fix: the orphan detector cannot read productionS2026-09-04T11:25:25Z
T601fix: a KV outage during the attempt check loses the support messageS2026-09-04T12:48:13Z
T603The preview wait still spends five minutes proving a commit was never deployedXS2026-09-05T22:21:29Z
T604The diff-only critique wrapper fails Back-Office files the real gate exemptsXS2026-09-05T22:41:46Z
T605The player runs a block’s rounds and says so at a glanceM2026-09-04T16:45:21Z
T606Ritual Core Legacy audited clip by clip against ZenlerL2026-09-04T23:24:56Z
T607board-index --write should collapse the duplicate Last updated: line, not just re-derive the countsS2026-09-05T22:41:46Z
T608What the guides form says when it fails, and whether she can act on itM2026-09-04T19:43:21Z
T609Legacy cards list the materials she names in the clip; categories follow one written ruleS2026-09-05T00:29:54Z
T610The Zenler material that is not an exercise gets a destination: phase PDFs, bonus videos, measurement videos, glossaryM2026-09-06T12:19:41Z
T611Legacy blocks carry the rounds Zenler asked for and the counts she says in the clipM2026-09-04T22:28:13Z
T612Legacy cards say only her words: descriptions, tips and warnings corrected from the D6 verdictsM2026-09-05T06:40:00Z
T614F1-F3 clips re-rendered with audio chain E, boundaries re-cut where she confirms, thumbnails she pickedL2026-09-10T21:56:43Z
T615fix: production is behind the seed on 13 F3 per-side clips (clip_covers_both_sides) and two clip lengthsS2026-09-04T22:28:13Z
T618A session-close exam the contradiction class of defect can failS2026-09-05T06:33:16Z
T619The three DRIFT lines T563 left: two stamps that ask for a number their sentence does not state, one row the design does not haveS2026-09-05T09:56:38Z
T620The landing hero serves a native portrait video on mobileS2026-09-05T11:21:26Z
T621fix: the phone hero paints the landscape still before the portrait masterXS2026-09-05T22:49:24Z
T622fix: the phone hero sometimes plays the landscape masterXS2026-09-05T22:49:24Z
T623fix: the account tab is named for a subscription that does not renewXS2026-09-05T22:14:14Z
T626Production is behind the seed on three Legacy rows, and the content snapshot froze all threeS2026-09-06T13:02:31Z
T630The session hero is the image again: 16:9 frame, completed state on the image, one line of materialS2026-09-06T14:19:22Z
T633fix: the language switcher is invisible in the desktop account menuXS2026-09-06T15:17:23Z
T634Home sends a signed-in member to her panelS2026-09-06T16:13:09Z
T635The published policy never says we keep 10,860 addressesM2026-09-07T07:04:00Z
T636Rescue the Zenler consent wording before the account expiresXS2026-09-06T15:19:47Z
T637fix: a phone that refuses to autoplay shows a black rectangle instead of the sceneS2026-09-06T20:30:00Z
T638The sweep will delete women we are actively emailing, because opening an email is not “activity”S2026-09-07
T639fix: the retention cutoffs overflow on 29 February and delete a day earlyXS2026-09-06T12:20:41Z
T640fix: the Back Office leads list cannot see the 10,856 it is countingXS2026-09-06T15:23:14Z
T642A lead who became a member ages out while she is still training, and her consent proof goes with herS2026-09-06T22:04:20Z
T643fix: one definition of “UI file”, and the T51 admin exemption the receipt gate never hadS2026-09-06T20:53:49Z
T644fix: Unsubscribing is broken six ways, and one of them restarts the retention clockM2026-09-07T07:04:00Z
T652The member catalogue sells what is not for saleM2026-09-07T12:49:26Z
T653fix: a Spanish ISP block on Cloudflare’s ranges empties the landing, because its media comes from three hostnames that are not oursM2026-09-06T22:07:02Z
T655fix: the landing downloads about 400 KB it does not needS2026-09-07T12:11:05Z
T657fix: the landing’s background bands go dark when the video host is blockedXS2026-09-06T20:05:00Z
T658Social login registers in silence from the sign-in modeS2026-09-07T11:14:44Z
T670Guardar es la única forma de registrar una sesión, y una sesión repetida no vuelve a preguntarS2026-09-12T12:28:31Z
T672fix: the down page still depends on a host that may be downXS2026-09-07T22:12:29Z
T677The gauge she will actually seeM2026-09-07T14:20:19Z
T679A recovery request tells nobodyM2026-09-07T17:28:26Z
T681fix: the Back Office translation editor destroys tagline and topic tags on every saveS2026-09-08T08:28:44Z
T682Every email, read in the situation it arrives inL2026-09-10T08:12:19+00:00
T683A rule written down, and nothing checking it, let scripts/ into productionM2026-09-08T16:31:45Z
T684A verdict that recovers the accountM2026-09-07T17:29:53Z
T685The preview URL can serve another branch’s build, and nothing noticesS2026-09-07T21:14:29Z
T697The panel’s journal card ignores the program’s own switchXS2026-09-09T10:17:12Z
T699The panel does not answer the questions it exists to answerL2026-09-11T21:52:23Z
T705Guides match the method, their test result and the launch stageL2026-09-11T07:52:17Z
T710recupera-tu-core’s two covers, uploaded and pointed at by real Cloudflare idsS2026-09-11T11:33:18Z
T713The auto-test has two scrolls on a phone, and #guias lands under the headerS2026-09-11T07:52:17Z
T714The #guias anchor jumps instead of glidingXS2026-09-11T09:10:44Z
T719The contrast ledger has no owner, and its number is not the real oneL2026-09-12T16:38:03Z
T722fix: the phase gate opens with no entry date and no sessions doneM2026-09-13T15:22:23Z
T734fix: email signup creates no account, and the screen tells her it didS2026-09-13T14:05:03+00:00
T735Open the public site to Instagram and YouTube trafficL2026-09-13T18:18:51Z
T743fix: the Block Exposure card takes the whole Back Office dashboard down with itS2026-09-14T11:50:10Z
T748fix: the same-origin guard misses the backslash form of a protocol-relative URLS2026-09-14T14:56:00Z
T771Read the errors Sentry has been collecting, and give every one of them an ownerM2026-09-21T13:01:11Z
T772The member support page answers a business that has not opened yet (cancelled, absorbed into T386)M?
T773Six of the seven lifecycle events cannot tell a migrated member from a new oneS2026-09-21T14:48:18Z
T775The route error boundary renders with no error in her handsM2026-09-21T17:15:00Z
T779Fix: the mutation instrument runs zero tests per mutant and reports every mutant as survivedS2026-09-18T23:52:23Z
T780Phases 2 and 3 in their three modes, seeded for both Ritual Core productsL2026-09-18T12:14:24Z
T781The dashboard asks D1 for the same session three timesM2026-09-19T13:17:50Z
T782The phase-1 evaluation placeholders leave the catalogS2026-09-20T11:53:16Z
T783One copy helper, one re-own helper, one duration formula: the T780 seed code without its duplicatesS2026-09-19T15:05:42Z
T784Fix: the session’s stale-duration banner never clears on a three-mode sessionS2026-09-19T11:36:59Z
T785The AI reviewer skips a PR for its generated dataS2026-09-20T13:31:30Z
T786The dashboard E2E file never reaches its last testS2026-09-18T19:40:23Z
T791The done-today persona has never trained todayXS2026-09-18T17:39:54Z
T805A new member outside Madrid meets an error screen on her first panelS2026-09-21T18:40:00Z
T806Nobody owns a thrown Response, so nobody reports itS2026-09-22T09:06:28Z
T811Fix: the “Situación y condiciones” card rejects every save with “Nivel de actividad no válido”S2026-09-22T10:36:05Z
T812The form is the contract: a test that submits what the browser submits, and a lint that keeps every _intent route coveredM2026-09-24T08:15:47Z

Auto-generado por scripts/maintenance/generate-vault-dashboard.mjs. Última corrida: 2026-09-28.