From ab8d7aff2b9e3bf07601d1409c4451d03a8388fe Mon Sep 17 00:00:00 2001 From: Darkaxt Date: Tue, 1 Sep 2026 03:14:36 +0200 Subject: [PATCH] release: prepare active header candidate rc85 Record the packaged Thor active-destination validation and preserve the unchanged-parser evidence reuse boundary for the next monotonic signed candidate. Co-Authored-By: Claude --- .github/workflows/release.yml | 1 + release/RELEASE_NOTES_1.1.0-rc.85.md | 31 ++++++++++++++++++++++++++++ release/compatibility-evidence.json | 2 +- release/v1-ready.json | 1 + 4 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 release/RELEASE_NOTES_1.1.0-rc.85.md diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 4fb27b05..24d3622b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -298,6 +298,7 @@ jobs: jq -e '.v11Stage7CrossFeatureUiConformance == true' release/v1-ready.json >/dev/null jq -e '.v11SaveSynchronizedKnowledgeCheckpoints == true' release/v1-ready.json >/dev/null jq -e '.v11Rc84ThorLowerDisplayRemediation == true and .v11Rc84ReleaseQaIsolation == true' release/v1-ready.json >/dev/null + jq -e '.v11Rc85ActiveHeaderDestinations == true' release/v1-ready.json >/dev/null if grep -Eiq '[A-Z]:\\|dualdex-expanded-corpus|ExtractedPath' \ reports/dualdex-parser-compatibility.json \ reports/dualdex-parser-compatibility.md \ diff --git a/release/RELEASE_NOTES_1.1.0-rc.85.md b/release/RELEASE_NOTES_1.1.0-rc.85.md new file mode 100644 index 00000000..b69e03af --- /dev/null +++ b/release/RELEASE_NOTES_1.1.0-rc.85.md @@ -0,0 +1,31 @@ +# DualDex 1.1.0-rc.85 + +RC85 is the signed release candidate for the completed Thor header consistency pass. It supersedes the unpublished RC84 tag and preserves the full lower-display remediation while making every applicable root destination identify itself with the established active red treatment. + +## Active destination headers + +- Mark Pokédex, Party, Local Map, and Settings as the current root destination with the same semantic selected palette used by Trainer Card and Progress. +- Keep current destinations noninteractive and expose them with `aria-current="page"`; navigation and utility actions remain unselected. +- Render the selected Party Poké Ball conventionally with a red upper half and white lower half. +- Preserve the existing Trainer Card/Progress switching behavior and authoritative in-game clock placement. + +## Thor presentation + +- Retain readable semantic shortcut colors over ROM-derived header themes. +- Keep Party names and HP values within compact card bounds without redundant species labels. +- Refresh the affected README screenshots from the packaged Android WebView at the exact Thor app-area viewport. +- Preserve the release/debug isolation boundary: no ROM, QA marker, simulator control, or production signing material is included in public assets. + +## Measured validation + +- Focused active-destination suite: 6 files and 100 tests passed. +- Companion TypeScript and production Vite build passed. +- Packaged Thor WebView scenarios passed for Pokédex, Party overview/detail, Settings, Local Map, and Trainer Card. +- Refreshed public screenshots remain `1241×1027`; all 48 public image assets passed binary-safe privacy validation. +- Pull request CI, CodeQL, public Chromium acceptance, and packaged Android managed-device acceptance passed; the previously timed-out asynchronous storage projection completed under the hardened condition-based deadline. + +## Delivery + +- This candidate uses Android version code `1010085`. +- The candidate is built and signed only through the protected GitHub Actions environment; production signing material is never exposed to the repository or local workspace. +- DualDex remains read-only and sends no game commands or emulator-memory writes. diff --git a/release/compatibility-evidence.json b/release/compatibility-evidence.json index dd5e5185..18df5c42 100644 --- a/release/compatibility-evidence.json +++ b/release/compatibility-evidence.json @@ -12,7 +12,7 @@ }, "scopeDecision": { "type": "NONPARSER_REUSE", - "attestation": "Fresh raw parser evidence was generated at the named source commit; downstream release packaging, acceptance tests, API-30-compatible Android bounded reads, repository-policy alignment, public nonsecret GitHub policy access, schema-bound comparison selection, binary-safe public-asset privacy validation, the Area Guide projection correction, CRC-less RetroArch session activation with evidence-bound epochs, Thor lower-display companion UI remediation, Android loopback disconnect containment, and the debug-only RetroArch-free QA harness and clean-start heap provisioning changed afterward without changing parser, catalog, build, wrapper, or corpus-execution source." + "attestation": "Fresh raw parser evidence was generated at the named source commit; downstream release packaging, acceptance tests, API-30-compatible Android bounded reads, repository-policy alignment, public nonsecret GitHub policy access, schema-bound comparison selection, binary-safe public-asset privacy validation, the Area Guide projection correction, CRC-less RetroArch session activation with evidence-bound epochs, Thor lower-display companion UI remediation, Android loopback disconnect containment, the debug-only RetroArch-free QA harness and clean-start heap provisioning, active root-destination header consistency, packaged Thor screenshot refresh, and asynchronous acceptance deadline hardening changed afterward without changing parser, catalog, build, wrapper, or corpus-execution source." }, "cacheDecision": { "type": "BUMP_REQUIRED", diff --git a/release/v1-ready.json b/release/v1-ready.json index 6c0c6e5e..ba3094c8 100644 --- a/release/v1-ready.json +++ b/release/v1-ready.json @@ -160,6 +160,7 @@ "v11SaveSynchronizedKnowledgeCheckpoints": true, "v11Rc84ThorLowerDisplayRemediation": true, "v11Rc84ReleaseQaIsolation": true, + "v11Rc85ActiveHeaderDestinations": true, "gen1CompiledEvolutionCoveragePercent": 96.62, "gen1CompiledLearnsetCoveragePercent": 93.56, "gen1CompiledTypeChartCoveragePercent": 95.79,