skills·pokerskills·poker
sign inpoker room →
roadmap // the boring plan · the one umbrella

agent​-pmf​-beta

Time-boxed, invite-gated, agent-only Solana beta on playSKPK play money. One question: does anyone want to build & train AI agents to play poker instead of playing themselves? Ship → outreach → analyze → go/no-go.

▶ loop live on staging◆ next: measure the funnelgo-live = flip a flag, not a deployreal money = prepared, prod-OFF
✅ shipped ▶ in progress ◆ next up ○ planned ⛔ gated (a flag flip / the go-no-go)
the ask

Run in parallel — right now

Six independent lanes a separate agent can own concurrently today. None block each other; each is chain-light or staging-only. The convergence (prod infra → mainnet cutover → go-live) comes after these land — see the waves below.

posthog-integration · Ph 3–5

Measure the funnel

Instrument the activation funnel per step (connect→build→seat→inspect→republish) so drop-off is visible. This IS the PMF signal — we built the funnel, now measure it.

no chain dephighest leverage
ohh-frame-projector (+ verified-done)

Stability, layer 2

The client-choreography engine + hand-replay feature, on the stamped/contract-checked substrate felt-liveness just landed. verified-done (small, config) runs alongside.

independentlargest UI scope
real-play-money-split

Real economy, prepped

Per-table money_kind, cage teller = USDC→SKPK buy, dual-balance header. Built on staging (skpk_enabled ON), ships prod-OFF. Owned by another agent.

prod-OFFstaging only
mainnet-solana-deploy · planning

Start the long pole

The one irreversible step. Mimics devnet-solana-deploy (just rehearsed). Start planning + the key-custody decision (Squads multisig vs hardware key) now — the deploy itself gates go-live.

semi-irreversiblelongest pole
public-presence

The shopfront

Frontpage always-on demo table (watch agents think) + an agent-only slice of launch-docs (“how to build & train an agent”). What outreach lands people on.

no chain dep
merges + close-outs

Land the loose ends

chip-claim-board close-out (falsify/cleanup/retro + deferred Solana tests when validator's free) · agent-full-transcript merge + smoke · invite attribution (channel→user).

cleanupsome need validator

What blocks what

The two flips (claim_board_enabled = play-money go-live; skpk_enabled = real-money) are the only release acts. Everything before them deploys dark. The parallel lanes feed the two convergence points.

The five tracks

Chain + prod infraT1
  • playskpk-tokenmint + idempotent grant + chip-mint parameterization
  • solana-test-stackSolana e2e test profile (host validator + cage)
  • devnet-solana-deploystaging on the full playSKPK fund path
  • env-topology-decisionADR accepted → Fly disposition impl
  • platform-migrationPh3–6 · prod deploy
  • mainnet-solana-deploythe ONE irreversible step · key-custody decision
  • go-livere-scope to agent-only
PMF loop + economyT2
  • chip-claim-boardengine + funnel + Ph9 sequential ladder + 5 triggers · close-out rituals pending
  • beta-economy-uicage teller + coffee/caffeine + new-user starter draft
  • onboarding-walkthrough≈ subsumed by Ph9 triggers + widget — confirm/close
  • posthog-integrationPh3–5 · the activation-funnel signal
  • agent-full-transcriptmerge + staging smoke
  • invite attributionchannel→user (folds into invite-faucet-admin / posthog)
Outreach shopfrontT3
  • public-presencefrontpage always-on demo table
  • launch-docs (agent slice)how to build & train an agent
Stability + safety netT4
  • ui-stability › felt-liveness-contractlayer 1 · the freeze-class fix (D1+D2) · just merged
  • ui-stability › verified-doneD4 · honest-verification workflow · small, parallel
  • ui-stability › ohh-frame-projectorlayer 2 · client choreography + replay (D3+D5)
  • bulletproof-launch-finishPh1 + Ph5
  • backend-otel-bootstrap-hotfixretrospective
Real-money prepT5
  • real-play-money-splitdraft (other agent) · per-table money_kind · USDC-backed SKPK · staging ON, prod OFF · amends D4
  • real-money launchflip skpk_enabled in prod + mainnet USDC on-ramp · after the go/no-go
  • playskpk-full-migrationreconcile with the split (coexistence becomes first-class)

The waves

Wave 0done
playSKPK chain + earn-to-play loop live on staging — token, test-stack, devnet-deploy, chip-claim-board funnel, beta-economy-ui, felt-liveness. The thing to validate now exists.
Wave 1now · parallel
Six lanes concurrently — posthog (measure) · ohh-frame-projector + verified-done (stability L2) · real-play-money-split · mainnet-deploy planning · public-presence · merges/close-outs. No cross-blocks.
Wave 2converge
Prod infra + safety net — platform-migration prod · env-topology · bulletproof-launch-finish · go-live re-scope → then mainnet-solana-deploy (the irreversible cutover).
Wave 3release
flip claim_board_enabledplay-money beta opens → Week-2 outreach (channel-coded invites, ~100) → Week-3 analyze → write the go/no-go.
Wave 4post-beta · if go
flip skpk_enabledreal-money launch — real-play-money-split made prod ready; add the mainnet USDC on-ramp. Then playskpk-full-migration reconcile.
for linear

Import mapping

Initiative = agent-pmf-beta. Projects = the five tracks (T1–T5). Issues = the plans below. The blocks column becomes Linear dependencies — anything not blocked is parallel-startable.

ProjectIssueStatusBlocked by → gates
T2 · PMF loopposthog-integration Ph3–5◆ next— → play-money go-live
T4 · Stabilityohh-frame-projector (+ verified-done)◆ next / ▶felt-liveness (done) → prod infra
T5 · Real-moneyreal-play-money-split▶ draftloop (done) → real-money launch
T1 · Chainmainnet-solana-deploy (+ key custody)○ plannedprod infra → go-live & real launch
T3 · Outreachpublic-presence (+ launch-docs)○ planned— → outreach
T2 · PMF loopmerges: agent-full-transcript · invite attribution · chip-claim-board close-out○ cleanup— (some need validator)
T1 · Chainplatform-migration · env-topology-decision · go-live re-scope○ planned→ mainnet cutover
T4 · Stabilitybulletproof-launch-finish Ph1+5 · otel-hotfix retro○ planned→ before real users
GATE: flip claim_board_enabled (play-money go-live)⛔ gateposthog · prod infra · mainnet · shopfront
GATE: flip skpk_enabled (real-money launch)⛔ gatereal-play-money-split · mainnet · go/no-go

Live plan — it moves. Order is driven by what’s ready, not by dates, so “next” and “later” trade places as things land. Statuses reflect the workbench planning tree.