Initiatives
What each team is shipping, tracked by indicators rather than dates. An initiative is done when every indicator reaches its target and holds steady — no calendar commitments. Click Read full memo on any card for the operator-level scope.
Live - fetched 2026-07-13 09:18 UTC-generated 2026-07-13 09:18 UTC
Total
1
In flight
1
Complete
0
Retired
0
In flight
active initiatives; readiness read off the indicator dashboard, not a dateCoaching files a paired-region initiative covering the Postgres migration and the Sales scheduling integration
In flightNot started
Sales deep link handoff livenot started; deep-link emission and Sales-side receiver land alongside the calendar-roster-app-shipped indicator and the Sales close-orchestration consumer build→At least one successful close-orchestration round-trip per week in production using a (lead_id, service_area_id, coach_id, window_start, window_end) deep-link emitted from Coaching's app calendar view in sales mode
Cross-domain consumer indicator for the Sales-mode deep-link path agreed on the 2026-05-16 acceptance thread; gated on both Coaching's app shipping the deep-link emission and Sales' close-orchestration flow exposing the receiving URL
In progress
Airtable callers zero0 callers of lib/airtable in production code paths (app/, modules/, lib/)→0 callers of lib/airtable.ts in production code paths in both Oahu and Dallas buildsstable 59drefreshed 58d ago
Static count of files importing lib/airtable.ts in Coaching's production code paths excluding scripts/ migration helpers; module deletable without breaking the build is the substantive end-state
Airtable import ci guardrail activeactive: scripts/guardrail-airtable-imports.mjs wired via pretest -> lint:airtable-imports→CI fails on any production-path import of lib/airtable.tsstable 59drefreshed 58d ago
Operationalizes airtable-callers-zero so a post-stabilization regression cannot land silently; a code-grep CI gate that fails on any module under modules/, app/, or lib/ (excluding lib/airtable.ts itself and scripts/migrate-coach-*) importing from lib/airtable.ts
Calendar roster app shippedv1 + projection-state + nav + summary + service-areas + coverage-heatmap + dashboard + CSV export + sub-day NowLine + full Coaching-mode editing (profile, templates, exceptions, materialize) serving: coaching/app/operator/{layout.tsx (OperatorNav: Dashboard/Calendar/Roster/Service Areas/Coverage with shared OperatorTabId), page.tsx (redirects), dashboard/page.tsx, calendar/page.tsx (NowLine divider), roster/page.tsx + roster/export/route.ts, service-areas/page.tsx + service-areas/[serviceAreaId]/page.tsx + service-areas/export/route.ts, coverage-heatmap/page.tsx, coach/[coachId]/page.tsx (Coaching-mode embeds CoachProfileEditForm + AvailabilityTemplatesPanel + AvailabilityExceptionsPanel + MaterializeAvailabilityCard, all posting to the existing modules/ops/actions server actions with returnTo back to the operator detail; LegacyOpsBridge reduced to a small "Coaching Ops home remains available during parity-and-retire" link), _components/SummaryMetricRow.tsx} all wired against modules/operator-app (mode parsing, default filter sets, deep-link emission, projection-state lookup, mode-aware summary metrics, service-area aggregation, per-day coverage breakdown, cross-area heatmap builder, coach-status rollup, RFC-4180 CSV serializer, splitWindowsAtNow, formatNowLineLabel); typecheck clean, 83 tests passing across 10 files; visual regression equivalence remains the separate calendar-mode-parity indicator→Coaching operator app under coaching/app/operator/ serves calendar, roster, and per-coach detail routes in production across all three modes (?mode=coaching, ?mode=sales, ?mode=delivery) with mode-default filter sets implemented per the 2026-05-16 acceptance memo
Production-route presence and mode-coverage check for the calendar-and-roster operator app accepted on 2026-05-16-coaching-calendar-roster-app-acceptance; clears when the single-app shape at coaching/app/operator/{calendar,roster,coach/[coachId]} serves all three modes and the URL-parameter mechanism is wired
Blocked
Supply ops ui retiredfunctional parity reached: profile editing, weekly templates, exceptions, and materialize-availability all migrated to /operator/coach/[coachId] in Coaching mode posting to the existing updateCoachOpsAction / createAvailabilityTemplateAction / createAvailabilityExceptionAction / materializeCoachAvailabilityAction; the legacy /?tab=supply surface still serves for parity-window observation but no edits live exclusively there anymore. Retirement (404 or redirect) gated on operator-confirmed parity observation window→Standalone Supply Ops UI URL returns 404 or redirects to the calendar-and-roster app's Coaching mode
Operationalizes the Supply Ops UI absorption named in 2026-05-16-coaching-calendar-roster-app-acceptance §Coaching's own operator mode; Coaching-internal retirement step that clears once Coaching mode reaches functional parity with the existing surface
Coach day planner migration landedmigration shape locked per 2026-05-16-delivery-coach-day-planner-migration-followup and 2026-05-16-coaching-coach-day-planner-migration-answers; Coaching now consumes Delivery's §4.3 wildcard read in delivery mode and renders real lesson blocks; awaiting Delivery's cutover re-declaration once Coaching's calendar-mode-parity indicator clears→Delivery's existing /coach-day-planner URL 302-redirects to coaching.sguildswim.com/operator/calendar?mode=delivery&date=<YYYY-MM-DD> for the first 30 days then promotes to 301, with the broader lesson-list scope served via the §4.3 lock_state=[*] (or equivalent) extension per 2026-05-16-coaching-coach-day-planner-migration-answers
Cross-domain handoff indicator for the Coach Day Planner migration; clears when the cutover lands and Delivery's planner URL stops serving the Delivery-side implementation
Done
Availability projection freshnessobservation window open 2026-05-16 after Platform Phase 3 docs shipped in 2026-05-16-platform-dispatcher-phase-3-docs-shipped; subscriber live since 2026-05-09 per 2026-05-15-coaching-projection-cutover-shipped; local inbox path smoke-verified end-to-end 2026-05-13 (HMAC, dedup, projection write) per 2026-05-13-coaching-dispatcher-inbox-live; production observability against projection event-to-projection lag in place→p95 lag <= 5s in BOTH regions, observed stable for two consecutive weeksstable 58drefreshed 58d ago
p95 event-to-projection lag of Coaching's lock-aware availability projection against Revenue's authoritative lock state, evaluated independently in Oahu (org recAbU7cdF25zx3Qe) and Dallas (org receu2hzz85FkloBt); single-region freshness does not satisfy
Eligibility read consistencyobservation window open 2026-05-16 after Platform Phase 3 docs shipped in 2026-05-16-platform-dispatcher-phase-3-docs-shipped; cut-over executed per 2026-05-15-coaching-projection-cutover-shipped; reads now served from the lock-aware projection rather than the interim sync-query→Sales offer-construction reads and Delivery assignment reads agree on same-lesson eligibility within freshness window in BOTH regions for two consecutive weeksstable 58drefreshed 58d ago
Same-lesson eligibility-read consistency between Sales' offer-construction path and Delivery's assignment path against coach-availability §4.1, §4.2.1, §4.2.2; cross-domain agreement is the leading Coaching quality bar per domains/coaching.md
Regional cutover stagger0 days; cutover is a single code-level event covering both region tenants per 2026-05-15-coaching-projection-cutover-shipped; structurally below the 14-day kill threshold→<= 14 days between Oahu and Dallas production cutovers
Time delta between the dates Oahu and Dallas regions independently flip from interim sync-query to projection-based reads in production; stagger > 14 days is a kill trigger that reopens the initiative pair per the records' killCriteria field
Identity v1 shippedcompleted: Identity v1 and v1.1 are shipped per 2026-05-02-platform-identity-v1-1-shipped and 2026-05-23-platform-initiative-scope; Coach Externals are reframed to Platform per ADR-0010 and Platform exposes PersonExternal reverse lookup plus forward listing at GET /api/identity/v1/person/{person_id}/externals→Identity Contract v1 status accepted with the canonical Person facts surface live
Cross-domain dependency surfacing Coaching's Coach Externals reframe per ADR-0010; Coach provider externals route through Platform's person_externals table via GET /api/identity/v1/person/{person_id}/externals; the original Coaching scoping commit named this dependency in prose, this indicator makes it visible to consumers reading the /initiatives view
Calendar mode paritycompleted: visual regression equivalence evidence and the Oahu/Dallas operator smoke reports passed; lesson rendering consumes Delivery's sales-scheduling-surface §4.3 wildcard read with lock_state=* in delivery mode and renders scheduled, requested, held, confirmed, consumed, and released lesson blocks grouped by coach and day; primitives landed (recurring-overlay toggle, NowLine, date-navigator, search, URL-param preservation, accessibility, empty-state polish); no functional regressions reported in the two-region smoke pass→Visual regression tests against Coaching's app in delivery mode pass for the existing planner's daily-driver test cases (single-coach, multi-coach, recurring-overlay-on/off, search-active, date-navigator positions across the next 30 days in Oahu and Dallas rosters), the four primitives (recurring-overlay toggle, NowLine, date-navigator, search) behave equivalently to the existing planner, and two daily-driver operators (one per region) complete a full operational day on the new app with no functional regressions reported
Functional-parity indicator for the delivery-mode-specific render against the existing Delivery Coach Day Planner per 2026-05-16-coaching-coach-day-planner-migration-answers; Delivery's eventual cutover commitment can structurally gate on this indicator being at target