Commit Graph
449 Commits
Author SHA1 Message Date
wushenghua 127ac9a9c4 feat(m64-b): reflow the inspect and compare boards on the shared card 2026-09-14 03:19:33 +08:00
wushenghua f646479e3d refactor(w5): single 1280x720 target with keep aspect across screens, tests and probes 2026-09-14 03:14:05 +08:00
wushenghua e565dd51ef refactor(w5): converge every migrated screen and test on the single 1280x720 target 2026-09-14 03:07:03 +08:00
wushenghua 9d74e5dc70 feat(m64-a): migrate the initial four-of-two page onto the shared chrome 2026-09-14 03:00:36 +08:00
wushenghua cfeb924b2f feat(m63-d): migrate Settings onto the shared chrome 2026-09-14 02:52:00 +08:00
wushenghua b7d0294341 fix(m63-c): keep the recovered-record signal so New Game stays usable 2026-09-14 02:44:31 +08:00
wushenghua 6c8e0f9aa6 feat(m63-c): migrate Title onto the shared chrome and keep New Game usable with a recovered record 2026-09-14 02:40:59 +08:00
wushenghua 33de24bedc feat(m63-b): migrate the first-launch setup onto the shared chrome 2026-09-14 02:33:04 +08:00
wushenghua 9e4a58bd7f feat(m63-b): migrate the first-launch setup onto the shared chrome 2026-09-14 02:28:20 +08:00
wushenghua 828d25c122 feat(m63-a): migrate the boot screen onto the shared hand-drawn chrome 2026-09-14 02:14:01 +08:00
wushenghua 9fbebceeb5 chore(w4): delete the six orphan assets and record the corrected inventory 2026-09-14 01:52:33 +08:00
wushenghua 798c9f740e test(m62-c): flag icon overlap only when the icon centre is under the ink 2026-09-14 00:43:35 +08:00
wushenghua 61737b2e8d test(m62-c): measure label ink boxes and settle the readiness probe before scanning 2026-09-14 00:41:43 +08:00
wushenghua d1bf33ca23 test(m62-c): unique per-probe ink markers 2026-09-14 00:40:21 +08:00
wushenghua 9a0d40ccdd test(m62-c): legacy probes record ink baselines while migrated pages stay strict 2026-09-14 00:38:55 +08:00
wushenghua e2cbfb212e test(m62-c): wire the ink checker into the guild, contract and readiness probes 2026-09-14 00:37:57 +08:00
wushenghua dac5de4023 test(m60-b): free the driven scene before exit 2026-09-13 22:59:04 +08:00
wushenghua e1cad068fc test(m60-b): drive one complete first cycle through the entry shell 2026-09-13 22:56:48 +08:00
wushenghua 8f11f00636 test(m60-a): align the dev3 guild/contract flow and retire the legacy front-door test 2026-09-13 22:07:51 +08:00
wushenghua b58fad20d8 test(m59-a): ink checks, longest-string fixture and the defects they found 2026-09-13 21:07:19 +08:00
wushenghua fad38c5262 fix(m58-c): keep resource badge labels off their icons 2026-09-13 19:49:47 +08:00
wushenghua e9fe993646 fix(m58-c): measure plaque ink bands and seat title and subtitle on parchment 2026-09-13 19:28:06 +08:00
wushenghua a5dec1c426 fix(m58-c): put market title and subtitle inside the measured plaque opening 2026-09-13 19:22:08 +08:00
wushenghua 78499ec080 fix(m58-c): ledger context row width and latin trait ribbon fit 2026-09-13 17:28:12 +08:00
wushenghua 98ed596c5a fix(m58-c): hand-drawn text-bearing chrome and single command owners 2026-09-13 17:12:15 +08:00
wushenghua db7b3d65e4 fix(m58-b): market read-surface type scale, contrast and slot ownership
Measured inventory first: the market modules authored their labels at raw token
sizes while the view uses the canvas text scale, leaving module labels near 6.5
physical pixels at 760, and the card, trait and cost surfaces were drawn in
fixed pixels against proportional label slots. Every module now takes the view's
canvas type scale; the card band and price strip are fractions of the card size
that cover their slots; the trait chip and cost strip are proportional chrome
with the coin anchored in the authored socket; ledger labels move to ink on
parchment and the ledger keeps the full availability string while the card row
carries only the amount.
2026-09-13 16:53:51 +08:00
wushenghua bac3f0153e fix(m58-a): honest market fixture and measured defect inventory
The market probe fed one profession id to all three offers, so the board showed
three copies of one recruit; it now carries three real base professions with
per-offer prices and catalogue role names. The first honest capture also
localises the read-surface defect: market_chrome draws its surfaces in fixed
pixels while the label slots are proportional, so the profession label straddles
the accent band and the parchment face, and the ledger labels measure 3.39:1 and
2.74:1 against the 4.5:1 floor. Both are recorded with evidence in the step's
defect inventory.
2026-09-13 16:37:24 +08:00
wushenghua 43827b1228 test(m57-d): capture static-only and dynamic-only readiness views
The gate contract requires static-only, dynamic-only on a neutral field and
final composite at every fixture and locale; the probe only produced the final
composite. The two extra modes are applied by the probe itself, so no
test-only switch is added to product code.
2026-09-13 16:24:27 +08:00
wushenghua 67b5e3fda0 fix(m57-c): keep header values inside the band face and repaint settings
The first header value started at the authored slot edge, which now sits on the
parchment band's corner bracket, so the title overlapped the trim. Header
labels are clamped to the band face (edge fraction plus a small pad) in both
locales. The header settings control was still a flat angular utility plate;
it now uses a compact member of the same hand-drawn plate family with the
engine-rendered settings glyph, so the top row carries no vector chrome.
2026-09-13 16:21:02 +08:00
wushenghua 6b06c28259 fix(m57-c): hand-drawn parchment, dock rail and severity badges
Information surfaces were still flat drawn chrome while the commands were
already painted, so the page mixed two material languages. The warning rows,
status card, summary card and header now use a hand-drawn parchment panel, the
command dock is a painted wooden rail, and the warning severity marks use
enamel badges. All four use the same fraction-based nine-patch as the command
plates and import with mipmaps so the wide aspect ratios stay clean at 760.

The warning stack also carried no severity in its data, so all three rows fell
back to one colour; the visual fixture now matches the production
["warning","notice","info"] facts and the view falls back to that sequence
by row order instead of a single default.
2026-09-13 16:06:08 +08:00
wushenghua 5c2ab3985c fix(m57-c): replace drawn command plates with hand-drawn wooden plates
The command row was still flat vector chrome, which read as a different
material language than the hand-drawn world. The four commands now use a
painted wood-and-gold plate (secondary, primary, disabled variants) drawn
through a fraction-based nine-patch so the frame keeps its proportions at
every viewport, with the icon and label slots kept inside the plate face.
The raw generations and the nine-patch normalisation are recorded under
docs/runtime/m57_command_plate_provenance/.
2026-09-13 15:50:45 +08:00
wushenghua 5cf76a07b2 fix(m57-c): per-region readiness chrome and typography
Stop reusing one plaque for every region. The header is now a compartmented
band with dividers, icons and left-aligned values; the bottom is a carved dock
band with four independent command plates (icon above label, wider green
primary) instead of buttons inside a long frame; the warning stack is three
cards with severity icons; the summary is a parchment card with shape markers,
values and pip rows; and typography uses explicit tracking and embolden so
titles, values and captions read as different ranks. View contract names and
z-order are unchanged.
2026-09-13 15:25:55 +08:00
wushenghua 1de5a0bb92 fix(m57): commit the missing b10-b12 unified sprites
The previous asset commit's b0* glob skipped PF-B10..B12, so a fresh archive
failed to compile initial_company_art.gd and rendered no party. The strict
attempt gate caught it; add the three sprites and their import sidecars.
2026-09-13 14:07:51 +08:00
wushenghua 42e6e041f8 fix(m57-c): release cached textures on view exit
The shared scaled-texture and ground-shadow caches held image RIDs past
teardown, which the strict attempt gate correctly reported as leaked
allocations. Clear them when the Readiness view leaves the tree.
2026-09-13 14:06:45 +08:00
wushenghua cf74cb56fe fix(m57-c): orderly readiness header copy and ornate command plates
The five header values now follow the authored master order (page title,
snapshot state, contract name, pressure, Company line) with the real contract
id instead of a placeholder phrase, and the duplicate rail title is removed.
Command buttons use the generated teal action plate with light labels instead
of the flat vector wood block.
2026-09-13 14:04:48 +08:00
wushenghua 147c2d8e32 feat(m57): unify base profession sprites as one Q-style set
All twelve base professions now use identity-locked super-deformed chibi
sprites generated from one magenta-keyed sheet family, replacing the mixed
Q-style / old-proportion art that made any Company read as inconsistent.
Provenance, prompts and task ids are recorded under
docs/runtime/m57_q_base_profession_provenance.
2026-09-13 14:04:23 +08:00
wushenghua 936078df6c fix(m57-c): rebuild readiness on the shared asset material
Replace the page-local flat navy rails, translucent slabs and pill buttons with
the shared asset material, re-add the rail title, ground the party on one
baseline with a contact shadow and ink name plates, and move value/warning text
to a high-contrast ink-on-parchment pair. View contract node names and
z-order are unchanged; M37 readiness view contract passes.
2026-09-13 12:58:17 +08:00
wushenghua b411f739c7 feat(m57-b): shared asset nine-patch chrome factory
Add runtime/ui/shared/asset_chrome.gd: large parchment/wood surfaces use the
approved generated components with ornament-safe asymmetric nine-patch
margins, while small controls use the size-independent market_chrome vector
material so decorative pixels are never stretched into bands. Record the rule
in M52_SHARED_UI_RULES.md before another page reuses it.
2026-09-13 12:58:17 +08:00
wushenghua c487f471a5 chore(m57-a): honest readiness probe and committed import sidecars
- Readiness visual probe now supplies real per-position profession_id and
  localized names, so it validates four distinct members instead of four
  copies of the fallback art.
- Commit the missing page-asset .import sidecars (notably
  m52_q_company/*.png) so the tracked asset set matches the committed-import
  convention.
- Add the M57 durable plan and point the checkpoint at it.
2026-09-13 12:44:22 +08:00
wushenghua 8c797cc612 fix(readiness): rebalance party column and summary footprint 2026-09-13 12:20:05 +08:00
wushenghua 1f76b6f6ce fix(readiness): raise runtime status labels above panels 2026-09-13 11:53:18 +08:00
wushenghua dc2d86b57b fix(readiness): replace rejected static skin with unified runtime chrome 2026-09-13 11:51:37 +08:00
wushenghua 1c8f96b67c fix(readiness): unify summary and warning chrome 2026-09-13 11:34:48 +08:00
wushenghua 52eb778293 fix(readiness): label departure summary purpose 2026-09-13 11:26:12 +08:00
wushenghua 5879f967fb fix(readiness): anchor warning stack to authored card 2026-09-13 11:22:40 +08:00
wushenghua 0beb71c00b fix(readiness): give summary a finished hierarchy 2026-09-13 11:20:59 +08:00
wushenghua 94c3c175c8 fix(readiness): hide unused transition placeholders 2026-09-13 11:04:23 +08:00
wushenghua 4b6ac0f8a5 fix(readiness): remove static gear and right-stack overlap 2026-09-13 10:47:48 +08:00
wushenghua 055a1fd4c6 fix(readiness): centralize measured visual slots 2026-09-13 10:42:13 +08:00
wushenghua b45b72d6f6 fix(readiness): restore readable runtime typography 2026-09-13 10:22:50 +08:00