chore(linkedin-studio): release v0.6.0 — figur-pipeline (MR-F4/MR-F8) + RE-R3 + OKF Stage 1 + kald-review 29/29 + sannhetspass

Versjonssync plugin.json + CLAUDE.md-header + README-badge -> 0.6.0.
CHANGELOG [0.6.0]-catchup: 28 commits siden v0.5.3-taggen (git log som fasit)
+ catch-up-note for aldri-changelogget arbeid inne i eldre tags (Fix #1
contract-gate + Fix #2 specifics-bank i v0.5.1; SB-S3a-e + RE-R1-R2b i
v0.5.3).

Suiter groenne paa fasit-gulv: test-runner 138/0, trends 245/0, brain 134/0,
hooks 140/0, tests 35/0, render 60/0.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: df0a1ca3-78dd-455e-99a2-e7c133fcb5f6
This commit is contained in:
Kjell Tore Guttormsen 2026-07-17 03:39:12 +02:00
commit 95b1521ae5
4 changed files with 41 additions and 4 deletions

View file

@ -5,6 +5,43 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [0.6.0] - 2026-07-17
**Catch-up release.** Everything since the v0.5.3 tag ships here (28 commits, `git log --oneline v0.5.3..HEAD` is the source of truth), and the sections below also document work that shipped **inside** earlier tags but was never changelogged (see the catch-up note at the end).
### Added — figure pipeline (MR-F4/MR-F8)
- **`render/build-figur.mjs`** — coded data figures: SVG/HTML → PNG via headless Chrome; three targets (article 1200px wide with content-driven height / carousel 1080×1350 / single 1200×1200); brand tokens from the user data dir's `profile/brand-tokens.json` with neutral defaults (token-seam); Chrome-hang watchdog. Standalone CLI + importable module; 33 tests. (`c4434ed`)
- **`/linkedin:newsletter` Step 7.5 — three figure routes** with the coded route PRIMARY for data figures, plus new **`references/figure-design-guidelines.md`** (reference docs 27 → 28). (`1a67bd2`)
- **`render/build-html.mjs` parser reconciliation** — multi-line blockquotes (blank `>` line = new `<p>` in the same quote), `[text](url)` links with an http/https/mailto scheme-whitelist, and the `**[FIGUR N — «…»]**` marker → inline SVG from `figurer/figN*.svg` with figcaption (fallback: plain blockquote) + CSS for all three. Byte-identical parser parity with the upstream engine proven by fixture; the import-safe `main()` CLI-guard is kept. 7 new tests. (`8151029`)
### Added — research engine RE-R3ae
- **R3a** — persist the relevance score on the store record + rank the morning brief on it. (`e169c78`)
- **R3b** — trend lifecycle: re-score on re-capture, status, seen-log. (`b185db9`)
- **R3c** — autonomous trigger: scheduler + headless entry. (`3276e44`)
- **R3d** — temporal overlay: first-mover + saturation. (`2a8459c`)
- **R3e** — brief history + day-over-day diff (frontmatter + "Nytt siden sist"). (`5b51b4b`)
### Added — OKF Stage 1
- The brain store emits an **OKF-compatible bundle** (`brain/` as bundle, `ingest/` excluded; title/description + typed pending-diff). (`9e95222`, `e9e183e`)
### Fixed
- **Oppgave 1 fix-pass** (from independent cold-review): clipboard heredoc, report refs, calendar queue fields. (`882f6ee`)
- **Prune-regex no-op** in state-updater + date-independent calendar fixtures (flake). (`776d728`)
### Docs
- **Independent cold-review complete — 29/29 surfaces** (R2a Create emitters, R2b Create orchestrators, R3 Engage, R4 Measure, R5 Grow + Router; `docs/hardening/review*.md`). (`5474df5``4fd038a`)
- **Truth-pass (this release):** README maturity note + badges (hardening 29/29 + cold-review 29/29; what remains for 1.0.0 is a GUI); CLAUDE.md maturity line + Architecture entries for specifics-bank and contract-gate; **GR-model correction** in `references/algorithm-signals-reference.md` — LinkedIn's ranking model has an official primary-source name, the **Generative Recommender (GR)**, announced 2026-03-12 on LinkedIn's engineering blog (the earlier "likely fabricated" flag rejected a genuine primary source and is retracted in a correction note); **saves-API rationale** updated (Marketing API v202604 exposes `POST_SAVE` on `/memberCreatorPostAnalytics`, partner-gated — manual entry remains the right UX); hardening queue table caught up through S31a/b/c; second-brain architecture header caught up through SB-S3ae. Plus maturity-status correction (`001d76c`), CLAUDE.md trim (2,266 always-loaded tokens, `9567689`), ingestion-guard adoption plan (`d67552e`).
### Catch-up note — work that shipped inside earlier tags, never changelogged
- **Inside v0.5.1:** **Fix #1 — contract-gate** (`scripts/contract-gate/`, deterministic §B/§C1 rule-gate, `/linkedin:newsletter` Step 4.5) and **Fix #2 — specifics-bank / lived-specifics** (`scripts/specifics-bank/` store + per-edition binding + Step 1.5 elicitation, slices 13). Together these took the newsletter pipeline 16 → 18 phases.
- **Inside v0.5.3:** **SB-S3ae** (profile.md reader-wiring, supersede arm, cross-silo id-threading, operations.md ops centre, content-history retirement + read-side reconcile) and **RE-R1R2b** (item-schema + triage-scorer as tested code; item→store capture bridge with lossless schema v1→v2 migration; dated morning-brief artifact + session-start surfacing).
## [0.5.3] - 2026-06-24
### Changed — registration hygiene: agent fasit fixtures moved out of `agents/`