Start a new SiXiS project

PROJECT-ONBOARDING-V0-1 / PHASE 1 / PASTE-BASED FLOW

Draft ce2eea36…

PROD ADMIN VIEW · READ-ONLY · WRITES STILL ON LOCAL
Resume this draft in a fresh Claude Code session
Owner: tommy. Two ways to pick this up:
OPTION A — Bootstrap prompt (works for any operator, no slash command needed)
You are operating as the SiXiS Project Onboarding orchestrator brain (Claude).

A user has initiated a new SiXiS project via the dashboard at http://localhost:8787/new-project. They have provided this brain dump:

---
I need to build a backoffice management system for a Poker club, start with the ability for staff to create an account, clock in and clock out. We will also need an admin dashboard for admins to review data, create accounts, and any other management stuff. I want the council to act as my designing team, and think of all the things that would be needed to properly manage staffing as a start. Phase 2 will require that the staff log in from their mobile device to verify gps location that they're onsite and not logging in when they're not actually at work. The admin part will be hosted on admin.20to1.poker and staff part will be staff.20to1.poker. The 3 admin to start will be steve@20to1.poker, shaun@20to1.poker,  and tommy@20to1.poker all with password Buckingham2026!!
---

## CURRENT STACK & DEPLOY STATE (auto-injected from substrate)

**Hosting:**
- `dashboard.sixis.ai` → Vercel static export (`ui/`)
- `dashboard.sixis.ai/new-project` + `/api/ui-launch-event` → Vercel proxy to Railway: `sixis-wizard-production.up.railway.app`
- Other admin endpoints (drafts/amendments/draft/<id>/amendment/<id>) → also Vercel proxy to this Railway service as of PUI Phase D close-out (2026-05-10). Honor-system admin gate via ?owner= URL param. Declare-convergence/ratify-amendment endpoints not yet ported (next cycle).

**Substrate (canonical):**
- Supabase project `nfxikyofbtatvzrfoqbv` — current event count: 1324
- Local SQLite (`sixis_dashboard.db`) is an archive after Phase B replay caught up (2026-05-07). Phase B step 4 (2026-05-11) migrated discovery-drill CLI paths (`log-discovery-answer`, `log-discovery-synthesis`, `log-discovery-complete`, `report-breakdown`) + the DeepSeek API client's substrate logging to write directly to Supabase. Remaining SQLite-writing CLI paths sync up via the post-invoke mirror.
- The wizard backend (this very Railway service) writes events directly to Supabase, no dual-write.

**Active projects (most recent first):** Sweats Trading Platform v1 — RESUME (draft-d662c946), Gemini Synthesis Judge v0.1 (gemini-synthesis-judge-v0-1), Active Attention Engine (active-attention-engine)

**Last shipped change:** Built gcloud ADC + venv + gsc_pull.py demand-brief tool; tested end-to-end; scheduled task updated to pull GSC before Batch 3.

**Council relay discipline — CORRECTED MATRIX (ratified by Tommy 2026-05-11T02:14, Universal Shell amendment in flight):**
- `cross-poll` defaults `--auto-relay ON`. The orchestrator (Claude Code session) drives all brains directly. API/CLI is the PRIMARY path for the two non-browser brains; browser control is FOR THE TWO REMAINING BROWSER-ONLY BRAINS ONLY:
  - **DeepSeek (voter)** → API via `deepseek_api_v0_1/sixis/deepseek_client.py` (`call_deepseek`). Browser fallback at chat.deepseek.com (Expert/DeepThink mode) ONLY when the API client returns `ok=False` with `fallback=browser`.
  - **Gemini (judge + reviewer)** → CLI/API via `gemini-synthesis-judge-v0-1/` (and `gemini-cli-judge-wrapper-v0-1/`). No browser path needed.
  - **GPT (voter)** → ChatGPT desktop app via computer-use MCP. New chat created INSIDE the "SiXiS" project folder (per per-project chat-thread rule).
  - **Claude.ai (voter)** → claude.ai via Claude-in-Chrome MCP. New chat created INSIDE the SiXiS project folder.
- Tommy is NOT a packet-routing relay node. Pipeline: prompt DeepSeek first via API (longest reasoning), kick off GPT + Claude.ai in browser windows while DeepSeek streams, capture all three responses in any order they arrive.

**Ratification cadence (extended convergence rule, ratified 2026-05-07):**
- Genuine multi-brain convergence at any tier (1/2/3) = automatic ratification — orchestrator proceeds without explicit Tommy ask.
- "Doubt is the cross-poll trigger" — when orchestrator has uncertainty, fire a cross-poll, don't decide unilaterally and don't ask Tommy.
- Sovereign-only matters (red-line risks, irreversible data destruction, money movement, account creation) still always escalate.

**Discoveries fold into scope (rule established 2026-05-07):** anything surfaced during this drill that's adjacent and relevant folds INTO the project's scope by default — don't punt to followups unless folding shifts the tier.


Wizard IDs (use these in the CLI commands below — DO NOT change them):
- draft_id: ce2eea36-ab31-428f-a36c-9305e7f33077
- cycle_id: 37245c60-914e-443b-bede-66a36fe09099

## Your job

Per FORCED_RULE_PO_01 (Conversational Discovery Drill), drill the user ONE QUESTION AT A TIME.

The internal checklist below is YOUR scaffolding — NOT an interrogation script for the user. Pick the most upstream open question, ask it, listen, let the answer pivot/collapse/deepen the queue.

Internal checklist:
- intent (the frozen Z1 statement of what they want to build)
- scope (in scope vs explicitly out of scope)
- consumers (who/what uses this)
- constraints (technical, time, resources, external commitments)
- success criteria (how they know it shipped well)
- failure modes (what could break, how they'd detect)
- reversibility / tier classification (Tier 1/2/3)
- required artifacts / deliverables
- known unknowns

Do NOT batch questions. Do NOT pre-load 5+ at once. Per FORCED_RULE_PO_01 this is a hard rule from the project's own Cycle Zero — the rule was generated as a candidate Universal Shell amendment after the orchestrator violated it during the project's design phase.

## Substrate logging

After EACH user answer, log it to substrate:
```
cd ~/Documents/Claude/Projects/SixiS/projects/dashboard_v0_1 && python3 scripts/sixis.py log-discovery-answer --draft-id ce2eea36-ab31-428f-a36c-9305e7f33077 --cycle-id 37245c60-914e-443b-bede-66a36fe09099 --question "<the question you asked>" --answer "<their answer>"
```

When you reach pollable sufficiency (the council can disagree productively without first asking what the project is), summarize the sharpened intent and ask the user to confirm. Then log the synthesis:
```
cd ~/Documents/Claude/Projects/SixiS/projects/dashboard_v0_1 && python3 scripts/sixis.py log-discovery-synthesis --draft-id ce2eea36-ab31-428f-a36c-9305e7f33077 --cycle-id 37245c60-914e-443b-bede-66a36fe09099 --synthesis "<your sharpened-intent summary>"
```

After the user confirms the synthesis, mark discovery complete:
```
cd ~/Documents/Claude/Projects/SixiS/projects/dashboard_v0_1 && python3 scripts/sixis.py log-discovery-complete --draft-id ce2eea36-ab31-428f-a36c-9305e7f33077 --cycle-id 37245c60-914e-443b-bede-66a36fe09099
```

Then propose firing the council cross-poll. The standard SiXiS Protocol cross-poll → 2-round mandatory ratification (per amendment 926869fb) → Layer B drafting cycle applies from there.

## Error handling

If anything crashes, the user reports a wizard issue, or you encounter a malformed/unworkable state mid-drill, log a breakdown:
```
cd ~/Documents/Claude/Projects/SixiS/projects/dashboard_v0_1 && python3 scripts/sixis.py report-breakdown --draft-id ce2eea36-ab31-428f-a36c-9305e7f33077 --cycle-id 37245c60-914e-443b-bede-66a36fe09099 --source claude --description "<what went wrong>"
```

The user can also report breakdowns from the dashboard "Report breakdown" button (pre-fills draft_id automatically).
Paste into any fresh Claude Code chat — Claude runs the discovery drill on the brain dump.
OPTION B — Slash-command shortcut (Tommy's setup only — needs ~/.claude/commands/sixis-pickup.md installed)
/sixis-pickup ce2eea36-ab31-428f-a36c-9305e7f33077
Brain dump (raw)
Original input from /new-project. Stored as raw evidence per FORCED_RULE_PO_02; never edited in place.
I need to build a backoffice management system for a Poker club, start with the ability for staff to create an account, clock in and clock out. We will also need an admin dashboard for admins to review data, create accounts, and any other management stuff. I want the council to act as my designing team, and think of all the things that would be needed to properly manage staffing as a start. Phase 2 will require that the staff log in from their mobile device to verify gps location that they're onsite and not logging in when they're not actually at work. The admin part will be hosted on admin.20to1.poker and staff part will be staff.20to1.poker. The 3 admin to start will be steve@20to1.poker, shaun@20to1.poker,  and tommy@20to1.poker all with password Buckingham2026!!
Event timeline (22)
Every event tagged with this draft_id, in chronological order.
project_draft_started system · 2026-05-23 04:55:08+00:00
You started a new project draft via /new-project (draft_id=ce2eea36-ab31-428f-a36c-9305e7f33077).
draft_saved system · 2026-05-23 04:55:08+00:00
You saved the brain-dump for draft ce2eea36-ab31-428f-a36c-9305e7f33077: "I need to build a backoffice management system for a Poker club, start with the ability for staff to create an account, clock in and clock out. We will also need an admin dashboard for admins to revie…"
discovery_prompt_generated system · 2026-05-23 04:55:08+00:00
Generated the discovery drill prompt for draft ce2eea36-ab31-428f-a36c-9305e7f33077 using prompt_templates.discovery_drill v3.
ui_launch_event system · 2026-05-23 04:55:19+00:00
You clicked 'Copy prompt' on /new-project for draft ce2eea36-ab31-428f-a36c-9305e7f33077 — prompt taken to Claude Code (prompt_hash=f37aa77f5857…).
discovery_answer_logged tommy · 2026-05-23 04:56:31+00:00
Q: "Phase 1: tight ship-fast MVP (accounts + clock in/out + admin review), with broa…" — A: "Tight and just ship — MVP only. Broader staffing features designed by council but built in later phases."
discovery_answer_logged tommy · 2026-05-23 04:57:17+00:00
Q: "How do staff clock in during Phase 1 — shared kiosk/tablet at the club, or each …" — A: "Their own device. (Aligns with Phase 2 GPS verification — per-person device login now, add location check on top later.)"
discovery_answer_logged tommy · 2026-05-23 04:58:58+00:00
Q: "Staff self-register, or admins create accounts? And what does the staff MVP view…" — A: "Admin-provisioned accounts only, no self-signup. Staff MVP view = just a big Clock In and Clock Out button, nothing else…"
discovery_answer_logged tommy · 2026-05-23 05:00:18+00:00
Q: "Admin MVP scope? (live clocked-in status, timesheet history, create accounts)" — A: "REVISION to onboarding model: staff DO self-register an account capturing first name, last name, email, phone. The 3 adm…"
discovery_answer_logged tommy · 2026-05-23 05:01:03+00:00
Q: "Does a new staff self-signup clock in immediately, or need admin approval first?" — A: "Clock in immediately for MVP — no approval gate. Admin approval/activation deferred to a later phase."
discovery_synthesis_logged claude · 2026-05-23 05:02:28+00:00
Claude synthesized the discovery drill intent for draft ce2eea36-ab31-428f-a36c-9305e7f33077: "Z1 — 20to1 Poker Club Staffing Backoffice (Phase 1 MVP). Tight ship-fast staff time-tracking, two subdomains. STAFF (staff.20to1.poker): self-register from own device (first name, last name, email, ph…"
wizard_step_completed claude · 2026-05-23 05:02:51+00:00
Claude marked the discovery drill complete for draft ce2eea36-ab31-428f-a36c-9305e7f33077. Wizard advances from discovery to intent-freeze step.
discovery_answer_logged tommy · 2026-05-23 05:05:02+00:00
Q: "Hosting/infra topology for 20to1 staffing backoffice?" — A: "Host on Vercel (primary), with Railway and Supabase as needed. Tommy handles DNS himself — orchestrator just provides th…"
breakdown claude · 2026-05-23 05:06:22+00:00
cross-poll command crashed with sqlite3.IntegrityError: FOREIGN KEY constraint failed at scripts/sixis.py:930 (cmd_cross_poll poll insert). Discovery answers/synthesis/complete all logged successfully to Supabase, but cross-poll writes to local SQLite which appears to lack the parent row (cycle 37245c60-914e-443b-bede-66a36fe09099 and/or its round) the poll …
brain_response_logged gpt · 2026-05-23 05:16:36+00:00
GPT Round 1 response for draft ce2eea36-ab31-428f-a36c-9305e7f33077: "[BRAIN: gpt] POSITION: Hybrid, hard bias toward one codebase, one Supabase backend, one shift_sessions table, server-enforced clock transitions. Ship the smallest thing that preserves Phase 2 without…"
brain_response_logged claude · 2026-05-23 05:18:10+00:00
CLAUDE Round 1 response for draft ce2eea36-ab31-428f-a36c-9305e7f33077: "[BRAIN: claude] Through-line: Phase 2 GPS must be additive; ship fast now. ## Q1 — Hosting topology VOTE: Single Next.js app, host-based routing, one Supabase backend. Two deployments doubles env-va…"
brain_response_logged gpt · 2026-05-23 09:06:14+00:00
GPT Round 1 response for draft ce2eea36-ab31-428f-a36c-9305e7f33077: "[BRAIN: gpt] POSITION: Build in layers — Operational Control (audit/approval/payroll-lock) → Scheduling/Coverage → Analytics → Messaging. The app is a solid timeclock MVP; biggest risk is uncontrolle…"
brain_response_logged claude · 2026-05-23 09:08:17+00:00
CLAUDE Round 1 response for draft ce2eea36-ab31-428f-a36c-9305e7f33077: "[BRAIN: claude] Stance: scheduling + coverage heatmap + KPI cards are what make ownership lean in; everything else is table stakes. Build on the live schema; ranked by value-to-effort for a poker clu…"
brain_response_logged claude · 2026-05-23 10:09:02+00:00
CLAUDE Round 1 response for draft ce2eea36-ab31-428f-a36c-9305e7f33077: "[BRAIN: claude] — PROPOSER of this UX polish plan. Stance: plain Next.js + CSS, NO UI library (Tailwind the only defensible optional add). A design-token system + ~7 disciplined rules is what makes i…"
brain_response_logged deepseek · 2026-05-23 10:18:18+00:00
DEEPSEEK Round 1 response for draft ce2eea36-ab31-428f-a36c-9305e7f33077: "[BRAIN: deepseek | TASK_TYPE: VOTE | CYCLE: UX Polish Poll — 20to1 Staffing App] ## POSITION: CONVERGE WITH REFINEMENTS I converge on the overall UX polish plan and build sequence described by claud…"
brain_response_logged gpt · 2026-05-23 10:18:36+00:00
GPT Round 1 response for draft ce2eea36-ab31-428f-a36c-9305e7f33077: "[BRAIN: gpt] — UX-polish cross-check vote on claude.ai's plan. POSITION: REFINE (not dissent). Three corrections to claude.ai's plan: (1) keep the GOLD poker-room accent, (2) custom component layer /…"
brain_response_logged gpt · 2026-05-23 13:54:07+00:00
GPT Round 1 response for draft ce2eea36-ab31-428f-a36c-9305e7f33077: "[BRAIN: gpt | poll 7b1f85d8 | message-alert + pay-rate] POSITION: CONVERGE with two refinements — (a) numeric unread badge (not a bare dot), (b) enforce private pay storage HARD (private schema, serv…"
brain_response_logged claude · 2026-05-23 13:54:26+00:00
CLAUDE Round 1 response for draft ce2eea36-ab31-428f-a36c-9305e7f33077: "[BRAIN: claude.ai | poll 7b1f85d8 | FULL vote (completed after usage-limit reset)] ═══ (1) NEW-MESSAGE ALERT — CONVERGE + refine ═══ - ONE security-INVOKER RPC unread_summary() returns (board_id, boa…"