docs: add v1.4.9 changelog and forge announcement post

Synchronises the v1.4.9 changelog across the manifest sources that the
Dalamud plugin installer, the gitea repo.json feed and the Forge auto-
announce workflow read at release-tag time.

Files touched:
- HellionChat/HellionChat.yaml: v1.4.9 block inserted at the top of the
  changelog: literal. v1.4.5 dropped to keep the slim-rule at 4 subblocks
  (preflight Block C enforces YAML_VERSIONS <= 4). Current set is
  v1.4.9/v1.4.8/v1.4.7/v1.4.6.
- repo.json: Changelog field kept synchronous with the yaml — v1.4.9
  block prepended, v1.4.5 substring removed, JSON-escaped newlines.
- .github/forge-posts/v1.4.9.md: new file with frontmatter (subtitle
  "Plugin-Load Render Polish", versionsnatur "Performance-Patch") and
  a German-only body. The English half of the eventual Discord embed
  is pulled automatically from the yaml changelog at tag-push time by
  .gitea/workflows/forge-announce.yml — same workflow as v1.4.4
  onwards, the post file does not carry an English block.

Char-cap pre-check passes (title 46 + description ~2700 + footer 33 =
~2800 chars, well under the 5500-char Discord embed total cap).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-15 11:51:25 +02:00
parent d9f6704316
commit c6a3780753
3 changed files with 56 additions and 24 deletions
+28
View File
@@ -0,0 +1,28 @@
---
subtitle: Plugin-Load Render Polish
versionsnatur: Performance-Patch
---
- First-Frame-HITCH unter 100 ms: der erste Render-Frame des Plugins liegt
jetzt bei ~76 ms Median (vorher ~127 ms), die Dalamud-Warnung
„UiBuilder(Hellion Chat) > 100ms" beim Plugin-Start ist damit weg.
Erreicht durch das Verlagern von sechs nicht-essentiellen Render-
Sektionen (Statusleiste, Kanalname-Chunks, Fenster-Bounds-Check,
Hinweis-Banner, Autocomplete, Input-Preview) auf den zweiten Frame.
Bei 60 fps sieht man die deferred-Sektionen ~17 ms später, was im
Atlas-Build-Fenster nach einem Reload unsichtbar bleibt.
- Slash-Commands zentral registriert: /hellion, /hellionView,
/hellionSeString und /hellionDebugger werden jetzt im Plugin-Load zentral
registriert statt erst beim ersten Öffnen ihres Ziel-Fensters. Heißt: die
Befehle funktionieren ab dem ersten Tick, auch wenn das jeweilige Fenster
nie geöffnet wurde. Der „Einstellungen"-Button im Plugin-Manager hängt am
selben Pfad.
- Plugin-Load-Diagnose-Logs als Tripwire: die Profiling-Logs für
MessageStore.Connect, MessageStore.Migrate, FilterAllTabs und den
Auto-Translate-Warmup bleiben auf Information-Level eingeschaltet. Falls
eine zukünftige Änderung die Lade-Zeit wieder über 100 ms drückt, taucht
der Mehrverbrauch direkt im /xllog auf, ohne dass jemand erst den
Debug-Filter einschalten muss.
- Migration v17 unverändert: kein Schema-Bump, kein Config-Migrations-
Aufwand. Nach dem Update läuft das Plugin gegen die bestehende
v17-Datenbank weiter.
+27 -23
View File
@@ -35,6 +35,33 @@ tags:
- Replacement
- Privacy
changelog: |-
**v1.4.9 — Plugin-Load Render Polish (2026-05-15)**
Tenth sub-patch of the v1.4.x polish-sweep series. First-frame
render cost drops from ~127 ms median to ~76 ms median,
comfortably under Dalamud's 100 ms HITCH warning threshold.
- First-frame defer: six non-essential rendering sections inside
ChatLogWindow skip their first Draw and run one frame later
(bottom status bar, channel-name SeString chunks, window bounds
check, v0.6.1 hint banner, autocomplete, input-preview
calculation). User-visible delay is ~17 ms at 60 fps, hidden
inside the post-reload font-atlas build window.
- Slash-command centralisation: /hellion, /hellionView,
/hellionSeString and /hellionDebugger are registered in
LoadAsync instead of inside the corresponding window
constructors. The plugin-manager Open and configuration buttons
hang on the same path.
- Plugin-load profiling logs stay on at Information level
(MessageStore connect/migrate, FilterAllTabs, auto-translate
warmup) as a regression tripwire — a future load past 100 ms
will show up in /xllog without a Debug filter.
- Migration v17 stays (no schema bump).
Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
---
**v1.4.8 — Hook-Layer and Polish Quick-Wins (2026-05-14)**
Ninth sub-patch of the v1.4.x polish-sweep series. Hook-layer
@@ -151,27 +178,4 @@ changelog: |-
---
**v1.4.5 — UX and Robustness (2026-05-12)**
Sixth sub-patch of the v1.4.x polish-sweep series. Chat-log draw
failures surface as a notification, the first-run wizard has an
explicit "Later" option, the input history clears on plugin reload,
and the status bar version slot stops clipping in narrow windows.
- Chat window draw errors now show a one-shot notification instead
of failing silently — stack trace stays in /xllog
- First-run wizard: explicit "Later — keep defaults" button.
Closing the X no longer silently accepts the defaults; the wizard
reopens on the next plugin load if nothing was picked
- InputHistoryService clears on plugin dispose so the previous
session's typed commands don't bleed into the next load
- Status bar hides the version slot when the chat window is too
narrow to fit all five slots without overlap
- Internal: explicit session-only Auto-Tell-Tab invariant in
Plugin.cs plus a pinning test in the Build-Suite
- Internal: FontManager falls back to the system font if the
embedded Hellion font resource is missing — logs a Warning
---
Full history: https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/releases
+1 -1
View File
File diff suppressed because one or more lines are too long