release: v1.1.0 — prompt patterns, CHANGELOG-driven release notes

- Prompt Builder: 12 named patterns (Direct/Reasoning/Agentic + Auto), live
  per-pattern hints in popup and in-page dialog, legacy promptStyle migration,
  and a 2048-token floor fix so longer patterns stop getting truncated.
- CHANGELOG.md added (Keep a Changelog + SemVer); release.yml now builds the
  Gitea release body from the matching version section, with a generic
  fallback, plus a zip-root fix so manifest.json sits at the archive root.
- package.json/package-lock.json bumped to 1.1.0; CLAUDE.md documents the
  CHANGELOG-gated release process.
This commit is contained in:
john kevin asprec
2026-08-12 07:51:15 +08:00
parent 444060c3eb
commit 7adcb47584
8 changed files with 101 additions and 34 deletions

View File

@@ -68,6 +68,16 @@
- **Known weakness:** workflows `git clone` into `/tmp` and set `http.sslVerify false` (RECOMMENDATIONS #17). Revisit for speed/security.
- **Owner / date:** Phase 1, 2026-03-06
### D-2026-08-12-08 — CHANGELOG.md drives Gitea release notes
- **Status:** accepted
- **Context:** Releases previously shipped a hardcoded release body (`## LexAI ${VERSION}` + generic install steps) that never said what actually changed in that version.
- **Decision:** Release notes live in `CHANGELOG.md` (Keep a Changelog format, Semantic Versioning). `.gitea/workflows/release.yml` extracts the section matching the pushed tag's version and uses it as the Gitea release body, with a generic fallback if no matching section exists. A version bump is not considered done until `CHANGELOG.md` has that version's section.
- **Alternatives considered:** Auto-generating notes from commit messages (rejected: commit history is not curated for user-facing wording); keeping the hardcoded body (rejected: uninformative to installers).
- **Consequences:** Every version bump now requires a `CHANGELOG.md` entry alongside the `package.json` bump; the release workflow degrades gracefully (generic body + logged warning) if that entry is missed rather than failing the release.
- **Verification:** `release.yml` reviewed by an independent critic; P2 findings fixed. Confirmed locally that the section-extraction logic matches `## [1.1.0]` and stops at the next `## [` heading.
- **Owner / date:** 2026-08-12
## Open / proposed
### D-PROPOSED — Narrow host permissions from `<all_urls>`