Skip to content

Dispatch β€” Linear Backlog (ready to import) ​

Status: Phase 1 + Phase 2 created in Linear Β· Last updated: 2026-06-22

This doc mirrors the Phase 1 plan (docs/superpowers/plans/2026-06-15-dispatch-phase-1.md) and the design spec (docs/dispatch-production-design.md), and records the Linear issue ids once created.


Targets ​

ThingValue
Teamgravitas
Label (new)dispatch β€” color #C1D841 (brand neon) β€” desc: "Dispatch β€” AI-augmented BPO cooperative OS"
ProjectDispatch β€” Phase 1 (MVP Core) β€” team gravitas, label dispatch
Issue label on every issuedispatch
Link on every issuethe plan doc + relevant spec section

Creation order (tool calls) ​

  1. list_teams β†’ resolve gravitas team id.
  2. list_issue_labels (filter dispatch) β†’ create via create_issue_label if absent (team-scoped to gravitas).
  3. save_project β†’ create Dispatch β€” Phase 1 (MVP Core) in gravitas with label dispatch.
  4. save_issue Γ—6 β†’ the Phase 1 epics below (project set, label dispatch).
  5. save_issue Γ—2 β†’ the Phase 2 and Phase 3 roadmap tracking issues.
  6. (Optional, on request) explode any epic into per-task sub-issues via save_issue with parentId.

Phase 1 epics (6 issues) ​

Each epic's description should carry its task checklist (below) plus: Plan: docs/superpowers/plans/2026-06-15-dispatch-phase-1.md and Spec: docs/dispatch-production-design.md.

Epic 1 β€” WS0: Foundation & infra scaffolding ​

Stand up the monorepo, Go API skeleton (+ Swagger), Angular shell (+ theme port), Supabase, and infra/CI skeletons.

  • [ ] 0.1 Monorepo + tooling skeleton (/api, /web, /supabase, /.github/workflows) β€” go build + ng build succeed, CI green on empty PR.
  • [ ] 0.2 Go API skeleton + /health + gin-swagger mounted at /swagger β€” httptest health test passes; swag init generates docs/swagger.json.
  • [ ] 0.3 Angular shell (zoneless, SSR/SSG) + design-system theme port (styles.css/bespoke.css, DaisyUI via PostCSS) β€” brand tokens render; theme toggle persists to dispatch_theme.
  • [ ] 0.4 Supabase project + migration tooling + Fly/Cloudflare configs (enable pgcrypto, vector) β€” supabase db reset clean; fly config validate passes.

Epic 2 β€” WS1: Auth & roles ​

Google Workspace OIDC via Supabase, Go JWT + role-guard, Angular auth + guards.

  • [ ] 1.1 Supabase Google Workspace OIDC + hosted-domain gate; public.users row on first sign-in with membership_role, OIDC name.
  • [ ] 1.2 Go JWT verify + RequireAuth/RequireRole middleware β€” tests: validβ†’ctx, invalidβ†’401, role mismatchβ†’403.
  • [ ] 1.3 Angular auth (login, OIDC callback, authGuard, roleGuard); admin button role-gated; session deferred to afterNextRender.

Epic 3 β€” WS2: Domain schema & migrations ​

Full Dispatch Postgres schema with role-aware authorization and seed.

  • [ ] 2.1 Core tables: organizations, mandates, tasks (gacx_reward display-only), skills, user_skills (0.00–10.00, coefficient), votes/vote_ballots, notifications.
  • [ ] 2.2 Role-aware RLS policies (Members own; MP/Admin all; validated_score MP-only) + authz matrix doc.
  • [ ] 2.3 Seed data matching the reference demo; sample mandate completion cross-checks WS3.3.

Epic 4 β€” WS3: Go API β€” CRUD engine + domain services ​

Generic CRUD + OpenAPI + completion + skills/validation + notifications.

  • [ ] 3.1 Generic crud[T] engine + per-entity schema (orgs/mandates/tasks/users); round-trip + validation + role tests.
  • [ ] 3.2 OpenAPI annotations + swag init generated spec + CI drift check.
  • [ ] 3.3 Completion service (Passed 100 Β· Live 60 Β· Progress 50 Β· Queued/Failed 0) β€” table-driven tests.
  • [ ] 3.4 Skills + user-skills + validation queue (MP-only Approve/Reject/Re-open; 0.00–10.00; coefficient).
  • [ ] 3.5 Notifications + Supabase Realtime publish (member-registration β†’ MP alert; mark-read).

Epic 5 β€” WS4: Angular app ​

Typed client, schema-driven CRUD, admin console, member app, registration, connection indicator + PWA.

  • [ ] 4.1 Generated typed API client from swagger.json + auth/error interceptors.
  • [ ] 4.2 Schema-driven CRUD components (table, form-modal, delete-confirm, search, toasts).
  • [ ] 4.3 Admin console (dashboard + completion rings + breakdown, entities, validation queue, notifications slide-over) β€” routes 1:1 with design.md Β§8.
  • [ ] 4.4 Member app: Dispatch / Mandates / Tasks tabs (AI chat stubbed; Pulse/OKRs/Vote/Wallet placeholders); role-gated Admin button.
  • [ ] 4.5 Registration first-run flow (Profile from OIDC name β†’ Skills typeahead β†’ Review β†’ Start β†’ MP notification + validation queue).
  • [ ] 4.6 Connection indicator (ConnectionService on /health, afterNextRender) + PWA (@angular/service-worker, manifest/icons).

Epic 6 β€” WS5: Tests, CI/CD & deploy ​

Parity tests, e2e, pipeline, and first deploy.

  • [ ] 5.1 Shared-rule parity tests (completion + 0.00–10.00 competence) on Go and Angular.
  • [ ] 5.2 Playwright e2e: loginβ†’dispatch; registrationβ†’validationβ†’MP approve.
  • [ ] 5.3 CI/CD: lint/test/build/e2e + deploy (Supabase migrations, Go APIβ†’Fly, Angularβ†’Cloudflare); secrets in secret stores; tag phase-1.

Phase 2 β€” created in Linear (Dispatch β€” Phase 2 (AI, Engagement & Governance)) ​

Created 2026-06-22 as a sibling project to Phase 1, team gravitas, label dispatch. Four epics (parent issues, WS-numbering continued from Phase 1's WS5) with sub-issues. Each carries Spec: docs/dispatch-production-design.md Β§-refs. AI infra = High priority, the rest Medium; all start in Backlog.

Epic β€” WS6: Dispatch AI (RAG) Β· GAC-49 ​

RAG pipeline (adapts docs/implementation/contract-qa/). Spec Β§7–§8.

  • [ ] 6.1 Python worker scaffold + Celery + Upstash Redis β€” GAC-53
  • [ ] 6.2 Document ingestion: PDF/Word/Excel β†’ Markdown (MarkItDown) β†’ chunk β€” GAC-54
  • [ ] 6.3 Embeddings + pgvector: Voyage, vector migration, top-k search β€” GAC-55
  • [ ] 6.4 Go API dispatch-ai: /ask + context assembly + SSE streaming β€” GAC-56
  • [ ] 6.5 Model routing + cost-tracking + semantic-cache layer β€” GAC-57
  • [ ] 6.6 Angular chat UI: browser-only SSE consumption + source citations β€” GAC-58
  • [ ] 6.7 Tests: pytest (stubbed Voyage) + Go handler tests + e2e β€” GAC-59

Epic β€” WS7: Governance voting Β· GAC-50 ​

Proposals + one-member-one-vote YES/NO/Abstain + quorum/eligibility. Extends votes/vote_ballots. Spec Β§10, Β§12.

  • [ ] 7.1 Schema + RLS: proposals, ballots, quorum/eligibility config (+ define the rules) β€” GAC-60
  • [ ] 7.2 Go API: proposal CRUD, cast ballot, tally + quorum/eligibility β€” GAC-61
  • [ ] 7.3 Angular: Vote tab β€” proposals, cast YES/NO/Abstain, live tally β€” GAC-62
  • [ ] 7.4 Tests: Go handler/policy tests + e2e live vote β€” GAC-63

Epic β€” WS8: OKRs Β· GAC-51 ​

Objectives + key results with derived progress rollup. Spec Β§10.

  • [ ] 8.1 Schema + RLS: objectives, key_results β€” GAC-64
  • [ ] 8.2 Go API: OKR CRUD + progress rollup β€” GAC-65
  • [ ] 8.3 Angular: OKRs tab β€” objectives + key results + progress β€” GAC-66
  • [ ] 8.4 Tests: Go handler tests + e2e β€” GAC-67

Epic β€” WS9: Pulse surveys Β· GAC-52 ​

eNPS + anonymous breakdown; privacy review gates the schema. Spec Β§10, Β§12.

  • [ ] 9.1 Privacy review + Schema + RLS: surveys, questions, anonymized responses β€” GAC-68
  • [ ] 9.2 Go API: survey CRUD, anonymized submission, eNPS aggregation β€” GAC-69
  • [ ] 9.3 Angular: Pulse tab β€” take survey + eNPS results breakdown β€” GAC-70
  • [ ] 9.4 Tests: Go handler tests (incl. anonymity invariant) + e2e β€” GAC-71

Two product gates before build: 7.1 (GAC-60) needs the voting quorum + eligibility rules defined, and 9.1 (GAC-68) needs the pulse anonymity guarantee reviewed β€” both flagged in spec Β§12.


Phase 3 (final) β€” GACx wallet ​

Roadmap tracking issue (not yet created in Linear).

  • [ ] GACx double-entry ledger (accounts/transactions/postings, idempotent, 1:1 USD peg).
  • [ ] Wallet value-movement (deposit/withdraw/transfer, history); task Passed β†’ reward posting.
  • [ ] On-chain settlement via SettlementProvider interface (chain choice, custody, peg mechanism β€” separate workstream).

Notes for the import ​

  • All issues: team gravitas, project Dispatch β€” Phase 1 (MVP Core) (Phase 1 epics) or a sibling project/Phase 2/Phase 3 milestone (roadmap issues), label dispatch, description in Markdown (literal newlines, no escaping).
  • Full per-task TDD detail (failing test β†’ run β†’ implement β†’ pass β†’ commit) lives in the plan doc; the epic checklists above are the issue-level summary. Per-task sub-issues can be generated on request.
  • Keep this doc in sync if the plan changes before import.