chore(release): v1.5.1 manifest bump

- csproj <Version> 1.5.0 to 1.5.1; <None Include="images\**"> now
  excludes the source-only ASCII study folder so the deploy stays
  clean
- yaml + repo.json changelog block prepended with the v1.5.1 entry,
  v1.4.8 trimmed out per the slim rule (three to four versions in
  the manifest cache, older history lives on the Gitea release page)
- repo.json AssemblyVersion + TestingAssemblyVersion bumped to
  1.5.1.0, three DownloadLink* URLs point at v1.5.1
- docs/CHANGELOG and docs/ROADMAP gain the v1.5.1 entry; ROADMAP
  Next-Cycle slot moves to v1.5.2 First-Run-Wizard rework
- README status sections updated, the previous v1.5.0 paragraph
  kept under a "Project status (pre-v1.5.1, kept for context)"
  heading
- Forge-post .github/forge-posts/v1.5.1.md added, DE body honest
  about the HITCH-win miss
- yamllint config ignores the plugin manifest yaml because it
  follows DalamudPackager's 4-space indent convention rather than
  yamllint's default 2

Changelogs are honest about the cross-plugin HITCH target from
v1.5.0 not landing this cycle.
This commit is contained in:
2026-05-17 19:12:22 +02:00
parent 00ae81751b
commit 82cbf4c281
9 changed files with 204 additions and 90 deletions
+30 -12
View File
@@ -10,19 +10,37 @@ be a poor fit for the plugin's privacy-first scope during brainstorming.
---
## Next Cycle (v1.5.1)
## Next Cycle (v1.5.2)
**Honorific Full Gradient Port plus FontAtlas-Defer for a 10× HITCH cut.** v1.5.0 closed the
DI-container cycle with no performance penalty against Chat 2 (77 ms vs 74 ms median first-frame
HITCH), but the cross-plugin baseline against Lightless Sync and XIVInstantMessenger surfaced a
clean optimisation: both plugins defer their font-atlas build until after `Finished loading` and sit
at 6-7 ms HITCH, an order of magnitude below the ~75 ms floor that Chat 2 and HellionChat share.
v1.5.1 ports that pattern. Plus the Honorific gradient render path — DTO is gradient-ready since
v1.4.7, only the Wave / Pulse animation port remains. After that, First-Run-Wizard rework with
curated defaults beyond the three privacy profiles, then FR localisation (Hezcal native-speaker
review confirmed), then the Plugin Integrations Wave 2-6 (Context-Menu, NotificationMaster, Moodles,
ExtraChat, XIVIM Quick-DM). Wine/Linux scroll-rubber-band spike sits as a low-priority Linux-only
investigation at the tail.
**First-Run-Wizard rework with curated defaults beyond the three privacy profiles.** Jin's discovery
in v1.4.10 surfaced the wizard's three-card layout as too thin — power users want richer presets out
of the box. After that, FR localisation (Hezcal native-speaker review confirmed), then the Plugin
Integrations Wave 2-6 (Context-Menu, NotificationMaster, Moodles, ExtraChat, XIVIM Quick-DM). The
UiBuilder first-frame HITCH investigation that v1.5.1 surfaced sits as a separate spike near the
Wine/Linux scroll-rubber-band investigation at the tail.
---
## v1.5.1 — FontAtlas Refactor and Hellion Forge Signature (released 2026-05-17)
Hybrid FontManager refactor with init-only game-font handles plus a mutable delegate path for the
eight live font settings, all wired through a single `IFontAtlas.SuppressAutoRebuild()` block.
Atlas-build count drops from 4-5 per plugin load to 1. FontAwesome reuses Dalamud's
`UiBuilder.IconFontFixedWidthHandle` instead of building its own slot. `BuildFontsAsync` is removed,
`BuildFonts` renamed to `RebuildDelegateFonts` and scoped to the delegate fonts.
Plus an embedded Hellion Forge provenance mark: a fox-head ASCII silhouette in the `/xllog`
bootstrap banner, a full fox banner in the First-Run Wizard and Settings → Information tab. Drawn by
Julia Moon.
Honorific full-gradient port (originally the v1.5.1 main item) was dropped: Honorific 3.2 exposes no
IPC for the rendered gradient frame, and an in-plugin port of the colour palette was declined. The
integration stays at the v1.4.7 glow-only shape.
The cross-plugin baseline target from v1.5.0 (matching Lightless / XIVInstantMessenger at ~7 ms
HITCH) did not land — HITCH stays around 80 ms because the cost lives in the UiBuilder first-frame
render path, not in the atlas build. A first-frame render investigation is reserved for a later
cycle.
---