docs: establish page production pipeline

This commit is contained in:
2026-08-19 17:07:00 +08:00
parent c317fd6675
commit db9b4e2f39
4 changed files with 304 additions and 9 deletions
+50
View File
@@ -8,6 +8,56 @@ Complete-game Goal, hand-drawn repair boundary, ordered implementation plan, roa
本文件是当前六份审核文档之一。历史拆分文件仅保留在 Git 历史中;文内规则、表格和 ID 仍是完整开发依据。
## Repository Reset And Page Production Baseline
> Status: `OWNER_APPROVED / CLEANUP_BASELINE_IN_PROGRESS`
> Active step: `P0R_REPOSITORY_CLEANUP_AND_PAGE_PIPELINE`
The repository is being reset around one explicit production contract. Product
and systems design remain in the six numbered owner documents. Page-specific
design authority lives in `docs/design-authority/` and is tracked by
`repository-cleanup-manifest.json` and `design-index.json`.
### Page production rule
Every player-facing page must move through the states in
`docs/design-authority/page-production-contract.json` in order:
```text
SPEC_READY
-> AI_DRAFT
-> DRAFT_REVIEW
-> APPROVED_FOR_RECONSTRUCTION
-> RECONSTRUCTION_READY
-> IMPLEMENTED_AWAITING_OWNER_RUNTIME_REVIEW
-> VERIFIED_AWAITING_OWNER_ACCEPTANCE
-> COMPLETE
```
An Owner rejection returns the page to the earliest failed state. Behavior,
input or layout tests never close an Owner visual gate. No Godot implementation
or runtime asset promotion is legal before `APPROVED_FOR_RECONSTRUCTION`.
Each page package must preserve the page contract, state matrix, AI prompt,
generation report, approved master, layer map, text slots, runtime asset and
hit-area mapping, implementation record, focused verification and Owner
acceptance record. A page is not complete because a concept image exists or a
headless marker passes.
### Cleanup rule
`docs/design-authority/repository-cleanup-manifest.json` is the sole current
branch cleanup register. `KEEP` paths are current authority or current runtime
dependencies. `REVIEW` paths require a page/replacement decision. A
`DELETE_CANDIDATE` path may be removed only after a fresh reference scan and a
focused regression pass. Git history remains the provenance archive; the
working tree should contain only current authority, approved page packages,
needed runtime dependencies and reproducible tools.
During this reset, all Title, first-launch, gameplay and content edits are
frozen. The active product step resumes only after the cleanup baseline has
been committed.
<!-- Historical section source: AETHERBOUND_GUILD_COMPLETE_DEVELOPMENT_GOAL; retained in Git history. -->
## Aetherbound Guild Complete Development Goal
@@ -0,0 +1,73 @@
{
"schema_version": 1,
"purpose": "One page moves from product contract to approved runtime through explicit gates.",
"terminal_state": "COMPLETE",
"states": [
{
"id": "SPEC_READY",
"owner_gate": false,
"required_artifacts": ["page-contract.json", "state-matrix.json"]
},
{
"id": "AI_DRAFT",
"owner_gate": false,
"required_artifacts": ["drafts/<version>/prompt.txt", "drafts/<version>/manifest.json", "drafts/<version>/master-raw.png"]
},
{
"id": "DRAFT_REVIEW",
"owner_gate": true,
"required_artifacts": ["review/<version>.md"]
},
{
"id": "APPROVED_FOR_RECONSTRUCTION",
"owner_gate": true,
"required_artifacts": ["approved/<version>/master.png", "approved/<version>/manifest.json", "approved/<version>/layer-map.json", "approved/<version>/text-slots.json"]
},
{
"id": "RECONSTRUCTION_READY",
"owner_gate": false,
"required_artifacts": ["runtime/reconstruction-spec.json", "runtime/asset-manifest.json", "runtime/hit-areas.json"]
},
{
"id": "IMPLEMENTED_AWAITING_OWNER_RUNTIME_REVIEW",
"owner_gate": false,
"required_artifacts": ["runtime/implementation.json", "verification/behavior.json", "verification/captures.json"]
},
{
"id": "VERIFIED_AWAITING_OWNER_ACCEPTANCE",
"owner_gate": true,
"required_artifacts": ["verification/behavior.json", "verification/input.json", "verification/responsive.json", "verification/captures.json"]
},
{
"id": "COMPLETE",
"owner_gate": true,
"required_artifacts": ["approved/<version>/manifest.json", "runtime/implementation.json", "verification/owner-acceptance.md"]
}
],
"allowed_transitions": [
["SPEC_READY", "AI_DRAFT"],
["AI_DRAFT", "DRAFT_REVIEW"],
["DRAFT_REVIEW", "AI_DRAFT"],
["DRAFT_REVIEW", "APPROVED_FOR_RECONSTRUCTION"],
["APPROVED_FOR_RECONSTRUCTION", "RECONSTRUCTION_READY"],
["RECONSTRUCTION_READY", "IMPLEMENTED_AWAITING_OWNER_RUNTIME_REVIEW"],
["IMPLEMENTED_AWAITING_OWNER_RUNTIME_REVIEW", "RECONSTRUCTION_READY"],
["IMPLEMENTED_AWAITING_OWNER_RUNTIME_REVIEW", "VERIFIED_AWAITING_OWNER_ACCEPTANCE"],
["VERIFIED_AWAITING_OWNER_ACCEPTANCE", "RECONSTRUCTION_READY"],
["VERIFIED_AWAITING_OWNER_ACCEPTANCE", "COMPLETE"]
],
"hard_gates": [
"No Godot implementation before APPROVED_FOR_RECONSTRUCTION.",
"No runtime asset is current authority until its source, prompt, task, processing and hash are recorded.",
"Behavior tests cannot close a visual owner gate.",
"A failed review returns to the earliest failed state and keeps later states frozen.",
"Only one page may be in an active implementation state at a time."
],
"required_runtime_matrix": {
"viewports": ["760x360", "844x390", "1280x720"],
"locales": ["zh_CN", "en"],
"text_scales": ["100", "130"],
"input": ["touch", "keyboard_or_controller_focus"],
"states": ["normal", "empty", "loading", "disabled", "error", "interruption"]
}
}
@@ -0,0 +1,166 @@
{
"schema_version": 1,
"purpose": "Current-branch cleanup decisions. Git history remains the provenance archive.",
"status": "AUDIT_BASELINE",
"rules": [
"Keep current product authority and assets explicitly accepted by the Owner.",
"Keep files referenced by the current Godot scene, active services or required tests until a replacement is verified.",
"Delete only exact paths or subtrees marked DELETE_CANDIDATE after a final reference scan.",
"Do not delete historical material merely because it is old; classify it first.",
"Do not put temporary evidence, browser profiles, import caches or generated exports in the current authority tree."
],
"keep": [
{
"path": "AGENTS.md",
"reason": "Repository contract and visual authority."
},
{
"path": "CURRENT_CHECKPOINT.md",
"reason": "Durable active plan checkpoint."
},
{
"path": "docs/01_GAME_DESIGN.md",
"reason": "Current product authority."
},
{
"path": "docs/02_GAMEPLAY_AND_BALANCE.md",
"reason": "Current systems, balance, failure and Save authority."
},
{
"path": "docs/03_PAGES_AND_UX.md",
"reason": "Current 50-page and state-map authority."
},
{
"path": "docs/04_ART_ANIMATION_AUDIO.md",
"reason": "Current presentation and production authority."
},
{
"path": "docs/05_CONTENT_CATALOG.md",
"reason": "Current content identity authority."
},
{
"path": "docs/06_DEVELOPMENT_AND_REVIEW.md",
"reason": "Current ordered development plan and evidence ledger."
},
{
"path": "docs/design-authority/design-index.json",
"reason": "Current page design registry."
},
{
"path": "docs/design-authority/page-production-contract.json",
"reason": "New mandatory page production state machine."
},
{
"path": "runtime/entry",
"reason": "Current entry, Guild, Market, Party, Risk, Battle and management runtime used by the active tests."
},
{
"path": "runtime/domain",
"reason": "Current schema-v2 Company/Contract/Battle domain services."
},
{
"path": "runtime/assets",
"reason": "Mixed current and legacy runtime assets; keep until each asset receives a page binding decision."
},
{
"path": "runtime/tests/dev1",
"reason": "Current entry behavior and input checks."
},
{
"path": "runtime/tests/dev2",
"reason": "Current Initial Company checks."
},
{
"path": "runtime/tests/dev3",
"reason": "Current Guild and Market checks."
},
{
"path": "runtime/tests/dev4",
"reason": "Current Party and Risk checks."
},
{
"path": "runtime/tests/dev5",
"reason": "Current Battle, Result and Recovery checks."
},
{
"path": "runtime/tests/dev6",
"reason": "Current second-cycle management checks."
},
{
"path": "docs/prototype/generation/ui0a_guild_anchor_01",
"reason": "Owner-accepted Guild visual anchor provenance; migrate only selected final assets into page packages later."
},
{
"path": "docs/prototype/generation/phase6_ui_direction_01/outputs/05_battle_ui_japanese_scale.png",
"reason": "Explicit repository visual scale authority in AGENTS.md."
},
{
"path": "docs/prototype/generation/dev2_compact_recruit_units_02/processed",
"reason": "Unified compact Recruit actor sources used by the current Initial Company and Guild runtime."
}
],
"review": [
{
"path": "docs/design-authority/pages/SYS-002-first-launch",
"reason": "AI draft exists but Owner has not approved the design; do not import into runtime."
},
{
"path": "docs/design-authority/pages/SYS-003-title/approved/v002",
"reason": "AI design is approved, but runtime still awaits Owner acceptance."
},
{
"path": "docs/prototype",
"reason": "Large mixed historical generation tree. Keep accepted authority paths; classify and remove the rest by exact subtree."
},
{
"path": "docs/runtime",
"reason": "Historical visual slices and media provenance. Not a current page authority unless explicitly promoted."
},
{
"path": "runtime/p9_*",
"reason": "Historical compatibility/runtime layers with indirect test and preload references. Requires replacement before removal."
},
{
"path": "runtime/p10_*",
"reason": "Historical simulation layers still used by preserved regression adapters."
},
{
"path": "runtime/fg3",
"reason": "Preserved RG-02 regression source; not current visual authority."
},
{
"path": "runtime/fg4",
"reason": "Preserved midpoint regression source with superseded lifecycle semantics."
},
{
"path": "runtime/campaign",
"reason": "Historical campaign adapters still referenced by export/regression tooling."
},
{
"path": "runtime/compat",
"reason": "Historical facade still used for preserved runtime checks."
}
],
"delete_candidates_after_reference_scan": [
{
"path": "docs/design-authority/pages/SYS-003-title/approved/v001",
"reason": "Superseded by approved v002; v001 is provenance only."
},
{
"path": "docs/design-authority/pages/SYS-003-title/drafts/v001",
"reason": "Superseded draft for Title v001; no current authority."
},
{
"path": "docs/design-authority/pages/SYS-003-title/review/v001.md",
"reason": "Superseded review record; retain only if the Owner requests in-branch provenance."
},
{
"path": "docs/prototype/generation/dev2_compact_recruit_units_02/outputs/contact-sheet-rejected-tall.png",
"reason": "Explicitly rejected actor scale candidate and not a runtime source."
},
{
"path": "runtime/evidence",
"reason": "Ignored local evidence root; remove only local generated contents, never tracked authority."
}
]
}