Skip to content

chore(main): release 0.76.0 - #122

Open
github-actions[bot] wants to merge 2 commits into
mainfrom
release-please--branches--main--components--lexflow
Open

github-actions[bot] wants to merge 2 commits into
mainfrom
release-please--branches--main--components--lexflow

Conversation

@github-actions

@github-actions github-actions Bot commented Aug 28, 2026 •

Copy link
Copy Markdown

🤖 I have created a release beep boop

0.76.0 (2026-09-17)

Features

  • add autonomous agent loop (OpenCode worker + reviewer) (b57fbaf)
  • add Cursor CLI as a second implementation engine (1fdd84c)
  • add Cursor CLI as a second implementation engine (385dc62)
  • agent-loop: add autonomous review for external PRs (0209bbc)
  • agent-loop: add autonomous review for external PRs (d9993e1)
  • agent-loop: add retry gate for faster recovery after transient failures (1a2074d)
  • agent-loop: add retry gate for faster recovery after transient failures (5e2208f)
  • agent-loop: add scheduled orca-supervisor workflow (5f459e7)
  • agent-loop: add scheduled orca-supervisor workflow (8d113ef)
  • agent-loop: migrate to Cursor-only engine with agent-driven picker and planner (4a18b7b)
  • agent-loop: migrate to Cursor-only engine with agent-driven picker and planner (c0aae72)
  • ai: persist editor drafts with range insert and markdown (779b3e0)
  • autonomous agent loop (OpenCode worker + reviewer + Orca supervision) (685f520)
  • chat: Sprint 2 transparency — tool indicator, enriched citations, error surfacing (d3dc0c7)
  • chat: Sprint 3 conversation quality — stop, markdown, context bounds (1ed4ebf)
  • ci: surface picker/planner output to Actions log, add caveman narration (701ef2a)
  • ci: surface picker/planner output to logs, add caveman narration style (6b94963)
  • core,api: serve non-article prose + corpus-drift report (#55) (e92f740)
  • core: add Disposicion model and extraction of closing dispositions (c5853dd)
  • explorer: trustworthy search UX — pagination, metadata, honest facets (9acf58b)
  • frontend: add AI disclaimers and grounding honesty (S1.1–S1.5) (6c6d556)
  • frontend: add in-app desktop update notice with mock updater (02ce5d7)
  • frontend: add legal status provenance and BOE trust UX (026fe84)
  • frontend: article-anchor hrefs, hash-scroll SPA test, explorer URL state (90c139c)
  • frontend: make Sprint 3 wayfinding match the real app (943e62b)
  • frontend: Sprint 3 comment UX — click highlights, badge, guards (a662312)
  • frontend: Sprint 3 surface craft for dashboards, i18n, and a11y (6a8d121)
  • frontend: unify search UX across palette, explorer, and routes (3c2c882)
  • frontend: wire Sprint 1 reachability entry points (deae42a)
  • graph: community colours, hover highlight, wire dead controls (123eb6a)
  • graph: persist edge resolution and mark inferred relations (8f6216a)
  • graph: precompute analytics and add global view plus path UI (746212d)
  • guide Ollama install and validate cloud keys in the wizard (fab67c9)
  • implement editor sprint 4 templates, citations and surface UX (3b3ceba)
  • law-detail: TOC, deep links, empty state, and virtualization (706e207)
  • onboarding: unify wizard flow and honest no-model chat state (5387f6c)
  • reading: citations, version diffs, and law metadata (36af0ca)
  • reading: structured article blocks, disposiciones API, typography pass (7c0e7aa)
  • resolve #106 — [data-fidelity] S2.1 — feat(core): Disposicion model + extraction of adicional/transitoria/derogatoria/final headings (4975eb7)
  • resolve #14 — [desktop] Diálogo in-app de "nueva versión disponible" + actualización en un clic (3017b36)
  • resolve #15 — chore(app): design-token & anti-pattern cleanup (baseline-ui) (50941f8)
  • resolve #20 — [graph] Sprint 2 — kind accuracy & coverage: strongest-kind merge + context-aware classification + preambles/disposiciones (17ea5d2)
  • resolve #23 — [graph-viz] Sprint A — correctness + quick wins: typed edges, honest rail, deep-link seed, theme, drop xyflow (2f72e2d)
  • resolve #24 — [graph-viz] Sprint B — design: community colouring, hover+arrows, wire the dead controls (d32a210)
  • resolve #25 — [graph-viz] Sprint C — scale: precompute PageRank/communities, global view + LOD, path UI, tests (aee6f01)
  • resolve #27 — [onboarding] Sprint 1 — make the wizard actually configure a working model (05e04bc)
  • resolve #28 — [onboarding] Sprint 2 — guided local + cloud setup (install Ollama, inline key + validation) (4493de6)
  • resolve #29 — [onboarding] Sprint 3 — one wizard, honest no-model state, polish (708ce01)
  • resolve #31 — [reading] Sprint 1 — make the text render as a document (parser blocks + clause render + titles + measure) (3f71dcc)
  • resolve #32 — [reading] Sprint 2 — navigation + honest states (TOC, deep links, empty state, virtualization) (f032741)
  • resolve #33 — [reading] Sprint 3 — citations, versions/diffs, metadata (685d1b0)
  • resolve #36 — [design] Sprint 3 — surface craft & distinctiveness (dashboards, i18n, a11y CVD) (4de3d8c)
  • resolve #38 — [chat] Sprint 1 — the trust core: persist sources+tool turns, fix cloud RAG, system prompt, AI disclaimer (77a4876)
  • resolve #39 — [chat] Sprint 2 — transparency & verification: tool indicator, cite-what-was-read, error surfacing, aria-live (17262d9)
  • resolve #40 — [chat] Sprint 3 — conversation quality: stop button + thread-scoped state, markdown, auto-title, bounded context (73ea4df)
  • resolve #42 — Sprint 1 — Never wedge (startup fault-tolerance) (88efe82)
  • resolve #43 — Sprint 2 — Every failure explains itself (error pipeline) (0fbc279)
  • resolve #44 — Sprint 3 — No silent data loss (ceebd0f)
  • resolve #45 — Sprint 4 — Frontend resilience + hardening (f76a219)
  • resolve #47 — [search-ux] Sprint 1 — matcher: tokenize + accent-fold + honest hints (7d65726)
  • resolve #48 — [search-ux] Sprint 2 — navigation: article anchors + hash scroll + URL state (9f017d2)
  • resolve #49 — [search-ux] Sprint 3 — trustworthy results: pagination, metadata, honest facets (3b89e46)
  • resolve #50 — [search-ux] Sprint 4 — one polished search: unify surfaces + feel (1d4ab93)
  • resolve #57 — [ia-nav] Sprint 1 — reachability: /search entry points, mobile Settings/Editor/Communities, palette overflow, editor docs (35567de)
  • resolve #58 — [ia-nav] Sprint 2 — honest controls: dead exports, false shortcut hints, stub tab, per-version diff (56728f5)
  • resolve #59 — [ia-nav] Sprint 3 — wayfinding & truthfulness: breadcrumb, help/tour, Reciente, chat copy, avatar (5e1985e)
  • resolve #60 — [ia-nav] Sprint 4 — placement, labels & i18n: MCP rename, dynamic diff, density, communities, translations (550e6dc)
  • resolve #62 — [trust] Sprint 1 — AI disclaimers & grounding honesty (chat, editor drafts, onboarding) (7af995d)
  • resolve #63 — [trust] Sprint 2 — legal status & data provenance (BOE link, status tooltip, disclaimer) (0e77464)
  • resolve #64 — [trust] Sprint 3 — inference signals in the graph (inferido edges, real node meta) (e5cf6ec)
  • resolve #65 — [trust] Sprint 4 — calibrated confidence in search & dashboards (42033e1)
  • resolve #67 — [micro-copy] Sprint 1 — monolingual surfaces: hispanicize editor + wizard, route i18n-bypassing components (1775a0f)
  • resolve #68 — [micro-copy] Sprint 2 — legal truth & honest data: correct rank labels, status wording, honest copy (20e5bce)
  • resolve #69 — [micro-copy] Sprint 3 — glossary & style: official terminology, gender-neutral welcome, grammar, casing (e8014e9)
  • resolve #70 — [micro-copy] Sprint 4 — plurals, numbers & system messages (0a9844b)
  • resolve #72 — [editor] Sprint 1 — persistence & lifecycle: flush autosave, history-safe switch, save indicator (4411ebf)
  • resolve #73 — [editor] Sprint 2 — AI assistant: range-anchored insertion, draft lifecycle, thread hygiene (83f52f1)
  • resolve #74 — [editor] Sprint 3 — comments that can be found: clickable highlights, badge, overlap/orphan guards (3d21cb9)
  • resolve #75 — [editor] Sprint 4 — templates, citations & surface comfort (49c9239)
  • resolve #77 — [backend-perf] Sprint 1 — event-loop & concurrency hygiene (chat off the event loop) (ff08651)
  • resolve #78 — [backend-perf] Sprint 2 — cold start <= ~15s (parse-and-release, CSafeLoader, single-pass) (7370db5)
  • search: tokenize, accent-fold, alias expansion, and search UX fixes (#47) (9207e3f)

Bug Fixes

  • accept OPENCODE_AUTH_JSON secret as base64 or raw JSON (be61815)
  • add Real Decreto-ley to explorer URL rango allowlist (448a0ab)
  • agent-loop: add intra-run quota fallback to Composer/Grok (50d98a1)
  • agent-loop: auto-escalate model tier and cross-run engine failover (9bace82)
  • agent-loop: auto-escalate model tier and cross-run engine failover (3d16ac1)
  • agent-loop: eligibility guard step failing under bash -e for normal-sized PRs (7f0724c)
  • agent-loop: idle-timeout was killing real work, drop unsupported --sandbox (a2d5ab2)
  • agent-loop: idle-timeout was killing real work, drop unsupported --sandbox (a798f64)
  • agent-loop: intra-run quota fallback to Composer/Grok (4edcedd)
  • allow resolve/reopen to update same comment mark (df8e703)
  • api: sort law list by publication date for Home feed (27565b4)
  • bound engine calls with a per-call timeout in run-engine.sh (cc64389)
  • bound engine calls with a per-call timeout in run-engine.sh (1410e0c)
  • bump pinned opencode to 1.18.21 (b6fbde7)
  • bump pinned opencode to 1.18.21 (b51c0dd)
  • chat: off-load tool dispatch off event loop, document single-user invariant (7612bc7)
  • chat: persist sources and tool turns, fix cloud RAG history (1fb7048)
  • chat: use anyio.to_thread.run_sync for event-loop offload (#77) (f4bdeac)
  • ci: keep picker's tee copy on stderr, not stdout (6f3b94c)
  • ci: keep picker's tee copy on stderr, not stdout (314c3ae)
  • ci: set GH_REPO in orca-supervisor to fix gh CLI repo detection (bed3c0b)
  • ci: set GH_REPO in orca-supervisor to fix gh CLI repo detection (f2bb02f)
  • ci: stop agent-loop commits linking to an unrelated real GitHub account (96637c6)
  • ci: stop agent-loop commits linking to an unrelated real GitHub account (5c2e2d4)
  • copy: apply official ES UI glossary and gender-neutral welcome (21b33f3)
  • core: article completeness — phantoms, ranges, zero-article, duplicates (3aec0e9)
  • core: attribute references inside disposiciones to the disposición (44c36c8)
  • core: keep repeal lead-in context for list-form derogations (d388943)
  • core: read full frontmatter block in parse_metadata_only (02777e6)
  • core: split Article.number and Article.title in _ARTICLE_RE (187b8dc), closes #112
  • core: stop article text at level-5/6 non-article headings (95f1717), closes #107
  • correct drift zero-article undercount and stale search cache (2596573)
  • default the cursor engine to composer-2.5 (eb54baa)
  • default the cursor engine to composer-2.5 (f0f401e)
  • editor: flush pending autosave and keep doc switches history-safe (e22829f)
  • error-detail pipeline and Spanish chat failures (issue #43) (78eb24e)
  • frontend: branch updater retry on error phase and guard poll (c8cc56f)
  • frontend: calibrated confidence in search, dashboards, and chat (85ca655)
  • frontend: correct legal status labels and honest micro-copy (9e863ff)
  • frontend: flush autosave to outgoing doc on route switch (b4caff0)
  • frontend: make remaining Sprint 2 controls honest (5b8ffde)
  • frontend: polish Sprint 4 placement, labels, and i18n (e170f19)
  • frontend: Sprint 4 micro-copy — plurals, system messages, errors (822c53b)
  • frontend: stop duplicating disposicion title in heading (4bfaf6e)
  • frontend: surface stream errors in AiDraftPanel and clear toolActivity (99e36c3)
  • frontend: wire wizard model setup to chat and settings (1447504)
  • graph: Sprint A correctness — typed edges, honest rail, deep-link, theme (1a39333)
  • graph: strongest-kind merge and context-aware reference classification (4a75733)
  • i18n: complete sprint-1 micro-copy sweep for editor and wizard (bbe330d)
  • i18n: refresh home greeting when locale changes (7328c27)
  • idle-timeout for agent-loop engine calls, infra-failure escalation (bc4052d)
  • materialize range placeholders in section span articles (5267ae3)
  • pass --head explicitly to gh pr create and clean orphan branches (4c6f1ec)
  • pass --head explicitly to gh pr create and clean orphan branches (a8d3ba3)
  • persist wizard completion from overlay and align profile probe timeout (dc8a8eb)
  • preserve template fill draft when escaping back to list (93c6a97)
  • replace agent-loop's flat call timeout with an idle-timeout, add infra-failure escalation (d888bd5)
  • resolve #107 — [data-fidelity] S2.2 — fix(core): stop article text at level-5/6 non-article headings (9eb13af)
  • resolve #108 — [data-fidelity] S2.3 — fix(core): attribute references inside disposiciones to the disposición, not the last article (ad7a5a5)
  • resolve #109 — [data-fidelity] S2.4 — fix(core): classify list-form derogations as repeals across a)/b) items (278f7ce)
  • resolve #111 — [data-fidelity] S1.2 — fix(core): read the full frontmatter block in parse_metadata_only (drop the 4KB cap) (10782ba)
  • resolve #112 — [data-fidelity] S1.3 — fix(core): split Article.number and Article.title in _ARTICLE_RE (106c2d8)
  • resolve #54 — [data-fidelity] Sprint 3 — article completeness: phantoms, ranges, zero-article, duplicates (a4d8497)
  • resolve #55 — [data-fidelity] Sprint 4 — serve preámbulo/anexos + drift guardrails + golden suite (08225a5)
  • resolve #87 — [red-team] Sprint 1 — MCP exec & CSRF boundary (P0: consent-before-spawn, Origin allow-list) (1b020a7)
  • resolve #88 — [red-team] Sprint 2 — trust-boundary input validation (git arg injection, provider probe, noopener) (8f3ee36)
  • resolve #90 — [red-team] Sprint 4 — availability & multi-tenant posture (off-loop dispatch, user scoping) (c506593)
  • robust AGENT_RESULT/VERDICT parsing (explicit alternation, not greedy class) (df2b9a4)
  • robust AGENT_RESULT/VERDICT parsing (explicit alternation) (1bc798b)
  • satisfy new ruff rules and bump 4 CVE-flagged dependencies (409eec5)
  • satisfy new ruff rules and bump 4 CVE-flagged dependencies (fbc0697)
  • Sprint 4 frontend resilience and hardening (#45) (48f5634)
  • stop referencing secrets directly in a step if: condition (c4a0369)
  • stop referencing secrets directly in a step if: condition (0673073)
  • stop silent data loss in editor, chat, search, and mock builds (#44) (3540aa5)
  • sync useModels cache when ModelWizard finish sets defaultModel (86d9441)
  • warmup: startup fault-tolerance for bad laws and graph failures (64a5045)

Performance

  • chat,registry,search: fix event-loop & concurrency hygiene (Sprint 1, #77) (0a14d97)
  • speed up cold start with parallel parse paths (#78) (c7e3083)

Documentation

  • agent-loop: document model auto-escalation, circuit breaker, and orca-supervisor (a7e9294)
  • agent-loop: document model auto-escalation, circuit breaker, and orca-supervisor (ce818fd)
  • backfill CLAUDE.md lessons for PR #102/#103 (253abec)
  • backfill CLAUDE.md lessons learned for PR #102 and #103 (b83e976)
  • point CLAUDE.md §7 at the SPA UI copy glossary (b1e8a26)
  • reroute agent-loop models by task and document the tier matrix (bfb3238)
  • reroute agent-loop models by task, add frontier-first reviewer cascade (fcec85d)

This PR was generated with Release Please. See documentation.

@github-actions
github-actions Bot force-pushed the release-please--branches--main--components--lexflow branch 19 times, most recently from 8edcfdc to 66205ea Compare September 3, 2026 17:22
@github-actions
github-actions Bot force-pushed the release-please--branches--main--components--lexflow branch 10 times, most recently from 8a3d6b6 to 90cba15 Compare September 7, 2026 22:47
@github-actions
github-actions Bot force-pushed the release-please--branches--main--components--lexflow branch 20 times, most recently from e253e08 to 4acb8fc Compare September 14, 2026 23:12
@github-actions
github-actions Bot force-pushed the release-please--branches--main--components--lexflow branch 7 times, most recently from 18fc027 to 1790bdf Compare September 17, 2026 13:17
@github-actions
github-actions Bot force-pushed the release-please--branches--main--components--lexflow branch from bd07271 to c55e969 Compare September 17, 2026 18:26

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment