Skip to content

fix(ui): drop dead internal pointers from the user-visible copy - #224

Merged
argszero merged 1 commit into
mainfrom
fix/ui-dead-internal-pointers
Sep 13, 2026
Merged

argszero merged 1 commit into
mainfrom
fix/ui-dead-internal-pointers

Conversation

@argszero

Copy link
Copy Markdown
Owner

Summary

Six user-visible strings still point at material that the 2026-08-22 docs flattening (6d87213, #119) deleted from this repo:

carrier pointer referent at HEAD
i18n.js wallet.raise.sub (zh+en) + its index.html fallback (US-20) docs/user-stories.md defines no US-<n> ids
i18n.js admin.raise.sub (zh+en) + its index.html fallback (US-20:…) same
i18n.js mk.detail.routeVal (zh+en) (架构 v0.2 路由策略) docs/architecture.md has no v0.2 section

#119 ("concise current-state docs") rewrote both user-facing docs: it dropped every US-<n> id from docs/user-stories.md and deleted the 4.2.1 路由与故障转移策略(v0.2) section from docs/architecture.md. Verified from the commit diff (- **US-20** 作为企业成员…, -#### 4.2.1 路由与故障转移策略(v0.2…).

The pointer shapes audited so far stop short of this one: #179 repointed the dangling §N references, #216 the file:line citations. The name + stamp shape (US-20, v0.2) was never audited — and these are the only user-visible carriers of one, since every other US- id in the repo sits in a code comment or in ui/README.md.

Related Issue

None — filed from a recon sweep of the i18n copy carriers.

Changes

  • ui/js/i18n.js — drop the dead parentheticals from 6 live pack values (3 keys × zh/en). Each sentence was already self-contained.
  • ui/index.html — keep the two edited data-i18n fallbacks byte-equal to their pack value (the fallback is a second source of truth; fix(ui): replace code identifiers in the English stat-card copy #168 had to touch both files for the same reason), and bump i18n.js?v=20260912-520260914-4.
  • ui/README.md — re-point the 3 lines that cited 「架构 v0.2 路由策略」 at the section that carries that content today, docs/architecture.md §3 module table (router.rs row), noting the old v0.2 / 4.2.1 provenance as docs: repoint 5 dangling section references to their current sections #179 did.
  • Deliberately not touched: the same-shaped stamps in admin.raise.demo / admin.org.demo / ops.demo (P2-C) — those keys are orphans, never rendered — and every US-/rant id inside comments, which is where the author keeps them.

Tests

  • cargo test226 passed (unchanged; the i18n gate still sees 786/786 keys)
  • cargo fmt --check / cargo clippy — no Rust file touched
  • Instrument c2106_dead_pointer_probe.py (21 assertions: 6 pack values, both fallbacks, fallback↔pack parity, prose preserved, pack counts, plus two positive controls proving the referents really are absent from docs/) — pre-change tree 8 red → post-change 21/21 green
  • 4 mutation legs on tree copies (host tree untouched), each flipping a distinct red set: re-insert zh US-20{C3, C7}; re-insert en v0.2{C4}; re-insert the stamp in the html fallback only → {C7, C7b}; revert one README re-point → {C17, C17b}

Checklist

  • Branch name follows the convention (fix/)
  • Commit message uses Conventional Commits
  • Single responsibility, minimal diff (3 files, +12/−12, ui/ text only)

Two rendered strings in `ui/js/i18n.js` point at material that the
2026-08-22 docs flattening deleted:

- `wallet.raise.sub` / `admin.raise.sub` carry the requirement id
  `US-20`. Commit 6d87213 (#119) rewrote docs/user-stories.md into a
  current-state doc and dropped every `US-<n>` id, so `US-20` resolves
  nowhere: `grep -rn 'US-[0-9]' docs/ README.md README.en.md` is empty at
  HEAD. Every other `US-` id in the repo lives in a code comment or in
  ui/README.md; these were the only ones shown to users.
- `mk.detail.routeVal` cites 「架构 v0.2 路由策略」. The same commit
  deleted the `4.2.1 路由与故障转移策略(v0.2)` section from
  docs/architecture.md, and that file has no version stamp left.

One root cause, two pointer shapes: #179 fixed the `§N` references the
flattening broke and #216 the `file:line` ones, but the `name + stamp`
shape (`US-20`, `v0.2`) was never audited.

The pack values are now plain prose (both sentences were already
self-contained), each edited static fallback in ui/index.html is kept
byte-equal to its pack value, and the three ui/README.md lines that cited
the deleted section are re-pointed at the section that carries the
content today (docs/architecture.md §3, the `router.rs` row), in the
style of #179.

`ui/` text only: no Rust change, no i18n key added or removed (786/786
before and after), no new T() call sites or data-i18n attributes. i18n.js
content changed, so its cache-bust is bumped (20260912-5 -> 20260914-4).

Co-authored-by: argszero <argszero@argszerodeMac-mini.local>
@argszero
argszero merged commit 4907a1c into main Sep 13, 2026
1 check passed
@argszero
argszero deleted the fix/ui-dead-internal-pointers branch September 13, 2026 21:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant