Huijing AI Lifecycle Harness
Purpose
This harness is the S0 control plane for the MVP. It first satisfies the 5/29 lifecycle foundation, then validates lifecycle transitions, tool contracts, approval gates, conversion artifacts, fixtures, and evidence records before later application phases can publish or expose game versions.
MVP Contracts
- GameIR
- MainCreationAgentSession
- AgentTask
- RequirementBrief
- AIGameDesignDraft
- DesignSectionPatch
- DesignSection
- GameLogicModule
- GamePackage
- AssetManifest
- RuntimeSmokeEvidence
- MiniGameCodeConversion
- MiniGameProject
- ConversionReport
- ValidationReport
- DevToolImportEvidence
- EvidenceRecord
- ChannelReadinessNote
- UnpublishRequest
Foundation Contracts
- PromptRecord
- GameConfig
- GameManifest
- TelemetryEvent
- LifecycleEvent
- GameVersion
- DistributionMetadata
Non-goals
- No real application backend.
- No real LLM generation.
- No real channel submission.
- No game runtime implementation.
Validation
Task 1 baseline validation
Run now to verify the existing 5/29 foundation harness:
node harness/scripts/validate-harness.mjs
node harness/scripts/validate-harness.mjs --check-invalid
Expected:
- baseline valid fixtures pass.
- baseline invalid fixtures fail with stable reasonCode.
- output includes
validFixtures=21andinvalidFixtures=21unless the foundation plan is explicitly amended.
Task 1 contract index term check
Run now to verify this README names every MVP contract in the S0 index:
for term in MainCreationAgentSession AgentTask RequirementBrief AIGameDesignDraft DesignSectionPatch DesignSection GameIR GameLogicModule GamePackage AssetManifest RuntimeSmokeEvidence MiniGameCodeConversion MiniGameProject ConversionReport ValidationReport DevToolImportEvidence EvidenceRecord ChannelReadinessNote UnpublishRequest; do
rg -q "$term" harness/README.md || { echo "missing $term"; exit 1; }
done
Expected:
- exits 0 with no missing contract output.
Planned S0 validation entrypoints
These commands are the planned S0 CLI shape. Run them only after Task 2+ lands the MVP schemas, MVP fixtures, and validator CLI support; they are not Task 1 verification evidence.
node harness/scripts/validate-harness.mjs --contract GameIR --input harness/fixtures/mvp/valid/simulation-game-ir-valid.json
node harness/scripts/validate-harness.mjs --transition review_approved --input harness/fixtures/lifecycle/publish-approved-valid.json
Expected after Task 2+:
- valid fixtures pass.
- invalid fixtures fail with stable reasonCode.
- single-contract and transition validation return
{ "ok": true, "reasonCode": null }or{ "ok": false, "reasonCode": "..." }.