294 KiB
Aetherbound Guild - Development Plan And Review
Complete-game Goal, hand-drawn repair boundary, ordered implementation plan, roadmap and decision ledger.
Owner Review / Owner 审核
当前唯一执行顺序是:P0 项目总策划与规范整合、启动与首次设置、标题首页、首次四选二建立持久远征团、公会与市场、自动排阵与风险、战斗与结算、第二轮经营、八个区域、结局与通关后玩法。P0 完成前不推进页面代码;之后每一步都从启动页真实可达。
本文件是当前六份审核文档之一。历史拆分文件仅保留在 Git 历史中;文内规则、表格和 ID 仍是完整开发依据。
Repository Reset And Page Production Baseline
Status:
IN_PROGRESS / M49_IOS_DEVICE_VALIDATIONActive step: M49-C (local Xcode device install). M49-A closes at sourcec6cd45b; M49-B closes with the current iOS export configuration. M48-D (verification and owner handoff) closes at source0eec3ed. M48-A closes at source4be06de; M48-B closes at source4782c13; M48-C closes at sourcee920200. M48 is complete at its written stopping point; its visual audit isdocs/runtime/M48_UI_LAYER_CLEANUP_VISUAL_AUDIT.md. The bounded repair of stacked UI layers and weak button affordances is complete. M49 is the owner-requested local iOS device validation path; its plan isdocs/plans/M49_IOS_DEVICE_VALIDATION.md. Xcode 26.1.1 and a valid local Apple Development identity are present. The preset now exports a project-only Xcode project with automatic signing, arm64 and landscape orientation; the signed device configuration builds successfully. The local preflight found Team IDX75CUV458P; the proposed Bundle ID iscom.wusu.aetherboundguild. Known iPhone entries are currentlyunavailable, so device install/launch remains open. Evidence is recorded indocs/runtime/M49_IOS_EXPORT_PREFLIGHT.md. M47 remains complete: M47-A closes at source1d3a526; M47-B closes at source57fbd67; M47-C closes at sourcef911095; M47-D closes at source1a08127. M45-A closed at sourcea22c211; M45-B closed at source23c9bc5; M45-C closed at sourceecf0b8a; M45-D closed at source0b607d6; M44-D closed at source710dc6b. M43-A, M43-B and M43-C are complete at the source-bound Guild View extraction source5220acb; the source-bound audit is recorded indocs/runtime/M43_GUILD_PAGE_VIEW_VISUAL_AUDIT.md. M44 is complete: the source-bound immutable baselinem44-company-baseline/20260826T032132Z-32104at source93164c87b845d3f0d6f1b64b6d1b06e7c4b8d66dpassed the M16/DEV-6 checks with strict diagnostics0, exact-once markers, eight normal100%captures, parsed touch and owned cleanup (archive SHA-25643028f703434b5fe59a97153635b4a4500623ce7ee317c550c08b74699bcb86d). The Company Roster and Recruit Detail Views are now integrated at source19bf139; M44-B and M44-C/D are complete at source687160d. The focused verification, full MVP first-cycle audit and eight-frame Company capture equivalence pass; a known baseline Contract Return failure is now the bounded M45 repair target. M45-B restored the Market command and review guard at source23c9bc5; M45-C receipt safety closes at sourceecf0b8a; M45-D candidate/verification closes at source0b607d6. The durable M44 plan isdocs/plans/M44_COMPANY_PAGE_VIEW_REFACTOR.md; M45 is complete and the M46 plan isdocs/plans/M46_MVP_UI_CONSISTENCY_PASS.md. M46-B closes at sourcef736d7a; M46-C and M46-D close at sourceebc0c8f. The final source-bound audit is recorded indocs/runtime/M46_UI_CONSISTENCY_VISUAL_AUDIT.md; M46 is complete at its written stopping point. The active M48 plan isdocs/plans/M48_UI_LAYER_CLEANUP.md. The Owner-requested M47 playable UI MVP is complete at source1a08127; its plan and visual audit are recorded indocs/plans/M47_UNIFIED_UI_MVP.mdanddocs/runtime/M47_UNIFIED_UI_MVP_VISUAL_AUDIT.md. No later implementation step is active. M41-D is closed at sourceb88b211; M41-C is closed with source-bound verification and four-fixture visual equivalence. M41-B is closed at source9a440b3; M40-D is closed at source9da7cac; M39-D is closed at sourcecf14bc8. M32-D is closed at source30e162d; M31-D is closed at source1455ad5; M31-A activation, M31-B automated verification and M31-C normal-render inspection are green. The visual gate isagent_visual_reviewed; the retained report isdocs/runtime/M31_MVP_RELEASE_READINESS_VISUAL_AUDIT.md. Human, audio, device, package/signing, store and release gates remain open. M32 is an architecture-only migration: accepted MVP behavior, visuals, input, localization, Economy, Battle and Save semantics remain frozen. The M30 first-cycle implementation is closed at source2556be9; this separate plan audits the local candidate before any device, package, signing, store or release work. Normal100%landscape is the current automated visual scope;130%text scale is not a blocker.
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:
SPEC_READY
-> AI_DRAFT
-> DRAFT_REVIEW
-> APPROVED_FOR_RECONSTRUCTION
-> DECONSTRUCTION_IN_PROGRESS
-> DECONSTRUCTION_REVIEW
-> ASSET_GENERATION_IN_PROGRESS
-> ASSET_REVIEW
-> RECONSTRUCTION_READY
-> IMPLEMENTATION_IN_PROGRESS
-> 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
is legal before RECONSTRUCTION_READY. AI-draft approval authorizes only
deconstruction; deconstruction approval authorizes only asset generation; asset
approval authorizes the reconstruction package that must be complete before
coding.
Each page package must preserve the page contract, state matrix, AI prompt, generation report, approved master, visual deconstruction board, layer map, text slots, responsive anchors, hit-area mapping, asset generation plan, asset contact sheet and provenance, runtime reconstruction package, implementation record, focused verification and Owner acceptance record. The HTML gallery must show AI design, deconstruction, generated assets and runtime evidence as separate inspectable artifacts. 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.
The cleanup baseline and first safe deletion batch are complete at f848e20.
The M14 cleanup follow-up is complete under
docs/plans/M14_REPOSITORY_CLEANUP.md at source e8d7a95. It removed only
the stale taskgraph metadata and superseded prototype validators/build helper;
product/runtime behavior, accepted page packages, provenance and generated
Godot metadata remain unchanged. Its source-bound MVP audit passed with marker
ABG_MVP_FIRST_CYCLE_AUDIT_OK, strict diagnostics 0 and 128 normal 100%
frames. Godot .uid/.import and prototype_incremental/ remain retained.
SYS-001 Boot and SYS-002 First-launch are complete after Owner runtime
acceptance. The approved M01
Entry direction board remains the shared module authority. It defines the
shared world/material/control/modal family for SYS-001, SYS-002, SYS-003,
SET-001..006 and SYS-008. SYS-002 First-launch v002 is Owner-accepted after
focused behavior, parsed input, responsive resize and normal-render evidence.
SYS-003 Title v002 and HUB-001 Guild desk v001 are complete after Owner
runtime acceptance. DEV-4 Party Line / Formation is COMPLETE after Owner
runtime acceptance of source 94a2356. Its schema-v2 visual gate measures
rendered pixels against the clean 2048x1152 coordinate master; source-bound
behavior, input, responsive fixtures, strict diagnostics and rendered-pixel
fidelity pass. PTY-002 Readiness review is complete after Owner runtime
acceptance. RSK-001 Risk Board is complete after Owner runtime acceptance.
RSK-002 Risk Commitment is complete after Owner runtime acceptance on
2026-08-23. Its source-bound Godot candidate, normal 100% captures and
idempotent BAT-001 handoff are recorded in the page package. BAT-001 Battle
Opening is complete after Owner Runtime acceptance on 2026-08-24. Its rejected
independent v001 draft remains provenance only; the accepted full-party battle
page and scale proof remain visual authority. The M07 closure is remote-visible
at 155d775; the BAT-002 contract/state-matrix specification is remote-visible
at 7ededea. Page-specific reconciliation of the existing accepted live-battle
reference is complete and remote-visible at 1ef7a5f; its focused BAT2-3
package is remote-visible at f9f50cd. The Owner accepted the final
deconstruction board and asset contact sheet on 2026-08-24, closing BAT2-3 and
moving BAT-002 to RECONSTRUCTION_READY. The receipt-bound observation service
is remote-visible at 2d4d5a7, the contained live battlefield is
remote-visible at 950b32e, and the timeline/diagnostic implementation is
remote-visible at 0de6c7a; BAT2-4D closure is recorded in the BAT-002 page
package. The earlier BAT2-5 candidate at fea2ae9 was rejected by the Owner
on 2026-08-24 because its plain block rails, text-heavy bottom strip and
debug-like event band did not restore the approved battle master. BAT2-4E
approved-design visual reconstruction is implemented at source 189c20b;
focused Field, Timeline, normal 100% captures, package preflight and static
assertions pass with strict diagnostics 0. BAT2-5 source-bound verification is
complete at source 189c20b; the Owner confirmed the repaired actual-size
Runtime with 这个OK啊 on 2026-08-24, closing BAT2-6 and the M08 Runtime
milestone. Later states/pages remain frozen until a separately activated plan.
All M01 pages are landscape-first and must declare responsive ownership before implementation. Backgrounds use an explicit aspect-cover or contained-master policy; rails and framed controls use bounded NinePatch/segmented construction; icons and seals retain fixed aspect; localized buttons keep at least 48 logical pixels of touch height and may expand; 760x360, 844x390, 1280x720 and live resize are required before Owner runtime review.
M09 SHP-001 Market Durable Plan (closed)
Status:
COMPLETE / OWNER-DELEGATED-ACCEPTANCEPlayer-visible stopping point: enter the Market from the accepted Guild or Recovery handoff, read Company/Line/Coin separately, compare three equal Recruit offers, inspect equipment and route facts, and open a stable review boundary without spending or creating a receipt. Frozen scope: existing Market and hire domain semantics, SHP-002 Recruit Review implementation, Party/Risk/Battle pages, refresh/lock economy and later-cycle content remain unchanged until their named page step.
The prior DEV-3 Market is functional provenance, not current visual authority.
M09 reconstructs one repeated preparation surface in the accepted Japanese 2D
hand-drawn grammar. The Phase 6 UI06-M03 integrated Market image is retained
as a draft composition only; generated text, values and fixed identities are
discarded. The current MVP verification scope is normal 100% landscape only.
| Step | Deliverable | Acceptance | Commit boundary |
|---|---|---|---|
M09-1 Specification and direction |
Page contract, state matrix, draft provenance, focal review and issue register | SHP-001 is indexed, source boundaries are explicit, and the Owner approved v002 direction on 2026-08-24 |
Documentation-only commit 8d3d306; no Runtime changes |
M09-2 Authority and reconstruction package |
Approved master, deconstruction board, layer map, engine text slots, hit areas, asset plan/contact sheet and reconstruction spec | COMPLETE; no baked text, exact source hashes, responsive anchors and 48px targets are recorded |
Focused design-package commit M09-2; preflight 24/24 |
M09-3 Market Runtime reconstruction |
Current show_market behavior is rendered over the approved world/counter composition; list actions remain inspect-only and review handoffs preserve stable IDs |
Focused Market behavior/input assertions pass at source with strict diagnostics 0 | Runtime implementation commits ef482ca, 0952580 |
M09-4 Candidate evidence |
Source-bound behavior, touch/focus, 760x360/844x390/1280x720 normal captures, visual preflight and diagnostics | COMPLETE; first-cycle audit reconfirms the current Market boundary at normal 100% |
Focused attempts m09-market-runtime-import, m09-market-capture; verification commit |
M09-5 Owner closure |
Actual-size review and acceptance record | SHP-001 COMPLETE; the Owner delegated intermediate page inspection on 2026-08-24, and the agent's actual-size review found no blocking overlap, clipped text or false recommendation state |
Closure commit and checkpoint update |
M09 Acceptance Checks
- The active board hash, Company count, Line capacity and Coin are visible in every normal state; loading, stale and interruption states preserve truthful values and never reroll offers.
- Recruit list selection is local and equal-weight; Review opens the existing
SHP-002 boundary with the same
source_offer_id, and Cancel returns to that offer without a duplicate receipt. - Equipment and battle modes remain inspect-only from SHP-001. No list row can purchase, refresh, lock, reorder the Party, commit Risk or start Battle.
- The reconstructed page keeps the painted world and person-bearing offer figures as the focal read, uses attached rails/trays instead of nested cards, and renders all final text/values in Godot.
- Normal
100%zh_CN/en captures at the three required landscape fixtures pass with touch and keyboard/controller focus, live resize, strict diagnostics and no clipped or overlapping authored text. 130% is outside the current MVP blocking scope.
M09 Issue Register
| ID | Status | Boundary |
|---|---|---|
M09-I01 |
RESOLVED_OWNER_APPROVAL |
v002 is Owner-approved for reconstruction on 2026-08-24. v001 remains rejected provenance; generated text and values remain non-authoritative. |
M09-I02 |
RESOLVED_BEHAVIOR_BOUNDARY |
Existing GuildContractService and DEV-3 tests own deterministic offers, prices, two hire receipts and Company 2 -> 3 -> 4 semantics; M09 must not fork them. |
M09-I03 |
RESOLVED_RECONSTRUCTION_PACKAGE |
v002 clean static master, deconstruction board, engine slots, hit areas and asset contact sheet pass the 24/24 package preflight. Runtime visual comprehension remains an Owner gate. |
M09-I04 |
RESOLVED_DELEGATED_REVIEW |
The Owner authorized the agent to inspect intermediate pages without another confirmation round on 2026-08-24. Actual-size review confirms the Market reads as the same hand-drawn world and keeps the next SHP-002 boundary truthful. |
M10 SHP-002 Recruit Review Durable Plan (closed)
Status:
COMPLETE / OWNER-DELEGATED-ACCEPTANCEPlayer-visible stopping point: inspect one stable Recruit offer, understand profession, trait benefit/cost, attributes, starting equipment, history, price and Company/Line impact, then either cancel to the same Market offer or commit exactly one hire receipt. Frozen scope: existingGuildContractServicehire semantics and receipts, Party/Risk/Battle/Result/Recovery behavior, equipment purchase flow and all later-cycle content remain unchanged until their named page step.
| Step | Deliverable | Acceptance | Commit boundary |
|---|---|---|---|
M10-1 Specification and reconstruction package |
Page contract/state matrix, approved review composition, layer map, text slots, hit areas, asset/reconstruction records | COMPLETE; stable offer identity and no baked decision data |
cda9a07 |
M10-2 Runtime reconstruction |
Review surface uses the accepted Market world/counter language; all seven decision facts and Cancel/Hire boundaries are legible at normal 100% | Focused behavior/input assertions pass with strict diagnostics 0 | 5f69834 |
M10-3 Candidate evidence |
Source-bound normal captures, touch/focus, live resize, preflight and diagnostics | COMPLETE; no duplicate hire or altered offer identity |
d24b4dd; attempts m10-recruit-review-runtime, m10-recruit-review-capture |
M10-4 Closure |
Delegated actual-size review and acceptance record | SHP-002 COMPLETE; M11 BAT-003/BAT-004 is also closed in the current MVP audit |
This plan/checkpoint update |
M10 Acceptance Checks
- The review is reached only from a selected stable
source_offer_id; it never rerolls a Recruit or changes Company/Coin before the Hire action. - Profession, Trait benefit/cost, rolled attributes, starting item, level/XP, history, price and Company/Line impact are all engine-owned values.
- Cancel returns to SHP-001 with the same offer focus; Hire uses one operation receipt and retries return the original receipt without a second charge.
- The contained landscape canvas remains readable at
760x360,844x390and1280x720inzh_CN/enat normal100%; 130% remains non-blocking.
M10 Issue Register
| ID | Status | Boundary |
|---|---|---|
M10-I01 |
RESOLVED |
The original portrait-led review master and provenance package are recorded under pages/SHP-002-recruit-review/; no generated decision data is authoritative. |
M10-I02 |
RESOLVED_BEHAVIOR_PROVENANCE |
Existing show_recruit_review, GuildContractService.hire_recruit and DEV-3 receipt tests remain the behavior authority; Runtime work must not fork the transaction semantics. |
M11 BAT-003 / BAT-004 Diagnostic Controls Durable Plan (closed)
Status:
COMPLETE / OWNER-DELEGATED-ACCEPTANCEClosure: source8872f63records the focused BAT-003/BAT-004 evidence; normal100%fixtures, strict diagnostics, input and unchanged battle receipts pass. The Owner delegated intermediate page inspection on August 24, 2026, so M11 closes without another confirmation round. Player-visible stopping point: from the live automatic battlefield, freeze the current observation, inspect the selected actor/event causal facts, or open a compact pause surface with Resume, legal speed, event log, Settings and the BAT-005 retreat boundary. No result, retreat or recovery receipt is created by these pages. Frozen scope: battle domain event order, receipt identity, settlement, reward, knockout and recovery semantics remain unchanged.
| Step | Deliverable | Acceptance | Commit boundary |
|---|---|---|---|
M11-1 Specification and reconstruction |
BAT-003/004 contracts, state matrices, shared battle master, diagnostic layer maps, engine text slots and hit areas | COMPLETE; field and full Company/enemy lines remain visible |
Focused docs/package commit |
M11-2 Runtime reconstruction |
Contained inspect and pause surfaces with real actor/event facts, local pin, legal speed, log and no-receipt retreat boundary | Focused BAT-003/004 behavior/input assertions pass with strict diagnostics 0 | Focused Runtime commit |
M11-3 Candidate evidence |
Four normal 100% fixtures, source-bound captures, preflight, touch/focus and unchanged battle hash | COMPLETE; delegated intermediate review found no blocking overlap or clipped command |
Focused evidence commit |
M11-4 Closure |
Delegated actual-size review and acceptance records | BAT-003 and BAT-004 complete; OUT-001..004 is closed under M12 | Closure commit/checkpoint update |
M11 Acceptance Checks
- Inspect and pause overlays never cover the complete Company/enemy relation or alter event order, snapshot hash, journal hash or battle receipts.
- BAT-003 names source, target, event, delta, state and stable event identity; Pin is local-only and Close returns to the paused field.
- BAT-004 keeps time frozen until Resume, cycles only 1x/2x/4x, exposes a readable recent-event log, returns to Settings paused, and routes Retreat to the BAT-005 boundary without creating a receipt.
- Normal
100%landscape at760x360,844x390and1280x720inzh_CN/enpasses with 48px targets and strict diagnostics; 130% remains non-blocking.
M11 Issue Register
| ID | Status | Boundary |
|---|---|---|
M11-I01 |
RESOLVED_DELEGATED_REVIEW |
The shared BAT-002 master remains the visual authority; BAT-003/004 overlays stay attached and compact rather than becoming a card wall. |
M11-I02 |
RESOLVED_BEHAVIOR_PROVENANCE |
Existing observation service and BAT2-4C timeline own pause/inspect handoffs; M11 adds only the truthful page surfaces. |
M12 OUT-001..004 Outcome And Recovery Durable Plan
Status:
COMPLETE / OWNER-DELEGATED-ACCEPTANCEActive step:NONE(M12-4 candidate evidence and closure complete) Player-visible stopping point: complete the first truthful post-battle route from the immutable BAT-002 outcome lock through diagnosis, committed knockout review, one stable reward choice and one idempotent next-stage recovery receipt, then reopen the next-stage Market with the same Company and Recruit identities. No second-cycle progression, equipment replacement, later-region content or release packaging is included. Frozen scope: existing battle event order, snapshot/journal identity, generated Recruit semantics and Market offer generation remain authoritative; this milestone adds only outcome settlement, reward draft/claim and recovery boundaries required to finish the MVP first cycle.
| Step | Deliverable | Acceptance | Commit boundary |
|---|---|---|---|
M12-1 Specification and reconstruction |
OUT-001..004 contracts, state matrices, causal/reward/recovery bindings, shared hand-drawn result language, engine text slots and hit areas | COMPLETE; result context and affected Recruit remain visible and each downstream receipt boundary is explicit |
a56efd6; preflight 26/26 each |
M12-2 Outcome settlement and reward domain |
Lock-result settlement, one battle Coin/XP application, deterministic reward options, one claim receipt and duplicate-safe retries | COMPLETE; ABG_M12_OUTCOME_RECOVERY_DOMAIN_OK; no duplicate Coin/XP/reward and observation hashes remain auditable |
0ae1fbd; final source-bound attempt m12-domain-final |
M12-3 Runtime route |
OUT-001 diagnosis, OUT-002 knockout review, OUT-003 reward choice and OUT-004 recovery are reachable in player order from BAT-002 and return to Market | COMPLETE; ABG_M12_RUNTIME_OK; parsed touch, 48px targets, four normal fixtures and strict diagnostics 0 |
3e12969; final source-bound attempt m12-runtime-route-final |
M12-4 Candidate evidence and closure |
Four normal 100% landscape fixtures, source-bound first-cycle capture, restart recovery and final acceptance record |
COMPLETE; ABG_M12_CAPTURE_OK; 32 frames, restart -> Market, stable IDs and one receipt per operation |
f632002; source-bound attempt m12-candidate-capture |
M12 Acceptance Checks
- Entering OUT-001 from an immutable BAT-002 outcome lock does not mutate Coin, XP, Recruit history, reward or recovery until the explicit result settlement operation is committed.
- OUT-001 names the outcome, first decisive event, source/target relation, causal chain, survivor state and downstream pending operation. Missing causal data is an explicit blocking diagnostic, not invented text.
- OUT-002 preserves every knocked-out Recruit's stable ID, Profession, Trait, level, XP, history and equipment ownership. Acknowledge only advances; it never implies deletion or same-battle return.
- OUT-003 presents deterministic equal-weight reward options sourced from the committed risk tier. Claim, decline and retry are idempotent; battle Coin is applied exactly once before the choice and a reward claim changes only the declared target state.
- OUT-004 commits one recovery receipt, clears stale formation, preserves all Recruit identities and opens the next-stage Market. A duplicate operation returns the original receipt without a second mutation.
- Normal
100%landscape at760x360,844x390and1280x720inzh_CNandenpasses with 48px targets and strict diagnostics; 130% remains non-blocking.
M12 Issue Register
| ID | Status | Boundary |
|---|---|---|
M12-I01 |
RESOLVED_RECONSTRUCTION_READY |
OUT-001..004 packages reuse the accepted BAT-002 field/rail language and keep result/reward/recovery information attached and compact. |
M12-I02 |
RESOLVED_DOMAIN_BOUNDARY |
Legacy advance_battle() remains compatible; the observation route now settles only through settle_observation_outcome() after the immutable lock, preserving observation and outcome hashes while applying Coin/XP once. |
M12-I03 |
RESOLVED_REWARD_RECEIPT |
Deterministic reward drafts, claim/decline receipts and duplicate-safe retries are persisted before OUT-004 recovery; Market and Recruit identity semantics remain unchanged. |
M12 Closure Record
- Source-bound domain:
ABG_M12_OUTCOME_RECOVERY_DOMAIN_OKat/private/tmp/aetherbound-guild-test-evidence/m12-domain-final/20260824T225212Z-35584. - Source-bound Runtime route:
ABG_M12_RUNTIME_OKat/private/tmp/aetherbound-guild-test-evidence/m12-runtime-route-final/20260824T225136Z-35114. - Source-bound candidate capture:
ABG_M12_CAPTURE_OKat/private/tmp/aetherbound-guild-test-evidence/m12-candidate-capture/20260824T224852Z-33009; 4 fixtures × 8 states = 32 frames, strict diagnostics0, restart resumes Market. - All four OUT page packages now carry
runtime/implementation.json,verification/behavior.json,verification/input.json,verification/responsive.json,verification/captures.json,verification/source-bound.jsonand delegated acceptance records. - The MVP first-cycle stopping point is complete: New Game -> Company -> Guild -> Market -> two hires -> Party/Readiness -> Risk -> Battle -> Result -> Knockout -> Reward Choice -> Recovery -> next-stage Market.
- Remaining work is outside this MVP boundary: second-cycle systems/content, broader region/endgame production, device/package/store/release gates and human comprehension/fun acceptance. Any such work requires a new durable plan.
M13 MVP First-Cycle Audit Durable Plan (closed)
Status:
COMPLETEActive step:NONE(M13-3 closure complete) Player-visible stopping point: a fresh source-bound run can start from a clean Title, create the persistent Company, create the first Contract, hire two Recruits, form and commit the Party, choose and commit Risk, complete the automatic Battle, settle Result, acknowledge Knockout when present, claim or decline one Reward, commit next-stage Recovery, and restart into the same next-stage Market. Frozen scope: no new gameplay, economy, content, battle rules, visual direction, device/package/store work or 130% acceptance is added. This plan only repairs audit assumptions and makes the already-complete MVP evidence internally consistent.
| Step | Deliverable | Acceptance | Commit boundary |
|---|---|---|---|
M13-1 Current-route audit and contract reconciliation |
Replace stale Market/Party/Readiness/Battle assumptions with the approved player-order route and current node names; reconcile page/package completion states; add one source-bound audit runner covering the current first-cycle boundaries | COMPLETE; the audit runner is source-bound, uses exact markers, has strict diagnostics 0, and no current test asserts an interaction on a read-only Market label or retired control |
Focused test/docs/tool commits aaf953f through e68f888 |
M13-2 Fresh audit evidence |
Run the audit from an immutable Git archive, including current M09/M10/M11/M12 runtime and normal 100% capture checks |
COMPLETE; all required markers appear exactly once, 128 normal 100% captures pass, and the runner removes its owned workspace |
Source-bound attempt mvp-first-cycle-audit-v9 |
M13-3 MVP handoff closure |
Record the audit artifact, resolved stale-test issue, completion metadata and the remaining non-MVP gates | COMPLETE; MVP_FIRST_CYCLE_COMPLETE, active step NONE, and no later product scope activated |
This closure commit and push |
M13 Acceptance Checks
- The current Market contract remains unchanged: Market exposes Back to Guild, Settings and inspect/review boundaries; it does not gain a direct Title button merely to satisfy a historical test.
- The source-bound audit runs through
tools/run_test_attempt.pyand an immutable Git archive. Each formal command has an exact-once required marker, strict Godot diagnostics and complete process-group cleanup. - The audit covers DEV-1/DEV-2 entry and Company semantics, the current DEV-3/M09/M10 Market and Recruit Review boundaries, DEV-4 Party/Readiness/Risk and RSK-002 commitment, BAT-001/BAT-002 plus BAT-003/004 controls, and the M12 outcome/reward/recovery route.
- Normal
100%landscape evidence covers760x360,844x390and1280x720inzh_CNanden; 130% remains explicitly outside this MVP audit. - Completion metadata for every player-facing page in the first-cycle route
agrees across
design-index.json, page contracts, Runtime implementation records and delegated Owner acceptance records.
M13 Issue Register
| ID | Status | Boundary |
|---|---|---|
M13-I01 |
RESOLVED_AUDIT |
The historical DEV-3 test treated the read-only MarketTitle Label as a Button; the current test follows Market -> Guild -> Title -> Continue. The DEV-4 Party/Readiness tests now use the Guild-owned Party destination, and the BAT-002 audit uses the explicit Start Observation handoff, current live control names and the explicit waiting/outcome-lock states. |
M13-I02 |
RESOLVED_METADATA |
PTY-002, RSK-001, SHP-001/002 and BAT-003/004 design-index, page-contract and Runtime state fields now agree with their accepted Owner/delegated records (COMPLETE). |
M13-I03 |
RESOLVED_SCOPE |
No 130% capture, second-cycle content, device/package/store work or broad human comprehension gate is part of this MVP audit. |
M13 Closure Record
- Source-bound command:
tools/run_test_attempt.py --git-ref e68f888with required markerABG_MVP_FIRST_CYCLE_AUDIT_OK. - Final attempt:
/private/tmp/aetherbound-guild-test-evidence/mvp-first-cycle-audit-v9/20260824T234547Z-76868. - Result:
PASS; source revisione68f8882f4624caf9180bb2805b3b5525e646bf5; strict diagnostics0; exact marker count1; owned workspace/process group removed. - Normal
100%evidence: 128 PNG frames across entry/Company, Market/Review, Party/Readiness/Risk, Battle Opening/Live/diagnostic controls and M12 Result/Knockout/Reward/Recovery/next-Market states, covering760x360,844x390and1280x720inzh_CNanden. - Evidence archive SHA-256:
c0de33dadc1a906550a205481d2c2f8942b6a0a1825900ede69c60d8e253d14f. - The first-cycle MVP is closed. Remaining work is explicitly outside this stopping point: second-cycle Company systems/content, Regions and endgame, device validation, packaging/signing/store/release gates and human comprehension/fun acceptance. Any of those requires a new durable plan.
Aetherbound Guild Complete Development Goal
Program ID:
ABG-COMPLETE-GAMEStatus:ACTIVEOwner approval:2026-08-16Activation baseline:ee33f775527c20a79703a4fcfe073596c00ca179Execution topology: one development session; no multi-Agent implementation Master roadmap:06_DEVELOPMENT_AND_REVIEW.md
Owner Outcome
Continue plan-driven development from the accepted P10.3 Step-2 source until Aetherbound Guild is a complete local release candidate, rather than treating each small runtime slice as an unrelated endpoint. Ordinary implementation may advance without repeated Owner authorization. Every milestone remains bounded, verified, committed, pushed and recorded before the next milestone starts.
Complete Player-Visible Stopping Point
The local candidate must let a new player complete this authored arc:
open the finished landscape game
-> learn Market valuation, Company building and front-to-rear order
-> clear sixteen Contracts across eight mechanically distinct Regions
-> recruit, equip, promote and continuously grow generated Recruits
-> recover knocked-out members at the next stage without losing their identity
-> discover meaningful Profession, Trait, equipment and Artifact combinations
-> defeat sixteen disclosed-rule Bosses
-> choose the finite Chronicle ending or enter Oath Season
-> start a strategically different postgame Contract with the persistent Company
The candidate must contain the complete approved envelope: 12 base, 24 regular advanced and 6 hidden hybrid Professions; 36 Traits; 320 equipment items; 60 Artifacts; 100 ordinary/elite enemies; 16 Bosses; 8 Regions and 16 Contracts.
Experience Contract
- Fantasy: build a changing guild Company from generated Recruits and keep it alive while restoring a chain of dangerous fantasy routes.
- Primary action: compare visible capability, cost and threat, then commit a Recruit, item, order, route or run-law choice.
- Automation: the prepared Party line resolves battle without attack spam; automation exposes causes instead of hiding them.
- Bottleneck: Coin, one item per Recruit, Line capacity, order, current enemy grammar and current-battle knockouts prevent one solved build.
- Recurring decision: spend, recruit, reserve, equip, reorder, promote, recover or accept route risk according to the current Company state.
- Mastery: predict the first decisive interaction and deliberately build a counter without requiring one exact Profession or item.
- Persistent transformation: Contract clears add Records, Renown, catalog breadth, Region access and optional laws without permanent flat power.
- Completion: a 15-25 hour first clear and a 60+ hour mastery structure are fully implemented, locally verified and ready for human/device/release gates.
Program Acceptance Gates
Complete Runtime
- All approved content identities resolve from scalable runtime data and alter a real decision; design-only catalog rows do not count as implemented.
- The complete Title, Initial Company, Guild Charter, Contract creation, Market, battle, result, recovery, Boss, ending and Oath Season state graph is reachable.
- One canonical simulation and save authority replaces milestone-only behavior before bulk Region production depends on it.
- Runtime presentation uses final-direction landscape composition, authored character motion, event-bound damage/healing/status feedback, VFX, music and SFX rather than app-like cards or static debug substitutes.
Verified Candidate
- Each milestone passes focused negative tests and its actual rendered flow.
- Campaign-wide normal, active, efficient, adversarial and returning profiles prove pacing, decision density, recovery, anti-dominance and ending reach.
- Save migration, corruption, rollback, duplicate input, interruption, clock change and zero-offline-value behavior remain authoritative.
- English, Simplified Chinese, small/reference/large landscape, 130% text, reduced motion/flashes, mute and low power remain usable.
- The final local candidate has a clean pushed source, source-bound evidence and a fresh H5 review delivery only when the Owner checkpoint authorizes it.
Owner Checkpoints
Ordinary work does not pause between milestones. Owner review is requested at only three planned boundaries:
- production-quality visual/audio vertical slice;
- the completed RG-04 midpoint build;
- the complete first-clear beta/final local candidate.
Owner feedback may reopen the earliest failed player-experience boundary. Automated evidence never closes understanding, fun, visual or listening gates.
Frozen Scope
- Third-party commercial code, art, music, audio or copied expressive content.
- Ads, gacha, paid currency, energy, daily-streak or online-required systems.
- A second battle lane, manual skill spam, same-battle resurrection or fixed authored protagonist relationships.
- Multi-Agent development unless the Owner explicitly reauthorizes it.
- Native device packaging, signing, TestFlight, Play Console, store submission, publishing and release acceptance without separate Owner authorization.
Image and TTS generation may use the workspace standing authorization only inside its per-task call and cost ceilings. Video and any expanded paid batch outside the audio chain still require their own authority.
ElevenLabs music/SFX generation carries a standing Owner authorization
(granted 2026-09-14): the agent generates and integrates audio as needed
without waiting for per-batch approval. The chain stays explicit: manifest ->
generated file -> sidecar/run report -> validated -> integrated -> runtime-seen
-> human listened -> release accepted. Batch cost stays within the ordinary
per-task ceiling and recorded spend is logged in docs/EVIDENCE_LEDGER.md.
P0 Project Consolidation Plan
Status:
COMPLETEActive implementation step:VA-1_GUILD_COMPANY_ANCHORCode status:FROZENStopping point: one Owner-reviewable product, architecture, gameplay, page/interaction, UI, art/audio and development contract with no unresolved authority collision.
P0 is a documentation and dependency-boundary milestone. It adds no page, asset, gameplay rule or package. It consolidates the current authorities and records which historical behavior remains evidence only.
P0 Ordered Work
| Step | Deliverable | Acceptance |
|---|---|---|
P0-1 Product strategy |
positive fantasy, audience, core loop, session/Contract/campaign shape, completion and canonical vocabulary | Owner can explain the game loop and Company/Contract boundary without legacy terms |
P0-2 Systems and strategy |
Recruit, Profession, Trait, Equipment, Party, Risk, Battle, Recovery, levels, economy and failure relationships | every recurring decision has a source, cost, consequence and retained state |
P0-3 Architecture and Save |
page/domain/content/save/evidence boundaries, migration and receipt ownership | no new UI page owns a domain rule; current path and historical adapters are classified |
P0-4 Pages and interaction |
player-order screen map, page templates, components, modal/notice/error states, input and accessibility | each page has first action, Back path, state matrix and 100/130% landscape contract |
P0-5 Art/UI/audio contract |
screenshot-derived visual grammar, character/prop scale, typography, button/modal/HUD rules, motion/audio roles | no implementation starts from palette alone; a representative graybox has focal order and asset bindings |
P0-6 Cleanup and migration register |
active, historical, unused-generated and forbidden-to-delete classifications | only unreferenced generated/dead files are removed; historical provenance remains traceable |
P0-7 Ordered roadmap |
DEV-1 through DEV-9 substeps, gates, commit boundaries and Owner review points | one active step at a time; each step ends with focused evidence and Owner review |
P0 Cleanup Rule
Frozen does not mean unused. Current runtime adapters, regression tests,
historical assets and rejected candidates remain when they are referenced by
the main scene, Save migration, tests or provenance. Temporary Web exports,
.godot imports, local Gallery copies and truly unreferenced generated files
may be removed after the dependency scan. Every deletion records its path,
reason and replacement/retention status in the ledger.
P0 Gate Rules
During P0_PROJECT_CONSOLIDATION and until the next Owner-reviewed page:
- no DEV-3 visual code continues;
- no DEV-4+ page or gameplay expansion continues;
- no bulk asset generation continues;
- no historical runtime or evidence tree is deleted;
- no H5 link is presented as a final visual candidate.
P0 Consolidation Record
docs/01_GAME_DESIGN.mdnow provides the positive product contract and authority map.docs/02_GAMEPLAY_AND_BALANCE.md,docs/03_PAGES_AND_UX.md, anddocs/04_ART_ANIMATION_AUDIO.mdexplicitly own systems, player-facing pages and presentation respectively.tools/validate_design_contracts.pynow validates the current consolidated six-document layout instead of the retireddocs/productsplit. It passesABG_DESIGN_CONTRACTS_OKwith the declared 8-Region, 42-Profession, 320-equipment and 50-page envelope.tools/validate_predevelopment_design.pypassesABG_PREDEVELOPMENT_DESIGN_OKwith zero errors.- Dependency review found no safe tracked product file that is both unused and outside runtime, regression or provenance ownership. Temporary Web exports, local Gallery copies and generated caches remain cleanup-only artifacts; the historical runtime/evidence trees remain preserved.
- P0 is complete. The written Style Bible remains the rule reference, but the
next proof is a concrete
VA-1_GUILD_COMPANY_ANCHORpage rather than more abstract documentation.DEV-1R_ENTRY_REVIEW, DEV-3V and all later presentation/gameplay expansion remain frozen until the anchor is Owner- reviewed.
DEV-1R Boot Review Candidate
- Source
23f34bbe669b2d119929d9d4c47e4466cfa2116cchanges only the Boot presentation: the existing resource/settings/save checks, named progress, recoverable Retry and first-launch handoff remain unchanged. ABG_DEV1_BOOT_OKandABG_DEV1_BOOT_RUNTIME_OKpass through separate owned attempts. Twenty entry-matrix captures pass strict diagnostics and layout bounds; focused review uses the Boot frames only.- Fresh-start H5 review is published at the share URL recorded in
CURRENT_CHECKPOINT.md.DEV-1RremainsIN_PROGRESSpending Owner review; first-launch setup, Title and Settings are not yet reopened.
Development Plan V2: Visual Anchor First
Status:
OWNER_AUTHORIZED / ONE PAGE AT A TIMEActive step:M01_SYS003_RUNTIME_REVIEWRule: one page, one focused commit, one H5 review; no next page before Owner acceptance.
The existing Company, Contract, Market, Save and battle services remain the functional substrate. The rejected presentation is replaced from one concrete scene outward. No broad feature batch or new asset batch is allowed during the anchor review.
Ordered Steps
| Step | Player-visible stopping point | Narrow acceptance |
|---|---|---|
VA-1A Guild anchor decomposition |
Layer map, Godot scene tree, asset specifications and reference provenance describe one independent Guild composition | COMPLETE; Master B normalized geometry and independent runtime layers are recorded |
VA-1 Guild Company anchor |
One Guild scene shows the persistent Company as complete hand-drawn actors in a bright world with one physical Contract/Market prop, one next action and compact field HUD | OWNER_ACCEPTED_FOR_CONTINUATION; Master B remains undistorted inside a centered 16:9 design canvas, non-16:9 space is filled by the World layer, and the repaired Chinese HUD/placeholder frame is the accepted anchor baseline |
VA-2 Anchor interaction |
The same Guild scene supports real tap/mouse/focus on its primary destination, Back, Settings and disabled reason | EVIDENCE_COMPLETE / NOT_ACTIVE; parsed Guild interaction and disabled-state evidence pass; Owner explicitly redirected implementation to Title |
DEV-1R Entry re-review |
Boot -> first-launch -> Title -> Settings uses the accepted anchor grammar | IN_PROGRESS: TITLE V002 RUNTIME REVIEW; v002 is the sole current Title authority; other pages stay frozen until the Owner records the runtime decision |
DEV-2R Initial Company re-review |
Four candidates, Inspect/Compare, Review and Company handoff use the accepted actor/scene grammar | One page at a time; exact four/choose-two behavior remains unchanged |
DEV-3R Guild/Contract/Market rebuild |
Guild -> Contract -> Market -> Recruit/Equipment Review is coherent | Each page has its own focused commit and H5; no DEV-4 state is added |
DEV-4R Party/Risk presentation |
Party Line, Readiness and Risk make order, coverage and pressure readable | Real touch/focus and state comparison pass before Battle is reopened |
DEV-5R Battle loop presentation |
Battle Opening -> Result -> Knockout -> Recovery uses the same world/actor/HUD grammar | Existing battle semantics remain unchanged; Owner reviews one complete first cycle |
DEV-6R Company management presentation |
Equipment, Roster, Recruit Detail, Dismissal and Contract Return use the accepted grammar | Persistent growth and receipts remain unchanged; one page per review |
CONTENT-1..8 Content production |
Regions, Contracts and Bosses use the locked presentation contract | Produce one playable Region slice, review it, then continue one Region at a time |
RC Local candidate |
Full first-clear path, settings, localization, accessibility and migration are complete | Separate human, device, package and release gates remain open until accepted |
Current VA-1 repair is limited to responsive Guild composition. Master B
geometry, text and hit areas stay together inside the design canvas; resize may
add World-layer space outside that canvas but may not change its aspect ratio,
crop its Company or controls, or alter Guild/Contract/Market behavior. Final
dynamic layer replacement remains a later VA-1 task after this geometry passes
focused behavior, narrow-landscape resize, and normal-render review. The
current visual repair also replaces AI-master horizontal placeholder marks with
engine-rendered Chinese resource/command labels, keeps an English localization
branch, and places variable copy inside compact rail slots, the kiosk paper and
member name tags.
The repaired M02_HUB001_HUD_TYPOGRAPHY_REPAIR step owned only HUB-001.
Source cb6a078 replaced the historical Guild composite with the approved real
layered world, Company, Board and segmented rail reconstruction. Its fresh
archive passed import, layered structure, 10 parsed touches and 24 normal-render
frames with strict diagnostics 0, but Owner runtime review on 2026-08-20
rejected the rendered top and bottom command layers. The repaired stopping point
must restore fixed semantic icons to all three top resource cells, keep Settings
inside a fixed rail command, replace tiny bottom text tabs with icon-forward
destinations, and scale Guild typography with the contained canvas at all four
review fixtures. World, actors, Board semantics, Contract/Market behavior and
later pages remain frozen. Focused layout/touch verification and four visually
inspected frames formed commit 2417b74. A fresh Git archive of that source now
passes the layered structure test, 10 parsed Guild touches and four isolated
capture fixtures totaling 24 frames with strict diagnostics 0 at
/private/tmp/aetherbound-guild-test-evidence/hub001-hud-source-candidate/20260820T084919Z-98413.
The active step returns to M02_HUB001_OWNER_RUNTIME_ACCEPTANCE; later pages
remain frozen until explicit acceptance. Owner follow-up on 2026-08-20 found
one remaining assembly error in that candidate: the bottom center ended at 73%
while the fixed Compass texture was centered inside a 27% right region, exposing
a large transparent gap and a detached dark base. The active
M02_HUB001_BOTTOM_ENDCAP_REPAIR step changes only that center/endcap boundary,
adds a structural adjacency assertion, and regenerates the four Guild review
frames. Source e2acbd2 implements the 9% fixed Compass region and continuous
91% center boundary. Its fresh archive passes structure, 10 parsed touches and
24 frames with strict diagnostics 0 at
/private/tmp/aetherbound-guild-test-evidence/hub001-endcap-source-candidate/20260820T092031Z-20102.
The active step returns to M02_HUB001_OWNER_RUNTIME_ACCEPTANCE; all other HUD,
typography, world, behavior and later-page scope remains frozen. Owner follow-up
on 2026-08-20 rejected the five left bottom commands' percentage-based geometry:
their rectangles and spacing grow linearly with the 16:9 canvas, and the round
art reads above rather than inside the wood rail. The active
M02_HUB001_BOTTOM_NAV_SCALE_REPAIR step replaces only that geometry with
50-76px capped hit targets, independently capped medallion art, compact pixel
spacing and a rail-seated vertical position. The 48px minimum, labels, enabled
states, Compass endcap, top HUD, behavior and later pages remain frozen. Source
2b732b6 implements the capped geometry and preserves naturally scaled top HUD
icons. Its fresh archive passes the layered constraints, 10 parsed touches and
24 frames with strict diagnostics 0 at
/private/tmp/aetherbound-guild-test-evidence/hub001-bottom-nav-source-candidate/20260820T093954Z-34122.
The active step returns to M02_HUB001_OWNER_RUNTIME_ACCEPTANCE; later pages
remain frozen until explicit acceptance. Owner follow-up on 2026-08-20 found a
more fundamental mismatch in both rails. The runtime top overlays three opaque
rectangular cards and a double-width identity plate over the approved continuous
inlaid rail; the runtime bottom shrinks the visible medallions and adds labels,
so it no longer matches the approved rail-integrated icon hierarchy. The active
M02_HUB001_RAIL_LANGUAGE_REPAIR step changes only those presentation
boundaries: use the approved 02C..02G normalized top slots, inlaid parchment
value pills without outer cards, distinct status/destination icon geometry,
larger bottom medallions inside the capped hit areas, and tooltip/accessibility
names instead of visible bottom labels. Touch minimums, semantics, Compass,
world, Company, Board, behavior and later pages remain frozen. Source
c32967d implements the approved continuous top rail, compact identity pill,
icon-plus-value cells, native-width caps and four bottom destinations;
Title/Back reuses the left Guild crest instead of adding a fifth medallion. Its
fresh archive passes the expanded layered constraints, 10 parsed touches and 24
frames with strict diagnostics 0 at
/private/tmp/aetherbound-guild-test-evidence/hub001-rail-language-source-candidate/20260820T103441Z-72079.
The active step returns to M02_HUB001_OWNER_RUNTIME_ACCEPTANCE; later pages
remain frozen until explicit acceptance.
SYS-003 v002 was implemented and accepted as the previous page. The approved
master and separate text-free background extension are imported with linear
filtering; normalized engine text and hit areas own New Game, Continue,
Settings, Credits and every disabled reason. Focused Title behavior, full entry
touch, wider/exact/narrower live resize and the 20-frame entry capture matrix
pass with strict diagnostics 0. Its runtime visual acceptance is recorded in
the page verification package.
Owner review superseded v001 after identifying a visible two-image join outside
the 16:9 canvas and a Title identity placed too close to the crest. The approved
v002 authority is one complete 16:9 image under
docs/design-authority/pages/SYS-003-title/approved/v002/. Runtime no longer
composites a second scene at device edges; it uses a clean sky-toned matte
outside the undistorted canvas. Title and command text use the corrected v002
slots. Focused behavior, parsed touch, live resize and the normal-render matrix
pass with strict diagnostics 0; v002 remains the only active page and stops for
Owner runtime review.
A SYS-002 First-launch Setup v001 image remains DRAFT_REVIEW provenance
after three zero-cost provider failures and one completed $0.014 generation.
It has no approved/runtime copy and is not imported into Godot; v002 is the
sole current First-launch authority.
The completed M01_SYS002_RECONSTRUCTION stopping point was the real First-launch
page reached after Boot: six settings controls, a live safe-area/text preview,
atomic Apply-to-Title handoff, no Back before completion, and a stable
landscape matrix. Focused behavior/input/resize and normal-render evidence
remains green in the accepted evidence. The next active stopping point is the
SYS-003 Title runtime review; a failed visual review keeps Title active and
returns it to the earliest failed state.
Per-Step Execution Loop
freeze scope
-> write one page contract and focal order
-> build one static graybox using existing approved assets
-> Owner visual check
-> implement one real Godot page
-> focused behavior/input test
-> normal-render matrix and fresh-start H5
-> Owner acceptance or repair the same page
-> remove replaced dead UI only after dependency scan
-> focused commit, push, clean worktree
-> activate the next step
Stop Conditions
- A page that reads as a card wall, generic dashboard, tiny actor list or pixel/retro UI fails and blocks the next page.
- A green behavior test cannot close a visual gate.
- A new idea found during a step goes to the issue register; it does not expand the active step.
- Historical runtime, regression and provenance files are not deleted until a replacement migration and dependency audit prove they are no longer needed.
Current Milestone
P10.3 and FG-2 are functionally complete. FG-3 is locally accepted at pushed source
370f2a5: both RG-02 Contracts, 17 ordinary Rounds, both Bosses, permanent
casualty/recovery, two Company Records, first-clear Renown and reload-stable
RG-03 unlock pass five-profile simulation, Save-v10 persistence, complete
runtime, parsed-touch, audio and MovieWriter gates. FG-4 gameplay, simulation,
Save-v11 and Web transport reached a combined midpoint candidate, but Owner
review on 2026-08-17 rejected its pixel-art presentation as a contradiction of
the accepted Japanese 2D hand-drawn direction. The pixel H5 is not a visual
baseline. FG-5 and bulk content remain frozen while the active hand-drawn
presentation repair preserves the working systems and replaces only the
rejected visual layer. Human comprehension, fun, visual and listening judgments
remain open rather than inferred from automation.
Legal Terminal
Aetherbound Guild complete local candidate ready
or:
Aetherbound Guild complete development redesign required:
<earliest failed product boundary>
FG-4 Japanese 2D Hand-Drawn Presentation Repair Goal
Task ID:
ABG-FG4-HANDDRAWN-PRESENTATION-REPAIRStatus:OWNER_APPROVED_ENTRY_FIRSTOwner direction:2026-08-17Planning baseline:d59555c5a3cf95fc44de79ba06c02e650eb3df3bContract revision:fg4-handdrawn-repair-r1
Earliest Failed Boundary
Gallery item 5vl2EqsYWkey renders the playable midpoint as 16-bit pixel art.
The Owner rejected that direction because the accepted product identity is a
landscape Japanese 2D hand-drawn fantasy game. Automated layout, asset and
runtime checks did not have authority to overrule that human visual decision.
Owner Outcome
Keep the implemented game and restore its approved presentation. Do not restart the battle, progression, content, Save or input systems. Replace the rejected pixel visual layer with thin-line/cel-color actors, softly painted environments and compact field-attached game HUD.
Planning Outcome
The Owner reviewed the redevelopment order and approved player-entry-first
implementation. The six numbered documents under docs/ retain:
- the canonical product and game-system documents;
- the complete 50-page inventory and development order;
- the Japanese 2D hand-drawn visual contract;
- the runtime art, animation, UI, VFX and audio production plan; and
- the full-game roadmap and explicit frozen scope.
The authorization starts only DEV-1: Boot, first-launch setup, Title and
essential Settings. Initial Company, Guild, Market, formation, battle, later Regions,
bulk generation and delivery remain frozen until their ordered step.
Intended Player-Visible Stopping Point After Approval
open one replacement landscape H5
-> recognize a Japanese hand-drawn fantasy guild battle within three seconds
-> read the imminent enemy action first
-> read the ordered Company line second
-> read the objective and compact controls third
-> watch contact, guard, ranged attack, healing, damage and defeat animation
-> reach result or knockout recovery without leaving the painted world
-> continue into the unchanged RG-03/RG-04 midpoint state
Preservation Boundary
- Preserve accepted gameplay, economy, content, Save-v11, localization, accessibility, touch, audio-event and simulation behavior.
- Preserve the rejected pixel assets and H5 as Git history; do not use them as visual authority or expand their asset families.
- Reuse accepted Phase-6 Japanese hand-drawn concepts and motion sources before requesting new images.
- Keep engine text and numerical values crisp. Non-text runtime art is smooth hand-drawn/cel-painted work, not nearest-scaled pixels.
Frozen Scope
- Runtime or gameplay implementation before Owner plan approval.
- New gameplay, economy, Save version, content rows or balance changes.
- FG-5 and later Region implementation.
- New image generation during planning review.
- Native packages, devices, signing, TestFlight, stores and release.
- Multi-Agent development.
Planning Terminal
Aetherbound Guild hand-drawn redevelopment plan ready for Owner review
FG-4 Japanese 2D Hand-Drawn Presentation Repair Contract
Revision:
fg4-handdrawn-repair-r1Fixed functional baseline:d59555c5a3cf95fc44de79ba06c02e650eb3df3bImplementation state:DEV_1_ENTRY_FLOW_READY
Visual Identity
An ordinary but capable Japanese fantasy guild forms one continuous horizontal Company line inside a bright, softly painted unstable world. Characters use thin controlled linework, restrained cel color and reference-led proportions. The world, imminent action and line relationship dominate; UI behaves as attached field instruments rather than a separate application dashboard.
Authority
The controlling visual references are:
01_GAME_DESIGN.md;04_ART_ANIMATION_AUDIO.md;03_PAGES_AND_UX.md; and- accepted battle reference.
The generic portfolio pixel-art rule is inapplicable to this repository. The Owner's 2026-08-17 rejection supersedes every machine visual-pass claim made for the pixel H5.
Fixed Battle Comparison
- Viewport:
844x390, with760x360and1280x720responsive checks. - State: one unchanged midpoint battle fixture with a visible incoming threat, ordered Company, melee contact, ranged action, healing, damage and defeat.
- First focal read: imminent enemy action and affected target.
- Second focal read: front-to-rear Company order and active profession action.
- Third focal read: objective, pause, speed and inspect controls.
- Ordinary actor scale: no fixed percentage; preserve the complete Company line, enemy relation and movement corridor, then confirm the real runtime frame with the Owner. Bosses may be larger without erasing crowd readability.
Art And Import Rules
- Background, midground and foreground remain separate editable painted layers.
- Actor identity is locked before action frames. Body animation and detached VFX remain separate assets with stable pivots, baseline, facing and light.
- Smooth non-pixel filtering is required for painted sources. Palette reduction, hard square clusters, nearest-neighbor magnification and pixelation are prohibited.
- Existing accepted sources are audited for reuse before generation. Any future
image request uses the installed
image-genroute, begins with a dry run and remains within four paid calls and USD 5 for its approved task. - Raw generated sheets are never runtime-final. Preserve prompts, task IDs, costs, accepted/rejected cells, processing, hashes and import settings.
UI Rules
- World and actors occupy the primary surface.
- Top and bottom HUD rails remain compact and attached to screen edges.
- One primary action is visually dominant per decision state.
- Cards are allowed only for repeated offers or inventory entries; nested cards, generic dark panels and explanatory walls are rejected.
- Engine-rendered Simplified Chinese and English remain readable at 130% text.
- Touch targets remain at least 48 logical pixels and retain non-color states.
Motion And Feedback
Every representative action has anticipation, committed impact, readable value, recovery and legal terminal state. Required states are idle, advance/contact, melee impact, ranged release, heal, guard, hurt, defeat and victory recovery. Damage/healing values, hit pause, shake and detached VFX follow authoritative events and obey reduced motion/flashes and low-power settings.
Rejection Conditions
- The result still reads as pixel art, a card application or a text debugger.
- Actor identity, anatomy, facing, scale, pivot or baseline drifts between frames.
- The player must read the title or explanatory copy to recognize the fantasy.
- UI or effects cover the imminent threat, active action, HP or primary control.
- A concept image is presented as proof of real runtime integration.
Evidence Boundary
Agent inspection may reach agent_visual_reviewed. Only the Owner can restore
human_reviewed. Device, packaging, signing, stores and release remain open.
Aetherbound Guild Full-Game Implementation Roadmap
Status:
ACTIVEOwner-approved:2026-08-16Active phase:FG-4 Japanese 2D Hand-Drawn Entry FlowProgram Goal:06_DEVELOPMENT_AND_REVIEW.mdActive milestone plan:06_DEVELOPMENT_AND_REVIEW.md
Current Truth
- The complete design catalogs exist, but a design row is not implemented content and a production brief is not a finished asset.
- RG-01's two Contracts have a verified playable runtime baseline.
- RG-02 is runtime-verified through Round 4 and stable Market 5.
- P10.3 is complete through stable Market 8 at
simulation_verified + runtime_verified + agent_visual_reviewed. Five profiles and the complete Save-v9/layout candidate matrix pass from fixed sourced00c7ad. - The executable and production presentation authority now covers 4 of 16 Contracts through the complete RG-02 candidate.
- FG-2 functional runtime, Web and touch evidence passed at source
3302134, but its pixel presentation is superseded by the 2026-08-17 Owner visual rejection. It is not current art authority. - FG-3 source
370f2a5passes five-profile simulation, 15-state Save-v10 persistence, complete RG-02 normal rendering, parsed touch, media, audio and MovieWriter gates. Read-only PMO acceptance is complete. - FG-4 Step 5 source
791187ccloses the complete RG-03 candidate. Five profiles cover 265 decisions, 16 winning secondary responses, legacy permanent-loss recovery, nine reloads and 15 Save-v11 states; the retained production runtime passes 12-state layout/accessibility, parsed touch, event-bound audio and a 24.83-second recording. Six of sixteen Contracts now reachsimulation_verified + runtime_verifiedproduction presentation. - The combined RG-03/RG-04 midpoint systems and Web transport pass, but Owner review on 2026-08-17 rejects the pixel-art runtime as a direct contradiction of the accepted Japanese 2D hand-drawn product contract. Systems evidence is retained; the Owner has approved rebuilding presentation in actual player order, beginning with Boot, first-launch setup and Title.
Program Sequence
Only one phase and one child-plan step may be IN_PROGRESS.
| Phase | Status | Player outcome | Owned production | Exit evidence | Owner gate |
|---|---|---|---|---|---|
FG-0 Program activation |
COMPLETE |
Development has one visible endpoint and ordered route. | Program Goal, roadmap, checkpoint and ledger. | Clean pushed planning commit. | Approved 2026-08-16. |
FG-1 Finish P10.3 |
COMPLETE |
Clear Siltwake Rounds 5-7, choose an Artifact, optionally promote and reload at changed Market 8. | Existing P10.3 Steps 3-5 only. | Battle counterfactuals, five profiles, save/layout matrix, parsed-touch runtime and recording. | No pause. |
FG-2 Production vertical slice and canonical runtime |
FUNCTIONAL_COMPLETE_VISUAL_SUPERSEDED |
One Market -> preparation -> battle -> result/recovery chain executes through the canonical runtime. | Runtime/state integration, event-bound feedback and audio routing; pixel art is rejected. | Functional regressions, recording, touch and H5 transport remain supporting evidence only. | Visual direction reopened 2026-08-17. |
FG-3 Complete RG-02 |
COMPLETE |
Finish both Siltwake Contracts, both Bosses and unlock RG-03 with a changed persistent Guild. | Remaining EQ-065..080, AR-009..015, both RG-02 Bosses, Round 8-12 and complete second Contract content, art and audio. |
Source 370f2a5; five profiles, 15-state persistence, complete runtime/media/audio candidate. |
PMO accepted 2026-08-16. |
FG-4 Complete RG-03 and RG-04 |
ENTRY_FLOW_READY |
Preserve the verified midpoint systems and restore the approved Japanese 2D hand-drawn experience in player order. | Boot, first launch, Title, Initial Company, Guild, Market, Party, battle, result/recovery and regional presentation, converting legacy lifecycle semantics only in their named step. | End-to-end launch reachability, normal-render motion, responsive states and replacement H5. | Checkpoint 2: midgame depth, clarity and continuation. |
FG-5 Complete RG-05 and RG-06 |
PENDING |
Adapt to echoes, rear intrusion, moving rail order and airborne timing across four Contracts. | EQ-161..240, AR-031..045, EN-R5/R6, four Bosses and complete production media. |
Same content, balance, save, runtime, accessibility and media gates as FG-4. | No pause. |
FG-6 Complete RG-07 and RG-08 |
PENDING |
Resolve hidden-information and synthesis Regions, defeat the final Boss and choose Chronicle or Oath Season. | EQ-241..320, AR-046..060, EN-R7/R8, four Bosses, ending, Final Ledger and full campaign presentation. |
End-to-end first-clear simulations, ending atomicity, full campaign runtime checkpoints and complete content/media coverage. | Checkpoint 3: first-clear beta. |
FG-7 Mastery and postgame |
PENDING |
Discover six hidden hybrids and play strategically different Oath runs without flat-power grinding. | Hidden Profession unlocks, optional run laws, alternate Boss breadth, Records, collection knowledge and mastery challenges. | 60+ hour modeled breadth, anti-dominance profiles, save migration and representative postgame runtime. | No pause unless product depth fails. |
FG-8 Alpha, beta and local release candidate |
PENDING |
A new player can understand, finish and replay the complete game in a stable local build. | Whole-game UX polish, balance, localization, accessibility, performance, lifecycle, final media coverage and defect closure. | Full suite, campaign simulations, complete state matrix, normal-render recordings, fresh review H5 and clean pushed source. | Final Owner human acceptance remains open. |
M05 RSK-001 Durable Implementation Plan (Closed)
The page-production milestone was M05_RSK001_RISK_BOARD_DESIGN. Its
player-visible stopping point is a frozen four-member party snapshot beside
three equal sourced risk options. The page exposes known threat, uncertainty,
entry cost, reward class, recovery exposure and current party coverage. Review
opens the existing Risk Commitment boundary; no risk or battle receipt is
created here.
| Step | Status | Acceptance |
|---|---|---|
RSK-1 Deconstruction and reconstruction package |
COMPLETE |
Layer map, text slots, hit areas, asset plan/manifest/contact sheet, runtime spec and provenance hashes are present. |
RSK-2 Godot Runtime |
COMPLETE |
show_risk_board uses a contained 16:9 canvas, engine-owned party/options/actions and unchanged FormationRiskService semantics. |
RSK-3 Focused verification |
COMPLETE |
ABG_DEV4_RISK_OK; normal 100% captures at 760x360, 844x390 and 1280x720; strict diagnostics 0; 48px targets. |
RSK-4 Owner Runtime Review |
COMPLETE |
Owner accepted the normal 100% Runtime captures and live path at actual size on 2026-08-23; the no-receipt stopping boundary is confirmed. |
Frozen scope: Risk Commitment implementation changes, battle receipt/simulation, new content, packaging and release remain outside M05.
M06 RSK-002 Durable Specification Plan (Closed)
The active page-production milestone is M06_RSK002_RISK_COMMITMENT_DESIGN.
Its player-visible stopping point is an explicit commitment review that keeps
the selected RSK-001 option and the frozen four-member Party snapshot visible
together. It names threat, uncertainty, Coin cost, reward, recovery and retreat
consequence, then requires one deliberate confirmation before the DEV-5 battle
receipt boundary. Cancel returns to RSK-001; a successful idempotent receipt
opens BAT-001 Battle Opening.
| Step | Status | Acceptance |
|---|---|---|
RSK2-1 Contract and state matrix |
COMPLETE |
page-contract.json and state-matrix.json define the normal 100% landscape layout, sourced consequence fields, receipt ownership, return paths and loading/stale/insufficient-Coin/invalid/interruption states. JSON and predevelopment design checks pass. |
RSK2-2 Independent design draft |
COMPLETE |
Owner accepted v001 at actual size on 2026-08-23; it uses one selected-risk relic, one consequence band and one connected four-member staging area rather than the RSK-001 three-option board layout. |
RSK2-3 Deconstruction review |
COMPLETE |
Owner accepted the layer map, text slots, normal 100% anchors, transparent hit areas and no-duplicate-frame policy at actual size on 2026-08-23. |
RSK2-4 Asset generation and processing |
COMPLETE |
One constrained cleanup edit removed dynamic regions from the approved master; accepted Recruit provenance is reused, hashes are recorded and the contact sheet is built. |
RSK2-5 Owner asset review |
COMPLETE |
Owner replied OK to the full-size clean static master and contact sheet on 2026-08-23; the asset gate is closed. |
RSK2-6 Reconstruction package |
COMPLETE |
Runtime reconstruction spec, asset manifest, independent hit areas and focused preflight pass; the page is RECONSTRUCTION_READY. |
RSK2-7 Runtime implementation |
COMPLETE |
Godot implementation reconstructs the approved contained 16:9 commitment page, creates one idempotent risk commitment receipt only after explicit confirmation and enters BAT-001; focused behavior/input, normal 100% captures, strict diagnostics and 48px target checks pass. No battle simulation is added in M06. |
RSK2-8 Owner Runtime review |
COMPLETE |
Owner accepted the source-bound normal 100% Runtime at actual size on 2026-08-23, confirming the selected-risk/Party hierarchy, six-fact consequence band, acknowledgement gate, command rail and BAT-001 stopping boundary. |
Frozen scope: no battle simulation, result/recovery UI, new content, packaging, release or unrelated cleanup.
2026-08-23 - RSK-002 Asset Gate Closed
- Owner replied
OKto the full-size clean static master and asset contact sheet. The single cleanup task, dynamic mask, accepted Recruit provenance and no-baked-text policy are recorded in the closed asset review. - The page remains
ASSET_REVIEWuntil the separate Runtime reconstruction handoff is written and preflighted; Godot implementation remains frozen.
2026-08-23 - RSK-002 Reconstruction Package Ready
- The Runtime handoff now records the contained 16:9 layer order, static and dynamic ownership, PTY-002 Party bindings, all state transitions, localized text policy and independent 48px hit areas.
runtime/preflight.jsonpasses the focused package check at 24/24. The page isRECONSTRUCTION_READY; Godot implementation requires its own activated step and commit.
2026-08-23 - RSK-002 Runtime Implementation Activated
- The reconstruction handoff is accepted and the page is now
IMPLEMENTATION_IN_PROGRESS. Godot may bind the cleaned static master, accepted Recruit family, engine-owned fact slots and independent hit areas. - The active stopping point remains one explicit, idempotent commitment receipt handed to BAT-001. Battle simulation, result/recovery UI and later pages stay frozen until the Runtime evidence boundary closes.
2026-08-23 - RSK-002 Runtime Candidate Ready For Owner Review
- Source revision
64c1c6fimplements the approved contained 16:9 commitment surface inruntime/entry/entry_shell.gd. The candidate binds the exact four Recruit Party snapshot, six sourced consequence facts, independent 48px hit areas and Settings return without adding a second frame or card wall. - Explicit acknowledgement is required before
Begin Battle; the focused test records no receipt before acknowledgement, one idempotent commitment receipt after confirmation and a BAT-001 handoff preserving the Party snapshot and order. Battle simulation, result/recovery UI and later pages remain frozen. ABG_RSK002_COMMITMENT_OKpasses at 760x360, 844x390 and 1280x720 in zh_CN/en at normal 100% text scale with strict diagnostics 0. The six retained captures and verification JSON are underpages/RSK-002-risk-commitment/verification/; this was the evidence set for the now-closed Owner visual/runtime gate.
2026-08-23 - RSK-002 Runtime Accepted; BAT-001 Specification Activated
- The Owner replied
OKafter reviewing the RSK-002 Runtime at actual size. The selected-risk relic, complete four-member Party staging, connected six-fact consequence band, explicit acknowledgement gate and command rail are accepted at normal100%text scale. - The acceptance record is
pages/RSK-002-risk-commitment/verification/owner-acceptance.md. It records the exact-once commitment receipt and BAT-001 handoff while explicitly leaving battle simulation, result/recovery, devices, packaging, stores and release outside this gate. M06_RSK002_RISK_COMMITMENT_OWNER_RUNTIME_REVIEWandRSK002-RUNTIME-01are closed.M07_BAT001_BATTLE_OPENING_SPECand the authority/reconstruction gates are complete; the current soleIN_PROGRESSstep isM07_BAT001_BATTLE_OPENING_RUNTIME.
2026-08-23 - BAT-001 Specification Ready; Design Draft Activated
docs/design-authority/pages/BAT-001-battle-opening/page-contract.jsonandstate-matrix.jsondefine the static pre-observation boundary, immutable RSK-002 handoff, ordered Party/enemy reading, explicit Start Observation, interruption handling and normal100%landscape requirements.- Static JSON, design-contract, predevelopment and focused assertions pass in
source
1b3adc6. The page is registered asSPEC_READYin the design index and Gallery. - At activation time,
M07_BAT001_BATTLE_OPENING_SPECwas complete and the soleIN_PROGRESSstep became the historical draft/reconciliation gate. No deconstruction, asset generation or Godot Runtime work was authorized until the existing battle authority was explicitly accepted; that gate is now closed and the current Runtime boundary is recorded below.
2026-08-23 - BAT-001 v001 AI Draft Generated (Later Rejected)
- One authorized GPT-Image-2 2K call generated the independent Battle Opening composition. It keeps four complete Company actors on a rear-left to front-right line, a readable enemy-facing corridor, one first-threat marker, blank objective/command slots and no readable baked text.
- Task
task_01M0QAKYKS41600MSY318C2VZPcost$0.014; prompt/output hashes, source URL and expiry are recorded inpages/BAT-001-battle-opening/rejected/v001/manifest.json. - The output was subsequently rejected by the Owner as a competing battle
direction. It is preserved with its prompt, task, cost and hashes under
pages/BAT-001-battle-opening/rejected/v001/; it is not an active page design and cannot enter deconstruction, assets or Runtime.
2026-08-23 - BAT-001 Draft Rejected; Existing Battle Authority Restored
- The Owner identified that the repository already contains the approved
battle page direction at
prototype/generation/phase6_ui_direction_01/outputs/05_battle_ui_japanese_scale.png. The relatedphase6_battle_scale_04proof preserves the complete Company scale, compact ordinary units, continuous horizontal battlefield, opposing enemy space and attached top/bottom battle rails. - The generated BAT-001 v001 image is the wrong page direction: it uses four
oversized actors, a sparse enemy tableau and large blank parchment panels.
It is archived as
REJECTED_PROVENANCE, and BAT-001 returns toSPEC_READY. - BAT-001 now owns only the page-specific static pre-observation adaptation of that accepted battle composition. No new image generation, deconstruction, asset processing or Godot Runtime work is authorized until the adaptation is explicitly accepted.
2026-08-23 - BAT-001 Battle Authority Accepted; Reconstruction Activated
- The Owner replied
OKto proceed with development using the existing approved full-party Japanese 2D battle composition and scale proof. The rejected v001 image remains provenance only and is not a replacement design. BAT001-AUTHORITY-01is resolved. At this historical transition the sole active boundary became the page-specific BAT-001 deconstruction/reconstruction package; Runtime remained frozen until its preflight and focused assertions passed. That package is now complete and Runtime is the active boundary.
2026-08-23 - BAT-001 Reconstruction Package Ready; Runtime Activated
- The reconstruction package reuses the accepted clean Windglass field, actor family and Riftblade enemy provenance; no new AI image was generated.
- Layer ownership, engine text slots, responsive anchors, transparent hit areas,
asset manifest and runtime reconstruction spec pass the BAT-001 page
preflight at
26/26in source7fccbbc. BAT1-3is complete andBAT1-4is now the soleIN_PROGRESSstep. The Runtime boundary remains static opening plus explicit handoff to BAT-002; live battle simulation, result and recovery remain frozen.
2026-08-23 - BAT-001 Runtime Candidate Ready; Owner Review Activated
- Source
f892bb6implements the bounded static Battle Opening in Godot. It binds the immutable RSK-002 Party snapshot and committed enemy offer, keeps the accepted full-party painted field and compact top/bottom rails, and exposes objective, order, enemy-facing direction, first threat and the no-respawn/no-reserve rules as engine-owned text. ABG_DEV5_BATTLE_OPENING_OKpasses from a fresh Git archive with parsed touch, strict diagnostics 0, phase index 0 before and after handoff, exactly one battle receipt and Settings return. Four source-bound normal 100% capture attempts at 760x360 zh_CN, 844x390 en and 1280x720 zh_CN/en also pass.- BAT-001 is now
IMPLEMENTED_AWAITING_OWNER_RUNTIME_REVIEW. The page stops at one explicit handoff to BAT-002; no live timeline, combat command, result or recovery UI was added. Owner visual/comprehension review remains open.
2026-08-24 - BAT-001 Runtime Accepted; M07 Closed
- The Owner replied
OK 的,然后继续after reviewing the source-bound BAT-001 Runtime candidate at actual size and normal100%text scale. - The complete four-member Company line, three committed enemies, readable movement corridor, compact field-attached HUD hierarchy, first-threat disclosure and explicit observation handoff are accepted.
BAT001-RUNTIME-02andM07_BAT001_BATTLE_OPENING_OWNER_RUNTIME_REVIEWare closed. The acceptance record ispages/BAT-001-battle-opening/verification/owner-acceptance.md.- No live timeline, result/recovery UI, device validation, packaging or release is authorized by this acceptance. M08 remains inactive until this closure is committed and pushed.
2026-08-24 - BAT-001 Closure Pushed; BAT-002 Specification Activated
- Source
155d775is confirmed onorigin/agent/abg-p91-runtime-foundation; BAT-001 is closed before the next milestone changes state. M08_BAT002_LIVE_BATTLE_SPECandBAT2-1are now the sole active boundary. They own only the BAT-002 page contract, state matrix and focused static verification.- Historical
show_battle()and first-battle services are functional provenance, not automatically accepted BAT-002 visual Runtime. The accepted Japanese 2D battle composition and full-party scale remain the visual authority; no competing battle direction is authorized.
2026-08-24 - BAT-002 Specification Ready
pages/BAT-002-live-battle/page-contract.jsonandstate-matrix.jsondefine the live automatic-battle purpose, actor/target/event bindings, diagnostic- only controls, exactWaiting for next eventstate, invalid-event pause, deterministic interruption behavior and later-page ownership.- The contract requires representative melee, ranged, magic, healing, guard,
damage and knockout reads while preserving the accepted full-party Japanese
2D battle composition. Historical
show_battle()remains functional provenance only. - JSON, six focused BAT-002 assertions, design-contract and complete
predevelopment validation pass.
BAT2-1andBAT002-SPEC-01are closed; no art, deconstruction, asset or Runtime step is activated before this package is committed and pushed.
2026-08-24 - BAT-002 Specification Pushed; Authority Reconciliation Activated
- Source
7ededeais confirmed onorigin/agent/abg-p91-runtime-foundation; BAT2-1 is closed before BAT2-2 changes state. M08_BAT002_LIVE_BATTLE_RECONSTRUCTIONand BAT2-3 are now the sole active boundary. They own only page-specific deconstruction, engine-slot ownership, existing-asset provenance and the reconstruction handoff for the already accepted live-battle composition and scale proof.- No new design generation or image edit is authorized. Historical
show_battle()remains functional provenance and the accepted BAT-001 static Runtime remains a neighboring page, not BAT-002 visual authority. Godot Runtime code stays frozen until BAT2-4 is separately activated.
2026-08-24 - BAT-002 Existing Battle Authority Reconciled
- The accepted
05_battle_ui_japanese_scale.pngand full-partyphase6_battle_scale_04proof are copied byte-for-byte intopages/BAT-002-live-battle/approved/v001/; no new generation or image edit occurred and new cost is$0.00. - The manifest and live-state map freeze both complete lines, ordinary-unit scale, central action gap, top status/control rails, subject-attached urgent event geometry and the bottom actor-state rail while assigning every actor, value, target, event and control state to Runtime ownership.
- Four focused authority/hash/layer assertions, the six specification tests,
complete related unittest set, design-contract and predevelopment checks
pass. BAT2-2 and
BAT002-AUTHORITY-01are closed; BAT2-3 is now activated as the sole reconstruction boundary and does not authorize Runtime changes.
2026-08-24 - BAT-002 Reconstruction Package Machine-Validated
- BAT2-3A/B/C are authored: the page-specific deconstruction board, normalized
layer ownership, dynamic-region audit, engine text slots, independent hit
areas, event animation/VFX bindings, existing-asset provenance, runtime
asset manifest and reconstruction spec are all present under
pages/BAT-002-live-battle/. - No new image generation or image editing occurred. The clean Windglass field is reused byte-for-byte from the accepted BAT-001 reconstruction; accepted Recruit/enemy/animation/VFX assets are hash-recorded and the contact sheet is deterministic evidence only.
- Focused BAT-002 reconstruction/spec/authority assertions pass
17/17; page restore preflight passes32/32; design-contract, predevelopment and Gallery checks pass (ABG_DESIGN_GALLERY_OK pages=50). Runtime code and battle rules were not changed. BAT2-3D remains active until the Owner checks the visual deconstruction/asset boundary.
2026-08-24 - BAT-002 Reconstruction And Asset Gates Accepted
- The Owner replied
OKafter reviewing the final BAT-002 deconstruction board and asset contact sheet at actual size. The complete Party/enemy scale, central action gap, layer ownership, engine-owned text/state boundary, independent hit areas and existing-asset provenance are accepted. - No image generation or image editing was needed; the zero-generation asset
plan and reconstruction handoff advance through asset review to
RECONSTRUCTION_READY. - BAT2-3 and all four substeps are complete. No Runtime step is active in this closure record; BAT2-4 requires its own durable plan commit and push before any Godot product code changes.
2026-08-24 - BAT-002 Runtime Plan Activated
M08_BAT002_LIVE_BATTLE_RUNTIMEis active with BAT2-4A as the soleIN_PROGRESSsubstep. Product code remains frozen until this activation commit is remote-visible.- BAT2-4A owns only a backward-compatible observation path bound to the original operation, Party snapshot and single receipt. It must stop at an immutable outcome lock and cannot invoke the historical immediate settlement path or mutate Coin, XP, Recruit history, recovery or next-stage state.
- The accepted contained 16:9 layered battlefield starts only in BAT2-4B after BAT2-4A passes a focused test and its implementation commit is pushed. No new image generation or image editing is authorized.
2026-08-24 - BAT-002 Observation Service Pushed; Battlefield Activated
- Source
2d4d5a7is remote-visible. BAT2-4A begins observation without a hidden tick, previews and commits nine stable event identities, rejects order, hash and journal corruption, preserves the original receipt and stops at an immutableoutcome_lockedhandoff without reward or recovery. ABG_DEV5_BATTLE_OBSERVATION_SERVICE_OKand the separate historicalABG_DEV5_BATTLE_OKregression pass through the attempt runner with strict diagnostics 0. The legacy immediate-settlement path remains compatible when no BAT-002 observation is started.- BAT2-4B is now the sole
IN_PROGRESSsubstep. It owns only the accepted contained 16:9 layered live battlefield and focused Runtime/layout test; BAT2-4C controls and diagnostic states remain frozen.
2026-08-24 - BAT-002 Contained Battlefield Pushed; Timeline Activated
- Source
950b32eis remote-visible. BAT2-4B enters BAT-002 directly without a hidden tick and renders the accepted contained 16:9 field with the complete four-member Party, three-enemy line, ordinary-unit scale, central event projection and ordered actor-state rail. ABG_DEV5_BATTLE_LIVE_FIELD_OKpasses normal-render760x360,844x390and1280x720fixtures in zh_CN/en at normal100%, exact waiting copy, sparse waiting density, Settings return and 48px targets with strict diagnostics 0. BAT-001 handoff, observation-service and historical settlement regressions also pass separately.- The historical card-UI
battle_runtime_test.gdautoplay/pause/speed assertions are not current visual authority. Settlement remains covered bybattle_foundation_test.gd; BAT2-4C now owns timeline, pause and legal 1x/2x/4x behavior on the accepted field. - BAT2-4C is now the sole
IN_PROGRESSsubstep. Neighboring BAT-003/004/005/ 006 and OUT-001 pages, settlement, reward and recovery remain frozen.
2026-08-24 - BAT-002 Timeline and Diagnostic Boundaries Pushed; Closure Activated
- Source
0de6c7ais remote-visible. BAT2-4C connects the receipt-bound waiting, forecast, commit, resolving and resolved stages with deterministic presentation timing. Pause freezes the current stage, and legal1x,2xand4xspeeds change presentation timing only. - Inspect, Settings, retreat, invalid-event Retry Snapshot/Safe Exit, interruption BAT-006 and immutable OUT-001 are truthful handoff entries; no neighboring page, retreat receipt, reward, recovery or settlement is created. Snapshot, event order, event hashes, journal hash and outcome hash remain invariant across speed, pause, retry and interruption paths.
ABG_DEV5_BATTLE_TIMELINE_OK,ABG_DEV5_BATTLE_LIVE_FIELD_OK,ABG_DEV5_BATTLE_OPENING_OK,ABG_DEV5_BATTLE_OBSERVATION_SERVICE_OKandABG_DEV5_BATTLE_OKpass throughtools/run_test_attempt.pywith strict diagnostics 0. Normal100%field captures at760x360,844x390and1280x720remain readable in the accepted complete-line composition.- BAT2-4C and BAT2-4D are
COMPLETE; BAT2-5 source-bound verification is complete and BAT2-6 Owner Runtime review is now the soleIN_PROGRESSsubstep. BAT-003/004/005/006, OUT-001, settlement, reward and recovery remain frozen.
2026-08-24 - BAT-002 Runtime Closure Recorded; Source-Bound Verification Activated
- The BAT-002 implementation record, behavior/input/responsive evidence and
design-index links are now present under
docs/design-authority/pages/BAT-002-live-battle/. The page state moves toIMPLEMENTED_AWAITING_OWNER_RUNTIME_REVIEWat source0de6c7a. - A combined source-bound attempt from the pushed Runtime source runs Godot
import first, then the normal-render field check and the timeline, BAT-001,
observation-service and legacy DEV-5 regressions. Attempt
/private/tmp/aetherbound-guild-test-evidence/bat002-closure-source-bound/20260824T071013Z-49976passes all five required markers exactly once with strict diagnostics 0; its evidence archive SHA-256 is2c4c8f2cb77f0e09f66d69dea527cd5b9694de6e9adbf3fad126b00c0925f187. - BAT2-4D is
COMPLETE; BAT2-5 is now the soleIN_PROGRESSsubstep. BAT2-5 owns retained source-bound candidate captures and final evidence before the separate Owner Runtime review. Later battle pages and settlement remain frozen.
2026-08-24 - BAT-002 Source-Bound Candidate Verified; Owner Review Activated
- Source
fea2ae9769a9db3b3b3a1e6966b782b2a42cde44runs the BAT2-5 candidate harness from a fresh Git archive. Godot import completes before four normal100%fixtures:760x360/zh_CN,844x390/en,1280x720/zh_CNand1280x720/en. - The candidate attempt
/private/tmp/aetherbound-guild-test-evidence/bat002-live-candidate-source-bound/20260824T073836Z-70156passesABG_BAT002_CANDIDATE_OKexactly once, retains 40 captures, reports strict diagnostics0, and removes its owned workspace. The evidence archive contains 45 files with SHA-256a00f1b915f34ec9ac84b955ffc2eab7313830bcfccb9c1c1f79d4651161fb7d0. - BAT2-5 is
COMPLETE; representative state captures and the complete archive record are underpages/BAT-002-live-battle/verification/. The page moves toVERIFIED_AWAITING_OWNER_ACCEPTANCE, and BAT2-6 is the sole active Owner Runtime review boundary. No later battle page or settlement work is authorized.
2026-08-24 - BAT-002 Candidate Visually Rejected; Approved-Design Repair Activated
- The Owner reviewed the actual normal
100%Runtime and rejected it as substantially different from the approved battle design. The automatic verification remains valid for timeline behavior, input and layout safety, but cannot close the visual gate. - The earliest failed boundary is the BAT2-4 presentation implementation. The candidate replaced the approved asymmetric blue/red crest rails and centered ivory control ribbon with plain rectangles, replaced the continuous portrait-led Company rail with text-heavy cells and a dominant Retreat block, and rendered event facts as a debug-like translucent band rather than actor-attached paths, markers and values.
- BAT-002 returns to
IMPLEMENTATION_IN_PROGRESS. BAT2-4E is the sole active step and owns only approved-design visual reconstruction. Battle receipts, snapshots, event order/hashes, pause/speed/error behavior and BAT-003/004/005/ 006 plus OUT-001 boundaries remain frozen. BAT2-5 and BAT2-6 must run again after repair.
2026-08-24 - BAT-002 Approved-Design Reconstruction Implemented
- Source
189c20bcloses BAT2-4E. The Runtime now draws the asymmetric blue/red crest rails and centered ivory playback ribbon, uses a continuous portrait-led actor-state rail with compact numbered cells, and projects source-target paths, urgent markers and outcome identity beside the bound actors. The painted field, complete bound Party/enemy relation and ordinary scale remain dominant; no approved PNG is rendered as a complete Runtime background. - Focused Field and Timeline attempts pass with markers
ABG_DEV5_BATTLE_LIVE_FIELD_OKandABG_DEV5_BATTLE_TIMELINE_OK. Four normal100%capture fixtures pass at760x360/zh_CN,844x390/en and1280x720/zh_CN/en; package preflight is32/32and the BAT-002 static package suite is17/17, all with strict diagnostics0. - The repair is presentation-only: the original receipt, snapshot, event
order/hashes, pause/speed/error semantics and BAT-003/004/005/006 plus
OUT-001 handoffs are unchanged. BAT2-5 source-bound verification is now the
sole active step. The worktree capture paths and exact checks are recorded
in
pages/BAT-002-live-battle/verification/visual-repair.json; they are not Owner acceptance evidence yet.
2026-08-24 - BAT-002 Repaired Source-Bound Verification Complete
- Source
189c20bc4a97071577b43912ebd49bc6d4a3be30is verified from fresh Git archives with Godot import before every focused attempt. Field and Timeline pass exactly once at/private/tmp/aetherbound-guild-test-evidence/bat002-live-source-field/20260824T142327Z-57347and/private/tmp/aetherbound-guild-test-evidence/bat002-live-source-timeline/20260824T142355Z-57705; both report strict diagnostics0. - The repaired candidate attempt
/private/tmp/aetherbound-guild-test-evidence/bat002-live-repaired-candidate-source-bound/20260824T142449Z-58288passesABG_BAT002_CANDIDATE_OKexactly once, retains 40 captures across760x360/zh_CN,844x390/en,1280x720/zh_CN and1280x720/en at normal100%, and reports strict diagnostics0. Its 45-file evidence archive SHA-256 is165b35d9c5869bf335858011aa40683357758a982efe5f451a9aa3f733d918a9. - BAT2-5 is
COMPLETE; the source-bound record ispages/BAT-002-live-battle/verification/source-bound.json. BAT-002 moves toVERIFIED_AWAITING_OWNER_ACCEPTANCEand BAT2-6 is the sole active Owner Runtime review boundary. The earlierfea2ae9/aa6e0c4candidate remains rejected visual provenance. No neighboring battle page or settlement work is authorized.
2026-08-24 - BAT-002 Owner Runtime Acceptance
- The Owner replied
这个OK啊after reviewing the repaired source-bound Runtime at actual size. The blocking scope is normal100%text in the four required landscape fixtures:760x360/zh_CN,844x390/en,1280x720/zh_CNand1280x720/en. - The accepted surface preserves the complete four-member Company line and three-enemy relation, approved asymmetric blue/red faction rails, centered ivory playback controls, continuous portrait-led actor-state rail and actor-attached event language. The automatic timeline and diagnostic controls remain engine-owned; no reward, recovery, settlement or next-stage mutation occurs.
- BAT-003/004/005/006 and OUT-001 remain truthful handoff boundaries only. The
source-bound Field, Timeline and candidate markers each appear exactly once
with strict diagnostics
0; the 45-file archive SHA-256 is165b35d9c5869bf335858011aa40683357758a982efe5f451a9aa3f733d918a9. - BAT2-6 is
COMPLETEand the M08 BAT-002 Runtime milestone is closed. The acceptance record ispages/BAT-002-live-battle/verification/owner-acceptance.md; no later page or settlement work is activated by this closure.
M07 BAT-001 Durable Specification Plan (Closed)
The completed page-production milestone is
M07_BAT001_BATTLE_OPENING_OWNER_RUNTIME_REVIEW.
Its player-visible stopping point is a truthful Battle Opening page reached
from the accepted RSK-002 receipt: the objective, complete four-member Party
order, enemy-facing direction and first disclosed threat are readable before
observation starts. The page must stop before the live battle timeline and
must not create a second receipt while this specification is being prepared.
| Step | Status | Acceptance |
|---|---|---|
BAT1-1 Contract and state matrix |
COMPLETE |
page-contract.json and state-matrix.json define the BAT-001 purpose, first-observation boundary, loading/stale/interrupted/error states, normal 100% landscape anchors, input/focus order, localization and ownership of objective, actor, threat and playback text. JSON, design-contract, predevelopment and focused static assertions pass. |
BAT1-2 Battle authority reconciliation |
COMPLETE |
Owner confirmed OK on 2026-08-23. The previous v001 composition is rejected and retained as provenance only; the existing Owner-approved full-party battle page and phase6_battle_scale_04 proof are the sole visual authority. |
BAT1-3 Deconstruction and reconstruction package |
COMPLETE |
Source 7fccbbc; accepted full-party master, scale proof, layer map, engine text slots, hit areas, asset provenance and runtime reconstruction spec pass the BAT-001 preflight 26/26. |
BAT1-4 Godot Runtime |
COMPLETE |
Implement only the bounded Battle Opening static opening and explicit handoff to BAT-002 after the reconstruction gate; live battle simulation remains a later named step. Source f892bb6; focused source-bound behavior/input and four normal 100% capture attempts pass with strict diagnostics 0. |
BAT1-5 Owner Runtime review |
COMPLETE |
Owner accepted the actual-size normal 100% Runtime on 2026-08-24, confirming the complete Party/enemy scale, field-attached HUD hierarchy, readable first threat and truthful BAT-002 stopping boundary. |
Frozen scope: no live battle timeline, combat simulation, result/recovery UI, new content, economy changes, second-cycle management, device validation, packaging, store submission, release or unrelated cleanup.
Commit boundary: the specification package is closed in source 1b3adc6,
authority acceptance in b4f51d8, and the reconstruction package in
7fccbbc. Runtime implementation is committed in f892bb6; source-bound
behavior and four capture attempts are retained before the Owner Runtime
review step. The Owner acceptance record closes M07; M08 is not activated by
this plan.
M08 BAT-002 Durable Specification Plan
The completed BAT2-1 page-production milestone is
M08_BAT002_LIVE_BATTLE_SPEC. Its
player-visible stopping point is a readable automatic battle surface reached
from the accepted BAT-001 receipt: objective, encounter-only knockout rule,
complete Party/enemy relation, current urgent cause, live actor state,
source/target relation and recent event sequence remain visible while the
deterministic timeline runs. Pause, legal speed, inspect and retreat entry are
diagnostic controls only. The page stops at the immutable OUT-001 handoff and
does not render result, reward or recovery UI.
| Step | Status | Acceptance |
|---|---|---|
BAT2-1 Contract and state matrix |
COMPLETE |
BAT-002 live-event states, objective/actor/target/event bindings, normal 100% landscape anchors, zh_CN/en text ownership, input/focus, reduced modes, exact no-current-event copy, invalid-event pause, interruption routing and BAT-003/004/005/006 plus OUT-001 boundaries are defined. JSON, six focused assertions, design contracts and predevelopment authority pass. |
BAT2-2 Live battle authority reconciliation |
COMPLETE |
Reuse the accepted Japanese 2D full-party battle composition and scale proof, identify the live-event visual deltas and reject any alternate sparse tableau, card wall, oversized ordinary actor treatment or historical generic Runtime as automatic authority. Byte-identical page sources, hashes, live-state map and four focused assertions pass. |
BAT2-3 Deconstruction and reconstruction package |
COMPLETE |
Source f9f50cd; layer/text/hit maps, dynamic ownership, zero-generation asset provenance, contact sheet and Runtime handoff pass focused checks. Owner accepted the final deconstruction and asset boundary on 2026-08-24; the page is RECONSTRUCTION_READY. |
BAT2-4 Godot Runtime |
COMPLETE |
Functional timeline/diagnostic implementation through BAT2-4D remains valid. BAT2-4E closes at source 189c20b after restoring the approved faction rails, ivory control ribbon, portrait-led Company rail and actor-attached event language without changing semantics. |
BAT2-5 Source-bound verification |
COMPLETE |
Source 189c20b; fresh-archive import, Field and Timeline markers, four normal 100% fixtures, 40 captures, strict diagnostics 0 and exact-once ABG_BAT002_CANDIDATE_OK are recorded in verification/source-bound.json. |
BAT2-6 Owner Runtime review |
COMPLETE |
Owner confirmed 这个OK啊 on 2026-08-24 after reviewing the repaired actual-size Runtime: complete four-member Company/three-enemy relation, approved faction rails and ivory controls, continuous portrait-led actor rail, actor-attached event language and truthful BAT-003/004/005/006 plus OUT-001 boundaries. |
Frozen scope: no image generation, page reconstruction, Runtime edits, authoritative battle-rule replacement, new content, economy change, BAT-003 inspect implementation, BAT-004 pause overlay, BAT-005 retreat confirmation, BAT-006 resume review, OUT-001 result UI, second-cycle management, device validation, packaging, stores, release or unrelated cleanup.
Commit boundary: M08 activation is committed at 53490a1 before BAT2-1 product
documents are authored. BAT2-1 closes in one focused specification commit,
BAT2-2 closes in one focused authority commit, and BAT2-3 owns one focused
reconstruction-package commit before BAT2-4 may become IN_PROGRESS.
M08 BAT-002 Reconstruction Plan (Closed)
M08_BAT002_LIVE_BATTLE_RECONSTRUCTION owns only the page-specific
deconstruction and reconstruction handoff for BAT-002 v001. The player-visible
stopping point is a documented, reviewable live-battle composition whose world,
complete Party/enemy lines, central action gap, compact rails and subject-
attached event geometry can be rebuilt from editable existing assets and
engine-owned state. No battle timeline is run in this milestone.
| Step | Status | Acceptance |
|---|---|---|
BAT2-3A Image forensics and layer ownership |
COMPLETE |
Approved master/scale proof are inspected at source size; deconstruction board, normalized layer map, dynamic-region map and explicit static/runtime/hit-area ownership preserve complete lines, ordinary-unit scale, action gap and attached rails. |
BAT2-3B Engine slots and interaction map |
COMPLETE |
Text slots cover every objective, actor, target, event, timer, playback, error and outcome handoff value in zh_CN/en at normal 100%; hit areas stay independent, ordered and at least 48 logical px at the contained 640x360 canvas. |
BAT2-3C Existing asset provenance and reconstruction handoff |
COMPLETE |
Reused clean field, accepted actor/enemy families and engine-drawn chrome have hashes, contact sheet, dynamic regions, runtime asset manifest and reconstruction spec; no new generation or Runtime edit is introduced. |
BAT2-3D Focused package preflight and closure |
COMPLETE |
Source f9f50cd; focused BAT-002 reconstruction assertions, page preflight, design-contract/predevelopment validation and Gallery build pass. Owner accepted the deconstruction and zero-generation asset package on 2026-08-24. |
Frozen scope: no new image generation or image editing, no Godot Runtime or battle-rule changes, no battle simulation, no BAT-003/004/005/006 or OUT-001 implementation, no content/economy changes, no device/package/store/release work and no unrelated cleanup. Reuse of accepted existing raster assets is allowed only when provenance and ownership are recorded.
Owned paths: docs/design-authority/pages/BAT-002-live-battle/, the focused
BAT-002 reconstruction checker/tooling and the BAT-002 entries in the design
index/gallery. Forbidden paths: runtime/entry/, runtime/domain/,
runtime/presentation/, battle services/rules and later page packages.
Commit boundary: activation is source 2e18f63; the machine-validated package
is pushed at f9f50cd. The Owner acceptance closure records the final
ABG BAT-002 RECONSTRUCTION READY handoff. BAT2-4 is not activated by this
closed plan.
M08 BAT-002 Runtime Plan (Closed)
M08_BAT002_LIVE_BATTLE_RUNTIME owns only the first receipt-bound live
observation reconstructed from the accepted BAT-002 package. Its player-visible
stopping point is the approved contained battlefield with complete Party and
enemy lines, ordinary-unit scale, central action corridor, compact rails and
engine-owned forecast/commit/resolve/aftermath facts. Diagnostic controls remain
non-combat controls. The timeline locks an immutable outcome for OUT-001 and
applies no reward, recovery, next-stage or Company-management operation.
| Step | Status | Acceptance |
|---|---|---|
BAT2-4A Receipt-bound observation service |
COMPLETE |
Source 2d4d5a7; begin/preview/commit/retry preserve the original operation, snapshot and one receipt, validate nine event identities/order/hashes and lock the immutable outcome without settlement. Focused service and historical DEV-5 settlement attempts pass with strict diagnostics 0. |
BAT2-4B Contained layered live battlefield |
COMPLETE |
Source 950b32e; the accepted contained 16:9 field binds the complete Party/enemy lines, compact rails, central waiting/event projection and actor-state rail. Exact waiting copy, normal 100% required landscapes/locales, Settings return, 48px targets, BAT-001 handoff and no-hidden-tick behavior pass with strict diagnostics 0. |
BAT2-4C Timeline and diagnostic boundaries |
COMPLETE |
Source 0de6c7a; connect waiting/forecast/committed/resolving/resolved timing and pause plus legal 1x/2x/4x presentation speed. Inspect, Settings, retreat, invalid-event retry/safe exit, interruption BAT-006 and outcome OUT-001 remain truthful handoff entries only; speed/pause/error/interruption cannot alter event order, hashes or outcome. |
BAT2-4D Focused implementation closure |
COMPLETE |
Source 0de6c7a; implementation record and combined source-bound attempt /private/tmp/aetherbound-guild-test-evidence/bat002-closure-source-bound/20260824T071013Z-49976 pass the focused service, Runtime, input, responsive, BAT-001 and legacy DEV-5 checks with strict diagnostics 0. BAT2-5 owns candidate evidence and captures. |
BAT2-4E Approved-design visual reconstruction |
COMPLETE |
Source 189c20b; focused Field, Timeline, four normal 100% capture fixtures, 17 static assertions and 32/32 package preflight checks pass with strict diagnostics 0. The repair restores the approved rail, portrait and actor-attached event hierarchy without changing semantics. |
BAT2-5 Source-bound verification |
COMPLETE |
Source 189c20b; fresh import, focused Field/Timeline checks and four normal 100% fixtures pass with strict diagnostics 0. The candidate archive and exact markers are recorded in verification/source-bound.json; the older fea2ae9 captures remain rejected visual provenance. |
BAT2-6 Owner Runtime review |
COMPLETE |
Owner confirmed 这个OK啊 on 2026-08-24 at actual size. The page closes at the immutable OUT-001 handoff; no reward, recovery, settlement or next-stage mutation is applied. |
Acceptance checks: preserve the original operation, Party snapshot and exactly
one battle receipt; validate deterministic event identity/order/hash and
negative corruption paths; preserve Coin, XP, Recruit history and settlement
state through outcome lock; keep all required live/error/interruption states,
complete lines and accepted scale; pass 760x360, 844x390, 1280x720,
zh_CN/en, normal 100%, touch, keyboard/controller focus, 48px targets and
strict Godot diagnostics.
Owned paths: runtime/entry/battle_service.gd,
runtime/entry/entry_shell.gd, one BAT-002 engine-art helper under
runtime/entry/, focused BAT-002 tests under runtime/tests/dev5/, BAT-002
implementation/verification records and the matching plan/checkpoint entries.
Forbidden paths: runtime/domain/p9_2/ and its historical pixel presenter;
editing approved/reconstruction PNGs; new image/audio generation; BAT-003/004/
005/006 or OUT-001 page implementation; reward/XP/recovery/next-stage,
content/economy or Save-schema replacement; device/package/store/release work;
unrelated cleanup. Existing untracked .uid, .import and
prototype_incremental/ paths are never staged or deleted.
Commit boundary: activation is pushed before BAT2-4A product code. BAT2-4A,
BAT2-4B and BAT2-4C each close with a focused pushed commit; BAT2-4C code is
remote-visible at 0de6c7a. BAT2-4D closes with the implementation record;
the fea2ae9/aa6e0c4 candidate is retained as visually rejected provenance.
This Owner-rejection/repair activation was pushed before BAT2-4E product code.
BAT2-4E closes at focused visual-repair source 189c20b; BAT2-5 closes with
the fresh source-bound record in verification/source-bound.json. BAT2-6
closes with verification/owner-acceptance.md. Each substep receives focused
verification and a focused pushed commit before the next substep becomes
IN_PROGRESS; a failed check keeps the same step active. Final BAT2-4 handoff
remains ABG BAT-002 RUNTIME IMPLEMENTED; no neighboring page or settlement
work is authorized without a separately activated durable plan.
Milestone Rules
Every phase receives its own child Goal, frozen contract and implementation plan before product edits. Each plan must:
- define one player-visible stopping point;
- keep exactly one step
IN_PROGRESS; - list owned and forbidden paths;
- test static/schema, focused behavior, regressions, simulations and runtime in increasing cost order;
- create an explicit focused commit and push it before advancing;
- update this roadmap,
../CURRENT_CHECKPOINT.mdand the append-only ledger only after the actual state changes.
Ordinary completion advances directly to the next approved phase. Work pauses only at the three Owner checkpoints, a real product redesign boundary, an external service/account blocker, or a separately authorized delivery boundary.
Content Completion Definition
A content identity is complete only when its schema validates, mechanic is implemented, references resolve, localization exists, decision counterfactual passes, production asset/audio state is recorded and the content appears in a real rendered encounter. Count-only JSON or Markdown does not close content.
Bulk Region production must reuse the FG-2 canonical runtime and production pipeline. Do not create another phase-specific duplicate simulator for each Region. Compatibility adapters may preserve immutable regressions, but new gameplay authority must have one source of truth.
Planned Human Review Deliveries
- Checkpoint 1: short H5 focused on final-direction Market, battle motion, result and recovery. This decides presentation before bulk production.
- Checkpoint 2: continuous build through RG-04 for strategy-depth and comprehension review.
- Checkpoint 3: complete first-clear beta and later final local candidate.
H5 export/deployment is activated at each checkpoint; native packaging, signing, device installation, stores and publishing remain outside this plan.
Program Issue Register
| ID | Status | Boundary |
|---|---|---|
FG-I01 |
RESOLVED_FG1 |
P10.3 Step 3 proves three Artifact and two promotion valuation reversals. |
FG-I02 |
RESOLVED_FG2_STEP1 |
The campaign adapter now preserves exact P10.0 snapshots/events and forwards all transactions to canonical services. |
FG-I03 |
REOPENED_VISUAL |
Event-bound motion/audio logic passed local gates, but pixel production art is rejected and must be replaced. |
FG-I04 |
OPEN_OWNER |
Human comprehension, fun, visual and listening acceptance remain unproven. |
FG-I05 |
FROZEN_DELIVERY |
Device, packaging, signing, stores and release require separate Owner authorization. |
FG-I06 |
OPEN_VISUAL_REPAIR |
Owner rejected pixel Gallery item 5vl2EqsYWkey; accepted hand-drawn direction must be restored before FG-5. |
Immediate Next Action
DEV-5 is now closed at its source-bound candidate. Before any DEV-6 product code, activate the separate DEV-6 durable plan for second-cycle Company management; no historical casualty or equipment semantics may be inferred.
FG-4 Japanese 2D Hand-Drawn Redevelopment Plan
Status:
OWNER_APPROVEDActive implementation step:DEV-5D_KNOCKOUT_RECOVERYGoal:06_DEVELOPMENT_AND_REVIEW.mdContract:06_DEVELOPMENT_AND_REVIEW.mdPage plan:03_PAGES_AND_UX.md
Development Sequence
| Step | Status | Player-visible outcome | Approval boundary |
|---|---|---|---|
P0 Project consolidation |
COMPLETE |
Product strategy, systems, architecture, Save, pages, UI, art/audio and ordered roadmap are one current contract; no new runtime scope | ABG_PREDEVELOPMENT_DESIGN_OK; ABG_DESIGN_CONTRACTS_OK; dependency/cleanup classification recorded; Owner-approved next step is DEV-1 re-review |
DEV-0 Planning and cleanup |
COMPLETE |
Six current documents define the game, pages, art direction and order. | Owner approved entry-first development. |
UI-0A Complete UI Style Bible |
COMPLETE |
Lock visual identity, page templates, components, buttons, text, modals, states, input, responsive, motion, audio relationship and asset standards before further UI code | Written sections in docs/03 and docs/04 are complete; the concrete anchor is the next Owner visual gate |
VA-1 Guild Company visual anchor |
OWNER_ACCEPTED_FOR_CONTINUATION |
One real Guild scene proves actor scale, scene depth, object-led action, HUD rails and the first accepted visual hierarchy | Master B composite, responsive geometry and Chinese runtime placeholder repair are accepted as the restoration baseline; later full dynamic layer replacement remains separate |
DEV-1 Boot, first launch and Title |
IN_PROGRESS_SYS003_RUNTIME_REVIEW |
Re-review the existing Boot, first-launch, Title and Settings path against the consolidated product/UI contract without changing later gameplay scope. | SYS-003 v002 is the only active page; focused behavior, responsive captures and Owner review precede Initial Company |
DEV-2 Initial Expedition Company |
COMPLETE |
Four equal stable generated offers can be inspected; exactly two are selected and committed as the persistent opening roster of one continuous incremental game. | Owner accepted candidate v3 for continuation; source-bound DEV-2 and preserved FG-4 suites pass at source 4352e25. |
DEV-3 Guild and first Market |
COMPLETE |
The Guild identifies the next action; Market comparison and recruit review build the opening Company. | Source 0da89b8; all DEV-1/2/3 checks and 24 normal-render states pass after the 760x360 repair. |
DEV-4 Automatic formation and risk |
COMPLETE |
Player chooses members; the system orders them and exposes protection, reach, threat and reward before commitment. | Source 62db001; all DEV-1/2/3/4 checks and 24 normal-render states pass with no battle receipt. |
DEV-5 Battle, result and recovery |
IN_PROGRESS |
Real melee, ranged, magic, healing, guard, damage, knockout, reward and next-stage recovery complete the first 15-20 minute loop. | Owner completes one full first cycle in a playable H5 and sees the same knocked-out Recruit return next stage. |
DEV-6 Second cycle and Company management |
COMPLETE |
Persistent roster, equipment, levels, dismissal and voluntary Contract return support the bounded second-cycle management path; promotion, Artifacts and later Contracts remain frozen. | Source-bound DEV-6 candidate passes all DEV-1..6 markers and 24 normal-render states at source 9617324; human visual/comprehension/fun, device, package, store and release gates remain open. |
DEV-7 RG-01 through RG-04 production conversion |
PENDING |
Eight Contracts and eight Bosses use the approved hand-drawn presentation over preserved systems. | Replacement midpoint H5 passes depth, clarity and continuation review. |
DEV-8 RG-05 through RG-08 and ending |
PENDING |
Remaining Regions, Contracts, Bosses, catalogs and the First Chronicle ending are complete. | End-to-end first-clear beta reaches the finite ending or Oath Season choice. |
DEV-9 Postgame and local release candidate |
PENDING |
Hidden Professions, Oath laws, Records, all 50 page states, localization, accessibility, performance and defect closure are complete. | Final local candidate is ready for separate human/device/package gates. |
Why Player Entry Comes First
The Owner must be able to experience every increment in the same order as a new player. A standalone battle frame can validate art but cannot prove launch, navigation, settings, run creation or tutorial continuity. Development therefore keeps one continuous path from Boot to the current stopping point. Battle visual and motion work begins only after New Run, Market, formation and risk can reach it through real navigation.
Execution Boundary
DEV-1 is locally complete and its human gates remain open. The Owner
authorized DEV-2 on 2026-08-17 with one corrected product boundary: the
choose-two Recruits become a persistent initial Expedition Company, Contract
runs are bounded expeditions inside continuous incremental growth, and a
zero-HP Recruit returns for the next stage rather than dying permanently.
DEV-2 may correct current design authority, implement the stable initial draft, the choose-two page, its review/commit persistence and a bounded Guild handoff. It may not implement the Guild/Market, retrofit legacy battle/casualty code, change existing FG-4 results, begin DEV-3, generate bulk assets, package or release. The legacy FG-4 implementation remains preserved evidence until its named player-order conversion step.
DEV-1 Durable Implementation Plan
Player-visible stopping point:
launch the real Godot game
-> watch named local verification progress or recover through Retry
-> complete first-launch language, safe-area and accessibility setup once
-> reach the painted Title with truthful New Game, Continue, Settings and Credits states
-> change and persist every essential DEV-1 setting
-> restart or reset the entry state and repeat the complete path
Only one row may be IN_PROGRESS. A failed check keeps that row active.
| Substep | Status | Owned product boundary | Narrow acceptance check | Commit boundary |
|---|---|---|---|---|
DEV-1A SYS-001 Boot |
COMPLETE |
New entry controller, resource/settings/save verification, named progress, recoverable error, Retry and safe diagnostics | ABG_DEV1_BOOT_OK; ABG_DEV1_BOOT_RUNTIME_OK; strict attempt runner PASS |
Focused Boot implementation, test, plan/checkpoint update and push |
DEV-1B SYS-002 First launch |
COMPLETE |
Persistent language, safe area, 100/115/130% text, reduced motion/flashes, captions and usable first-launch completion | ABG_DEV1_FIRST_LAUNCH_OK; Boot runtime handoff regression PASS |
Focused setup implementation, persistence/layout test, plan/checkpoint update and push |
DEV-1C SYS-003 Title |
COMPLETE |
Painted guild-threshold Title, truthful New Game/Continue/Settings/Credits state and exact return/back behavior | ABG_DEV1_TITLE_OK; first-launch regression PASS |
Focused Title implementation, state/navigation test, plan/checkpoint update and push |
DEV-1D SET-001..006 + SYS-008 |
COMPLETE |
Settings index, display/text, motion/flash/power, audio/captions, controls, language/locale, credits/licenses/data notice | ABG_DEV1_SETTINGS_OK; Title and first-launch regressions PASS |
Focused Settings/Credits implementation, behavior/localization test, plan/checkpoint update and push |
DEV-1E Entry-flow candidate |
COMPLETE |
End-to-end player order, responsive refinement, restart/reset fixtures and candidate evidence | Source 43e5bac; ABG_DEV1_CANDIDATE_SUITE_OK; ABG_FG4_MIDPOINT_SUITE_OK; strict diagnostics 0 |
Candidate docs/evidence closure commit and push |
DEV-1F Title chrome visual repair |
COMPLETE |
Fixed Title frame translates the accepted reference's enamel, ivory, gold-trim, cut-corner, heraldic and icon-forward grammar without copying its battle composition | Six DEV-1 headless checks and parsed touch PASS; 20 normal-render development frames cover 760x360/844x390/1280x720, zh_CN/en and 100/130%; focused, primary and disabled states are legible | Focused Title chrome implementation, capture, plan/checkpoint update and push |
DEV-1G Entry-page visual repair |
COMPLETE |
The approved Title grammar extends coherently to Boot, first launch, Settings and Credits without a card wall | Six DEV-1 headless checks and parsed touch PASS; final 20-frame normal-render development matrix covers all required sizes/languages/scales with strict diagnostics 0 | Focused remaining-page styling, test, plan/checkpoint update and push |
DEV-1H Revised entry candidate |
COMPLETE |
Complete player-order entry path is source-bound and ready for renewed Owner review | Source d3b9326; revised DEV-1 candidate suite and complete FG-4 regression PASS with strict diagnostics 0 |
Candidate evidence closure commit and push |
DEV-1R Entry re-review |
IN_PROGRESS_SYS003_RUNTIME_REVIEW |
Re-open the existing DEV-1 path from Boot through first-launch setup, Title, Settings and Credits against the consolidated product/UI contract; no later page or semantic rewrite | Focused Title normal-render frames, parsed input and runtime review at the required landscape/text matrix after SYS-002 acceptance | Focused Title review evidence, any approved DEV-1 repair commit, plan/checkpoint update and push |
DEV-1 owned paths are runtime/entry/, the minimum integration changes to
runtime/main.gd, runtime/main.tscn and runtime/project.godot, DEV-1 tests
under runtime/tests/dev1/, and existing plan/checkpoint/ledger sections.
Existing hand-drawn entry art may be reused with its provenance unchanged.
Later gameplay controllers, domain services, content catalogs, Save-v11 rules,
battle assets and later-page implementation are preserved and outside this
step.
DEV-1 verification increases in cost: static parse/resource checks, the active
substep's focused headless behavior test, applicable repository regression,
then normal-render runtime and real parsed input. Formal fresh import/capture
attempts use tools/run_test_attempt.py with exact required markers. Candidate
evidence is bound to a clean committed source; dirty-tree captures are guidance
only.
DEV-1 final handoff is exactly ABG DEV-1 candidate ready. It requires focused
pushed commits, HEAD == upstream, a clean worktree, no owned test processes,
and aligned plan/checkpoint/ledger facts. Human visual/comprehension, device,
package, store and release gates remain OPEN.
DEV-1 Issue Register
| ID | Status | Boundary |
|---|---|---|
DEV1-I01 |
RESOLVED_DEV-1A |
A bounded entry controller now owns Boot while the historical gameplay facade remains preserved and hidden during normal launch. |
DEV1-I02 |
RESOLVED_REUSE |
Existing p9_3_guild_hall.png is a usable hand-drawn entry background; no DEV-1 paid image request is currently required. |
DEV1-I03 |
OPEN_HUMAN_REVIEW_REVISED |
Owner rejected the earlier generic DEV-1 chrome. The revised source-bound runtime repairs that boundary locally; only renewed Owner review can accept it. |
DEV1R-I01 |
OPEN_VISUAL_FAIL |
The Boot candidate still uses the rejected procedural entry-chrome grammar. A brighter background and translucent lower rail do not satisfy the Owner reference; replace the visual skeleton before first-launch or Title review. |
DEV1-I04 |
RESOLVED_DEV-1F |
The Title now carries deep-navy enamel, ivory controls, warm-gold layered trim, cut corners, heraldry, compact icon framing and authored focused/primary/disabled states at actual play size. Remaining entry pages are bounded by DEV-1G. |
DEV1-I05 |
RESOLVED_DEV-1G |
Boot, first launch, Settings and Credits now reuse the Title's enamel, ivory, gold-trimmed, heraldic and icon-forward controls without changing real behavior. |
DEV-2 Durable Implementation Plan
Player-visible stopping point:
launch and reach the real Title
-> choose New Game
-> receive four stable generated Recruit offers in fixed positions
-> inspect each Profession, attributes and one Trait benefit/cost
-> compare any two without changing selection
-> select exactly two and review the opening Expedition Company
-> revise or atomically create the persistent opening roster
-> restart at any pre-commit point without rerolling offers or losing selection
-> stop at a truthful Guild handoff; Market and Contract play remain DEV-3+
Only one row may be IN_PROGRESS. A failed check keeps that row active.
| Substep | Status | Owned product boundary | Narrow acceptance check | Commit boundary |
|---|---|---|---|---|
DEV-2A Continuous-growth authority correction |
COMPLETE |
Six current documents consistently define one persistent Expedition Company, Contract expeditions that retain roster growth, non-permanent zero-HP recovery at the next stage, and the exact DEV-2 stopping point | Cross-document terminology/semantic scan has no authoritative permanent-death or Contract-roster-discard promise; legacy runtime divergence is explicitly frozen; consolidated design and Recruit-loadout validators pass | Focused authority/checkpoint/ledger correction and push |
DEV-2B Stable initial draft |
COMPLETE |
Seed reservation, exactly four valid generated Recruit records, stable IDs/order, selected-ID persistence, retry-safe load and invalid/corrupt recovery | ABG_DEV2_DRAFT_OK; create/load/restart, no reroll, zero-to-two selection, duplicate/unknown/three-ID rejection, backup/candidate recovery and no pre-commit roster pass |
Focused draft service, persistence tests, plan/checkpoint update and push |
DEV-2C Recruit choice |
COMPLETE |
Title reaches one real Japanese-fantasy selection page with four equal offers, Inspect, Compare A/B, independent Select toggles and exact 0/2..2/2 gating |
ABG_DEV2_CHOICE_OK; ABG_DEV2_CHOICE_TOUCH_OK; six applicable DEV-1 markers pass; 16 normal-render frames cover choice/selected/inspect/compare at 760x360/844x390/1280x720, zh_CN/en and 100/130% with layout bounds clean |
Focused selection UI, tests, plan/checkpoint update and push |
DEV-2D Review, commit and handoff |
COMPLETE |
Review names selected two and unchosen two; Revise preserves the draft; Create atomically writes one persistent roster and reaches a truthful Guild boundary without implementing DEV-3 | ABG_DEV2_COMMIT_OK; ABG_DEV2_COMMIT_TOUCH_OK; six applicable DEV-1 and all earlier DEV-2 markers pass; 24 normal-render frames cover choice/selected/inspect/compare/review/guild with strict diagnostics 0 |
Focused commit/handoff implementation, tests, plan/checkpoint update and push |
DEV-2E Initial Company candidate |
COMPLETE |
Complete Boot -> setup if needed -> Title -> choose-two -> review -> restart/revise/create -> Guild handoff path is source-bound | Source d199053; ABG_DEV2_CANDIDATE_SUITE_OK; ABG_FG4_MIDPOINT_SUITE_OK; strict diagnostics 0; actual-size agent visual review |
Candidate evidence closure commit and push |
DEV-2F Character-forward visual repair |
COMPLETE |
One unified compact actor family stands in a shared painted scene; precise ornamental framing, stable content inset and differentiated return/tool/primary commands support rather than re-box the characters | Owner accepted v3 for continuation; source 4352e25 passes complete source-bound DEV-2 and preserved FG-4 suites with strict diagnostics 0 |
Focused visual implementation, asset ledger, tests, plan/checkpoint update and push |
DEV-2 owns runtime/entry/, new DEV-2 tests under runtime/tests/dev2/, the
minimum main-entry integration and existing authority/checkpoint/ledger
sections. It reuses the accepted entry background and procedural chrome; DEV-2F
owns only the bounded 12-base-Profession static unit family required by the
current pages. Guild/Market, formation, battle,
legacy casualty conversion, economy retuning, later Regions and delivery remain
outside DEV-2.
DEV-2 final handoff is exactly ABG DEV-2 candidate ready. It requires focused
pushed commits, HEAD == upstream, a clean worktree, no owned test processes
and aligned plan/checkpoint/ledger facts. Human comprehension/choice/visual,
device, package, store and release gates remain OPEN.
DEV-2 Issue Register
| ID | Status | Boundary |
|---|---|---|
DEV2-I01 |
RESOLVED_DEV-2A |
All six current authorities now place the persistent Company/knockout rule first; contradictory FG-4 lifecycle details are explicitly frozen legacy evidence and current New Game/Company pages use the corrected model. |
DEV2-I02 |
FROZEN_LATER_CONVERSION |
Existing FG-4 gameplay and Save-v11 implement the superseded casualty/run model; DEV-2 preserves them and does not claim they already satisfy the new authority. |
DEV2-I03 |
RESOLVED_REUSE |
Accepted painted entry art plus procedural enamel/ivory/gold chrome cover the initial-company page; no paid generation is required. |
DEV2-I04 |
RESOLVED_DEV-2B |
A dedicated Initial Company draft service now persists one seed, four fixed complete offers and zero-to-two selected IDs without creating current_run, a Contract or a Company before commit. |
DEV2-I05 |
RESOLVED_DEV-2C |
Title now reaches the real four-offer page; Inspect/Compare do not mutate selection, a third selection is visibly rejected, only exactly 2/2 enables Review, and Back/restart preserve the draft. |
DEV2-I06 |
RESOLVED_DEV-2D |
Review distinguishes the selected persistent pair from two discarded provisional offers; Company creation is atomic and idempotent, stores no Contract reset or unchosen Recruit, and restart reaches a truthful bounded Guild handoff. |
DEV2-I07 |
RESOLVED_OWNER_CONTINUATION |
Owner accepted frame/spacing candidate v3 and explicitly authorized progression into DEV-3 through DEV-6. Broader comprehension/fun, device and release gates remain separately open. |
DEV2-I08 |
RESOLVED_CHARACTER_FORWARD |
The final choice, Inspect, Compare, Review and Guild pages use person-bearing controls and one shared painted scene rather than the rejected card/text wall. |
DEV2-I09 |
RESOLVED_UNIFIED_ACTORS |
The mixed-source set and first tall unified sheet are superseded. All 12 base Professions use one compact 4.5-5-head line/face/cel/light family at accepted choice, Inspect and Guild scales. |
DEV2-I10 |
RESOLVED_BUTTON_HIERARCHY |
Candidate v2 replaces repeated double-gold boxes and generic diamonds with parchment return tabs, compact A/B markers, plus/check selection, compare arrows and confirmation checks. Owner follow-up does not reopen that button hierarchy; the remaining rejection is frame craftsmanship and spacing in DEV2-I12. |
DEV2-I11 |
ACTIVE_EXECUTION_CONSTRAINT |
Owner rejects opaque, repeated long regression cycles during visual iteration. DEV-2F uses only the focused current-page interaction check and six representative frames; any check expected to exceed 60 seconds must be named with purpose and duration before it starts, and full DEV-2/FG-4 regression waits for visual-direction acceptance. |
DEV2-I12 |
RESOLVED_OWNER_ACCEPTED_V3 |
Candidate v3 separates frame and content safe rectangles: one complete cut-corner hairline, four constructed corner fittings and aligned header/footer rails sit outside a stable inner inset. Owner accepted the result for continuation. |
DEV-2F Owner Rejection Recurrence Check
Every DEV-2F runtime frame must be checked against all prior Owner feedback before it is sent for review. A later repair does not erase an earlier rule.
- Recruits remain the first visual read; repeated text plates or a card wall may not reclaim the composition.
- All 12 base-Profession actors use one approved drawing family: matching face/eye construction, compact proportion, line hierarchy, cel-shadow count, material density, light and play-size treatment. Mixed legacy actor batches are prohibited.
- Choice and Guild actor scale must retain visible environment and complete silhouettes; Inspect/Compare may enlarge actors without changing their style.
- Return, A/B tools, comparison, selection and confirmation must have distinct silhouettes and familiar semantic symbols. A generic diamond repeated on every command is prohibited.
- Initial Company pages use open corner ornaments and header/footer rails; repeated heavy octagonal button frames are prohibited. One precise complete outer hairline is allowed when it is paired with authored corner fittings and a separately inset content rectangle; sparse unfinished corner strokes and content touching ornament are prohibited.
- Visual iterations use focused behavior plus representative normal-render frames. Full source-bound regression runs once after the Owner-facing visual direction stops changing, not after every chrome adjustment.
- Before any check expected to exceed 60 seconds, state its exact scope,
necessity and expected duration to the Owner. Do not hide a complete legacy
suite behind the generic word
Runner; the runner is only the required isolation, process-group cleanup, strict-marker and evidence-retention shell. - Each Owner rejection or approval updates the active issue row, checkpoint and
ledger before the next candidate.
human_reviewedremains false until the Owner explicitly accepts the current runtime revision.
DEV-3 Durable Implementation Plan
Player-visible stopping point:
launch and Continue the persistent two-Recruit Expedition Company
-> see the Guild name the first Contract as the next action
-> inspect an unlocked Contract and choose difficulty without changing state
-> confirm one bounded Contract with 52 Coin and Line capacity four
-> enter one stable Market with three Recruit, four equipment and three battle offers
-> inspect an offer without buying from the list
-> review exact Recruit identity, Profession, Trait benefit/cost, attributes,
starting item, price and Company/Line effect
-> Cancel to the same offer or confirm one atomic hire
-> complete a second independent review and hire
-> stop in the same Market at Company four, Line capacity four and 24 Coin
Only one row may be IN_PROGRESS. A failed check keeps that row active.
| Substep | Status | Owned product boundary | Narrow acceptance check | Commit boundary |
|---|---|---|---|---|
DEV-3A Contract foundation |
COMPLETE |
One authoritative migration of the verified Company store adds zero-or-one active Contract, deterministic first-Market state, 52 Coin, Line capacity four, operation receipts and retry-safe persistence without changing the two existing Recruit records | ABG_DEV3_CONTRACT_OK; v1 migration, create/retry/conflict, candidate/backup recovery, exact 3/4/3 board and restart stability pass |
Focused Contract/Market domain service, persistence test, plan/checkpoint update and push |
DEV-3B Guild and Contract choice |
COMPLETE |
The real Guild identifies the next action, opens one unlocked Contract review, changes difficulty without commitment and creates the bounded Contract only after explicit confirmation | ABG_DEV3_GUILD_OK; Continue/Guild/review/cancel/confirm/restart and visible disabled-reason paths pass with no Market purchase or DEV-4 state |
Focused Guild/Contract UI, input test, plan/checkpoint update and push |
DEV-3C Stable Market and Recruit review |
COMPLETE |
A physical requisition surface exposes all 3 Recruit, 4 equipment and 3 battle offers; list actions only inspect, while Recruit review shows exact decision data and Cancel returns to the invoking stable offer | ABG_DEV3_MARKET_OK; board identity, list/review separation, exact price/affordability/capacity copy, cancel/focus restoration, localization and restart pass |
Focused Market/review UI, behavior test, plan/checkpoint update and push |
DEV-3D Atomic first hires |
COMPLETE |
Two separately reviewed affordable level-1 Recruit offers each create one idempotent receipt and update Coin, ownership and offer state atomically from Company 2 to 3 to 4 while Line capacity remains four |
ABG_DEV3_HIRE_OK; exact combined 28 Coin cost and 24 Coin remainder, double-confirm, new-ID retry, stale/unaffordable/capacity-display and interrupted-write recovery pass |
Focused hire transaction/UI feedback, persistence/input test, plan/checkpoint update and push |
DEV-3E Guild/Market candidate |
COMPLETE |
The source-bound Title/Continue -> Guild -> Contract/difficulty -> Market -> two separate Recruit reviews/hires path is responsive, persistent and stops before formation/risk | Source 0da89b8; six DEV-1, six DEV-2, four DEV-3 markers and 24 normal-render frames PASS with strict diagnostics 0 |
Candidate evidence closure commit and push |
DEV-3 owns the minimum Company-store migration, Contract/Market domain service,
Guild/Contract/Market/Recruit-review runtime in runtime/entry/, focused tests
under runtime/tests/dev3/, and existing checkpoint/contract/ledger sections.
It reuses the accepted painted Guild scene, unified compact Recruit family and
precise inset/frame/button grammar. Equipment and battle offers are inspectable
but cannot be purchased or committed in DEV-3. Automatic formation, Party-line
editing, risk selection, battle, result, knockout recovery, second-cycle
management, later Regions, bulk assets, devices, packages and release remain
outside DEV-3.
DEV-3 verification increases in cost from static/domain persistence, to the active focused behavior/input test, then the source-bound DEV-3 path and a small representative normal-render matrix. The preserved full FG-4 suite is not repeated during ordinary DEV-3 substeps; it runs once at the final applicable regression boundary. Any check expected to exceed 60 seconds is named with scope, purpose and expected duration before it starts.
DEV-3 final handoff is exactly ABG DEV-3 candidate ready. It requires focused
pushed commits, HEAD == upstream, a clean worktree, no owned test processes
and aligned plan/checkpoint/ledger facts. Human visual/comprehension/fun,
device, package, store and release gates remain OPEN.
DEV-3 Issue Register
| ID | Status | Boundary |
|---|---|---|
DEV3-I01 |
RESOLVED_DEV-3A |
Company schema v2 migrates valid DEV-2 v1 data in place and stores the sole active Contract, deterministic Market and receipts in the same redundant atomic file. |
DEV3-I02 |
FROZEN_LEGACY |
Historical FG-4 Contract services retain superseded roster-loss semantics and cannot be adopted as current authority without conversion in their named later step. |
DEV3-I03 |
ACTIVE_RECURRENCE_CHECK |
Guild and Market must preserve character-first staging, stable content/frame insets and differentiated commands. A card/text wall, recommended Recruit, combined Hire two, list-row purchase or silent disabled control is prohibited. |
DEV3-I04 |
OPEN_HUMAN_GATE |
Automated/runtime evidence cannot grant understanding of Company versus Line capacity, purchase choice quality, visual acceptance or willingness to continue. |
DEV3-I05 |
RESOLVED_CANDIDATE |
Source a0918bc passed all 16 behavior/touch checks but failed its first normal-render fixture because the 760x360 Market footer extended 2 px below the viewport. Source 0da89b8 contains the short-screen repair and passes the entire fresh source-bound matrix. |
DEV-4 Durable Implementation Plan
The Party Line page-production milestone M03_DEV4_PARTY_LINE_DESIGN is closed
at source 94a2356 after Owner acceptance. The current page-production
milestone is M04_DEV4_PTY002_READINESS_DESIGN; its active stopping point is
the written SPEC_READY package under
docs/design-authority/pages/PTY-002-readiness-review/.
Player-visible stopping point:
launch and Continue at the stable first Market with four owned Recruits
-> enter Party Line only after both opening hire receipts exist
-> see all four members placed on one rear-left to front-right cord
-> identify exposed position 0, protection, reach and the first known threat
-> select a member and swap destinations without drag
-> compare the exact relation changes, Undo or Reset, then save one atomic order
-> review and accept the frozen readiness snapshot without starting battle
-> compare three stable risk options with no recommendation or automatic choice
-> inspect known threat, uncertainty, entry cost, reward and recovery exposure
-> Cancel safely or open the selected risk commitment with the same party snapshot
-> stop before Begin Battle; DEV-5 owns the first battle receipt and simulation
Only one row may be IN_PROGRESS. A failed check keeps that row active.
| Substep | Status | Owned product boundary | Narrow acceptance check | Commit boundary |
|---|---|---|---|---|
DEV-4A Formation/risk foundation |
COMPLETE |
In-place Company/Contract migration adds one deterministic prepared-party draft, rear-left/front-right order rules, three stable first-battle risk projections and retry-safe formation/readiness receipts without creating a battle receipt | ABG_DEV4_FOUNDATION_OK; v2 migration, exact four unique owned IDs, deterministic auto-order, swap/reset, stale/capacity rejection, atomic save/retry/recovery and three stable risk projections pass |
Focused Company/Contract service, domain test, plan/checkpoint update and push |
DEV-4B Party Line |
COMPLETE |
Market reaches a character-forward horizontal Party Line whose Runtime composition remains faithful to the approved AI master; tap-select/tap-destination previews protection, reach, target and threat changes with usable Undo/Reset/Back | Source 94a2356; schema-v2 rendered-pixel gate, ABG_DEV4_PARTY_OK, 48px targets, text fit, main/four responsive captures and strict diagnostics pass; Owner accepted 2026-08-21 |
Focused Runtime/checker repair, source-bound evidence, authority closure and Owner acceptance |
DEV-4C Readiness snapshot |
COMPLETE |
Save Order atomically persists the order and a separate readiness page freezes member IDs, positions, relation summary and allowed warnings; Accept records one idempotent prepared snapshot but starts no battle | ABG_DEV4_READY_OK; save/retry/conflict, warning ownership, revise/restart and zero battle/risk-commit receipt pass |
Focused readiness service/UI/test, plan/checkpoint update and push |
DEV-4D Risk selection and commitment preview |
COMPLETE |
A region-attached risk board compares three stable options in the required known-threat/uncertainty/cost/reward/recovery/coverage order; selection mutates nothing and commitment review retains the frozen party | ABG_DEV4_RISK_OK; no auto-selection/recommendation, select/cancel/restart, stale dependency rejection and truthful DEV-5 Begin Battle boundary pass |
Focused risk board/commitment UI/input test, plan/checkpoint update and push |
DEV-4E Formation/risk candidate |
COMPLETE |
The source-bound Title/Continue -> Market -> Party Line -> readiness -> risk review path is responsive, persistent, layout-safe and stops before battle commit | Source 62db001; six DEV-1, six DEV-2, four DEV-3, four DEV-4 markers and 24 normal-render frames PASS with strict diagnostics 0 |
Candidate evidence closure commit and push |
M04_PTY002_RUNTIME_IMPLEMENTATION |
COMPLETE |
Import the accepted PTY-002 static master and command assets, reconstruct the contained 16:9 readiness composition with engine-owned text, actors, relation line, warning group and truthful command boundary; preserve existing FormationRiskService semantics and stop before Risk/Battle | Focused readiness behavior/input marker, 760x360/844x390/1280x720 live-resize captures in zh_CN/en at 100%/130%, strict diagnostics, 48px hit areas, text-fit and schema-v2 rendered-pixel gate against the clean static master | Runtime implementation and evidence commits a47c6fe, f501f6e |
M04_PTY002_OWNER_RUNTIME_REVIEW |
COMPLETE |
Owner reviews the source-bound PTY-002 Runtime at actual size and confirms actor scale, warning readability, command hierarchy and no-battle stopping boundary | Owner accepted the 760x360/844x390/1280x720 Runtime set; automated evidence remains supporting evidence only | Owner acceptance record PTY-002/verification/owner-acceptance.md |
M05_RSK001_RISK_BOARD_RUNTIME_REVIEW |
COMPLETE |
Implemented the approved RSK-001 Risk Board reconstruction: frozen party header, three equal sourced options, semantic fact rows and local Review boundary; stopped before Risk Commitment receipt | ABG_DEV4_RISK_OK with Settings return and no-receipt assertions, 48px targets, strict normal 100% captures at 760x360/844x390/1280x720 in zh_CN/en, package preflight 24/24 and Owner actual-size acceptance on 2026-08-23 |
Focused RSK-001 package, Runtime, verification and acceptance commits |
M06_RSK002_RISK_COMMITMENT_RUNTIME_IMPLEMENTATION |
COMPLETE |
Implement the bounded RSK-002 v001 Runtime without expanding visual scope: preserve the cleaned relic/world/rail composition, bind accepted Recruit provenance and keep all semantics engine-owned | Focused commitment behavior/input, normal 100% responsive captures, strict diagnostics and 48px targets pass; stop before battle simulation |
Runtime source 64c1c6f and focused evidence package |
M06_RSK002_RISK_COMMITMENT_OWNER_RUNTIME_REVIEW |
COMPLETE |
Owner accepted the source-bound RSK-002 Runtime at actual size on 2026-08-23 and confirmed the selected-risk/Party hierarchy, six-fact consequence band, explicit acknowledgement, command rail and BAT-001 stopping boundary | Owner acceptance record; automated evidence remains supporting evidence only | RSK-002/verification/owner-acceptance.md |
M07_BAT001_BATTLE_OPENING_SPEC |
COMPLETE |
Define the independently authored BAT-001 Battle Opening contract and state matrix after the accepted RSK-002 handoff; stop before live battle simulation | Source 1b3adc6; JSON, design-contract, predevelopment and focused static assertions pass; page is registered SPEC_READY |
Specification package commit 1b3adc6 |
M07_BAT001_BATTLE_OPENING_AUTHORITY |
COMPLETE |
Reconcile BAT-001 with the existing Owner-approved full-party battle page, scale proof and compact top/bottom HUD hierarchy; the rejected v001 draft is provenance only | Owner confirmed OK on 2026-08-23; source b4f51d8 records the authority boundary |
Focused authority-reconciliation documentation commit b4f51d8 |
M07_BAT001_BATTLE_OPENING_RECONSTRUCTION |
COMPLETE |
Build the page-specific layer map, engine text slots, responsive anchors, hit areas and asset provenance over the accepted battlefield | Source 7fccbbc; BAT-001 preflight passes 26/26 and page state is RECONSTRUCTION_READY |
Reconstruction package commit 7fccbbc |
M07_BAT001_BATTLE_OPENING_RUNTIME |
COMPLETE |
Implement the static BAT-001 opening and explicit handoff to BAT-002 from the accepted reconstruction package; stop before live simulation | Source f892bb6; focused behavior/input/responsive checks and strict diagnostics pass; no second receipt or time advancement |
Runtime implementation and focused test commits |
M07_BAT001_BATTLE_OPENING_OWNER_RUNTIME_REVIEW |
COMPLETE |
Owner accepted the source-bound normal 100% candidate on 2026-08-24 and confirmed the full-party scale, field-attached HUD hierarchy and truthful BAT-002 stopping boundary |
Four retained normal 100% captures, source-bound behavior marker and strict diagnostics 0 support the human acceptance |
BAT-001/verification/owner-acceptance.md |
M08_BAT002_LIVE_BATTLE_SPEC |
COMPLETE |
Define the live automatic-battle page contract and state matrix from the accepted BAT-001 receipt; preserve diagnostic-only controls and stop at OUT-001 | JSON, six focused BAT-002 assertions, design-contract and predevelopment checks pass; page is registered SPEC_READY |
BAT-002 specification package and focused push |
M08_BAT002_LIVE_BATTLE_AUTHORITY |
COMPLETE |
Reconcile BAT-002 to the existing Owner-approved live-battle composition and full-party scale proof without generating a competing page | Byte-identical 2048x1152 sources, hashes, provenance, focal/dynamic ownership and four focused assertions pass | Approved v001 authority package and focused push |
M08_BAT002_LIVE_BATTLE_RECONSTRUCTION |
COMPLETE |
Translate the approved live-battle composition into an editable, engine-owned reconstruction package; freeze layer ownership, event slots, hit areas, animation/VFX bindings, existing-asset provenance and responsive policy before Runtime | Source f9f50cd; BAT2-3 package preflight passes 32/32, focused assertions pass 17/17 and the Owner accepted the final deconstruction/asset review on 2026-08-24; no Godot code changes |
Approved reconstruction handoff at RECONSTRUCTION_READY; BAT2-4 requires separate activation |
M08_BAT002_LIVE_BATTLE_RUNTIME |
COMPLETE |
Reconstruct the first deterministic live-observation Runtime from the accepted layered package, preserving the original receipt and complete-line scale while stopping at an immutable OUT-001 handoff | Owner confirmed 这个OK啊 on 2026-08-24 after the BAT2-4D/BAT2-4E implementation and BAT2-5 source-bound evidence passed from 189c20b; the acceptance record closes BAT2-6 and preserves the later-page boundaries |
Focused Runtime/evidence commits through 189c20b, source-bound record and BAT-002/verification/owner-acceptance.md |
DEV-4 owns only the smallest in-place Company/Contract migration, prepared-party
and risk projections, Party Line/readiness/risk runtime under runtime/entry/,
focused tests under runtime/tests/dev4/, and existing checkpoint/plan/ledger
sections. It reuses the accepted painted Guild scene, unified compact Recruit
family and precise inset/frame/button grammar. The open world must remain the
dominant surface; Party and risk information attach to actors, the horizontal
cord or one comparison band rather than becoming a card wall.
Battle receipt creation, battle simulation, result, reward, knockout recovery, second-cycle management, equipment purchase/equip, Artifacts, promotion, dismissal, later Regions, bulk assets, H5/native packages, devices, stores and release remain outside DEV-4. DEV-4 may show the real Begin Battle command only as unavailable with the explicit DEV-5 boundary; it cannot silently respond or pretend a battle was committed.
DEV-4 verification increases from static/domain persistence, to the active
focused behavior/input check, then one source-bound path and a representative
normal-render matrix. Ordinary substeps do not repeat the complete legacy
suite. Any check expected to exceed 60 seconds is named with scope, purpose and
expected duration before it starts. Every attempt uses the checked-in runner,
retains compact evidence under ABG_EVIDENCE_DIR, and cleans its complete owned
process group.
DEV-4 final handoff is exactly ABG DEV-4 candidate ready. It requires focused
pushed commits, HEAD == upstream, a clean worktree, no owned test processes
and aligned plan/checkpoint/ledger facts. Human visual/comprehension/fun,
device, package, store and release gates remain OPEN.
DEV-4 Issue Register
| ID | Status | Boundary |
|---|---|---|
DEV4-I01 |
RESOLVED_DEV-4A |
FormationRiskService initializes one optional strict formation block in the schema-v2 Contract. It preserves four Recruit hashes, 24 Coin, the 3/4/3 board and both DEV-3 hire receipts outside newly owned fields. |
DEV4-I02 |
FROZEN_LEGACY |
Historical automatic-formation/risk/battle controllers contain superseded run/casualty semantics and cannot become current persistence authority; compatible ordering and visual vocabulary may be independently projected through the current Company store. |
DEV4-I03 |
ACTIVE_RECURRENCE_CHECK |
Party Line and risk must remain actor/scene-first, use stable content insets, keep controls away from frame edges and use differentiated semantic commands. Repeated text cards, decorative diamonds and silent unavailable actions are prohibited. |
DEV4-I04 |
OPEN_HUMAN_GATE |
Automated/runtime evidence cannot prove that a player understands rear versus front, position 0, protection, reach, threat, uncertainty or the risk tradeoff. |
DEV4-I05 |
FROZEN_DEV-5 |
DEV-4 ends before the first battle transaction. The commitment preview must name that boundary until DEV-5 is separately activated after a pushed DEV-4 candidate. |
PTY002-VIS-01 |
RESOLVED_OWNER_ACCEPTED |
Owner accepted the PTY-002 Runtime at actual size; exploratory layout variants remain auxiliary evidence only. |
RSK001-VIS-01 |
RESOLVED_OWNER_ACCEPTED |
Owner accepted the RSK-001 normal 100% Runtime captures and live path at actual size on 2026-08-23; the three-column reading hierarchy, frozen party snapshot and truthful command rail are confirmed. |
RSK001-VIS-02 |
RESOLVED_COPY_DENSITY |
Owner's copy-density concern was repaired in source d0dea5b; all six sourced facts, values, hit areas and the no-receipt boundary remain unchanged. Fresh source-bound normal 100% captures pass and the acceptance record closes RSK-001. |
RSK002-VIS-01 |
RESOLVED_OWNER_ACCEPTED |
Owner accepted v001 at actual size on 2026-08-23. The selected-risk relic, connected consequence band, four-member Party staging and bottom commitment rail are approved as one commitment surface without repeating RSK-001's three-option layout. |
RSK002-DEC-01 |
RESOLVED_OWNER_ACCEPTED |
Owner accepted the v001 layer map, text slots, normal 100% anchors and transparent hit areas at actual size on 2026-08-23. |
RSK002-ASSET-01 |
RESOLVED_OWNER_ACCEPTED |
Owner accepted the full-size clean static master and contact sheet on 2026-08-23. The dynamic mask, reused Recruit provenance and no-baked-text policy are closed; the reconstruction handoff passes preflight. |
RSK002-RUNTIME-01 |
RESOLVED_OWNER_ACCEPTED |
Owner accepted source 64c1c6f at actual size on 2026-08-23. The selected-risk/Party hierarchy, six-fact consequence band, explicit acknowledgement, command rail and exact-once BAT-001 handoff are closed at normal 100%; the acceptance record is under RSK-002/verification/owner-acceptance.md. |
BAT001-SPEC-01 |
RESOLVED_SPEC_READY |
The BAT-001 contract and state matrix are complete in source 1b3adc6; the static pre-observation boundary, normal 100% layout, input order and frozen scope are validated before any art or Runtime work. |
BAT001-DRAFT-01 |
RESOLVED_REJECTED_WRONG_AUTHORITY |
Source task_01M0QAKYKS41600MSY318C2VZP is preserved under pages/BAT-001-battle-opening/rejected/v001/. Owner rejected its four oversized actors, sparse enemy tableau and parchment panels as a competing direction; it cannot enter deconstruction, assets or Runtime. |
BAT001-AUTHORITY-01 |
RESOLVED_OWNER_ACCEPTED |
Owner confirmed OK on 2026-08-23 to proceed using prototype/generation/phase6_ui_direction_01/outputs/05_battle_ui_japanese_scale.png and the phase6_battle_scale_04 full-party proof as the sole battle authority. BAT-001 is a static pre-observation adaptation; the rejected v001 draft remains provenance only. |
BAT001-DEC-01 |
RESOLVED_PREFLIGHT_26_26 |
Source 7fccbbc contains the BAT-001 layer map, engine text slots, responsive anchors, hit-area mapping and asset provenance over the accepted full-party composition; page preflight passes 26/26. |
BAT001-ASSET-01 |
RESOLVED_REUSE_EXISTING |
The clean Windglass field, four actor textures and Riftblade enemy texture reuse existing accepted provenance with no new AI generation or pixel conversion. |
BAT001-RUNTIME-01 |
RESOLVED_SOURCE_BOUND_PASS |
Source f892bb6 passes the focused BAT-001 behavior/input check and four normal 100% capture attempts with strict diagnostics 0; phase index remains zero and the handoff keeps one receipt. |
BAT001-RUNTIME-02 |
RESOLVED_OWNER_ACCEPTED |
Owner accepted the source-bound normal 100% Runtime on 2026-08-24. The complete Party/enemy relation, compact field-attached rails, first-threat disclosure and explicit BAT-002 stopping boundary are recorded under BAT-001/verification/owner-acceptance.md. |
BAT002-SPEC-01 |
RESOLVED_SPEC_READY |
BAT-002 contract/state matrix define live actor/target/event readability, exact Waiting for next event empty state, invalid-event pause, deterministic interruption behavior and the BAT-003/004/005/006 plus OUT-001 handoffs. JSON, six focused assertions, design-contract and predevelopment checks pass; historical show_battle() remains functional provenance only. |
BAT002-AUTHORITY-01 |
RESOLVED_APPROVED_EXISTING |
The accepted 05_battle_ui_japanese_scale.png and full-party proof are copied byte-for-byte into the approved v001 package. Hashes, focal regions, dynamic ownership and explicit rejections close the authority boundary; no new generation or image edit occurred. |
DEV-5 Durable Implementation Plan
Player-visible stopping point:
Continue from accepted Risk Commitment
-> create one battle receipt from the frozen Party and selected risk
-> read the objective, actor order, enemy-facing direction and first telegraph
-> watch deterministic melee, ranged, magic, healing, guard and damage events
-> pause or resume observation without issuing a combat command
-> reach a truthful Victory/Defeat result with the first decisive cause
-> inspect Coin/XP/reward and the same Recruit's knockout identity if present
-> acknowledge the battle-local knockout and open next-stage recovery
-> see the same Recruit return with stable ID, Profession, Trait and equipment
-> stop at next-stage readiness; equipment/build management remains DEV-6
Only one row may be IN_PROGRESS. A failed check keeps that row active.
| Substep | Status | Owned product boundary | Narrow acceptance check | Commit boundary |
|---|---|---|---|---|
DEV-5A Battle foundation |
COMPLETE |
In-place Contract extension creates one retry-safe battle receipt from accepted formation/risk, deterministic event timeline and strict terminal/result/recovery predicates without using historical casualty code | ABG_DEV5_BATTLE_OK; begin validation, duplicate/conflict, snapshot/risk identity, exact event kinds/order, deterministic outcome, interruption and no duplicate reward pass |
Focused battle service/domain test, plan/checkpoint update and push |
DEV-5B Battle opening/live observation |
COMPLETE |
Real Godot Battle Opening and Live Battle scene uses the painted environment, four compact actors, enemy-facing gap, disclosed threat, automatic playback, pause/resume and causal event rail | ABG_DEV5_BATTLE_UI_OK; Title/Continue -> battle, actual actor order, event timing, pause/resume, 130% layouts, touch/controller path and no combat command prompt pass |
Focused battle runtime/input/capture test, plan/checkpoint update and push |
DEV-5C Result and diagnosis |
COMPLETE |
Victory/Defeat result names objective, first decisive event, reward, XP and downstream state; one reviewable causal chain precedes Continue | ABG_DEV5_RESULT_OK; result receipt, duplicate settlement, reward/XP totals, cause inspect, restart and truthful loss state pass |
Focused result/diagnosis UI/domain test, plan/checkpoint update and push |
DEV-5D Knockout and next-stage recovery |
COMPLETE |
Knockout review names stable Recruit identity, current-battle absence and next-stage return; recovery atomically restores battle readiness without permanent death or roster replacement | ABG_DEV5_RECOVERY_OK; same ID/Profession/Trait/equipment, recovery receipt, duplicate/retry/candidate recovery, no permanent removal and next-stage handoff pass |
Focused recovery UI/persistence/input test, plan/checkpoint update and push |
DEV-5E First-cycle candidate |
COMPLETE |
Source-bound Title/Continue -> Market -> Party -> Readiness -> Risk -> Battle -> Result -> Recovery path completes one first cycle at required landscape sizes and stops before DEV-6 management | All applicable DEV-1/2/3/4/5 markers, parsed touch and representative 760x360/844x390/1280x720 zh_CN/en 100/130% normal-render states pass with strict diagnostics 0 | Candidate evidence closure commit and push |
DEV-5 owns only the minimum battle state, event timeline, result/diagnosis and battle-local knockout/next-stage recovery around the accepted DEV-4 snapshot. It may reuse existing enemy/content catalog rows and unified Recruit textures, but it must not adopt historical permanent-death, Replacement Credit, Company-collapse or roster-archive semantics. The first battle is automatic; pause, speed and inspect are observation controls, not combat actions.
Equipment purchases/equip, Artifacts, promotion, dismissal, second-cycle
management, Contract return semantics beyond the recovery handoff, later
Regions, bulk assets, devices, packages, stores and release remain outside
DEV-5. DEV-6 requires a separately activated plan after ABG DEV-5 candidate ready.
DEV-5 verification increases from battle-domain persistence to focused runtime
and parsed input, then source-bound first-cycle rendering. The preserved legacy
FG-4 suite remains historical and is not a substitute for the new current
Company/battle boundary. Any check expected to exceed 60 seconds is named with
scope, purpose and expected duration before launch; every attempt owns and
cleans its complete process group under ABG_EVIDENCE_DIR.
DEV-5 final handoff is exactly ABG DEV-5 candidate ready. Human
visual/comprehension/fun, device, package, store and release gates remain
OPEN.
DEV-5 Issue Register
| ID | Status | Boundary |
|---|---|---|
DEV5-I01 |
RESOLVED_DEV-5A |
BattleService independently attaches one current receipt/timeline to the schema-v2 Company/Contract and never calls historical casualty/run services. |
DEV5-I02 |
FROZEN_LEGACY |
Existing permanent-death, Replacement Credit, Company-collapse and roster-archive behavior cannot be surfaced as current product truth. |
DEV5-I03 |
RESOLVED_DEV-5B_LOCAL |
Battle keeps actors and event projections dominant, preserves the accepted Japanese 2D scale, and avoids a dashboard/card wall or combat command prompt in the focused runtime check. |
DEV5-I04 |
OPEN_HUMAN_GATE |
Automated evidence cannot prove that the player understands the first decisive cause, battle-local knockout, reward or next-stage return. |
DEV5-I05 |
FROZEN_DEV-6 |
Equipment/build management and second-cycle Company decisions begin only after DEV-5 recovery candidate closure. |
DEV5-I06 |
RESOLVED_DEV-5C |
Settlement keeps exactly nine timeline events, points diagnosis at decisive damage, awards XP only to surviving members and keeps the 130%-text Continue action inside the 844x390 viewport. |
DEV5-I07 |
RESOLVED_DEV-5D |
Knockout Review and Recovery commit preserve the same Recruit identity, Profession, Trait, level/XP, history and equipment, then return to Market with one retry-safe receipt and no permanent death. |
DEV5-I08 |
RESOLVED_DEV-5E |
The historical DEV-4 risk marker required a disabled Begin Battle boundary; the DEV-5 candidate omits that superseded assertion and verifies its replacement through the real Risk -> Battle marker. |
DEV-6 Durable Implementation Plan
Status:
SUSPENDED_BY_P0_PROJECT_CONSOLIDATIONActive implementation step:P0_PROJECT_CONSOLIDATION
Player-visible stopping point:
restart at next-stage Market after DEV-5 recovery
-> inspect four persistent equipment offers and their sourced effects/costs
-> review one equipment offer against an eligible Recruit
-> commit one-slot equipment purchase/equip with a retry-safe receipt
-> inspect the same Company's roster, level/XP, Trait, Profession and history
-> restart and return to the same Market/Roster state without duplicating Coin or equipment
-> stop before dismissal, promotion, Artifacts, second Contract creation and a second battle
Only one row may be IN_PROGRESS. Every substep ends with a focused pushed
commit and checkpoint update before the next row becomes active.
| Substep | Status | Owned product boundary | Narrow acceptance check | Commit boundary |
|---|---|---|---|---|
DEV-6A Company growth foundation |
COMPLETE |
Persistent equipment inventory, one universal equipped slot, sourced purchase/equip receipt, individual level/XP readout and duplicate/conflict/insufficient-Coin behavior | ABG_DEV6_GROWTH_OK; equipment offer identity/effect/price, valid and invalid wearer, one-slot replacement, Coin delta, receipt retry/conflict, XP/level persistence and restart pass |
Focused domain/runtime test, plan/checkpoint update and push |
DEV-6B Roster and Recruit detail |
COMPLETE |
Guild Roster and Recruit Detail expose stable identity, Profession, Trait, level/XP, equipment, history, readiness and legal navigation | ABG_DEV6_ROSTER_OK; list/detail/back/restart and truthful empty/disabled actions pass |
Focused roster UI/input test, plan/checkpoint update and push |
DEV-6C Dismissal and Contract return |
COMPLETE |
Dismissal review verifies live-count eligibility; Contract return preserves Company growth and separates voluntary withdrawal from Recruit dismissal | ABG_DEV6_RETURN_OK; final-member disabled reason, explicit confirmation, equipment return, Coin preservation, receipt retry/conflict and Guild return pass at /private/tmp/aetherbound-guild-test-evidence/dev6-return/20260818T042042Z-47775; DEV-6A/6B/5 regressions pass |
Focused dismissal/return domain and UI test, plan/checkpoint update and push |
DEV-6D Second-cycle candidate |
COMPLETE |
Source-bound next-stage Market -> equipment -> roster/detail -> Guild/Contract Return path completes and stops before new battle/content | Source 96173243765bc7fe897c13bafebf0affa8a033e6; ABG_DEV6_CANDIDATE_SUITE_OK, all prior markers, parsed touch, 24 normal-render states and strict diagnostics 0 at /private/tmp/aetherbound-guild-test-evidence/dev6-candidate-final/20260818T043605Z-66692 |
Candidate evidence closure commit and push |
DEV-6V Content-surface visual repair |
FROZEN_BY_P0 |
First publish the Owner-provided DEV-3 UI Style Contract, then repair DEV-3 onward Guild, Market, Recruit/Equipment review, Roster/Detail and Return surfaces so characters and scene/HUD hierarchy lead; preserve accepted DEV-1/DEV-2 Boot, Title and choice baseline and all Company/Save/Battle semantics | P0 must unify the product/UI contract before DEV-6V resumes | Focused presentation commit, H5 export/publish evidence and checkpoint update |
DEV-6 may reuse existing equipment catalog rows and hand-drawn Recruit assets, but it must not surface historical P9/FG-4 run-state or permanent-death semantics as current truth. Promotion, Artifacts, dismissal, second Contract creation, later Regions, bulk assets, devices, packaging, stores and release remain frozen until their named DEV-6 substep.
Aetherbound Guild Development Ledger
This append-only ledger records current milestone decisions. Superseded test attempt details remain available in Git history and external evidence roots; they are not duplicated here.
2026-08-20 - HUB-001 Accepted; Party Line Spec Activated
- Owner replied
OKto the final HUB-001 Guild desk runtime candidate. The continuous top rail, compact identity pill, semantic resource slots, rail-seated four-destination icon row and crest-owned Back/Title boundary are now recorded inverification/owner-acceptance.md; HUB-001 isCOMPLETE. - The next active page is
PTY-001Party Line / Formation atSPEC_READY. Its independent page contract and state matrix make the four-member rear-left to front-right cord, position0, relation preview, Undo/Reset/Back, atomic Save Order and all empty/stale/invalid/interruption states explicit. - Existing DEV-4 runtime/tests remain provenance until the Party Line design passes AI draft, deconstruction, asset and reconstruction gates. No visual implementation changes are authorized in this milestone.
2026-08-20 - PTY-001 AI Draft And Deconstruction Prepared
- Owner approved the PTY-001 v001 AI draft (
OKin HAPI). The generated 2048x1152 master is retained as draft provenance; visible copy and values remain engine-owned. - The deconstruction package records layered world, top rail, four runtime
Recruit actors, numbered cord markers, relation preview, command rail, text
slots and 48px hit areas. The page is now
DECONSTRUCTION_REVIEW; no asset generation or coding is authorized until this decomposition is accepted.
2026-08-20 - PTY-001 Deconstruction Accepted And Assets Prepared
- Owner replied
OKto the deconstruction review. Before generation, the displayed board's stale HUB-001 title and two-Recruit/Contract labels were corrected to the actual seven PTY-001 layer groups. - One regular 1K 2x2 GPT-Image-2 call produced Undo, Reset, Save Order and Back
icons for
$0.0085. Magenta-key slicing produced 128px and 192px transparent assets; all eight files pass corner-alpha and non-empty-content verification. - PTY-001 is now
ASSET_REVIEW. The accepted Guild courtyard and compact Recruit family are reused; no unnecessary background or actor generation was performed. Godot implementation remains frozen pending Owner asset review.
2026-08-20 - PTY-001 Assets Accepted; Reconstruction Ready
- Owner replied
OKto the four-icon contact sheet. The four transparent command assets are copied intoruntime/assets/entry/party_line_v001/with stable source hashes and no baked labels. - The PTY-001 runtime package now records the accepted world/Recruit reuse, procedural formation cord and markers, relation preview ownership, command rail bindings, text slots, responsive policy and focus/hit-area order.
- PTY-001 is
RECONSTRUCTION_READY; implementation may begin only in the named Party Line step. Readiness, Risk and Battle remain outside this step.
2026-08-21 - PTY-001 Runtime Candidate Returned For Visual Fidelity Repair
- Party Line runtime implementation now reuses the accepted Guild world and Recruit family, binds four actors to one rear-left to front-right cord, and renders procedural position shields, selection path and relation preview.
- The compact command rail uses the four Owner-accepted transparent icons.
Back to Guildexpands to remain fully readable in English at 130% text scale; all visible copy and values remain Godot-rendered. - Focused behavior/input evidence passes with marker
ABG_DEV4_PARTY_OK, 16 parsed touches and strict diagnostics 0 at/private/tmp/aetherbound-guild-test-evidence/pty001-party-implementation-focused-final/20260820T234120Z-26347. - Normal-render Party Line evidence passes with marker
ABG_DEV4_PARTY_CAPTURE_OKand strict diagnostics 0 at/private/tmp/aetherbound-guild-test-evidence/pty001-party-implementation-capture-final2/20260820T234506Z-29232; supplemental DEV-4 fixtures cover 760x360, 844x390 and 1280x720. - The first runtime candidate is not promoted to Owner review. The new visual
fidelity gate compares the approved master, declared normalized regions and a
normal-render capture. It reports
FAIL_VISUAL_FIDELITY: runtime aspect ratio2.1641vs approved1.7778, world mean error0.2497, top rail mean error0.4370, actor anchor delta0.12, relation anchor delta0.07, and command rail mean error0.2530. - The side-by-side, pixel-diff, alpha-overlay, annotated-bounds and JSON report
are archived under
docs/design-authority/pages/PTY-001-party-line/verification/visual-fidelity/. The candidate returns toIMPLEMENTATION_IN_PROGRESS; the next repair must rebuild against the approved coordinate composition before any Owner runtime review.
2026-08-21 - PTY-001 Clean-Master Repair Pass Invalidated And Gate Rebuilt
- Source
c428d7fd568fab1cabacb92792c5db0a4d9d923breplaces the rejected Guild-derived composition with a clean 2048x1152 static coordinate master, centered as a contained 16:9 canvas. Its production SHA-256 isda0f0db28e8d0749cf18e0cc5f43e8c176415305fc7c11f92ba2abd97d7d843b. - The static master owns the painted world and fixed HUD framing only. Godot owns the four Recruit actors, formation cord, position shields, selection path, top-right order diagram, relation summary, visible text and values; no dynamic state is baked into the raster master.
- The schema-v1 visual-fidelity report initially claimed
PASS, but independent review found that dynamic actor/relation checks compared handwrittenruntime_boundscopied from the approved bounds. Its zero anchor deltas were declarations, not Runtime measurements; that pass and the associated status promotion are invalidated. - Source-bound behavior passes
ABG_DEV4_PARTY_OKexactly once with 16 parsed touches and strict diagnostics 0 at/private/tmp/aetherbound-guild-test-evidence/pty001-c428-behavior/20260821T034740Z-26546. The four-frame main capture passesABG_DEV4_PARTY_CAPTURE_OKexactly once with strict diagnostics 0 at/private/tmp/aetherbound-guild-test-evidence/pty001-c428-capture/20260821T034740Z-26544. - Isolated responsive fixtures at 760x360 zh 100%, 844x390 en 130%, 1280x720
zh 100% and 1280x720 en 130% each pass
ABG_DEV4_CAPTURE_OKexactly once with strict diagnostics 0 at/private/tmp/aetherbound-guild-test-evidence/pty001-c428-responsive-f0/20260821T034740Z-26545,/private/tmp/aetherbound-guild-test-evidence/pty001-c428-responsive-f1/20260821T034740Z-26543,/private/tmp/aetherbound-guild-test-evidence/pty001-c428-responsive-f2/20260821T034740Z-26547and/private/tmp/aetherbound-guild-test-evidence/pty001-c428-responsive-f3/20260821T034740Z-26548. - Those attempts remain behavior/capture provenance for
c428d7f, but do not close the visual gate. Schema-v2 now hashes the clean static master, derives approved and Runtime dynamic masks from rendered pixel deltas, compares measured x/y/width/height/occupancy, and masks dynamic search areas from static MAE. A regression test proves copied JSON bounds cannot force PASS. - Independent actual-size review also found cord/effect z-order, 7px/9px copy, weak Save hierarchy and 44px assertions. The local repair splits cord z25, actors z30 and effects z35, fits scaled text inside its physical slots, restores primary/disabled command hierarchy, enforces 48px targets and uses four distinct professions in the review fixture. Local focused behavior, capture, four responsive fixtures and schema-v2 fidelity now pass.
- PTY-001 remains
IMPLEMENTATION_IN_PROGRESSuntil the repair is committed, pushed and rerun from fresh Git archives. PTY-002 and later pages remain frozen.
2026-08-21 - PTY-001 Owner Accepted; PTY-002 Activated
- Owner replied
OKto the repaired PTY-001 source-bound Runtime candidate. Source94a2356passes focused behavior/input, main and four responsive capture attempts, strict diagnostics and schema-v2 rendered-pixel fidelity against the clean static master. The page package, verification JSON and gallery now recordCOMPLETE. - The next active page is
PTY-002Readiness review atSPEC_READY. Its stopping point is a frozen automatic-formation summary with warnings, protection/reach/coverage facts, Reserve state and an explicit Accept boundary that records a reviewable battle-plan snapshot without starting a battle. AI draft, deconstruction, assets and Runtime implementation are gated behind the ordered page-production states.
2026-08-22 - PTY-002 Readiness Draft Ready For Owner Review
- PTY-002 now has a complete contract and state matrix covering the frozen Party snapshot, position-0 exposure, sourced protection/reach/coverage, grouped warnings, Reserve state, interruption and the no-battle Accept boundary.
- The first 2K AI candidate was rejected because it baked position numbers and
label-like markers into the image. A second original 16:9 candidate removes
those dynamic values and leaves clean engine-owned slots for the summary,
warnings and commands. It is recorded at
DRAFT_REVIEW; Owner approval is required before deconstruction, asset generation or Godot work.
2026-08-22 - PTY-002 Draft Approved; Deconstruction Review Active
- Owner continued the second candidate workflow in HAPI, which is recorded as approval for deconstruction only. The generated image remains a composition reference and is not a Runtime asset.
- PTY-002 now has an eight-layer
normalized_xywhpackage with engine-owned localized text slots, explicit 48px-safe logical targets, responsive anchors and a separate unavailable Risk-next boundary. The structure preflight passes 15/15; asset generation and Godot implementation remain frozen until the deconstruction package is reviewed.
2026-08-22 - PTY-002 Asset Generation Activated
- Owner approved the PTY-002 deconstruction package. Accepted M02 world, Recruit family, rail shell and procedural relation/summary/warning geometry are reused; no new background or actor generation is authorized.
- The only missing raster assets are four icon-forward commands: Revise Party, Back to Guild, Accept Preparation and the unavailable Risk-next seal. One regular 2x2 sprite-sheet generation is scoped; Runtime and Godot remain frozen until the resulting contact sheet is reviewed.
2026-08-22 - PTY-002 Asset Package Ready For Review
- The single 1K generation completed as task
task_01M0K76MZP0Q14EJ38XQ9KWW6Cat$0.0085. Deterministic slicing produced four @2x and four @3x transparent command icons; all corners and content checks pass. - Accepted M02 world, rails and Recruit provenance remains reused. The current
gate is
ASSET_REVIEW; no Runtime asset import or Godot implementation is authorized until the contact sheet is accepted.
2026-08-22 - PTY-002 Reconstruction Package Ready
- Owner accepted the four-icon contact sheet. PTY-002 now records
runtime/reconstruction-spec.json,runtime/asset-manifest.json,runtime/hit-areas.jsonand a Runtime handoff with the exact contained canvas, layer order, state bindings, localization ownership and 48px targets. - Runtime target paths are recorded but not imported. The page is
RECONSTRUCTION_READY; Godot implementation, behavior evidence and visual fidelity capture remain separate next-step work.
2026-08-22 - PTY-002 Runtime Implementation In Progress
- PTY-002 moved to
IMPLEMENTATION_IN_PROGRESSafter the accepted handoff package was imported. Runtime now uses a contained 16:9 clean static master, the accepted four command icons, the existing four Recruit bindings and engine-owned readiness/warning text. The frozen Company order and FormationRiskService semantics are unchanged. - Focused Readiness behavior passes
ABG_DEV4_READY_OKwith 14 parsed touch events, idempotent Accept/Resume behavior and no Battle receipt. DEV-4 foundation and Party Line regressions pass; Risk regression passes with the DEV-5 Begin Battle action visibly disabled. - Four real Runtime captures pass strict diagnostics and layout checks at
760x360 zh_CN 100%,844x390 en 130%,1280x720 zh_CN 100%and1280x720 en 130%. The PTY-002 schema-v2 pixel gate passes 32/32 package checks and all four rendered-fidelity reports against the hashed clean static master. Owner visual/runtime acceptance remains open.
2026-08-22 - Reusable Page Restore Preflight Added
tools/run_page_restore_preflight.pyand its focused unittest provide the reusable early gate for future pages. A config declares the approved master, clean static master, fidelity contract, layer map, text slots, hit areas, required viewports and optional Runtime captures.- The gate validates JSON and asset presence, canvas dimensions/aspect, clean
master hash, explicit
xywh/xyxycoordinate formats, engine-owned text at 100%/130% zh_CN/en, focus order and Runtime target evidence. With captures it invokes schema-v2 per viewport and emits one responsive side-by-side sheet. - PTY-001 structure and target 844x390 fidelity pass. The 760x360 capture exposes a formation-cord size mismatch; it remains an honest warning for the accepted historical page and is not changed by loosening the checker.
2026-08-23 - RSK-001 Copy Density Repair Verified
- Owner accepted the RSK-001 composition but reported that the six repeated
option fact labels made the board feel too text-heavy. The focused repair
keeps threat, uncertainty, cost, reward, recovery and coverage values and
shortens only their localized labels (
威胁/信息/成本/奖励/恢复/覆盖andTHREAT/INFO/COST/REWARD/RECOVERY/COVERAGE). Commitment keeps its full consequence and DEV-5 boundary explanation. - Source
d0dea5bpasses the focusedABG_DEV4_RISK_OKmarker with compact-copy assertions, 14 parsed touches, no Company mutation and no battle receipt. Fresh archive captures pass at 760x360 zh_CN 100%, 844x390 en 100% and 1280x720 zh_CN 100%, each with strict diagnostics 0 and one required marker. Attempts are recorded in the RSK-001 verification JSON; page preflight and its three focused unit checks pass. RSK001-VIS-01remainsOPEN_OWNER_REVIEW. The refreshed actual-size set is the next Owner check; later pages and Risk Commitment implementation remain frozen.
2026-08-16 - Complete Game Program Approved
- The Owner approved plan-driven development toward eight Regions, sixteen Contracts, the First Chronicle ending and Oath Season postgame.
- Single-session implementation is required. Native delivery remains separate.
2026-08-17 - Functional Midpoint Reached
- RG-03 and RG-04 gameplay, four Contracts, four Bosses, Save-v11 and five profiles reached a combined automated/simulation/runtime midpoint candidate.
- Runtime-only Web and Gallery transport passed.
- These checks did not grant human visual, comprehension, fun or listening acceptance.
2026-08-17 - Pixel Presentation Rejected
- Owner reviewed Gallery item
5vl2EqsYWkeyand rejected its 16-bit pixel-art presentation. - Accepted authority remains Japanese 2D thin-line/cel-color characters over softly painted environments. Unit scale follows the accepted reference and Owner review of a real runtime frame, not a fixed percentage.
- Root cause: FG-2 incorrectly treated a generic portfolio pixel-art rule as stronger than this game's approved product and visual contracts.
- Gameplay, content, Save, input and event-bound audio remain preserved.
- FG-5, bulk asset production and delivery are frozen.
2026-08-17 - Planning And Documentation Reset
- The repository-specific Agent contract now excludes Aetherbound from the portfolio pixel-art rule.
- Current product documentation is exactly the six numbered Markdown files
under
docs/;README.mdis the clickable review index. - Historical milestone Goals, plans, H5 notes, attempt reports and rejected generation Markdown are removed from the current tree; Git history retains them.
- All 50 canonical pages and the implementation order are defined in
03_PAGES_AND_UX.md. - The planning freeze ended when the Owner approved entry-first development. The first product action is the real Boot, first-launch and Title path.
- Consolidation validation proves both page authorities contain the same 50 IDs and retains 42 Professions, 36 Traits, 320 equipment items, 60 Artifacts, 100 enemies, 16 Bosses and 8 Regions.
2026-08-17 - Entry-First Development Order Approved
- The Owner rejected a battle-first implementation order and required the game to be developed in the same sequence a new player experiences it.
DEV-1begins with Boot, first-launch setup, Title and essential Settings.- Initial Company, Guild, Market, automatic formation, risk, battle, result and later content remain ordered follow-up steps rather than parallel work.
- One HAPI development session works directly in the current repository and branch; no multi-Agent or new worktree is authorized.
2026-08-17 - DEV-1A Boot Implemented
- Normal launch now enters a bounded Godot entry shell over the existing hand-drawn guild threshold; the historical gameplay facade remains preserved.
- Boot verifies required local resources, user storage, settings data and the current save envelope with named progress. Unsafe data is not reset.
- Recoverable failure retains the branded screen, a stable non-path diagnostic
and Retry. Focused service and real-main-scene tests pass with strict markers
ABG_DEV1_BOOT_OKandABG_DEV1_BOOT_RUNTIME_OK.
2026-08-17 - DEV-1B First Launch Implemented
- A clean profile must apply language, safe-area, 100/115/130% text, reduced motion/flashes and caption settings before reaching Title.
- Settings use schema validation and verified candidate/backup promotion. A completed setup survives restart and is not forced again; the dedicated reset fixture restores first-launch behavior without changing run data.
- The focused persistence and screen-state marker
ABG_DEV1_FIRST_LAUNCH_OKand the Boot handoff regression pass.
2026-08-17 - DEV-1C Title Implemented
- The Title uses the approved hand-drawn guild threshold and keeps New Game, Continue, Settings and Credits in a compact operational hierarchy.
- Continue reflects the verified local-save envelope and shows a visible reason when disabled. New Game and Continue preserve frozen DEV-2/save semantics and state the unavailable downstream review instead of silently doing nothing.
- Settings/Credits return exactly to Title, while Back opens a non-destructive
exit review.
ABG_DEV1_TITLE_OKpasses with no-save and resumable fixtures.
2026-08-17 - DEV-1D Settings And Credits Implemented
- SET-001..006 provide stable category navigation and persisted display/text, motion/flash/power, audio/caption, control and locale behavior with explicit Apply/Discard handling and exact Title return.
- Master mute plus Music/SFX levels apply to real Godot buses. Absent separate Ambience/Voice assets and conflict-safe remapping remain visible with precise unavailable reasons rather than inert controls.
- SYS-008 names authorship, bundled SIL font license, offline behavior, local
data/privacy and the no-external-link policy.
ABG_DEV1_SETTINGS_OKand the preceding Title/first-launch regressions pass.
2026-08-17 - DEV-1 Candidate Verified
- Candidate product source:
43e5bacbf88953ae99676400532189f02143be20. - Source-bound DEV-1 attempt:
/private/tmp/aetherbound-guild-test-evidence/dev1-candidate/20260817T072754Z-25813; PASS with archive SHA-25646fedaed64f73519ad0e55aa5094cecbebe95e8c94a1e2fb6ab58a3b5356e947. It covers fresh import, Boot/setup/Title/Settings/Credits behavior, real parsed ScreenTouch, restart/reset, 20 normal-render frames, 760x360/844x390/ 1280x720, English/Chinese and 100/130% text with strict diagnostics 0. - Source-bound preserved-system regression:
/private/tmp/aetherbound-guild-test-evidence/dev1-fg4-regression-3/20260817T081131Z-73011; PASS with archive SHA-2566b1dd652e8351d1f4f993dc26cd4a6650513e1905bf626d4a9ff20411864738f. All 30 Godot checks, five Python/media checks, 24 legacy normal-render frames, Save-v11, five-profile midpoint simulation and existing parsed-touch paths remain unchanged and strict. - Local runtime inspection at the time reached
agent_visual_reviewed: the painted guild threshold was visible, focal order was clear and tested short/130% states did not overlap. This agent-only visual state was later superseded by the Owner's rejection below. - DEV-1 used existing approved-direction art and made zero paid image calls. Device, packaging, signing, store and release gates remain open and were not exercised.
2026-08-17 - DEV-1 Entry Chrome Rejected
- The Owner compared the functional DEV-1 runtime with
05_battle_ui_japanese_scale.pngand reported a substantial mismatch. - Earliest failed boundary: the runtime used generic translucent rectangles and flat settings controls instead of the reference's deep-navy enamel, ivory control plates, warm-gold layered trim, cut corners, heraldic anchors, icon-forward hierarchy and authored interaction states.
- The functional DEV-1 and preserved FG-4 evidence remains valid only for its
named behavior.
DEV-1Freopens visual production at the Title fixed frame; Boot, first launch, Settings and Credits follow only after that grammar works at actual play size. No paid generation is yet justified because approved background art and procedural Godot chrome cover this bounded repair. - Human visual/comprehension, device, packaging, store and release gates remain open. DEV-2 and later product implementation remain frozen.
2026-08-17 - DEV-1F Title Chrome Repaired
- The fixed Title frame now uses a heraldic enamel guild header, ivory utility bridge and bottom command dock with layered gold trim, cut corners and procedural icons. New Game receives initial focus; Continue keeps a distinct disabled state and visible reason.
- All six DEV-1 headless checks, including real parsed ScreenTouch, pass. A normal-render development matrix produced 20 frames at 760x360, 844x390 and 1280x720 across English/Chinese and 100/130% text with strict diagnostics 0.
- Development capture root:
/private/tmp/abg-dev1-title-dev-capture-2. It guides the visual repair but is not source-bound candidate evidence and does not grant human acceptance. - No image-generation calls were made. DEV-1G may extend only this proven UI grammar to Boot, first launch, Settings and Credits after DEV-1F is pushed.
2026-08-17 - DEV-1G Entry Pages Repaired
- Boot now uses a compact verification deck with named progress; first launch uses an edge-attached setup panel; Settings and Credits use one enamel workspace with ivory selected segments, value plates and explicit toggle, slider, disabled and primary-command states.
- The first development render exposed a setup GridContainer width regression and incorrect unselected-tab text state. That attempt was rejected; the controls gained real expansion sizing, the state binding was repaired and the same matrix was rerun.
- Final local checks: all six DEV-1 headless markers, real parsed ScreenTouch
and 20 normal-render frames pass with strict diagnostics 0. Development
capture root:
/private/tmp/abg-dev1-entry-pages-dev-capture-5. - The development capture is not source-bound candidate evidence and does not grant Owner visual acceptance. No image-generation calls were made; DEV-2 and all human/device/package/release gates remain open.
2026-08-17 - Revised DEV-1 Candidate Verified
- Candidate product source:
d3b93268776b87b7bfb407c79165011facc438f8. - Revised source-bound DEV-1 attempt:
/private/tmp/aetherbound-guild-test-evidence/dev1-candidate-revised/20260817T091805Z-82593; PASS with archive SHA-256980ad2fc2e2b0b667e2d2a46dec84320aaca6959755f1f524ee8e5835c85451e. It covers six headless behavior checks, real parsed ScreenTouch and 20 normal-render frames across 760x360/844x390/1280x720, English/Chinese and 100/130% text with strict diagnostics 0. - Revised preserved-system regression:
/private/tmp/aetherbound-guild-test-evidence/dev1-fg4-regression-revised/20260817T092203Z-85944; PASS with archive SHA-256d54963d22411165ad97ea31d256292701670a7cddd339f43d672c88e1b53f56a. All 30 Godot checks, five Python/media/audio checks, Save-v11, five-profile midpoint simulation, parsed touch and 24 legacy normal-render frames remain unchanged with strict diagnostics 0. - Source-bound entry frames were inspected at actual play size and reach only
agent_visual_reviewed: enamel/ivory/gold hierarchy is coherent, selected, focused, disabled and value states are readable, and required 130% layouts do not overlap. Human visual/comprehension acceptance remains open. - No paid image calls were made. Device, packaging, signing, store and release gates remain open and were not exercised.
2026-08-17 - Continuous Initial Company Model Approved
- The Owner confirmed Aetherbound Guild as a continuous-growth incremental game. New Game's four-offer choose-two draft establishes the persistent initial Expedition Company.
- A Contract run remains a bounded expedition, but Contract completion retains recruited characters, individual levels/XP, Professions, Traits, equipment and the continuing roster instead of archiving and replacing it.
- Zero HP removes a Recruit only from the current battle. That Recruit remains owned and returns for the next stage; permanent death and death-funded Replacement Credit are superseded product rules.
- DEV-2 implements only initial-company creation. Existing FG-4 casualty, run closure, economy and Save-v11 code remains preserved historical behavior for a later player-order conversion and must not be silently presented as already compliant.
2026-08-17 - DEV-2A Continuous-Growth Authority Corrected
- All six current authorities now define the one-time four-offer choose-two as creation of the persistent initial Expedition Company, followed by a Guild handoff rather than immediate per-run roster creation.
- A zero-HP Recruit remains owned, leaves only the current battle and is battle-ready again at the next stage with the same stable identity and growth. The exact returned HP amount is intentionally deferred to the later balance conversion because the Owner approved return, not a specific full-heal value.
- Contract clear or withdrawal retains Recruits, level/XP, Professions, Traits,
equipment, history and persistent resources. Old permanent-death, Replacement
Credit, Company-collapse and roster-archive detail is explicitly
FROZEN_LEGACY_FG4, not current product authority. ABG_PREDEVELOPMENT_DESIGN_SELF_TEST_OK cases=7,ABG_RECRUIT_LOADOUT_LEVEL_OKandgit diff --checkpass. No runtime code, Save-v11 behavior, media, package or release state changed in DEV-2A.
2026-08-17 - DEV-2B Stable Initial Draft Activated
- Authority-correction source
dd190477684e1eb2279a81645f2ccbc82373ea25is pushed, clean and equal to upstream. - DEV-2B owns only the draft service/store and focused tests: one durable seed, four deterministic complete offers in fixed positions, zero-to-two selected IDs, restart-safe loading, no reroll and explicit invalid/corrupt recovery.
- Player-facing choice UI, persistent Company commit, Guild/Market behavior, gameplay conversion, media production and delivery remain frozen.
2026-08-17 - DEV-2B Stable Initial Draft Implemented
runtime/entry/initial_company_draft_service.gdreserves one 128-bit seed and projects the verified opening Recruit generator into the current one-time Initial Company schema without persisting a Contract orcurrent_run.- Each draft contains exactly four hashed offers in fixed positions with unique offer/Recruit IDs, generated name components, appearance seed, base Profession, equal-budget numeric attributes, exactly one Trait benefit/cost, one starting item state, level 1 and XP 0.
- Atomic primary/backup/candidate handling preserves the same seed, offer order and zero-to-two selected IDs across restart. Duplicate, unknown and third selection inputs mutate nothing; invalid replicas return a named error instead of rerolling.
- Focused Godot marker:
ABG_DEV2_DRAFT_OK created=true offers=4 restart=true no_reroll=true selected=true invalid=true backup=true no_company=true. DEV-2C and later runtime/UI boundaries remain frozen until a separate pushed activation commit.
2026-08-17 - DEV-2C Recruit Choice Activated
- Stable-draft source
b337739336ba7e67484c004bb0b68a0ce8775ef1is pushed, clean and equal to upstream. - DEV-2C owns Title navigation, the four-candidate choice page, Inspect, Compare A/B, independent selection, exact selected-count gating, Back and restart-safe page restoration plus focused headless/touch/layout evidence.
- Company review/commit, the Guild handoff, DEV-3+, gameplay conversion, new media production and delivery remain frozen.
2026-08-17 - DEV-2C Recruit Choice Implemented
- Title's New Game action now reaches a real Godot Initial Expedition Company page using the accepted painted entry environment and enamel/ivory/gold, cut-corner, heraldic runtime chrome.
- Four equal offer plates expose stable name, base Profession, five attributes, Trait and selection state. Inspect shows Profession job, exact Trait benefit/cost and starting item; Compare A/B changes no selection.
- Independent Select controls persist through the draft service.
0/2and1/2disable Review with a reason,2/2enables it, and a third candidate is rejected without automatic eviction. Back and restart retain IDs, order and selection; corrupt data provides Retry and Title return without reroll. - Focused markers
ABG_DEV2_CHOICE_OKandABG_DEV2_CHOICE_TOUCH_OKpass with all six applicable DEV-1 markers. Development normal-render root:/private/tmp/aetherbound-guild-test-evidence/dev2-choice-development-dirty-v2; 16 frames cover choice, selected, inspect and compare across required sizes, languages and 100/130% text. This dirty-tree matrix is visual guidance, not source-bound candidate evidence or human acceptance.
2026-08-17 - DEV-2D Review, Commit And Handoff Activated
- Choice-page source
50f53d882adf16395b2e5697867f11a776ae6c52is pushed, clean and equal to upstream. - DEV-2D owns selected/unchosen review, same-draft Revise, exactly-once persistent Company creation, restart/duplicate handling and a bounded Guild handoff whose later actions state their unavailable reason.
- Market, Contract selection/play, gameplay lifecycle conversion, new media, device packaging, stores and release remain frozen.
2026-08-17 - DEV-2D Review, Commit And Handoff Implemented
- Review names the selected pair and both unchosen provisional offers. Revise returns to the same saved draft and selection; Create Company promotes only the selected two Recruit records to persistent owned state.
- The independent Company file uses verified primary/backup/candidate writes and a deterministic exactly-once receipt. Duplicate commit returns the same receipt, interrupted candidates recover, matching lingering drafts are cleaned, and neither unchosen offers nor a Contract/current-run reset enter persistent Company state.
- Successful creation and restart reach a bounded Guild handoff showing the two persistent members. Title disables New Game and enables Continue; Settings returns to Guild, while Contract Board and Market remain disabled with visible reasons instead of silently implementing DEV-3.
- Focused markers
ABG_DEV2_COMMIT_OKandABG_DEV2_COMMIT_TOUCH_OKpass with all six applicable DEV-1 and all earlier DEV-2 markers. Development normal-render root:/private/tmp/aetherbound-guild-test-evidence/dev2-commit-development-dirty; 24 frames cover choice, selected, inspect, compare, review and Guild across required sizes, languages and 100/130% text with strict diagnostics 0. This dirty-tree matrix is guidance, not source-bound candidate evidence or human acceptance.
2026-08-17 - DEV-2E Initial Company Candidate Activated
- DEV-2D source
71f49a4926499ec8aa4911f9d162df709ecf132fis pushed, clean and equal to upstream. - DEV-2E owns only source-bound complete DEV-2, applicable DEV-1, preserved FG-4, parsed-input, normal-render and strict-diagnostic evidence plus the final checkpoint/ledger closure.
- Market, Contract selection/play, DEV-3+, gameplay lifecycle conversion, new media, device packaging, stores and release remain frozen.
2026-08-17 - DEV-2 Initial Company Candidate Verified
- Candidate product source:
d1990538d5d70059f1203bf4817d1b0e9bf49a74. - Source-bound DEV-2 attempt:
/private/tmp/aetherbound-guild-test-evidence/dev2-initial-company-candidate/20260817T113907Z-96869; PASS with archive SHA-2564593256c794c0f74f8a7f88fec9300652e520772f664f3b808ae6006c6e3035d. It covers six applicable DEV-1 checks, six DEV-2 checks including the complete parsed ScreenTouch player journey, and 24 normal-render Initial Company frames across 760x360/844x390/1280x720, English/Chinese and 100/130% text with strict diagnostics 0. - Preserved-system regression:
/private/tmp/aetherbound-guild-test-evidence/dev2-fg4-regression/20260817T113949Z-99041; PASS with archive SHA-256f434adb15ed8455cded7da691f91e1352316942d8bbf22065e2f9ff78d2dcbf1. All 30 Godot checks, five Python/media/audio checks, Save-v11, five-profile midpoint simulation, parsed touch and 24 legacy normal-render frames remain unchanged with strict diagnostics 0. - Source-bound choice, Review and Guild frames were inspected at actual play
size and reach only
agent_visual_reviewed: the four equal candidates, selected pair, unchosen-offer consequence, persistent-growth promise and disabled Guild reasons are readable without overlap at the required layout matrix. Human choice/comprehension/visual acceptance remains open. - No image-generation or paid media calls were made. Device, packaging, signing, store and release gates remain open and were not exercised.
2026-08-17 - DEV-2F Character-Forward Visual Repair Activated
- Owner review rejected the source-bound candidate's visual balance: repeated enamel plates and text dominate while Recruit identity is absent. Functional choose-two, persistence, recovery and Guild boundaries remain preserved.
- DEV-2F first uses the four existing non-pixel hand-drawn actor sources to prove character scale, crop, hierarchy and touch composition. Only after that runtime graybox passes may two regular 2x2 image calls add the eight missing base-Profession sticker sources within the standing task ceiling.
- The repair owns person-bearing choice buttons, portrait-led Inspect/Compare/ Review, the persistent pair standing in Guild and illustrated but still disabled Contract Board/Market props. Battle animation, later Recruits, regions, DEV-3 behavior, package and release remain frozen.
2026-08-17 - DEV-2F Character-Forward Runtime Implemented
- The four accepted non-pixel actor sources remain mapped to
PF-B01,PF-B04,PF-B05andPF-B07. Two authorized 2x2gpt-image-2calls added onlyPF-B02,PF-B03,PF-B06,PF-B08,PF-B09,PF-B10,PF-B11andPF-B12; task IDs aretask_01M07V8260ZYFZB7W4B7KCFEH2andtask_01M07VBKAXVYXPMDXFNVE352R2, total recorded cost$0.028. docs/prototype/generation/dev2_character_stickers_01/asset-manifest.jsonrecords prompts, raw sheets, provider reports, hashes, edge-connected key removal, closed-hole cleanup, boundary despill and the eight runtime imports. The generated outputs are project-authored; human/device/release flags remain false.- Choice now presents four distinct Recruits as the dominant clickable controls over the shared painted environment. Inspect, Compare and Review keep those same identities visible; the committed persistent pair stands in Guild. Contract Board and Market use illustrated object stickers while their real disabled reasons and frozen DEV-3 boundary remain unchanged.
- Focused worktree attempt
/private/tmp/aetherbound-guild-test-evidence/dev2-character-worktree-suite/20260817T130943Z-23198passes all six applicable DEV-1 and all six DEV-2 behavior/parsed-touch markers with strict diagnostics 0. Normal-render attempt/private/tmp/aetherbound-guild-test-evidence/dev2-character-captures/20260817T130637Z-20886passes 24 choice/selected/Inspect/Compare/Review/Guild frames across 760x360, 844x390 and 1280x720, zh_CN/en and 100/130% text. - Six representative Godot runtime frames were delivered to the Owner for
review. This reaches
agent_visual_reviewedonly; Owner visual/comprehension, device, packaging, store and release gates remain open. Source-bound DEV-2 and preserved FG-4 regression still gate DEV-2F closure.
2026-08-17 - DEV-2F Open-Stage Correction
- Source-bound commit
9b8a533d86e041c4543e94a10ce42fd7438e9077passes the complete DEV-2 candidate suite at/private/tmp/aetherbound-guild-test-evidence/dev2-character-candidate/20260817T132045Z-34538with six DEV-1 markers, six DEV-2 markers, parsed input, 24 normal-render frames and strict diagnostics 0. Its evidence archive SHA-256 isd82750420c6ff7bcc9fc0daa59c184cf9f66b0d66fdb48576786823661fd76ce. - Owner comparison against the accepted battle-scale frame keeps the visual gate open: the actor set remains taller and more portrait-like than the unified compact Japanese 2D unit language, while the four vertical choice slots still read too much like cards.
- The bounded graybox removes opaque full-height candidate plates, exposes one
shared painted Guild scene and leaves only edge HUD strips, person controls,
ground selection rings, names and commands. Worktree normal-render attempt
/private/tmp/aetherbound-guild-test-evidence/dev2-open-stage-captures/20260817T135149Z-71812passes all 24 required layout frames; focused choice behavior also passes at/private/tmp/aetherbound-guild-test-evidence/dev2-open-stage-choice/20260817T135111Z-71314. - The first preserved FG-4 rerun reached the configured 600-second attempt
timeout during its later headless tests; no product failure was recorded.
A macOS
killpgEPERMthen exposed a runner terminal-cleanup defect. Commitdd3b0cdb387c92b01773746ac14a30547e12e773now records permission denial as a harness condition instead of throwing, andABG_TEST_ATTEMPT_RUNNER_OKpasses. The owned workspace and incomplete artifact were explicitly checked against their ownership marker and removed after confirming no process remained. - DEV-2F remains
IN_PROGRESS. The Owner must review the open-stage screenshot before the remaining standing image allowance is used for a single unified compact-proportion Recruit family. DEV-3 behavior and all later gates remain frozen.
2026-08-17 - DEV-2F Unified Actor Family Authorized
- The Owner clarified that actor art style, not only character presence, must remain consistent and asked whether the current display scale is too large. Agent review agrees: four reused sources and eight first-pass sources differ in line weight, face construction, body proportion, cel-shadow density and costume detail; the 1280x720 choice actors also dominate too much of the shared scene.
- DEV-2F will replace all 12 mixed sources in one regular 4x3 sheet so every base Profession shares one line/rendering/proportion/light contract while retaining varied silhouettes and role tools. The accepted battle frame controls only the original compact Japanese 2D unit language; current contacts control only Aetherbound role/tool identity. No names, costumes, layout or other expressive content is copied from outside project authority.
- Two earlier calls cost
$0.028. The next unified sheet may use one call; the fourth and final standing task call is reserved only for failed-cell repair. Choice-page display scale will reduce while Inspect remains deliberately larger. DEV-3 and later actor/content production remain frozen.
2026-08-17 - DEV-2F Unified Compact Actors Integrated
- The first unified task
task_01M0813TXQGV09SBEJVVAZRH5Pproduced one internally consistent 4x3 sheet for$0.014, but agent comparison rejected the full sheet: 6.5-7-head anatomy and ornate key-art density still diverged from the accepted ordinary field-unit language. Its prompt, provider report, raw sheet, contact sheet and rejection reason remain preserved. - The final authorized task
task_01M08280KEEFDB3HPCTC0V9H3Nused only the accepted battle-scale frame as a visual-language reference and produced all 12 base Professions together for$0.014. The accepted runtime family uses compact 4.5-5-head tactical anatomy, one warm-charcoal line hierarchy, one face construction, one cel-shadow budget, one material density and one upper-left light. Total DEV-2F image use is four calls and$0.056; the task ceiling is exhausted. - Deterministic 4x3 slicing, connected key removal, enclosed-key cleanup,
despill, 512px export, hashes and contact generation pass marker
ABG_DEV2_COMPACT_UNIT_PROCESS_OKwith 12 outputs and zero border alpha.InitialCompanyArtnow maps every base Profession to exactly one texture. Choice display is reduced while Inspect/Compare remain larger; Guild display is reduced further so the persistent pair retains environmental context. - Focused behavior PASS at
/private/tmp/aetherbound-guild-test-evidence/dev2-unified-actor-choice/20260817T144520Z-42716. The 24-frame normal-render matrix PASS at/private/tmp/aetherbound-guild-test-evidence/dev2-unified-actor-captures/20260817T144542Z-42958across 760x360, 844x390 and 1280x720, zh_CN/en and 100/130% text. Agent inspection finds one coherent actor family, complete tools/silhouettes and no control overlap at play size. This reachesagent_visual_reviewedonly; Owner visual/comprehension, device, package, store and release gates remain open. - Source-bound commit
5700a84f9b5b230b35a6dc4a65ad477586871200passed all six DEV-1 and six DEV-2 behavior checks, then the fresh-import normal-render process completed 18 frames and accumulated renderer work before the 1280x720 fixture. The 900-second runner terminal isTIMEOUT, not a product failure or PASS, at/private/tmp/aetherbound-guild-test-evidence/dev2-unified-actor-candidate/20260817T145351Z-58238; its complete process group and workspace were removed. - The 1280x720/en/130% fixture passes all six states alone in 3.7 seconds at
/private/tmp/aetherbound-guild-test-evidence/dev2-split-capture-fixture-3/20260817T151341Z-77767. The candidate harness now gives each of the four viewport/language/text fixtures its own normal-render process and retains the same 24 unique files, layout assertions, exact markers and strict diagnostic scan. Product runtime behavior and visible states are unchanged.
2026-08-17 - DEV-2F Command Chrome Reopened
- Owner review accepts continued work on the actor-forward pages but rejects their current command presentation: every action is still enclosed by the same heavy double-gold octagonal box, generic diamonds do not communicate Back/A/B/Select intent, and the continuous outer border makes the scene feel like a framed utility panel.
- The narrow repair owns only DEV-2 procedural chrome and its layout: a light parchment return tab, compact differentiated A/B tools, asymmetric secondary and primary command signs with familiar state symbols, and open corner plus header/footer rails. Existing callbacks, disabled reasons, touch bounds, localization, Recruit art and DEV-3 boundaries remain unchanged.
- While visual direction remains in Owner review, each iteration runs only the focused DEV-2 input check and six representative normal-render states. One complete source-bound DEV-2 and preserved FG-4 regression will run only after the visual boundary is accepted; the interrupted earlier FG-4 attempt is not a PASS and its runner-owned process group/workspace were removed.
- Command-chrome candidate v2 is implemented without changing callbacks or page state. The continuous double-line enclosure is replaced by open corner ornaments and separated header/footer rails. Return uses a light parchment tab; A/B tools are compact markers; unselected/selected actions use plus/check semantics; Compare and confirmation use distinct familiar symbols and asymmetric single-line command silhouettes. Guild footer and disabled destination signs use the same hierarchy.
- Focused choice behavior PASS in 1.6 seconds at
/private/tmp/aetherbound-guild-test-evidence/dev2-command-chrome-choice/20260817T153507Z-918. Six 844x390/zh_CN/130% normal-render states PASS in 2.4 seconds at/private/tmp/aetherbound-guild-test-evidence/dev2-command-chrome-review-v2/20260817T153537Z-1291. Agent review caught and repaired duplicate A/B glyphs, unselected checkmarks and old Guild double-frame buttons before Owner delivery. Full regression was deliberately not run; human visual acceptance remains open. - Owner follow-up rejects the v2 frame and spacing while retaining the new button hierarchy. Removing the old double enclosure left the content and ornament on one shared rectangle: headings, status copy, actors and footer actions crowd the edge, and the four isolated corner strokes look unfinished. DEV2-I12 now requires a separate content inset inside one precise outer hairline with constructed corner fittings and top/bottom rails. The old source-bound DEV-2 suite subsequently completed PASS, but the visual source is superseded by this explicit Owner rejection and cannot close DEV-2F.
- Frame/spacing candidate v3 keeps the differentiated v2 buttons and separates ornamental chrome from content layout. The frame owns the project safe area; a second safe rectangle adds inner left/right/top/bottom padding for all page layouts. A single precise cut-corner hairline, four filled corner fittings and aligned header/footer rails replace the sparse strokes without restoring a heavy double enclosure. The same construction applies to choice, Inspect, Compare, Review and Guild.
- Focused choice behavior PASS in 1.5 seconds at
/private/tmp/aetherbound-guild-test-evidence/dev2-frame-spacing-choice/20260817T154715Z-19139. Six 844x390/zh_CN/130% normal-render states PASS in 2.4 seconds at/private/tmp/aetherbound-guild-test-evidence/dev2-frame-spacing-review/20260817T154743Z-20697. Full regression remains deferred until Owner visual acceptance.
2026-08-17 - DEV-2F Final Candidate Accepted And Verified
- The Owner reviewed frame/spacing candidate v3, answered
OKand explicitly authorized continuation into DEV-3 through DEV-6. This records human review of the current DEV-2 visual direction and actor family; broader comprehension, fun, device, packaging, store and release acceptance remain independent and open. - Final DEV-2 product source:
4352e253a83ee9f3ce3bca6eac99c5e70691f989. Source-bound candidate attempt:/private/tmp/aetherbound-guild-test-evidence/dev2-frame-spacing-candidate/20260817T155546Z-29597; PASS with archive SHA-256f30ba5ae6d89f9aaeca66267e1d03d4559ecf8ffeb54685c51aa23b785d1ca68. It covers six DEV-1 checks, six DEV-2 checks, parsed touch and 24 normal-render Initial Company frames with strict diagnostics 0. - Preserved FG-4 regression:
/private/tmp/aetherbound-guild-test-evidence/dev2-final-fg4-regression/20260817T155717Z-30828; PASS with archive SHA-256a61c9871e62194b7e9e8fbb97f4923dc3edd584327db3ef3b363330444f540ea. All 30 Godot checks, five Python/media/audio checks, five-profile simulation, parsed touch and 24 legacy normal-render frames pass with strict diagnostics 0. Both attempts removed their complete owned process groups and workspaces. DEV-2FandDEV-2are complete. Exact handoff:ABG DEV-2 candidate ready. DEV-3 requires a separately activated durable plan and cannot reuse this closure as authorization to skip its own focused commit boundaries.
2026-08-17 - DEV-3 Guild And First Market Activated
- The Owner authorized autonomous sequential development through DEV-6 and requested one durable Goal plus a complete morning handoff. DEV-3 is the only active milestone; later milestones advance only after focused verification, commit and push of the earlier boundary.
- DEV-3 stops after two separate first-Market Recruit transactions: the persistent Company advances from two to four owned Recruits, Line capacity remains four, and exact Coin advances from 52 through the two protected prices totaling 28 to 24. No offer is recommended and no combined purchase exists.
DEV-3Afirst adds one migrated authoritative Contract/Market state around the verified Company file. DEV-4 formation/risk, DEV-5 battle/result and DEV-6 second-cycle management remain frozen.
2026-08-17 - DEV-3A Contract Foundation Implemented
- The existing Company store is now schema v2. A validated v1 Company migrates atomically in place while preserving Company ID, both original Recruit records and the DEV-2 creation receipt; no parallel run file is introduced.
- One explicit operation creates the first
CTR-R1-01Contract and its fixed Market together: 52 Coin, Line capacity four, three level-1 base Recruit offers at 14 Coin each, four equipment offers and three battle offers. The Contract receipt, board and available IDs survive restart, duplicate confirm, backup recovery and interrupted-candidate recovery without rerolling. - Focused persistence PASS:
/private/tmp/aetherbound-guild-test-evidence/dev3-contract-foundation-worktree/20260817T164403Z-82290. Focused DEV-2 draft and Company/Guild regression PASS:/private/tmp/aetherbound-guild-test-evidence/dev3-contract-dev2-regression-worktree/20260817T164330Z-80953. Both attempts completed strict diagnostics and full runner cleanup. DEV-3B is now the only active step; no Guild UI or purchase behavior changed in DEV-3A.
2026-08-17 - DEV-3B Guild And Contract Choice Implemented
- Guild now names Contract Board as the available next action and keeps Market
disabled with an exact precondition until Contract creation. The Contract
page presents the persistent opening pair in the painted scene, one unlocked
First Windglass Crossing, four explicit difficulty segments, exact 52 Coin/ Line-capacity-four consequence, Cancel and Create Contract. - Difficulty changes are transient. Cancel returns to the unchanged Guild; Create Contract performs the DEV-3A transaction once, then reaches a bounded Market handoff. Title/Continue and process restart resume that active Market, while returning to Guild exposes Market and prevents a second Contract.
- Focused English/130%-text parsed-touch PASS with ten touches:
/private/tmp/aetherbound-guild-test-evidence/dev3-guild-contract-worktree/20260817T165241Z-93846. The affected DEV-2 Company/Guild behavior and parsed-touch tests PASS at/private/tmp/aetherbound-guild-test-evidence/dev3-guild-dev2-regression-worktree/20260817T165220Z-93616. Strict diagnostics and runner cleanup pass; no Recruit purchase, formation, risk or battle state is created. DEV-3C is now the only active step.
2026-08-17 - DEV-3C Stable Market And Recruit Review Implemented
- The bounded handoff is replaced by one real physical Market ledger. Recruit, equipment and battle segmented categories expose the exact persistent 3/4/3 board. No row is auto-selected or recommended; list activation only selects an offer and updates the attached context, never purchasing or committing risk.
- Recruit context alone opens a separate review with the same stable offer ID,
full unified figure, exact Profession/role, Trait benefit and cost, five
rolled attributes, starting item/effect, level/XP/history, 14-Coin price and
Company 2 -> 3 | Line capacity 4consequence. Cancel restores the same row and focus. Equipment and battle inspection cannot invoke Recruit review. - Focused Chinese/130%-text parsed-touch PASS with seven touches:
/private/tmp/aetherbound-guild-test-evidence/dev3-market-review-worktree/20260817T170042Z-99698. DEV-3B and affected DEV-2 prior-boundary regression PASS at/private/tmp/aetherbound-guild-test-evidence/dev3-market-prior-regression-worktree/20260817T170008Z-99159. Board hash, 52 Coin, two owned Recruits and zero hire receipts remain byte- stable through every inspection and restart. DEV-3D is now the only active step.
2026-08-17 - DEV-3D Atomic First Hires Implemented
- Recruit review now exposes one exact
Recruit · 14 Coinconfirmation only while its stable offer remains available and fewer than two opening hire receipts exist. The Market list remains inspection-only. Success returns to the unselected ledger with a receipt strip; it never chooses the next offer. - Each transaction atomically appends one projected persistent Recruit, removes only that available offer, deducts 14 Coin and writes an operation/intent/ offer/board/resource/Company receipt in the same Company file. Duplicate operation, new-operation recovery retry, conflict, price mismatch, unavailable offer, interrupted candidate and restart paths cannot charge twice.
- Focused domain plus English/130%-text parsed-touch PASS:
/private/tmp/aetherbound-guild-test-evidence/dev3-hire-worktree/20260817T170953Z-12028. Eight touches complete two distinct reviews and receipts, visibly advancingCompany 2 -> 3 -> 4,Coin 52 -> 38 -> 24while Line capacity remains four; the third offer stays inspectable with a truthful opening-phase state. - DEV-3A/B/C and affected DEV-2 regression PASS at
/private/tmp/aetherbound-guild-test-evidence/dev3-hire-prior-regression-worktree/20260817T171027Z-12400. Strict diagnostics and runner cleanup pass. DEV-3E source-bound candidate closure is now the only active step.
2026-08-17 - DEV-3E First Candidate Failed At 760x360
- Candidate source
a0918bc1f618dcd8c43a1bdf4dd524e117305173passed all six DEV-1, six DEV-2 and four DEV-3 behavior/persistence/parsed- touch checks. The first normal-render fixture then found the Market footer aty=310, height52, extending 2 px below the 760x360 viewport. The attempt is retained asFAIL, not a candidate PASS, at/private/tmp/aetherbound-guild-test-evidence/dev3-candidate/20260817T172105Z-25636. - The narrow repair reduces only short-screen Market header, category, row and
footer heights. The same six 760x360/zh_CN/100% states now pass normal render
and layout bounds at
/private/tmp/aetherbound-guild-test-evidence/dev3-visual-fixture0-repair/20260817T172253Z-27023. DEV-3E remains active until a fresh committed source passes the entire matrix.
2026-08-17 - DEV-3 Guild And First Market Candidate Verified
- Final DEV-3 product source:
0da89b848c87013038ffa39c49d451fb2da8e3d1. Source-bound candidate attempt:/private/tmp/aetherbound-guild-test-evidence/dev3-candidate/20260817T172359Z-27922; PASS with archive SHA-256d6b09a763b23932a105bed08eea82a535502886fee52254f38041e7a8f785059. - The attempt covers all six DEV-1, six DEV-2 and four DEV-3 behavior, persistence and parsed-touch markers. Four isolated normal-render processes produce 24 unique Guild/Contract/Market/Recruit-review states at 760x360, 844x390 and 1280x720 across zh_CN/en and 100/130% text. Layout bounds and strict diagnostics pass; the runner removed its complete process group and source/HOME/cache/TMP workspace.
- DEV-3 and DEV-3E are complete. Exact handoff:
ABG DEV-3 candidate ready. Human visual/comprehension/fun, device, package, store and release gates remainOPEN. DEV-4 requires a separately activated durable plan and cannot infer those approvals from this local candidate.
2026-08-18 - DEV-4 Automatic Formation And Risk Activated
- DEV-3 closure source
0b4921b6d8fb5a9d625beb8d856aff8d0e0c541ais pushed, clean and equal to upstream. One stale headless Godot process from the preceding development session was found during activation and its sole process group was terminated before DEV-4 product work began. - The Owner authorized sequential unattended development through DEV-6 with durable progress and a complete morning handoff. DEV-4 alone is active; DEV-5 battle/result and DEV-6 second-cycle management remain frozen until the prior milestone has focused verification, commits, push and closure.
DEV-4Aowns only an in-place formation/risk foundation around the current Company file: deterministic auto-order, exact line semantics, atomic prepared snapshots and three stable risk projections. Runtime Party/risk pages and the battle transaction remain later substeps.
2026-08-18 - DEV-4A Formation And Risk Foundation Implemented
FormationRiskServiceextends the existing schema-v2 Company/Contract file only after both opening hire receipts exist. It derives a stable four-member front-to-rear order, position-0 threat relation, protection/reach/coverage facts and the steady/pressured/elite projections from the persisted 3/4/3 Market; no second run file or battle receipt is created.- Order preview and Reset mutate nothing. Save Order and readiness acceptance use separate operation/intent/receipt hashes and are idempotent across retry; malformed, duplicate, unknown, stale and conflicting inputs leave the prior Company hash unchanged. Backup and interrupted-candidate recovery preserve the complete foundation.
- Focused domain PASS:
/private/tmp/aetherbound-guild-test-evidence/dev4-foundation-worktree/20260817T173807Z-45819. Affected DEV-3 two-hire domain/parsed-touch regression PASS:/private/tmp/aetherbound-guild-test-evidence/dev4-foundation-dev3-regression/20260817T173818Z-46589. Both attempts have strict diagnostics 0 and complete runner cleanup. DEV-4B Party Line is now the only active step.
2026-08-18 - DEV-4B Party Line Implemented
- The completed second hire now enables one real
Establish Linecommand in Market; before that boundary the same visible control states the exact 4/4 requirement. Continue resumes Party Line once its in-place foundation exists. - Four unified Recruit figures stand directly in the painted scene on one
rear-left to front-right cord. The rightmost actor is position
0; selecting an actor then a destination swaps them without drag and immediately updates target, protection, reach and coverage text. Undo, Reset and Back work, while uncommitted previews never change the stored Company hash. - Focused two-language, 130%-text parsed-touch PASS:
/private/tmp/aetherbound-guild-test-evidence/dev4-party-worktree/20260817T175842Z-67702. Four normal-render review states PASS at/private/tmp/aetherbound-guild-test-evidence/dev4-party-capture-worktree/20260817T175724Z-66420. Affected DEV-3 hire regression PASS:/private/tmp/aetherbound-guild-test-evidence/dev4-party-dev3-regression/20260817T175842Z-67703. Save & Review remains visibly disabled with its DEV-4C reason; DEV-4C is now the only active step.
2026-08-18 - DEV-4C Readiness Snapshot Implemented
Save & Reviewnow calls the foundation's atomic order transaction and opens a separate Readiness Review. The page freezes the exact four IDs, position 0, protection/reach/sustain/control coverage, first threat, no-auto-Reserve rule and next-stage knockout return; Revise reloads the saved line without losing it, and Accept Preparation writes one idempotent readiness receipt.- Accepted preparation remains in the same Company/Contract file with 24 Coin, the Market and all earlier receipts unchanged. It creates no battle receipt, risk commitment or simulation checkpoint. Continue after restart resumes the Readiness Review; the later Risk command is visibly disabled with its DEV-4D reason.
- Focused English/Chinese 130%-text parsed-touch PASS:
/private/tmp/aetherbound-guild-test-evidence/dev4-readiness-worktree/20260817T180235Z-73712. Formation, Party Line and DEV-3 hire regressions also pass at/private/tmp/aetherbound-guild-test-evidence/dev4-readiness-foundation-regression/20260817T180254Z-75238,/private/tmp/aetherbound-guild-test-evidence/dev4-readiness-party-regression/20260817T180318Z-77144and/private/tmp/aetherbound-guild-test-evidence/dev4-readiness-dev3-regression/20260817T180254Z-75239. All attempts have strict diagnostics 0 and complete runner cleanup. DEV-4D risk selection is now the only active step.
2026-08-18 - DEV-4D Risk Selection And Commitment Implemented
- Readiness now opens a region-attached Risk Board only after the preparation receipt exists. Three stable options render as one comparison band with distinct pressure marks, not a recommended card wall. No option is selected automatically; selection is local until its commitment preview opens.
- The preview carries the exact accepted party snapshot and compares known threat, uncertainty, entry cost, Coin reward, recovery exposure and current coverage. Cancel returns to the same risk; restart returns to Readiness with no local risk selection. Begin Battle is a real disabled action with a visible DEV-5 boundary and does not create a battle receipt.
- Focused English/Chinese 130%-text parsed-touch PASS:
/private/tmp/aetherbound-guild-test-evidence/dev4-risk-worktree/20260817T181010Z-86834. Three normal-render risk states PASS at/private/tmp/aetherbound-guild-test-evidence/dev4-risk-capture-worktree/20260817T181010Z-86833. Button copy was shortened after the first render exposed 130% ellipsis; the replacement render has completeReadinessandRisk Boardlabels. DEV-4E formation/risk candidate closure is now the only active step.
2026-08-18 - DEV-4 Automatic Formation And Risk Candidate Verified
- Final DEV-4 product source:
62db001e8915873bb0b7632cfe90dd40a847530f. Source-bound candidate attempt:/private/tmp/aetherbound-guild-test-evidence/dev4-candidate/20260817T182401Z-99737; PASS with archive SHA-256615b7803c758e281f4f1342441e1c7d8e2426f6dbf73290d1aaeaf4d4f108bc9. - The attempt covers six DEV-1, six DEV-2, four DEV-3 and four DEV-4 behavior, persistence and parsed-touch markers. Four isolated normal-render processes produce 24 unique Market/Party/Readiness/Risk states at 760x360, 844x390 and 1280x720 across zh_CN/en and 100/130% text. Layout bounds and strict diagnostics pass; the runner removed its complete process group and source/HOME/cache/TMP workspace.
- The first 760x360 development fixture found the three inherited Market category controls at 38 px. DEV-4E raised their stable touch height to 44 px; the same fixture and complete source-bound matrix pass after repair.
- DEV-4 and DEV-4E are complete. Exact handoff:
ABG DEV-4 candidate ready. Human visual/comprehension/fun, device, package, store and release gates remainOPEN. DEV-5 requires a separately activated durable plan and cannot infer those approvals from this local candidate.
2026-08-18 - DEV-5 Battle Result And Recovery Activated
- DEV-4 closure source
6b8b4d4ca867456b56907f93d60fa40e123948fbis pushed, clean and equal to upstream; no owned test processes remain. - The Owner authorized sequential unattended development through DEV-6. DEV-5 is the only active milestone; DEV-6 Company management remains frozen until the first automatic battle, result and next-stage recovery candidate closes.
DEV-5Aowns only an independently authored current battle receipt and deterministic event timeline around the accepted DEV-4 formation/risk state. Historical battle/casualty services remain preserved but cannot be used as current persistence authority.
2026-08-18 - DEV-5A Battle Foundation Implemented
BattleServiceconsumes the exact accepted Party snapshot and one stable risk option to create a single idempotent battle receipt in the existing Contract. A second operation cannot replace it; every phase persists through the same redundant atomic Company store.- The deterministic first-battle timeline is exactly opening, telegraph, guard,
ranged, magic, healing, damage, knockout and result. Pressured risk awards 27
Coin once (
24 -> 51), records one victory for all four participants and one battle-local knockout for the exposed position-0 Recruit. No roster record is removed or replaced. - Next-stage recovery records one receipt, keeps all four stable IDs and their Profession/Trait/equipment facts, returns Contract status to Market and releases the old formation snapshot. Duplicate settlement/recovery cannot duplicate Coin or receipts; backup recovery preserves the terminal state.
- Focused domain PASS:
/private/tmp/aetherbound-guild-test-evidence/dev5-battle-foundation-worktree/20260817T183617Z-16166. DEV-4 foundation/risk and DEV-3 hire regressions PASS at/private/tmp/aetherbound-guild-test-evidence/dev5-foundation-dev4-regression/20260817T183633Z-17719,/private/tmp/aetherbound-guild-test-evidence/dev5-foundation-risk-regression/20260817T183633Z-17721and/private/tmp/aetherbound-guild-test-evidence/dev5-foundation-dev3-regression/20260817T183633Z-17720. All attempts have strict diagnostics 0 and complete runner cleanup. DEV-5B Battle Opening/Live is now the only active step.
2026-08-18 - DEV-5B Battle Opening And Live Implemented
- Risk Commitment now creates the real Battle Opening/Live page. The painted field keeps four compact actors in rear-left to front-right order, a visible enemy-facing contact corridor, disclosed first threat and the causal event rail projected from the DEV-5A receipt. Playback is automatic and deterministic; Pause/Resume and 1x/2x are observation controls, with no combat command prompt or back path after commitment.
- Continue from a persisted Company with an active battle receipt returns to
the same Battle page. The runtime test uses separate deterministic Companies
for
zh_CNandenat 130% text, parsed touch input, and verifies the knockout phase remains active before Result is enabled. - The first implementation used awaited
SceneTreeTimercallbacks and exposed an ObjectDB leak when a Battle Shell was released during playback. Playback now owns a one-shotTimerchild and invalidates its generation on tree exit; strict diagnostics are clean. - Focused PASS:
/private/tmp/aetherbound-guild-test-evidence/dev5-battle-ui-fix/20260818T004251Z-65519. Marker:ABG_DEV5_BATTLE_UI_OK; parsed touch6; strict diagnostics0; runner cleanup removed the complete process group and workspace. DEV-5C Result/Diagnosis is now the only active step.
2026-08-18 - DEV-5C Result And Diagnosis Implemented
- Battle Result now names the objective and outcome, exact
24 -> 51Coin settlement, 27-Coin reward, 48 total XP, 16 XP per surviving Recruit, first decisive damage and the battle-local knockout identity before Continue. The compact causal summary expands into committed order, target, event hash and reward receipt details without adding combat choices. - Result settlement now keeps exactly the authored nine events instead of
appending a duplicate
result. Three surviving Recruits receive 16 XP each; the knocked-out Recruit receives zero XP and retains level, identity, Profession, Trait, equipment and battle history. A repeated settlement keeps Coin 51 and one settlement receipt. - The first 844x390/130%-text render placed Continue partly below the viewport because the full nine-line event list and expanded diagnosis raised the container minimum height. The first viewport now carries a four-node causal chain while technical detail remains expandable; parsed touch reaches Continue without shrinking type.
- Focused English/Chinese 130%-text PASS:
/private/tmp/aetherbound-guild-test-evidence/dev5-result-ui-worktree/20260818T013511Z-8975. Battle foundation, DEV-5B Battle UI and DEV-3 hire/Company regressions PASS at/private/tmp/aetherbound-guild-test-evidence/dev5-result-foundation-regression/20260818T013538Z-9336,/private/tmp/aetherbound-guild-test-evidence/dev5-result-battle-ui-regression/20260818T013538Z-9337and/private/tmp/aetherbound-guild-test-evidence/dev5-result-hire-regression/20260818T013538Z-9338. All attempts have strict diagnostics 0 and complete runner cleanup. DEV-5D Knockout/Recovery is now the only active step.
2026-08-18 - DEV-5D Knockout And Next-Stage Recovery Implemented
- Result Continue now opens Knockout Review. The page names each fallen Recruit's stable identity, Profession, Trait, level/XP, equipment ownership, current-battle absence and the explicit next-stage return rule. Acknowledge is a real committed-consequence action and never implies deletion or same-battle return.
- Recovery is a separate review surface with the unchanged roster and one
atomic
recover_next_stageoperation. Commit retains every Recruit ID, Profession, Trait, level/XP, history and equipment, changes Contract status to Market, removes stale formation state and records one retry-safe recovery receipt. Duplicate recovery returns the original receipt; restart resumes at next-stage Market. - Focused bilingual 130%-text parsed-touch PASS:
/private/tmp/aetherbound-guild-test-evidence/dev5-recovery-ui-worktree/20260818T020349Z-31847. Marker:ABG_DEV5_RECOVERY_OK; parsed touch8; strict diagnostics0; runner cleanup removed the complete process group and workspace. DEV-5E first-cycle candidate is now the only active step.
2026-08-18 - DEV-5E First-Cycle Candidate Verified
- Source-bound candidate source:
05f89ad7e14323d213287e52112ff927ef812f8d. Candidate attempt:/private/tmp/aetherbound-guild-test-evidence/dev5-candidate/20260818T025343Z-77825with archive SHA-256744149b5c3f5c7f0d0e4a52b7ee5e733321a5a94feee716e97a92d12fe673eca. - The fresh archive runs six DEV-1, six DEV-2, four DEV-3, three applicable DEV-4 and four DEV-5 markers. The historical DEV-4 risk-disabled marker is intentionally superseded by the real DEV-5 Risk -> Battle path. Four isolated normal-render processes produce 24 Battle Opening/Live, Result, Knockout, Recovery and next-stage Market states at 760x360, 844x390 and 1280x720 over zh_CN/en and 100/130% text. Parsed touch, 44px controls, no permanent death, next-stage Market and strict diagnostics 0 pass; the runner owns and removes the complete process group and source/HOME/cache/TMP/browser workspace.
- Exact DEV-5 handoff:
ABG DEV-5 candidate ready. Human visual, comprehension/fun, device, package, store and release gates remainOPEN. DEV-6 requires a separately activated durable plan.
2026-08-18 - DEV-6 Durable Plan Activated
- DEV-5 is closed at the exact handoff
ABG DEV-5 candidate ready. DEV-6 is now the only active milestone under a new durable plan; no DEV-6 product code was changed before this activation. DEV-6Aowns the next player-visible boundary only: restart at the recovered Market, inspect sourced equipment, commit one universal-slot purchase/equip, read individual level/XP and restart without duplicate Coin/equipment. Roster detail, dismissal, promotion, Artifacts, second Contract creation and the second battle remain later named substeps.
2026-08-18 - DEV-6A Company Growth Foundation Implemented
- Market Equipment review exposes one sourced item effect, fit, tradeoff and price with four real wearer controls. Unaffordable offers disable every wearer with the exact required/current Coin reason; affordable offers commit one purchase/equip operation.
- The transaction removes one stable offer, changes Coin
24 -> 6, writes one retry-safe equipment receipt, replaces one universal Recruit slot and returns the prior starting item to persistent Company inventory. It preserves every Recruit's stable identity and individual level/XP. Duplicate operations do not charge twice; changed operation/wearer, stale price, unavailable offer and insufficient Coin return explicit errors without partial mutation. - DEV-6A upgrades two obsolete DEV-2 invariants narrowly: a starting item may
move from
equippedtoinventory, and Company revision now counts equipment receipts after Contract/hire creation. All other Company/Recruit validation remains strict. - Focused PASS:
/private/tmp/aetherbound-guild-test-evidence/dev6-growth-worktree/20260818T035436Z-29672. DEV-2 creation, DEV-3 hire and DEV-5 recovery regressions PASS at/private/tmp/aetherbound-guild-test-evidence/dev6-growth-dev2-regression/20260818T035307Z-28768,/private/tmp/aetherbound-guild-test-evidence/dev6-growth-dev3-regression/20260818T035307Z-28767and/private/tmp/aetherbound-guild-test-evidence/dev6-growth-dev5-regression/20260818T035307Z-28769. Strict diagnostics are 0 and runner cleanup is complete. DEV-6B Roster/ Recruit Detail is now the only active step.
2026-08-18 - DEV-6B Roster And Recruit Detail Implemented
- Guild now exposes a real Roster command. Four stable member controls open a selected summary and Recruit Detail with name/ID authority, Profession, Trait, individual level/XP, current equipped item and battle history. Back returns through Roster to Guild without changing Company state.
- Dismiss remains visible on both Roster and Recruit Detail and now opens the explicit DEV-6C consequence review; no silent or premature destructive action is present. Restart resumes the authoritative Market destination and preserves every Recruit fact.
- Focused PASS:
/private/tmp/aetherbound-guild-test-evidence/dev6-roster-worktree/20260818T040436Z-36560. DEV-6A growth and DEV-5 recovery regressions PASS at/private/tmp/aetherbound-guild-test-evidence/dev6-roster-growth-regression/20260818T040503Z-36960and/private/tmp/aetherbound-guild-test-evidence/dev6-roster-recovery-regression/20260818T040503Z-36959. Strict diagnostics are 0 and runner cleanup is complete. DEV-6C Dismissal/ Contract Return is now complete.
2026-08-18 - DEV-6C Dismissal And Contract Return Implemented
- Roster and Recruit Detail now open an explicit dismissal review. The review names the stable Recruit, Profession, Trait and current equipment, states the no-refund consequence, returns the equipped item to inventory and leaves Coin unchanged. Dismissal is restricted to an unfrozen Market and rejects the final live Recruit with an explicit disabled reason.
- Market now exposes a separate Contract Return review. It clearly distinguishes
voluntary withdrawal from Recruit dismissal, preserves Company members,
Coin, levels/XP, equipment and history, and commits one retry-safe receipt to
mark the Contract
returnedbefore handing back to Guild. A conflicting second Return operation is rejected without mutation. - Focused marker
ABG_DEV6_RETURN_OKpasses with explicit confirmation, equipment return, final-member disabled state, parsed touch and strict diagnostics 0 at/private/tmp/aetherbound-guild-test-evidence/dev6-return/20260818T042042Z-47775. DEV-6A growth, DEV-6B roster and DEV-5 recovery regressions also pass via the owned attempt runner with complete process-group cleanup. DEV-6D source- bound candidate verification follows as the final DEV-6 boundary.
2026-08-18 - DEV-6D Second-Cycle Candidate Verified
- The source-bound candidate starts from the persistent four-member Company in the next-stage Market, inspects and commits one sourced equipment upgrade, reads the same roster and Recruit Detail facts, reviews voluntary Contract Return and hands back to Guild. It stops before new battle/content and does not introduce a second Contract, promotion or Artifacts.
- Source-bound candidate source:
96173243765bc7fe897c13bafebf0affa8a033e6. Attempt:/private/tmp/aetherbound-guild-test-evidence/dev6-candidate-final/20260818T043605Z-66692with archive SHA-2567f06d4c89d75689c8851a585245149a1a8d4dc5791c598926aa5f20df3f61862. All DEV-1..5 and DEV-6 markers pass, with parsed touch, 24 normal-render states across the required landscape/localization/text-scale matrix and strict diagnostics 0. The runner removed the complete process group and workspace. - Exact handoff:
ABG DEV-6 CANDIDATE READY. Human visual/comprehension/fun, device, package, store and release gates remainOPEN; no later product scope is activated by this candidate.
2026-08-18 - DEV-3V Content-Surface Visual Repair Candidate
- DEV-1/DEV-2 Boot, Title and initial-choice presentation remain unchanged. DEV-3 Guild, Contract Board, Market, Recruit Review and post-hire Market now use the bright hand-painted field, an open scene frame, field-attached HUD rails and differentiated content commands. The Company/Save/hire semantics are unchanged.
- Source-bound candidate source:
e979af7aeb5de9aead65a13f65429120ad6578d2. Attempt:/private/tmp/aetherbound-guild-test-evidence/dev3v-candidate/20260818T053424Z-20989. All DEV-1/2/3 markers, parsed touch, 24 normal-render states and strict diagnostics 0 pass. The fresh-start H5 visual check is published at the Gallery share URL recorded inCURRENT_CHECKPOINT.md. - DEV-3V remains
IN_PROGRESSuntil the Owner reviews the H5 visual result; DEV-4+ presentation work remains frozen.
2026-08-23 - RSK-001 Accepted; RSK-002 Specification Activated
- The Owner replied
OKafter reviewing the RSK-001 Risk Board Runtime at actual size. The frozen four-member snapshot, three equal sourced options, six risk facts, local selection and truthful no-receipt Review boundary are recorded asCOMPLETEin the page package. The acceptance evidence is kept inpages/RSK-001-risk-board/verification/owner-acceptance.md. - The RSK-001 acceptance closure is pushed in source
9327116. Its focused behavior, normal 100% captures, page preflight and strict diagnostics remain supporting evidence; they do not replace the Owner gate. M06_RSK002_RISK_COMMITMENT_SPECis now the soleIN_PROGRESSstep. The newRSK-002page contract and state matrix are complete, and the v001 AI draft is nowAI_DRAFT; they require the selected risk and frozen Party snapshot to remain readable together, explicit confirmation beforeBegin Battle, one idempotent commitment receipt, and safe handling for stale dependencies, insufficient Coin, invalid options and interrupted resume. Runtime and BAT-001 remain frozen until the design and reconstruction gates are passed.
2026-08-23 - RSK-002 v001 AI Draft Generated
- One authorized GPT-Image-2 2K call generated the independent RSK-002 v001 composition. The draft uses a singular selected-risk relic, one connected six-fact consequence band, four compact Party actors on one physical staging arc and a bottom commitment rail with a disabled Begin Battle slot. It does not copy RSK-001's three-option board layout and contains no intended runtime labels, values or readable text.
- Generation task
task_01M0PDGEAFA46QBJ6VAGV3FV64cost$0.014; the source manifest records the prompt hash, raw download hash and expiring source URL underpages/RSK-002-risk-commitment/drafts/v001/. RSK002-VIS-01isOPEN_OWNER_REVIEW. Owner actual-size visual review is required before deconstruction, asset generation or any Godot Runtime work.
2026-08-23 - RSK-002 v001 Draft Accepted; Deconstruction Activated
- The Owner replied
OKafter reviewing the RSK-002 v001 AI draft at actual size. The singular selected-risk relic, connected six-fact consequence band, frozen four-member Party staging and bottom commitment rail are now the approved composition authority. - The approved master and Owner records are under
pages/RSK-002-risk-commitment/approved/v001/; the source hash remainssha256:6787f1804545710807152166fc83a6da8e4b385c1778945d374016f3b12b1713. This approval authorizes deconstruction only; no asset or Runtime work has started. M06_RSK002_RISK_COMMITMENT_DECONSTRUCTIONis now the soleIN_PROGRESSstep.RSK002-DEC-01is the next Owner gate for layer ownership, engine text slots, normal 100% responsive anchors and transparent hit areas.
2026-08-23 - RSK-002 v001 Deconstruction Package Prepared
- The approved RSK-002 master is now mapped as a coordinate-master hybrid. The package separates painted world, selected-risk relic, frozen four-member Party entities, the six-fact consequence band, the commitment rail and the Settings utility slot. Dynamic labels, values, state reasons, selection and receipt semantics remain engine-owned.
normalized_xywhtext slots and transparent hit areas are recorded underapproved/v001/; the 760x360 contained canvas is treated as 640x360 so all command targets meet the 48px minimum. The deconstruction board and review record are underreconstruction/v001/.RSK002-DEC-01remainsOPEN_DECONSTRUCTION_REVIEW. Owner approval is required before any asset generation, reconstruction package promotion or Godot Runtime work.
2026-08-23 - RSK-002 Deconstruction Accepted; Asset Processing Activated
- The Owner replied
OKafter reviewing the RSK-002 v001 deconstruction board, layer map, text slots and hit-area map at actual size. The package's ownership boundaries and normal 100% anchors are accepted. M06_RSK002_RISK_COMMITMENT_ASSET_GENERATIONis now the soleIN_PROGRESSstep. Asset work is intentionally bounded to cleaning dynamic regions from the approved master and reusing accepted Recruit/command provenance; no new AI asset call or Runtime implementation is authorized by this transition.RSK002-ASSET-01is the next Owner gate for the clean static master, dynamic-region mask, provenance hashes and contact sheet.
2026-08-25 - M31 MVP Release Readiness Activated
- M30 Recovery Controller is closed at source
2556be9; the complete first cycle is now the verified local MVP stopping point. The next bounded step isM31_MVP_RELEASE_READINESS, recorded indocs/plans/M31_MVP_RELEASE_READINESS.mdand reflected inCURRENT_CHECKPOINT.md. - M31 audits the existing Title -> next-stage Market first-cycle path,
persistence/restart, duplicate/negative/recovery boundaries, strict Godot
diagnostics, parsed touch and normal
100%captures at760x360,844x390and1280x720. It may make only the smallest correctness repair proven by a failing check; accepted page visuals and Battle/Economy/Save/Recovery semantics remain frozen. 130%text scale is explicitly outside the current automated release- readiness gate and is not a blocker. Device, package, iOS, signing, store, release and uncoached human comprehension/fun acceptance remain separate Owner-authorized gates.- M31-B closes without a first-cycle product defect. The exploratory DEV-6
second-cycle candidate is retained as
M31-I03because its legacy test expects a removedMarketReturnContractcontrol; second-cycle repair is not part of the current MVP release-readiness gate. - M31-C closes with normal
100%representative-state inspection and no release-blocking visual defect. Human visual/comprehension, audio listening, device, package/signing, store and release gates remain open. - M31-D closes the local MVP release-readiness boundary. No new product scope is activated by this closure; the next implementation requires an explicit Owner-authorized plan for iOS packaging or a separate second-cycle goal.
2026-08-25 - M32 Page View Architecture Refactor Activated
- The Owner requested a durable architecture for future expansion, module
isolation, runtime stability and easier implementation, and explicitly asked
that page View construction be split out of
entry_shell.gd. The sole active plan isM32_PAGE_VIEW_ARCHITECTURE_REFACTOR, recorded indocs/plans/M32_PAGE_VIEW_ARCHITECTURE_REFACTOR.md. - The target is a layered Passive View + Presenter/ViewData + Application/Domain Service + explicit Router/Context flow. Views own only Godot nodes, layout, focus and intent emission; Controllers/Presenters own copied view data and command eligibility; Domain Services remain the only mutation/receipt/Save authority. New Views and Controllers must not import the historical facade, Save or a global event bus.
- M32-A freezes the migration order and the Recovery pilot acceptance surface before Runtime product changes. The pilot must preserve the accepted OUT-004 visuals, input, localization and persistence semantics; later page extraction remains separately bounded.
- M32-A closes at source
9bde014. M32-B is now the only active step and may add only the UI-only PageView/PageContext contract plus the bounded OUT-004 Recovery View extraction described in the durable plan. - M32-B closes at source
23924a2. The extracted Recovery capture is byte-equivalent to the pre-migration baseline at 760x360, 844x390 and 1280x720 in zh_CN/en; M32-C is now the sole active verification step. - M32-C closes at source
088f46b. The source-bound View contract, DEV-5 candidate and full MVP first-cycle audit pass with exact-once markers, strict diagnostics0, parsed touch, owned cleanup and 128 normal 100% frames. The focused equivalence record isdocs/runtime/M32_PAGE_VIEW_ARCHITECTURE_VISUAL_AUDIT.md. M32-D is now the sole active handoff step; no claim is made that every View has been split. - M32-D closes at source
088f46b. The Recovery pilot, boundary audit and ordered next-extraction map are complete. The next page migration requires a new explicitly activated durable plan; no new gameplay or visual scope is opened by M32.
2026-08-25 - M33 Reward Choice Page View Refactor Activated
- The Owner asked to continue splitting page Views after the M32 Recovery
pilot.
M33_REWARD_CHOICE_PAGE_VIEW_REFACTORis now the sole active plan indocs/plans/M33_REWARD_CHOICE_PAGE_VIEW_REFACTOR.md. - M33 targets only OUT-003 Reward Choice. It preserves the M29-accepted
deterministic options, paid Coin, selected detail, Claim/Skip receipts and
Recovery continuation.
ABGRewardChoicePageViewwill own Godot nodes and intent emission; EntryShell remains the composition root; Controller and BattleService remain the data and transaction authorities. - M33-A freezes the current composition, presentation-ready equipment-name input and forbidden imports before Runtime product code changes. Result, Knockout, Recovery, Market and Battle Views remain outside this plan.
- M33-A closes at source
331db7d. M33-B is now the only active step and may add only the UI-only Reward Choice View plus its explicit intent wiring. - M33-B closes at source
3d477ef. The extracted Reward Choice View preserves the accepted node tree, explicit Claim/Skip/selection intents and normal capture pixels; M33-C is now the sole active verification step. - M33-C closes at source
f609464. The source-bound View contract, controller/runtime regressions, DEV-5 candidate and full MVP audit pass with exact-once markers, strict diagnostics0, parsed touch and 128 normal frames. Reward Choice captures are byte-equivalent to the M29 baseline; the report isdocs/runtime/M33_REWARD_CHOICE_PAGE_VIEW_VISUAL_AUDIT.md. - M33-D closes at source
f609464. Reward Choice View extraction, boundary audit and the ordered next-extraction map are complete. The next page migration requires a new explicitly activated durable plan; M33 opens no new gameplay or visual scope.
2026-08-25 - M34 Knockout Review Page View Refactor Activated
- M33 Reward Choice View is closed. The next Owner-requested architecture
milestone is
M34_KNOCKOUT_REVIEW_PAGE_VIEW_REFACTOR, with its durable plan underdocs/plans/. - M34 is limited to extracting OUT-002 Knockout Review into a passive
ABGKnockoutReviewPageView. The accepted M28 composition, member portrait and identity text, battle-local gap, Back/Acknowledge controls and continuation routes remain frozen. - M34-A is complete at source
9bbdbb9, freezing the dependency direction, forbidden imports,_readiness_member()presentation treatment, exact node names and normal100%M28 capture-equivalence target before product code. - M34-B is complete at source
7a4c1ca(product integration; docs recorded atd6208d8): the UI-only Knockout Review View and explicit deferred EntryShell intent wiring preserve the accepted page. M34-C is complete at source4c7a0ac; M34-D closes at source5b811fbwith the final handoff. No Battle, Economy, Save, localization, packaging or 130% scope is opened.
2026-08-25 - M34 Knockout Review View Verification Complete
- M34-C passes at source
4c7a0ac55b2825ccf3d24ebac6ebb9e33e1267ef. The source-bound View contract, M28/M29/M30 controller and M12/DEV-5 route regressions, DEV-5 candidate and full MVP first-cycle audit all pass with exact-once markers, strict diagnostics0, parsed touch, owned cleanup and normal100%frames. - The four Knockout Review captures are byte-identical to the M28 baseline.
See
docs/runtime/M34_KNOCKOUT_REVIEW_PAGE_VIEW_VISUAL_AUDIT.md. - M34-D closes at source
5b811fbwith the source-bound audit, byte-level equivalence record and ordered next-extraction map. No next page migration is activated here; a new durable plan is required.
2026-08-25 - M34 Knockout Review View Pilot Closed
- M34-D closes at source
5b811fb. OUT-002 Knockout Review is now a passiveABGKnockoutReviewPageViewwith explicit deferredback/acknowledgeintents; controller, settlement, Reward/Recovery routes and Battle semantics remain unchanged. - The source-bound contract, regressions, DEV-5 candidate, MVP audit and
four-fixture byte-equivalence evidence are recorded in
docs/runtime/M34_KNOCKOUT_REVIEW_PAGE_VIEW_VISUAL_AUDIT.md. - M34 is complete. At closure no later migration was active; M35 is now separately activated under its own Owner-authorized durable plan.
2026-08-25 - M35 Battle Result Page View Refactor Activated
- M34 Knockout Review View is closed. The next Owner-requested architecture
milestone is
M35_BATTLE_RESULT_PAGE_VIEW_REFACTOR, with its durable plan underdocs/plans/. - M35 is limited to extracting OUT-001 Battle Result into a passive
ABGBattleResultPageView. The accepted M27 composition, outcome/causal facts, diagnosis toggle, Continue target and downstream routes remain frozen. - M35-A is the sole
IN_PROGRESSstep. It freezes the dependency direction, forbidden imports, exact node names, UI-only formatting boundary and normal100%M27 capture-equivalence target before product code. No Battle, Economy, Save, localization, packaging or 130% scope is opened.
2026-08-25 - M35 Battle Result View Extraction Started
- M35-A closes at source
37d1731, freezing the OUT-001 Result composition, UI-only formatting boundary, exact node names, forbidden imports and M27 normal-capture equivalence target. - M35-B is now the sole
IN_PROGRESSstep and may add onlyABGBattleResultPageViewplus deferreddiagnosis/continueintent wiring. Settlement, Reward/Knockout/Recovery routes, Save and visual semantics remain frozen.
2026-08-25 - M35 Battle Result View Verification Complete
- M35-B/C pass at source
7ba4326c508d500d41ec115415833bdd0cf697ae. The source-bound View contract, M27/M28/M29/M30 controller and M12/DEV-5 route regressions, DEV-5 candidate and full MVP first-cycle audit all pass with exact-once markers, strict diagnostics0, parsed touch, owned cleanup and normal100%frames. - The four Battle Result captures are byte-identical to the M27 baseline. See
docs/runtime/M35_BATTLE_RESULT_PAGE_VIEW_VISUAL_AUDIT.md. - M35-D closes at source
4a2bb82with the source-bound audit, byte-level equivalence record and final handoff. At closure no later page migration was active; a new durable plan is required for further extraction.
2026-08-25 - M35 Battle Result View Pilot Closed
- M35-D closes at source
4a2bb82. OUT-001 Battle Result is now a passiveABGBattleResultPageViewwith explicit deferreddiagnosis/continueintents; controller, settlement, Reward/Knockout/Recovery routes and Battle semantics remain unchanged. - The source-bound contract, regressions, DEV-5 candidate, MVP audit and
four-fixture byte-equivalence evidence are recorded in
docs/runtime/M35_BATTLE_RESULT_PAGE_VIEW_VISUAL_AUDIT.md. - M35 is complete. Any further View migration requires a new Owner-authorized durable plan.
2026-08-25 - M36 Risk Commitment Page View Refactor Activated
- M35 Battle Result View is closed. The next Owner-requested architecture
milestone is
M36_RISK_COMMITMENT_PAGE_VIEW_REFACTOR, recorded indocs/plans/M36_RISK_COMMITMENT_PAGE_VIEW_REFACTOR.md. - M36 is limited to extracting the RSK-002 Risk Commitment page into a passive
ABGRiskCommitmentPageView. The accepted custom 16:9 normalized composition, static master, six consequence facts, complete frozen Party, acknowledgement boundary, disabled Begin Battle state and settings access remain frozen. - M36-A is the sole
IN_PROGRESSstep. It freezes the dependency direction, forbidden imports, exact semantic node names, six-intent boundary and M24 normal-capture equivalence target before Runtime product code. Readiness, Risk Board and later preparation Views remain outside this plan.
2026-08-25 - M36 Risk Commitment View Extraction Started
- M36-A closes at source
e9ab79d, freezing the RSK-002 custom 16:9 composition, static-master boundary, exact semantic node names, six-intent command boundary, forbidden imports and M24 normal-capture equivalence target. - M36-B is the next bounded product step and may add only
ABGRiskCommitmentPageViewplus deferred EntryShell intent wiring. Risk, Formation, Battle, Save, localization and visual semantics remain frozen.
2026-08-25 - M36 Risk Commitment View Product Integration Complete
- M36-B completes the passive
ABGRiskCommitmentPageViewextraction. The normalized 16:9 canvas, static master, four frozen Party portraits, six consequence facts, command rail and deferred six-intent boundary are now owned by the View; EntryShell remains the composition root. - The former Risk Commitment UI builder/helpers were removed from
entry_shell.gd. Controller, FormationRiskService, BattleService, receipt, Save and route semantics remain unchanged. M36-C is now the soleIN_PROGRESSstep for focused verification and visual equivalence.
2026-08-25 - M36 Risk Commitment View Verification Complete
- M36-C passes at source
26190debe41f1eab2863991807769ee779146b25. The source-bound View contract, M24/controller and route regressions, DEV-4 candidate and full MVP first-cycle audit all pass with exact-once markers, strict diagnostics0, parsed touch, owned cleanup and normal100%frames. - The four Risk Commitment captures are byte-identical to the M24 baseline at
760x360/zh_CN,844x390/en,1280x720/zh_CNand1280x720/en. Evidence is recorded indocs/runtime/M36_RISK_COMMITMENT_PAGE_VIEW_VISUAL_AUDIT.md. - M36-D is now the sole
IN_PROGRESShandoff step; no Readiness or later preparation View migration is included.
2026-08-25 - M36 Risk Commitment View Pilot Closed
- M36-D closes at source
3a82056. RSK-002 Risk Commitment is now a passiveABGRiskCommitmentPageViewwith explicit deferred six-intent wiring; Risk, Formation, Battle, Save, receipt, localization and visual semantics remain unchanged. - The source-bound contract, regressions, DEV-4 candidate, MVP audit and
four-fixture byte-equivalence evidence are recorded in
docs/runtime/M36_RISK_COMMITMENT_PAGE_VIEW_VISUAL_AUDIT.md. - M36 is complete. The next extraction is Readiness and requires a separate Owner-authorized durable plan; no later migration is active.
2026-08-25 - M37 Readiness Page View Refactor Activated
- M36 Risk Commitment View is closed. The next Owner-requested architecture
milestone is
M37_READINESS_PAGE_VIEW_REFACTOR, recorded indocs/plans/M37_READINESS_PAGE_VIEW_REFACTOR.md. - M37 targets only PTY-002 Readiness Review. It preserves the accepted custom
16:9 composition, static master, complete four-member formation,
PartyLineTrackcord/effects layering, coverage/warning/receipt facts, command eligibility, focus order and normal100%presentation. - M37-A is complete at source
8fc239f, freezing the PTY-002 composition, dependency direction, exact node/layer contract, seven-intent boundary and M22 normal-capture equivalence target. M37-B is complete at sourcea83963f: the passive Readiness View, deferred seven-intent wiring and isolated View contract are integrated; existing Readiness behavior passes and all four normal fixtures are pixel-equivalent to the M22 baseline. M37-C is complete at source7da8d05with source-bound regressions, candidate/audit evidence, strict diagnostics0and four-fixture byte-equivalence recorded indocs/runtime/M37_READINESS_PAGE_VIEW_VISUAL_AUDIT.md. M37-D is now the soleIN_PROGRESShandoff step; Party Line, Risk Board, Battle, Economy, Save and 130% scope remain frozen.
2026-08-25 - M37 Readiness Page View Pilot Closed
- M37-D closes at source
6c9259b. PTY-002 Readiness Review is now a passiveABGReadinessPageViewwith deferred seven-intent wiring; FormationRiskService, readiness receipts, Party/Risk routes, Save and visual semantics remain unchanged. - The source-bound contract, focused regressions, DEV-4 candidate, MVP audit,
normal capture set and four-fixture byte-equivalence evidence are recorded
in
docs/runtime/M37_READINESS_PAGE_VIEW_VISUAL_AUDIT.md. - M37 is complete. No later View migration is active; a separate durable plan is required for the next extraction.
2026-08-25 - M38 Risk Board Page View Refactor Activated
- M37 Readiness View is closed. The next Owner-requested architecture
milestone is
M38_RISK_BOARD_PAGE_VIEW_REFACTOR, recorded indocs/plans/M38_RISK_BOARD_PAGE_VIEW_REFACTOR.md. - M38 targets only RSK-001 Risk Board. It preserves the accepted custom 16:9
composition, static master, frozen four-member Party header, three sourced
options, no-auto-selection boundary, local selection, Review/Back/Settings
commands, focus order and normal
100%presentation. - M38-A is complete at source
5fca587, freezing the RSK-001 composition, dependency direction, exact node/option contract, four-intent boundary and M23 normal-capture equivalence target. M38-B is complete at sourceeea6b8e: the passive Risk Board View is mounted from EntryShell, the former Risk Board UI builders are removed, and deferredselect_risk/review/back/settingsintents preserve the existing application boundary. M38-C is complete: source-bound View/controller/route regressions, the DEV-4 candidate and full MVP first-cycle audit pass with strict diagnostics0, and all four normal100%Risk Board captures are byte-equivalent to the M23 baseline. Evidence is recorded indocs/runtime/M38_RISK_BOARD_PAGE_VIEW_VISUAL_AUDIT.md. M38-D closes at sourcec62b86d; no later View migration is active, and Risk Commitment, Battle, Economy, Save, packaging and 130% scope remain frozen until a new owner-authorized plan is activated.
2026-08-25 - M38 Risk Board Page View Pilot Closed
- M38-D closes at source
c62b86d. RSK-001 Risk Board is now a passiveABGRiskBoardPageViewwith deferred four-intent wiring; controller-owned snapshots, local risk selection, Risk Commitment handoff, FormationRiskService semantics and Save boundaries remain unchanged. - The source-bound contract, focused regressions, DEV-4 candidate, MVP audit,
normal capture set and four-fixture byte-equivalence evidence are recorded
in
docs/runtime/M38_RISK_BOARD_PAGE_VIEW_VISUAL_AUDIT.md. - M38 is complete. No later View migration is active; a separate durable plan is required for the next extraction.
2026-08-25 - M39 Party Line Page View Refactor Activated
- M38 Risk Board View is closed. The next Owner-requested architecture
milestone is
M39_PARTY_LINE_PAGE_VIEW_REFACTOR, recorded indocs/plans/M39_PARTY_LINE_PAGE_VIEW_REFACTOR.md. - M39 targets only the accepted Party Line preparation page. It preserves the
custom 16:9 master, four-member rear-left/front-right line,
PartyLineDiagram, cord/effects tracks, preview-only swaps, Undo/Reset/ Save/Back commands and normal100%presentation. FormationRiskService, Save/Readiness/Risk semantics, packaging and 130% scope remain frozen. - M39-A is complete at source
dfddb17, freezing the Party Line normalized canvas, static master, diagram/track layer contract, exact node names and five-intent boundary. M39-B is complete at source0d59caa: the passive Party Line View is mounted from EntryShell, the former Party Line master builders/helpers are removed, and deferredselect_member/undo/reset/save/backintents preserve the existing application boundary. The focused View contract and DEV-4 Party regression pass with strict diagnostics0. M39-C is complete: source-bound View/controller/route regressions, the DEV-4 candidate and full MVP first-cycle audit pass with strict diagnostics0, and opening/preview-swap Party Line captures are byte-equivalent to the M21 baseline at all four fixtures/locales. Evidence is recorded indocs/runtime/M39_PARTY_LINE_PAGE_VIEW_VISUAL_AUDIT.md. M39-D closes at sourcecf14bc8; no later View migration is active.
2026-08-25 - M39 Party Line Page View Pilot Closed
- M39-D closes at source
cf14bc8. Party Line is now a passiveABGPartyLinePageViewwith deferred five-intent wiring; FormationRiskService, preview-only swaps, Save/Readiness handoff, formation rules and route semantics remain unchanged. - The source-bound contract, focused regressions, DEV-4 candidate, MVP audit,
normal capture set and eight-state/four-fixture byte-equivalence evidence
are recorded in
docs/runtime/M39_PARTY_LINE_PAGE_VIEW_VISUAL_AUDIT.md. - M39 is complete. No later View migration is active; a separate durable plan is required for the next extraction.
2026-08-25 - M40 Recruit Review Page View Refactor Activated
- M39 Party Line View is closed. The next Owner-requested architecture
milestone is
M40_RECRUIT_REVIEW_PAGE_VIEW_REFACTOR, recorded indocs/plans/M40_RECRUIT_REVIEW_PAGE_VIEW_REFACTOR.md. - M40 is limited to extracting SHP-002 Recruit Review into a passive
ABGRecruitReviewPageView. The accepted portrait-led static master, stable offer identity, Profession/Trait/attribute/item/history facts, Company/Line impact, sourced price, Hire eligibility, same-offer Cancel return and normal100%presentation remain frozen. - The approved invisible
RecruitReviewSettingshit area is included only as a non-visual intent boundary; it may not alter the accepted captures. GuildContractService remains the Hire/receipt authority and EntryShell remains the composition root. - M40-A is complete at source
24579e6; it freezes the dependency direction, forbidden imports, exact semantic node names, three deferred intents (cancel,hire,settings) and M18 normal-capture equivalence target. - M40-B is complete at source
0cf4ffb:ABGRecruitReviewPageViewnow owns the static master, portrait/detail presentation and command hit areas; EntryShell remains the composition root and translates only deferred intents. The former Recruit Review UI builder is removed, and controller, transaction, Market and return-route semantics remain unchanged. - M40-C is complete at source
4f995d2: the View contract, M18/SHP-002/Market/Hire regressions, DEV-3 candidate and full MVP audit pass with strict diagnostics0; the four normal Recruit Review captures are byte-equivalent to the M18 baseline. Evidence is recorded indocs/runtime/M40_RECRUIT_REVIEW_PAGE_VIEW_VISUAL_AUDIT.md. - M40-D closes at source
9da7cacwith the source-bound audit, four-fixture byte-equivalence and scope boundary recorded indocs/runtime/M40_RECRUIT_REVIEW_PAGE_VIEW_VISUAL_AUDIT.md. M40 is complete; Market, Contract Choice, Guild, Battle, Economy, Save, packaging, release and 130% scope remain outside this plan and require a new owner-authorized plan.
2026-08-26 - M41 Market Page View Refactor Activated
- M40 Recruit Review View is closed. The next Owner-authorized architecture
milestone is
M41_MARKET_PAGE_VIEW_REFACTOR, recorded indocs/plans/M41_MARKET_PAGE_VIEW_REFACTOR.md. - M41 targets only the accepted SHP-001 Market surface. It preserves the
matte/normalized 16:9 canvas, static master,
MarketLayoutidentity, Company/Line/Coin and board facts, Recruit/Equipment/Battle category rails, stable offer selection, inspect-only review/route boundaries, Back and Settings context and normal100%presentation. - M41-A closes at source
ef29bdc: the 2048x1152 clean master, contained 16:9 canvas,MarketLayoutwrapper, frozen semantic node names, normalized hit/focus anchors and Controller/ViewData boundary are recorded. - M41-B closes at source
9a440b3:ABGMarketPageViewowns the accepted matte/master/canvas, offer presentation and focus; EntryShell translates only explicit deferred intents and the former Market UI builders are removed. Controller, M09 Runtime, M10 Recruit Review, DEV-3 Market and Hire focused checks pass with strict diagnostics0. M41-C is now the soleIN_PROGRESSstep for source-bound candidate, MVP and visual-equivalence verification.
2026-08-26 - M41 Market Page View Verification and Handoff Complete
- M41-C passes at source
b88b211508e5f72b350835872119692e2324859c. The isolatedABGMarketPageViewcontract, Market/Recruit Review controller and runtime regressions, Hire and downstream route checks, DEV-3 candidate and full MVP first-cycle audit all pass with exact-once markers, strict diagnostics0, parsed touch and owned workspace/process cleanup. - The accepted M41 Market capture set is retained at
m41-market-capture-final/20260826T004255Z-2253with evidence archive SHA-256babffdb460420fb2b3b750255cec20ffbeeb3b0385f723306e4627707f58bfb8. The immutable baseline capture from8d377f0is retained atm41-market-baseline/20260826T004644Z-6065with archive SHA-256625dd42ca41bdc918ef315cd22fa5455edf0a19e8ae33dbbc2b86ef6fe9610fd. All four normal100%fixtures (760x360/zh_CN,844x390/en,1280x720/zh_CN,1280x720/en) are byte-identical with zero decoded pixel differences. Full evidence is recorded indocs/runtime/M41_MARKET_PAGE_VIEW_VISUAL_AUDIT.md. - M41-D closes at source
b88b211. SHP-001 Market is now a passiveABGMarketPageViewwith explicit deferred intents; Controller, GuildContractService, Hire/economy, Save, localization, review routes and Battle semantics remain unchanged. M41 is complete. Contract Choice, Guild, later Battle work, second-cycle systems/content, device/package/signing, store and human comprehension/fun gates remain outside this plan and need a new Owner-authorized plan or gate.
2026-08-26 - M42 Contract Choice Page View Refactor Activated
- M41 Market View is closed. The next bounded architecture slice is
M42_CONTRACT_CHOICE_PAGE_VIEW_REFACTOR, recorded indocs/plans/M42_CONTRACT_CHOICE_PAGE_VIEW_REFACTOR.md. - M42-A was the sole active step at activation. It froze the existing Contract Choice
framed composition, Company/recruit presentation, First Windglass Crossing
facts, four difficulty segments, local selection, Confirm/Cancel boundary,
exact semantic node names, forbidden View dependencies and the M19 normal
100%capture-equivalence target before product code. - The existing
ABGContractChoicePageControllerandGuildContractService.create_contractremain the view-data and transaction authorities. M42 must not change Contract, economy, Save, Guild, Market or localization semantics; no visible Settings control is added by this plan.
2026-08-26 - M42 Contract Choice View Extraction Started
- M42-A closes at the activation boundary. The Contract Choice node tree,
focus/touch inventory, copied Controller snapshot and explicit
select_difficulty/confirm/backintents are frozen before Runtime code. - M42-B is now the sole active step. It adds only the passive
ABGContractChoicePageViewand deferred EntryShell intent translation; Contract creation, difficulty validation, Save, Guild/Market routes and localization semantics remain outside the extraction.
2026-08-26 - M42 Contract Choice View Extraction Complete
- M42-B closes at source
885506f.ABGContractChoicePageViewnow owns the framed Contract Choice composition, Company portraits, local difficulty controls, focus and explicit intents; EntryShell remains the application boundary for selection, confirmation and return. - M42-C was the sole active step for strict source-bound regressions, candidate coverage, full first-cycle audit and four-fixture capture equivalence against the M19 baseline.
2026-08-26 - M42 Contract Choice View Verification Complete
- M42-C closes at source
da94e8a. The isolated View contract, M19/DEV-3 regressions, source-bound candidate and full MVP first-cycle audit all pass with strict diagnostics0, exact-once markers and owned cleanup; the four normal100%Contract Choice captures are byte-equivalent to the M19 baseline. Evidence is recorded indocs/runtime/M42_CONTRACT_CHOICE_PAGE_VIEW_VISUAL_AUDIT.md. - M42-D became the sole active step for the bounded handoff and checkpoint closure. No new gameplay, economy, Save, packaging or release work was authorized by this milestone.
2026-08-26 - M42 Contract Choice View Pilot Closed
- M42-D closes at source
da94e8a. The source-bound audit records the View contract, regressions, candidate suite, full MVP first-cycle audit, strict diagnostics0, exact-once markers, owned cleanup and four-fixture normal100%byte-equivalence to the M19 baseline. - Contract Choice is now a passive
ABGContractChoicePageViewwith deferredselect_difficulty/confirm/backintents. Controller, Contract service, Guild/Market routing, economy, Save and localization semantics are unchanged. M42 is complete; no later migration is active.
2026-08-26 - M43 Guild Page View Refactor Activated
- M42 Contract Choice View is closed at source
975c77d. The next bounded architecture slice isM43_GUILD_PAGE_VIEW_REFACTOR, recorded indocs/plans/M43_GUILD_PAGE_VIEW_REFACTOR.md. - M43-A was the sole active step at activation. It froze the live HUB-001 layered Guild
desk (
GuildMasterWorldExtension/GuildMasterDesignCanvas/GuildMasterLayeredWorld), fixed top/bottom rails, Company/status/kiosk presentation, truthful empty/active/returned Contract states, focus/touch targets and the eight explicit destination/utility intents before product code. GuildPageController.snapshot()remains the view-data authority and the existing EntryShell application/service boundaries remain authoritative for routing, Contract, Market, Party, Risk, persistence and current Company. M43 changes no gameplay, economy, Save, localization or visible Guild semantics; normal100%landscape is the blocking visual scope and130%remains non-blocking.
2026-08-26 - M43 Guild Page View Extraction Started
- M43-A closes at the activation boundary. The source-bound HUB-001 baseline
(
m43-guild-baseline/20260826T014743Z-34444, source975c77db2aa742189fca1edf4c066ab66370c252) passes the layered Guild, Contract and four-fixture normal capture checks with strict diagnostics0; evidence archive SHA-256 isc8c9c017bbca46eb6fdc2d148af019e4981f4dfcd5102f556215159d8f8ec958. - M43-B is now the sole active step. It adds only the passive
ABGGuildPageViewand deferred utility/destination intent translation;GuildPageController, current Company, routing, Contract/Market/Party/Risk, persistence, gameplay and localization semantics remain outside the extraction.
2026-08-26 - M43 Guild Page View Extraction Complete
- M43-B closes at source
5220acb.ABGGuildPageViewnow owns the live HUB-001 layered world, contained 16:9 canvas, segmented rails, actor/kiosk presentation, engine text, focus and hit areas. EntryShell remains the composition root and translates only the eight explicit utility/destination intents (title,settings,roster,equipment,party,risk,contract,market). - The Guild Controller snapshot, current Company, route/application services, Contract/Market/Party/Risk transactions, persistence, gameplay, economy, Save and localization semantics remain unchanged. Historical compatibility and Godot metadata are retained by repository contract.
- M43-C is now the sole active verification step. The accepted HUB-001
capture family and normal
100%blocking scope remain frozen;130%text scale is non-blocking.
2026-08-26 - M43 Guild Page View Verification Complete
- M43-C passes at source
5220acbin the corrected source-bound focused attemptm43-guild-view-focused-v2/20260826T021613Z-65045. The isolated View contract, M20 Guild controller/runtime, DEV-3 Contract/Market/Hire, M09/M10 regressions, layered reconstruction and HUB-001 candidate all pass with exact-once required markers, strict diagnostics0, 24 normal-render captures and owned workspace/process cleanup. Evidence archive SHA-256:19cdb8eb77af91d103ece5d02d6d9072fab96a87544139814b2a2898396ca57e. - The source-bound full MVP first-cycle audit
m43-mvp-audit-v2/20260826T022147Z-70440passesABG_M43_GUILD_VIEW_CONTRACT_OKandABG_MVP_FIRST_CYCLE_AUDIT_OKexactly once, with 128 normal100%frames, parsed touch/restart coverage, strict diagnostics0and owned workspace/process cleanup. Evidence archive SHA-256:da5cee766bc47a278e02b654a1035644cb7cbf575609787615a566d2e54314f1. - All 24 capture files in the M43-A baseline
(
m43-guild-baseline/20260826T014743Z-34444, archive SHA-256c8c9c017bbca46eb6fdc2d148af019e4981f4dfcd5102f556215159d8f8ec958) and corrected M43 candidate are byte-identical with zero decoded-pixel differences. The four-fixture family preserves the two blocking100%fixtures and two retained130%supplemental fixtures. - M43-D is complete at source
710dc6b; the Guild View pilot is closed. No gameplay, economy, Save, packaging or release work is authorized by this milestone, and no later migration is active.
2026-08-26 - M43 Guild View Pilot Closed
- M43-D closes at source
710dc6b. The durable plandocs/plans/M43_GUILD_PAGE_VIEW_REFACTOR.mdand checkpoint now mark M43COMPLETEwith no later migration active. ABG M43 GUILD VIEW PILOT COMPLETEis the handoff record. The accepted Guild composition and all application/domain boundaries remain unchanged; future page migrations require a separate owner-authorized plan.
2026-08-26 - M44 Company Page View Refactor Activated
- M43 Guild View is closed at source
710dc6b; the next Owner-authorized architecture slice isM44_COMPANY_PAGE_VIEW_REFACTOR, recorded indocs/plans/M44_COMPANY_PAGE_VIEW_REFACTOR.md. - M44 targets only the existing DEV-6 Roster and Recruit Detail surfaces.
ABGCompanyPageControllerremains the copied-facts authority while the passive Views will own only Godot composition, local formatting, portraits, focus and explicit selection/detail/dismiss/back intents. - Dismissal Review, voluntary Contract Return, Company/Market/Contract
transactions, Save, economy, accepted MVP pages, assets, packaging and
release remain frozen. Normal
100%landscape is the blocking visual scope;130%text scale is supplemental and non-blocking. - At activation, M44-A was the sole
IN_PROGRESSstep. The immutable baseline was bound to source93164c8before any Company View product code changes; the next ledger entry records its completion and M44-B activation.
2026-08-26 - M44 Company Baseline Complete; View Extraction Started
- M44-A closes at the activation/baseline boundary. The successful
source-bound attempt
m44-company-baseline/20260826T032132Z-32104uses source93164c87b845d3f0d6f1b64b6d1b06e7c4b8d66dand archive SHA-25643028f703434b5fe59a97153635b4a4500623ce7ee317c550c08b74699bcb86d.ABG_M16_COMPANY_PAGES_OK,ABG_DEV6_ROSTER_OKandABG_M16_COMPANY_CAPTURE_OKeach appear exactly once; strict diagnostics are0, eight normal100%captures, parsed touch and owned cleanup pass. - The fresh-archive import failure is retained as a harness failure only; it is not acceptance evidence. The accepted baseline imports Godot resources before running tests.
- M44-B is now the sole
IN_PROGRESSstep. It adds only the passive Roster and Recruit Detail Views plus deferred EntryShell intent translation; Company, dismissal, Contract, Market, Save, economy and route semantics remain frozen.
2026-08-26 - M44 Company View Extraction Complete; Verification Started
- M44-B closes at source
19bf1392ce72f744e0fc9de79ef6393d5f165b9b.ABGCompanyRosterPageViewandABGRecruitDetailPageViewnow own only the existing Roster/Recruit Detail node construction, local presentation, portraits, focus and hit areas. EntryShell translates only the documented deferred selection/detail/dismiss/back intents; the Company controller, dismissal transaction/review, Contract/Market, Save and route boundaries remain authoritative and unchanged. - The source-bound focused attempt
m44-company-view-focused/20260826T041010Z-79337passesABG_M44_COMPANY_PAGE_VIEW_CONTRACT_OK,ABG_M16_COMPANY_PAGES_OK,ABG_DEV6_ROSTER_OK,ABG_DEV6_GROWTH_OK,ABG_DEV5_RECOVERY_OKandABG_M12_OUTCOME_RECOVERY_DOMAIN_OKexactly once with strict diagnostics0, parsed touch coverage and complete owned cleanup. It is the focused prerequisite for M44-C. - M44-C is now the sole
IN_PROGRESSstep for the source-bound DEV-6 candidate, full MVP first-cycle audit and four-fixture normal100%Roster/Recruit Detail capture comparison.M44-I01records the existing Contract Return test failure at the M44-A baseline as a known, out-of-scope second-cycle issue; no M44 product scope expands to repair it.
2026-08-26 - M44 Company View Verification Complete
- M44-C closes at source
687160dd17c1af8b40163af9a060d7792a0d52a2. The source-bound View contract, M16/DEV-6 Company, equipment and recovery regressions pass with strict diagnostics0, exact-once markers, parsed touch and owned cleanup. The full MVP first-cycle audit also passesABG_MVP_FIRST_CYCLE_AUDIT_OKexactly once with 128 normal100%frames and 180 evidence files. - The source-bound Company capture attempt
m44-company-capture-final/20260826T042045Z-21165passesABG_M16_COMPANY_CAPTURE_OKexactly once and retains eight normal frames. Every Roster and Recruit Detail PNG is byte-identical to the M44-A baseline at760x360/zh_CN,844x390/en,1280x720/zh_CNand1280x720/en, with zero decoded-pixel differences. - The DEV-6 candidate reaches the existing Contract Return failure in
M44-I01; the immutable M44-A baseline reproduces the same failure. This remains a second-cycle Shell-owned issue and is not a Company View blocker or scope expansion. - M44-D is now the sole
IN_PROGRESSstep for the bounded handoff.
2026-08-26 - M44 Company View Pilot Closed
- M44-D closes at source
687160dd17c1af8b40163af9a060d7792a0d52a2. The durable plan and checkpoint markM44_COMPANY_PAGE_VIEW_REFACTORCOMPLETE, with no later implementation step active. - The source-bound audit, architecture boundary, visual-equivalence matrix,
exact marker records and
M44-I01issue register are recorded indocs/runtime/M44_COMPANY_PAGE_VIEW_VISUAL_AUDIT.md. ABG M44 COMPANY PAGE VIEW PILOT COMPLETEis the handoff record. Only the Company Roster and Recruit Detail Views were closed; Dismissal Review, Contract Return, second-cycle systems/content, regions, endgame, device/package/signing, store/release and human acceptance remain outside this milestone and require separate authorization.
2026-08-26 - M45 Contract Return Repair Activated
- M44 is closed at source
8ce939d. The next bounded implementation isM45_CONTRACT_RETURN_REPAIR, recorded indocs/plans/M45_CONTRACT_RETURN_REPAIR.md. - M45 addresses only the known
M44-I01Market -> Contract Return boundary: restore the realMarketReturnContractcommand, preserve the existing Shell-owned review andABGGuildContractService.return_contract()receipt semantics, and verify cancel/confirm/retry/conflict/restart behavior. - M45-A closes at source
a22c211. The immutable baseline attemptm44-baseline-contract-return/20260826T040851Z-77954reproduces the missingMarketReturnContractcommand and downstreamcontract_return_receiptsaccess failure, with owned process/workspace cleanup recorded. M45-B is now the soleIN_PROGRESSstep. No new Contract, Battle, economy, Save schema, packaging or release work is authorized.
2026-08-26 - M45-B Market Contract Return Boundary Restored; Receipt Safety Started
- M45-B closes at source
23c9bc5.MarketPageControllernow copies the return-command facts,ABGMarketPageViewrenders the distinctMarketReturnContractaction, and EntryShell translates only the deferredreturn_contractintent into the existing Shell-owned review. - The review defaults focus to Cancel and blocks stale or formation-locked
states with truthful notices. Existing Contract Return transaction, receipt,
Save and Guild handoff semantics remain unchanged; focused Controller/View,
runtime and DEV-6 checks pass with strict diagnostics
0. - M45-C is now the sole
IN_PROGRESSstep. It hardens receipt identity, atomicity, retry/conflict behavior, restart persistence and pre-M45 save compatibility. Market composition and unrelated gameplay remain frozen.
2026-08-26 - M45-C Contract Return Receipt Safety Verified; Candidate Handoff Started
- M45-C closes at source
ecf0b8a6fd426baf0ecaefd0fd97ab5ae42dd853. Receipt identity, intent, retained roster, destination and content-hash validation are enforced; duplicate retries are idempotent, conflicting retries and malformed receipts are rejected without mutation, and valid pre-M45 Market saves remain readable. - The source-bound focused attempt
m45-c-focused-source/20260826T060814Z-91122passesABG_M45_CONTRACT_RETURN_SAFETY_OKexactly once with strict diagnostics0, archive SHA-256f1d51ebaf99d28dd716182c8d46c3680641becf88b7dd550d62d7e90e26940fb, and complete owned process/workspace cleanup. - M45-D is now the sole
IN_PROGRESSstep for the DEV-6 candidate, full MVP first-cycle audit and normal100%Market/Contract Return/Guild capture inspection.130%remains supplemental and non-blocking.
2026-08-26 - M45 Contract Return Repair Complete
- M45-D closes at source
0b607d657324670b06030655878462080a5a840fafter the source-bound DEV-6 candidate, full MVP first-cycle audit and dedicated Contract Return visual capture all pass. The candidate reports 24 second-cycle normal-render frames (with the established 130% supplemental fixtures); the MVP audit reports 128 normal first-cycle frames; the dedicated pass reports 12 normal100%Market, Contract Return Review and returned Guild frames across760x360/zh_CN,844x390/enand1280x720/zh_CN,en. - Strict diagnostics are
0, required markers appear exactly once, parsed touch/restart checks pass, all owned process groups and workspaces are removed, and automated 44px bounds, clipping and overlap checks pass. - M45 is complete at its written stopping point. No new Contract, Battle,
economy, Save schema, content, packaging, device, store or release work was
started.
.uid,.importandprototype_incremental/remain untouched.
2026-08-26 - M46 MVP UI Consistency Pass Activated
- M45 is closed at source
b40e5dd. The Owner explicitly authorized a bounded MVP presentation/component consistency pass, recorded indocs/plans/M46_MVP_UI_CONSISTENCY_PASS.md. - M46 targets shared command states, typography/spacing tokens, icon grammar and common notice/status surfaces across the already-complete MVP pages. It preserves each accepted page composition, static master, normalized hit rectangles, explicit intents, gameplay, economy, Save/Receipt and routing semantics.
- M46-A is now the sole
IN_PROGRESSstep for the baseline and UI contract. No product UI code changes are authorized until this activation boundary is committed and pushed.130%remains supplemental and non-blocking; device, package, signing and release work remain outside the plan.
2026-08-26 - M46-A UI Consistency Baseline Complete; Shared Foundation Started
- M46-A closes at source
a10b3d2. The baseline inventory is recorded indocs/runtime/M46_UI_CONSISTENCY_BASELINE.mdand confirms the earliest repair boundary: cross-page command/icon/type consistency rather than gameplay or Save/Receipt behavior. - The inventory records 14 Passive Views, eight shared command-helper users, six custom button/style families, mixed icon paths, and legacy EntryShell builders. Existing page compositions and static masters remain accepted and frozen.
- M46-B was the sole
IN_PROGRESSstep for the presentation-only shared foundation and focused test boundary; it is now closed. M46-C owns the bounded page migration below.
2026-08-26 - M46-B Shared UI Foundation Verified; Control Migration Started
- M46-B closes at source
f736d7a.ABGUI_Tokens,ABGUIFactory,ABGUIIconand the upgradedABGSharedButtonnow supply the shared presentation-only command, type, spacing, notice and icon grammar. Existing callbacks, semantic node names, page composition and RiskUI_FONTinheritance compatibility remain unchanged. - The source-bound focused attempt
m46-ui-foundation-focused/20260826T122929Z-99785passesABG_M46_UI_FOUNDATION_OKexactly once with strict diagnostics0, return code0, source revisionf736d7ac41a56feb50e9336f97faa5a6fa90c339, and owned process/workspace cleanup complete. - M46-C is now the sole
IN_PROGRESSstep. It may migrate only repeated MVP commands, notices and Unicode command glyphs; gameplay, economy, Save/Receipt, routing, static masters and release scope remain frozen.
2026-08-26 - M46 MVP UI Consistency Pass Complete
- M46-C closes at source
ebc0c8f. Market, Party, Readiness, Risk Board, Risk Commitment, Result, Recovery and Company Views now use the shared command state, owned icon and notice helpers for repeated MVP chrome while preserving stable node names, explicit intents, focus order and page-specific layout. - M46-D closes at source
ebc0c8f. The eight focused View contracts, DEV-3, DEV-4, DEV-5 and DEV-6 candidate suites, and the full MVP first-cycle audit pass throughtools/run_test_attempt.pywith exact-once markers, strict diagnostics0, parsed touch/restart and owned cleanup. The MVP audit retains 128 normal100%frames; current-source Company and Contract Return/Guild capture sets cover the remaining page-family fixtures. - Manual review of the required
760x360,844x390and1280x720zh_CN/ennormal captures finds no blocking clipping, overlap or focal hierarchy regression. Evidence is recorded indocs/runtime/M46_UI_CONSISTENCY_VISUAL_AUDIT.md. - M46 is complete at its written stopping point. No later implementation step
is active; gameplay, economy, Save/Receipt, content, device, packaging,
signing, store and release work remain outside this milestone.
.uid,.importandprototype_incremental/remain untouched.
2026-09-05 - M47 Unified UI MVP Activated
- The Owner requested a directly playable MVP to prove that the game reads as one authored product, with UI consistency as the primary risk.
- M47 is bounded to Market, Readiness and Battle Result. It preserves existing gameplay, controllers, services, Save/Receipt behavior, routes, static masters, localization semantics and the approved Japanese 2D hand-drawn direction.
M47-Acloses at source1d3a526.M47-Bcloses with the shared-shell implementation and focused markerABG_M47_UNIFIED_UI_MVP_OK.M47-Ccloses at sourcef911095after the focused Market, Readiness and Result View contracts pass.M47-Dcloses at source1a08127after the source-bound full first-cycle audit passes with 128 normal captures, strict diagnostics0, parsed touch/restart and owned cleanup. M47 is complete at its written stopping point; Gameplay and domain scope remain frozen.