maniator / maniator/verticopolis
[Feature]: [P3] Retire the transitional lit string-builder guards (*Html + assertDomEquivalent) once the last dialog converts
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 5
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
Bundles the recurring "joins the transitional string-builder retirement list" residual that every lit-migration story (E2-S1..S4, E3-S1..S5, E4, E5) parked, folded from the deferral inbox by #545. No lit-migration cleanup row existed.
Each migrated dialog left its old *Html string builder as dead production code, kept alive only so its assertDomEquivalent(oldHtml(...), template(...)) guard has a legacy string to diff against. The plan (stated in every story) is to retire the builder in the PR that retires its guard, in one sweep when the LAST string dialog converts (editor/inspector, E6/E7). Parked builders so far include: confirmHtml, eventChoiceHtml, updatePromptHtml, settingsHtml, helpHtml, savesHtml, stopsHtml, newTowerHtml, the three TDT report builders (exportConfirmHtml/importReportHtml/exportReportHtml), and the statsHtml.ts builders (buildStatsHtml + section helpers).
Sweep: delete every orphaned *Html builder and its transitional test together. Where a builder was the ONLY guard for static copy (e.g. the new-tower lede/mode descriptions/calendar copy, the stats section text), add a direct text assertion or fixture snapshot FIRST so a later typo in the template source cannot slip through unguarded.
Tooling/tech-debt, UI plumbing (/bmad-code-review). P3: gated on the last dialog (editor/inspector) completing its lit migration.
Tracked as backlog row lit-string-builder-retirement; folded from the deferral inbox by #545.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by searching for the listed builders and their assertDomEquivalent guards, including confirmHtml, eventChoiceHtml, statsHtml.ts, and the other named builders. Review the related lit-migration stories and confirm the editor/inspector migration is complete before beginning. Done means removing each orphaned builder with its transitional test and adding direct text assertions or fixture snapshots where the guard was the only protection.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend, testing-qa, tooling
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100