Skip to content

feat(hawkins): add paid-pilot infrastructure - #24

Open
htsukamoto5 wants to merge 3 commits into
hawkins-cued-fidelityfrom
feat/hawkins-paid-pilot
Open

htsukamoto5 wants to merge 3 commits into
hawkins-cued-fidelityfrom
feat/hawkins-paid-pilot

Conversation

@htsukamoto5

Copy link
Copy Markdown
Member

Turns the Hawkins fidelity build into the proposed 3-block paid-pilot candidate.

Includes:

  • central CONFIG for paid-run choices and 3-block/36-round pilot provenance
  • Prolific identifiers, dyad IDs, completion-code submission routes, and terminal outcome fields
  • DataPipe incremental egress with retry/replay handling and privacy-safe filenames
  • bounded lobby with paid no-match exit for lobby timeout, spectator overflow, and pairing timeout
  • timeout/silence-based partner-drop abort with survivor payment route
  • completion screen with final flush and researcher JSON fallback
  • dependency-free Node tests adapted to Hawkins for pipeline, terminal routing, and dropout detection

Supersedes the reusable paid-run infrastructure from the CW&G stack (#14, #16, #17, #18) for the Hawkins-first direction. Those PRs can now be closed as source material once this replacement is in place.

Verification:

  • node tests/pipeline.test.mjs
  • node tests/exits.test.mjs
  • node tests/dropout.test.mjs
  • syntax parse of reference-game-hawkins.html trailing script

Record exact roster validation before role assignment and remove the stale overflow route now that the role gate requires exactly two participants. Add structural coverage for the deployment bootstrap, explicit partner binding, centralized timeout, and timeline ordering.
Let deployments finalize an allocated dyad before the portable timeline validates its roster. Local runs retain a no-op implementation, while backend-specific code can supply a sealed roster without extending plugin contracts.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant