From fa3a67418b3e097ce6832fde4834456ee70c2787 Mon Sep 17 00:00:00 2001 From: A-BenLi06 Date: Wed, 11 Nov 2026 17:03:13 +0800 Subject: [PATCH 1/4] docs: prepare replacement 1.6.0 notes in established release format --- docs/agents/MESSAGES.md | 2 ++ docs/agents/STATE.md | 2 ++ docs/agents/TASKS.md | 4 +++ docs/releases/v1.6.0.md | 56 +++++++++++++++-------------------------- walkthrough.md | 4 +++ 5 files changed, 32 insertions(+), 36 deletions(-) diff --git a/docs/agents/MESSAGES.md b/docs/agents/MESSAGES.md index 42d3509..8f88142 100644 --- a/docs/agents/MESSAGES.md +++ b/docs/agents/MESSAGES.md @@ -1,5 +1,7 @@ # MESSAGES.md — Agent 交流墙(只追加,不改不删) +- 2026-11-11T17:03:13+08:00, Codex: User explicitly authorized replacing v1.6.0. Candidate42991712783 builds merged provider-boundary fixes (main af08a84 / compat3adc8ce). No experimental Forge47 patch. Release notes follow 1.5.3 bilingual Added/Optimized structure and two comparison links, with generic Navigate scope. Archive old release identity before replacing old release/tags; no force push. + - 2026-11-11T16:47:01+08:00, Codex: User corrected scope to generic Navigate API with provider-owned adapters. Remove production HowToGo discovery/registration and its dedicated mandatory tests/download from builds. Preserve public API overloads, availability, chooser and dimming. Published v1.6.0 assets/tags remain unchanged and still contain the earlier adapter; this correction is development source only. - 2026-11-11T13:40:41+08:00, Codex: Published [v1.6.0](https://github.com/teamCreating/MTR-Map-Overlay/releases/tag/v1.6.0) as formal Latest under the user’s immediate-publication instruction. Protected Publish42967128625 succeeded; all ten public assets were downloaded and exactly match Candidate42953810741 and remote digests; both tags match sealed source SHAs. Forge47 quick-play limitation is disclosed; experimental EventLoop changes are excluded. No further game investigation. diff --git a/docs/agents/STATE.md b/docs/agents/STATE.md index b59f909..8d39731 100644 --- a/docs/agents/STATE.md +++ b/docs/agents/STATE.md @@ -1,5 +1,7 @@ # STATE.md — 项目权威状态 +- 2026-11-11T17:03:13+08:00, Codex: User explicitly authorized replacing v1.6.0. Candidate42991712783 builds merged provider-boundary fixes (main af08a84 / compat3adc8ce). No experimental Forge47 patch. Release notes follow 1.5.3 bilingual Added/Optimized structure and two comparison links, with generic Navigate scope. Archive old release identity before replacing old release/tags; no force push. + - 2026-11-11T16:47:01+08:00, Codex: User corrected scope to generic Navigate API with provider-owned adapters. Remove production HowToGo discovery/registration and its dedicated mandatory tests/download from builds. Preserve public API overloads, availability, chooser and dimming. Published v1.6.0 assets/tags remain unchanged and still contain the earlier adapter; this correction is development source only. - 2026-11-11T13:40:41+08:00, Codex: Published [v1.6.0](https://github.com/teamCreating/MTR-Map-Overlay/releases/tag/v1.6.0) as formal Latest under the user’s immediate-publication instruction. Protected Publish42967128625 succeeded; all ten public assets were downloaded and exactly match Candidate42953810741 and remote digests; both tags match sealed source SHAs. Forge47 quick-play limitation is disclosed; experimental EventLoop changes are excluded. No further game investigation. diff --git a/docs/agents/TASKS.md b/docs/agents/TASKS.md index cb5ac35..e2a0d7c 100644 --- a/docs/agents/TASKS.md +++ b/docs/agents/TASKS.md @@ -6,6 +6,10 @@ ## 进行中 +### [进行中] Replace release 1.6.0 with provider-owned Navigate builds +- Codex, 2026-11-11T17:03:13+08:00: User explicitly requests replacing release1.6.0 and matching the 1.5.3 note format. Build the merged provider-boundary correction on all six targets, retain the old publication metadata/downloads locally, replace release assets and version tags through normal protected publication, and verify public bytes. + + ### [完成] Provider-owned navigation boundary - Codex, 2026-11-11T16:47:01+08:00: User clarified Overlay provides the generic Navigate API; external mods own adapters. Remove production HowToGo discovery/registration, preserve generic availability and chooser, and document the already published binary boundary. diff --git a/docs/releases/v1.6.0.md b/docs/releases/v1.6.0.md index d3c7e2c..b357351 100644 --- a/docs/releases/v1.6.0.md +++ b/docs/releases/v1.6.0.md @@ -1,54 +1,38 @@ -> **Scope correction / 定位更正:** Overlay provides a generic Navigate API (provider registration, per-target availability, chooser and disabled state) for navigation mods to adapt to. HowToGo was intended as an interoperability test reference. The published 1.6.0 binaries do contain the earlier built-in HowToGo adapter; it has now been removed from development sources. These release assets and tags remain unchanged. -> -> Overlay 的定位是完善通用 Navigate 接口,供其它导航模组自行适配。HowToGo 原本仅用于互操作测试。已发布 1.6.0 二进制确实含有此前加入的主动适配器,现已从开发源码移除;本次没有替换附件或移动标签。 - -Compared with v1.5.3, this release adds optional HowToGo destination handoff, per-station Navigate availability, and complete four-language interface resources. +Compared with v1.5.3, this release improves the Navigate API for third-party navigation mods, adds per-station availability checks, and completes four-language interface support across all six supported builds. ### Added -- **HowToGo integration.** With a compatible HowToGo build installed, select it from a station's Navigate action to hand off the station's actual name and block coordinates. HowToGo owns route search, travel preferences and guidance; it remains optional. -- **Availability-aware Navigate.** The action is dimmed when no provider can handle the selected station. Available providers appear in the chooser, with availability checked again on click. Existing three-argument provider registrations remain compatible; a new optional predicate overload supports per-target readiness. +- **A more complete Navigate API.** Third-party navigation mods can register a provider with a per-target availability predicate and handle the selected station through the public API. The existing registration overload remains compatible; navigation integration is supplied by external mods. +- **Availability-aware navigation.** Navigate is dimmed when no registered provider can handle the selected station. Multiple available providers appear in a chooser, and availability is checked again on click. - **Four interface languages.** English, Simplified Chinese, Traditional Chinese and Japanese cover map controls, station arrival boards, tooltips, commands and diagnostic feedback, following the game language. Player-defined station and route names remain unchanged. +- **The same features on all six platforms.** NeoForge/Fabric MC 1.21.1 builds target MTR 4.1.0-beta.2 and Java 21; Forge/Fabric MC 1.20.1 and 1.20.4 builds target MTR 4.0.5 and Java 17. Native station arrivals and full-network data require matching client and server Overlay support. -### Fixed and improved - -- Forge1.20.4 quick-play now completes native loading before connecting a world, preventing missed server lifecycle initialization and Xaero disconnects while preserving loading warnings and errors. - -- Translated Xaero controls render text separately from their icons. JourneyMap toolbar labels, PIDS style names and older tooltip/command messages are localized. -- Closed, stale or failing navigation providers cannot be invoked; provider errors do not disable other providers or flood the log. -- Diagnostic marker results use explicit success values rather than parsing English text, including failures while JourneyMap is not ready. -- Native arrival boards, independent map focus/dimming, whole-map trains and pure 2D rendering remain available on all supported builds. - -- Fix Forge 1.20.1 optional channel negotiation so clients can join MTR servers without Overlay and use nearby-data fallback. +### Optimized and fixed -### Supported builds - -- Minecraft **1.21.1**: **NeoForge / Fabric**, **MTR 4.1.0-beta.2**, Java 21. -- Minecraft **1.20.1 / 1.20.4**: **Forge / Fabric**, **MTR 4.0.5**, Java 17. -- Choose the exact Minecraft/loader attachment. Station arrivals and full-network data require server-side Overlay support; install matching builds on both sides. +- Improved provider lifecycle handling: closed, stale or failing providers cannot be invoked, and one provider's failure does not disable others or repeatedly flood the log. +- Separated Xaero control text from icons and localized JourneyMap toolbar labels, PIDS style names and remaining tooltip and command messages. +- Fixed Forge 1.20.4 quick-play loading order, preserving native loading warnings and errors while preventing missed server lifecycle initialization and Xaero disconnects. +- Fixed Forge 1.20.1 optional channel negotiation so clients can join MTR servers without Overlay and use nearby-data fallback. If launcher quick-play times out, use the in-game multiplayer server list. +- Retained native arrival boards, independent map focus and dimming, whole-map trains and pure 2D rendering. Diagnostic markers now use explicit success values instead of parsing English messages. ### 中文更新说明 -相较 v1.5.3,本版新增可选 HowToGo 目的地转交、逐站 Navigate 可用性检查及完整四语言界面。 +相较 v1.5.3,本版完善供第三方导航模组接入的 Navigate 接口,新增逐站可用性检查,并补全四语言界面,六个平台同步提供。 **新增功能** -- **HowToGo 对接**:安装兼容版本后,可从车站 Navigate 入口选择 HowToGo,转交真实站名与方块坐标。路径搜索、出行偏好及引导由 HowToGo 负责,仍为可选依赖。 -- **导航可用性检查**:没有可用于当前车站的服务时按钮淡显;多个可用服务显示选择器,点击时再次验证。保留原有三参数注册接口,并新增逐目标可用性判定。 -- **四语言界面**:英文、简体中文、繁体中文与日语覆盖地图控件、站点到发板、提示、命令与诊断反馈,跟随游戏语言。玩家自定义站名、线路名保持原样。 +- **完善 Navigate 接口**:第三方导航模组可注册逐目标可用性判定,并通过公共接口处理所选车站;保留原有注册重载,具体导航适配由外部模组提供。 +- **导航可用性检查**:没有可处理当前车站的已注册服务时,Navigate 按钮淡显;多个可用服务显示选择器,点击时再次验证可用性。 +- **四语言界面**:英文、简体中文、繁体中文与日语覆盖地图控件、站点到站板、提示、命令与诊断反馈,跟随游戏语言。玩家自定义站名、线路名保持原样。 +- **六平台功能同步**:MC 1.21.1 的 NeoForge/Fabric 包对应 MTR 4.1.0-beta.2 与 Java 21;MC 1.20.1/1.20.4 的 Forge/Fabric 包对应 MTR 4.0.5 与 Java 17。原生站点预测与全网数据需客户端和服务端安装匹配版本。 **优化与修复** -- 修复 Forge 1.20.1 可选通道判断,允许客户端连接未安装 Overlay 的 MTR 服务器并使用附近数据降级。 - -- 修复Forge1.20.4快速进入存档时的加载顺序,保留原生警告与错误页面,避免漏发服务端生命周期事件导致Xaero初始化失败和断线。 - -- Xaero 控件将文字与图标分离绘制,补全 JourneyMap 工具栏、PIDS 样式名及旧提示、命令的翻译。 -- 关闭、过期或异常的导航服务不会被调用,也不会影响其他服务或反复刷日志。 -- 测试标记改用明确的成功状态,不再解析英文消息;JourneyMap 尚未就绪时正确反馈失败。 -- 保留六平台的原生到站板、独立聚焦与淡化、全图列车及纯二维绘制。 - -MC 1.21.1 对应 NeoForge/Fabric、MTR 4.1.0-beta.2 与 Java 21;MC 1.20.1/1.20.4 对应 Forge/Fabric、MTR 4.0.5 与 Java 17。请按精确 MC/加载器选择附件;全网与站点预测需服务端支持。 +- 完善导航服务生命周期处理:关闭、过期或异常服务不会被调用,单个服务出错不会影响其它服务或反复刷日志。 +- 分离 Xaero 控件文字与图标,补全 JourneyMap 工具栏、PIDS 样式名及其余提示、命令的翻译。 +- 修复 Forge 1.20.4 快速进入存档时的加载顺序,保留原生警告与错误页面,避免漏发服务端生命周期事件导致 Xaero 初始化失败和断线。 +- 修复 Forge 1.20.1 可选通道判断,允许客户端连接未安装 Overlay 的 MTR 服务器并使用附近数据降级。启动器自动直连超时时,可通过游戏内多人服务器列表连接。 +- 保留原生到站板、独立地图聚焦与淡化、全图列车及纯 2D 绘制;诊断标记使用明确的成功状态,不再解析英文消息。 **MC 1.20 Changelog**: [v1.5.3-mc1.20...v1.6.0-mc1.20](https://github.com/teamCreating/MTR-Map-Overlay/compare/v1.5.3-mc1.20...v1.6.0-mc1.20) diff --git a/walkthrough.md b/walkthrough.md index 87bb474..b9aad39 100644 --- a/walkthrough.md +++ b/walkthrough.md @@ -430,3 +430,7 @@ Protected Publish42967128625 completed successfully. Download all ten public ass The user clarified that Overlay should improve the generic Navigate API so external mods can adapt to it. Remove the built-in HowToGo reflection bridge and automatic registration, together with its dedicated tests and mandatory build-time download. Preserve the generic provider predicate overload, chooser, stale-provider handling and disabled-state behavior. Keep original QA observations as historical evidence. Published 1.6.0 binaries/tags are unchanged; they still contain the earlier adapter, so document this boundary explicitly instead of rewriting release history. Validation 2026-11-11T16:48:32+08:00: Gradle test successful: {'tests': 105, 'failures': 0, 'errors': 0, 'skipped': 1}. Production Java has no HowToGo discovery, bridge or registration. Generic Navigate implementation and API signatures are preserved. Public release scope correction was read back; all ten asset IDs and digests remain unchanged. + +### 2026-11-11T17:03:13+08:00 — Replace 1.6.0 on explicit user request + +Build the already merged generic Navigate correction for six targets; external mods own adapters. Rewrite public notes using 1.5.3 structure: bilingual Added/Optimized sections, MC/MTR compatibility and two final diff links. Preserve original publication metadata and downloaded assets locally before replacement. The user explicitly authorized replacing this version; recreate its release/tags on new sealed sources rather than force-pushing or silently retaining obsolete source tags. Use protected Publish and verify all ten replacement downloads. The old 72-case runtime record is historical, not a new binary runtime claim. From d49b6e46caaf81ceaccdc2c176abf988c9436752 Mon Sep 17 00:00:00 2001 From: A-BenLi06 Date: Wed, 11 Nov 2026 17:12:01 +0800 Subject: [PATCH 2/4] docs: verify replacement 1.6.0 assets and established notes --- docs/agents/MESSAGES.md | 2 + docs/agents/STATE.md | 2 + docs/agents/TASKS.md | 4 +- docs/api/overlay-api-v1.md | 2 +- .../release-1.6.0-replacement/SHA256SUMS | 6 + .../artifact-audit.json | 96 ++ .../publication.json | 79 ++ .../release-manifest.json | 1245 +++++++++++++++++ docs/validation/release-1.6.0-replacement.md | 13 + docs/validation/release-1.6.0.md | 2 + walkthrough.md | 4 + 11 files changed, 1453 insertions(+), 2 deletions(-) create mode 100644 docs/validation/evidence/release-1.6.0-replacement/SHA256SUMS create mode 100644 docs/validation/evidence/release-1.6.0-replacement/artifact-audit.json create mode 100644 docs/validation/evidence/release-1.6.0-replacement/publication.json create mode 100644 docs/validation/evidence/release-1.6.0-replacement/release-manifest.json create mode 100644 docs/validation/release-1.6.0-replacement.md diff --git a/docs/agents/MESSAGES.md b/docs/agents/MESSAGES.md index 8f88142..a36d31f 100644 --- a/docs/agents/MESSAGES.md +++ b/docs/agents/MESSAGES.md @@ -1,5 +1,7 @@ # MESSAGES.md — Agent 交流墙(只追加,不改不删) +- 2026-11-11T17:11:24+08:00, Codex: Replaced [v1.6.0](https://github.com/teamCreating/MTR-Map-Overlay/releases/tag/v1.6.0) on explicit user instruction. Candidate42991712783 / protected Publish42992406825 attempt3 passed. Ten replacement public downloads match candidate/digests; both tags match new sealed sources. Six-JAR audit confirms only adapter removal; generic API and Forge49 guard preserved. Public notes exactly match the requested 1.5.3 structure. See [replacement verification](../validation/release-1.6.0-replacement.md). + - 2026-11-11T17:03:13+08:00, Codex: User explicitly authorized replacing v1.6.0. Candidate42991712783 builds merged provider-boundary fixes (main af08a84 / compat3adc8ce). No experimental Forge47 patch. Release notes follow 1.5.3 bilingual Added/Optimized structure and two comparison links, with generic Navigate scope. Archive old release identity before replacing old release/tags; no force push. - 2026-11-11T16:47:01+08:00, Codex: User corrected scope to generic Navigate API with provider-owned adapters. Remove production HowToGo discovery/registration and its dedicated mandatory tests/download from builds. Preserve public API overloads, availability, chooser and dimming. Published v1.6.0 assets/tags remain unchanged and still contain the earlier adapter; this correction is development source only. diff --git a/docs/agents/STATE.md b/docs/agents/STATE.md index 8d39731..9572019 100644 --- a/docs/agents/STATE.md +++ b/docs/agents/STATE.md @@ -1,5 +1,7 @@ # STATE.md — 项目权威状态 +- 2026-11-11T17:11:24+08:00, Codex: Replaced [v1.6.0](https://github.com/teamCreating/MTR-Map-Overlay/releases/tag/v1.6.0) on explicit user instruction. Candidate42991712783 / protected Publish42992406825 attempt3 passed. Ten replacement public downloads match candidate/digests; both tags match new sealed sources. Six-JAR audit confirms only adapter removal; generic API and Forge49 guard preserved. Public notes exactly match the requested 1.5.3 structure. See [replacement verification](../validation/release-1.6.0-replacement.md). + - 2026-11-11T17:03:13+08:00, Codex: User explicitly authorized replacing v1.6.0. Candidate42991712783 builds merged provider-boundary fixes (main af08a84 / compat3adc8ce). No experimental Forge47 patch. Release notes follow 1.5.3 bilingual Added/Optimized structure and two comparison links, with generic Navigate scope. Archive old release identity before replacing old release/tags; no force push. - 2026-11-11T16:47:01+08:00, Codex: User corrected scope to generic Navigate API with provider-owned adapters. Remove production HowToGo discovery/registration and its dedicated mandatory tests/download from builds. Preserve public API overloads, availability, chooser and dimming. Published v1.6.0 assets/tags remain unchanged and still contain the earlier adapter; this correction is development source only. diff --git a/docs/agents/TASKS.md b/docs/agents/TASKS.md index e2a0d7c..0ca1eb9 100644 --- a/docs/agents/TASKS.md +++ b/docs/agents/TASKS.md @@ -6,7 +6,9 @@ ## 进行中 -### [进行中] Replace release 1.6.0 with provider-owned Navigate builds +### [完成] Replace release 1.6.0 with provider-owned Navigate builds +- 2026-11-11T17:11:24+08:00, Codex: Replaced [v1.6.0](https://github.com/teamCreating/MTR-Map-Overlay/releases/tag/v1.6.0) on explicit user instruction. Candidate42991712783 / protected Publish42992406825 attempt3 passed. Ten replacement public downloads match candidate/digests; both tags match new sealed sources. Six-JAR audit confirms only adapter removal; generic API and Forge49 guard preserved. Public notes exactly match the requested 1.5.3 structure. See [replacement verification](../validation/release-1.6.0-replacement.md). + - Codex, 2026-11-11T17:03:13+08:00: User explicitly requests replacing release1.6.0 and matching the 1.5.3 note format. Build the merged provider-boundary correction on all six targets, retain the old publication metadata/downloads locally, replace release assets and version tags through normal protected publication, and verify public bytes. diff --git a/docs/api/overlay-api-v1.md b/docs/api/overlay-api-v1.md index 86a712a..1fdc0c4 100644 --- a/docs/api/overlay-api-v1.md +++ b/docs/api/overlay-api-v1.md @@ -62,4 +62,4 @@ New Overlay builds provide `registerNavigation(owner, displayName, Predicate