All notable changes to Loom are documented in this file.
This changelog is generated directly from git commit history (non-merge commits) to keep entries accurate and auditable.
- Add DB migration
20260416_007_conversation_turn_metadata_v1so thread user turns can durably persist explicit attachment/context metadata across resumes - Add explicit conversation-turn attachment metadata plumbing for desktop thread file mentions and pasted-image attachments
- Refactor MCP + auth usability around a shared account authority: new MCP OAuth writes now use Loom secret refs with fingerprinted server identity, workspace-defined remote servers expose approval/trust state, and the desktop app now has a dedicated Integrations tab with management-grade MCP/account state plus guided account connect/routing actions
- Add DB migration
20260403_006_search_provider_state_v1for authoritative auth-free search provider pacing/cooldown state - Refactor
web_searcharound shared SQLite-backed provider authority:DuckDuckGois now the primary auth-free provider, provider pacing is coordinated across Loom runs, and DDG waits are skipped when they would violate the tool runtime budget - Unify task/cowork data authority boundaries: canonical task snapshots now gate run-control writes, cowork semantics come from
conversation_turns, transcript replay is journal-coverage-aware, and cowork session checkpoints record the turn boundary they cover - Add DB migration
20260402_005_data_authority_unificationfor task snapshot freshness plus cowork checkpoint/journal coverage metadata - Tighten cowork projection discipline: session checkpoints now derive counters from committed turns, non-semantic session metadata patches no longer rewrite checkpoint state, and
loom db doctorwarns on uncovered legacy transcript journals - Refactor
loomddesktop/runtime hot paths around SQLite: long-lived governed connections, governed durable-run lease writes, bounded durable event backpressure, direct live run/notification SSE delivery, and reduced frontend polling overlap - Add desktop hot-path latency diagnostics and a synthetic active-run API smoke benchmark (
scripts/active_run_latency_smoke.py) - Add
loomdsidecar entrypoint and runtime status contract for workspace-first desktop bootstrapping - Add workspace registry, workspace settings, and conversation/run link schema with migration coverage
- Add workspace-first API surfaces:
/runtime,/workspaces,/conversations,/runs, and grouped/settings - Scaffold
apps/desktopmonorepo workspace with Tauri 2 + React + Vite overview shell
- 2026-03-16
24a6ea4Fix tests for new streaming and cowork defaults - 2026-03-16
e5c9905Align default config with tuned local settings - 2026-03-15
5b6696dfeat: add /config runtime controls and live delegate timeout updates - 2026-03-15
0d3c0b0Handle adaptive replans for resumed verification runs
- 2026-03-08
f0c95f7Align tier1 syntax hard-fail scope with retry-writable outputs - 2026-03-08
0fa78e1fix: enforce resilience kill-switch paths and parse retry routing - 2026-03-08
2147e47telemetry: add verification resilience reliability metrics - 2026-03-08
a4dae41refactor: add assertion envelope and profile-aware synthesis resilience - 2026-03-08
a91ae16refactor: add resilience decision matrix and profile classification - 2026-03-08
73e3b43Harden verification reliability and add resilience implementation plan - 2026-03-08
388087dMark command-wrapper tools as mutating for seal guard coverage - 2026-03-08
9cdf44eImprove valuation verification reliability for precedent evidence - 2026-03-08
9864f4bmodified readme - 2026-03-08
e03fd94modified readme - 2026-03-08
62ff36dReseal artifacts after placeholder prepass mutations - 2026-03-07
965099cChangelog: mark version standardization as 0.2.0 release
- Normalize package version authority to
pyproject.tomland bump to0.2.0 - Replace hardcoded runtime version literals with shared
loom.__version__usage - Add version consistency guardrails (
scripts/check_version_consistency.py, CI check, and tests) - Update release-facing docs/examples for
0.2.0(README.md,INSTALL.md,docs/tutorial.html)
675c4feInitial commitae23f7cAdd project overview spec (00-PROJECT-OVERVIEW.md)17acd74Add project structure spec (01-PROJECT-STRUCTURE.md)5f12e64Add orchestrator loop spec (02-ORCHESTRATOR-LOOP.md)3286a68Add task state/memory and model router specs (03, 04)a051fb0Add tool system spec (05-TOOL-SYSTEM.md)03bb276Add verification gates spec (06-VERIFICATION-GATES.md)bb5a7dfAdd API server spec (07-API-SERVER.md)cb6ed66Add event system spec (08-EVENT-SYSTEM.md)89b363dAdd TUI client and agent integration specs (09, 10)f9a0cf3Add workspace and file management spec (11-WORKSPACE-FILES.md)ee7d15aAdd prompt architecture and error recovery specs (12, 13)0fd04f3Add human-in-the-loop and learning system specs (14, 15)c7f4cc2Scaffold project: pyproject.toml, CLI, config, CI, test infrab562cf1Implement task state and memory layer (Spec 03)e433dd3Implement prompt template system (Spec 12)53115f1Implement model router with Ollama and OpenAI providers (Spec 04)90b2a95Implement tool system with registry, file ops, shell, search (Spec 05)1741faeImplement workspace and file management (Spec 11)f21b625Implement orchestrator loop with event bus and scheduler (Spec 02)b1a670fImplement API server with FastAPI endpoints and SSE streaming (Spec 07)b1f6e11Add README, installation guide, and web-based tutorial39b008cFix runtime bugs: /config tier attribute and engine scratch_dir path
41845e8Wire Phase 2 integrations: verification gates, changelog, memory extraction, event persistence, re-planning24da424Update docs for Phase 2: verification gates, event persistence, re-planning1b4b3b0Implement confidence scoring, approval gates, retry escalation, and webhook delivery (Specs 08, 13, 14)f97a5a5Implement TUI client, MCP server, and learning system (Specs 09, 10, 15)09794d3Fix CI: use --extra dev for optional dependency installation70ae27fUpdate README and INSTALL docs for all implemented featuresf269e31Update tutorial with TUI, approval gates, MCP, and learning sections5d1f29cAdd full end-to-end integration test and agent connection documentation5d8bc94Add SubtaskRunner class for subtask execution encapsulation0d61a93Refactor orchestrator: extract SubtaskRunner, add parallel dispatch396f524Update docs and add CHANGELOG for SubtaskRunner and parallel dispatchc89ce04Add implementation plan for bringing Loom up to snuff8630e8dImplement phases 1, 2, and 5: new tools, streaming, error intelligence0597406Implement phases 3, 4, and 6: TUI enhancements, smarter planning, conversation modeb15311dRefactor tool registration to plugin auto-discovery modeld7049c0Update CHANGELOG with plugin auto-discovery entryf4dc27dAdd gap analysis: Loom vs Claude Code cowork model84b59faImplement cowork mode: conversation-first interactive execution620437dUpdate CHANGELOG and README with cowork mode, new tools, and Anthropic provider926be5eAdd web_search tool using DuckDuckGo (no API key required)19cf277Add per-tool-call approval system for cowork modec0d9c9dAdd streaming, task tracker, PDF/image support; close all gapscf9cb55Rewrite TUI to use CoworkSession directly (no server required)112c73fUpdate all docs and tutorials to reflect cowork features4a14ba3Fix all ruff lint errors: unused imports, line length, naming conventions83c6343Move PLUGIN_PLAN.md to planning/refactors/2b018d7Add TUI refactor plan: multi-panel command center design55f99fbRefactor TUI into multi-panel command center with dark themeba37f64Add comprehensive error handling across all system layers6982e1cClarify that cowork mode works with any model providerd5df627Add conversation archive refactor plan for non-lossy cowork history2a152beAdd three-layer context awareness strategy to conversation archive plan64427b9Add cowork-to-task delegation as core component of conversation archive planba64a59Implement non-lossy conversation history + task delegation for cowork mode71bf5dfAdd mid-session switching between cowork sessions0bbfb49Fix 52 bugs, security flaws, and edge cases from comprehensive code reviewd3cf583Fix 23 bugs from second comprehensive code review77d7f5bFix 11 bugs from rounds 3-5 code review + changelog + audit doc
8b6d5e4Add comprehensive plan for general-purpose Loom expansion5a64836Redesign expansion plan around declarative process definitions0d2c4d5Add three rounds of critical review to process definition architecture5ca225dFix 15 lint errors: line length, unused imports, f-string and alias issuesd34e4fdImplement process definition plugin architecture with extensible tool system7f17236Clean up built-in process definition YAML formatting6ada59aFix correctness bugs: type safety, double stat, unused --process flag6caa980Harden safety: exponent limits, file size checks, error logging28cae9bFix type: ignore comments in spreadsheet tool with assertions9bfaa5eAdd tests for safety guards and edge cases70ecb71Remove type: ignore in cycle detection with proper type narrowing70ed852Minor YAML formatting cleanup in builtin process definitionscd40f19Update all documentation for process definition plugin architecture1a2d639Add process package installer with loom install/uninstall commandsa3dad14Add security review gate to process package installer1dc26b5Round 1: Fix correctness bugs across verification, installer, schema, CLId04a7cfRound 2: Safety and edge case hardening20217aaRound 3: API consistency fixes93b8742Round 4: Improve test coverage for verification, schema, and tool fixes43403fbAdd Google Analytics process packagee1de19bFix lint errors: import ordering and collections.abcba2f17fAdd fuzzy matching, batch edits, and diff display to edit_filea36c757Code review fixes: bug fixes, TUI diff support, expanded testsea59164Fix lint: line length violations in file_ops and tests7e0eda0Rewrite README for clarity, accuracy, and the human readerbd5b344Add multimodal content support: images, PDFs, thinking blocksb144a87Wire multimodal content through TUI, API, and terminal displaye66c3ffFix multimodal integration gaps: OpenAI provider, deserialization, events2e07188Harden multimodal content: fix data loss, injection, leaks, validation0690100Fix TUI rendering bugs: center modals, escape markup, style diffs47f4353Unify TUI as the single interactive interface;loomlaunches it by defaultb7e4587Update all docs and tutorial for unified TUI as default interface0be941dHarden TUI: graceful DB fallback, broader error handling, ask_user in followupsa7821eaAdd sad-path tests for TUI cowork integration376b051Add first-run setup wizard andloom setupcommandfc59cd1Move setup wizard into TUI as a modal screene1d92e5Fix TUI setup bugs, harden session logic, update docs3fdf077Lint cleanup: remove unused imports and variables2064c25Fix CI lint failures: remove f-string prefix and sort imports2be0121Add process package authoring guide for AI and human authorseeb27a7Broaden README to reflect Loom as a general-purpose agent engine9410b17Expand default workspace analysis to scan for non-code documents20ee5b9Add Word (.docx) and PowerPoint (.pptx) document supportf866705Fix lint error and update docs for office document support98afef2Update model names in README tagline to Kimi, Minimax, GLM6e8b5d8Replace remaining Qwen references with MiniMax in README8e42288Fix MiniMax model identifiers in README config examples22a1c83Use kimi-k2.5 as primary model in README config example
da45203Move PLAN.md into planning/refactors directory6af21c4Add automatic behavioral reflection to ALM (Spec 16)13502e2Add spec to drop regex from codebase in favor of structural alternatives1830758Rewrite DROP-REGEX spec to scope only to learning/reflection.py8d3f0c6Redesign ALM spec around task completion gap analysis83ec647Replace regex reflection engine with task completion gap analysis832bf93Add /learned command for reviewing and deleting learned patternsf50de9eUpdate docs and specs for ALM and /learned commandab46d78Update tutorial.html for ALM and /learned commandfaef639Add help and quit to command palette; update README introfc38c86Redraft README intro sections: Claude cowork framing and MCP mention489e694Add foundation refactor plan from full codebase auditf7be8ceAdd tree-sitter integration plan from design discussion03490ceImplement 6-phase foundation refactor across 22 files71cca12Fix linter errors: import ordering and line lengthsceeaa59Fix duplicate tool registration crash on TUI startupe62c125Rename loom.toml to loom.toml.example, gitignore loom.toml2316bd6Fix setup wizard not accepting keystrokesedc7d2dadding code review9fbe157Add code review plan from main branch026b94ftui fixes and review4d488adFix 14 code review issues (P0-P2) with tests0894a4cAdd TUI review document from main branch9e6a8cfFix 8 TUI review findings (P0-P2) from 2026-02-16-TUI-REVIEWe1c694dUpdate docs to reflect current codebase state0e727beAdd tree-sitter integration for code analysis and structural editingb80f32aFix review findings: byte/char offsets, nested defs, Rust impl, naming
1f0f2ffUpdate docs for tree-sitter integration and current stats
a44cdcfFix API process isolation, reset TUI file panel, and add tree-sitter CI gate770152dHarden weak tests to reduce false positives6404dd6code-review docs and uv.lockab0de15Harden TUI setup flow and add process/package refactor plan39750b4Propagate active process through TUI sessions and delegationfdacb0bEnforce process required tools in TUI and orchestrator35eb106Honor process.default for run and TUI launch2256c7fAdd in-session /process controls and process status displayc72f542Copy full process package assets with safe installer filtering670f5b7Enforce strict process phase blueprints in planningd37618dFix package install docs for Google Analytics process7c4894dAdd process controls to the TUI command paletted4377f4Reject process tasks with missing required tools at API create3e1d2dbDocument in-session process controls in README3c5e99bApply process.default in API task creation path4abb24cEnforce process runtime semantics for critical and synthesis phases8eb1ae4Close process/package plan: isolated deps, collisions, docs3226783Harden web tools and scope process deliverable verification
f174ac0feat: add process testing framework and MCP tooling improvements559ee89fix: apply configured api keys in openai-compatible and ollama providers334f03erefactor: broaden cowork system prompt beyond coding-only framingd7da827Improve process orchestration UX, resiliency, and docs parity37e968eAdd rich TUI file viewer renderers and learned-pattern cleanupe273c04Close file viewer modal on backdrop click663ebb3Implement MCP config management across CLI, TUI, and runtime3fd3d8eRefine MCP OAuth plan and fix TUI input/hint layoutc0dd66bImprove process run live feedback and process-use UXa66447eExpand Ctrl+P palette coverage and command prefills85d1efbHarden process runs, TUI UX, and provider message compatibility8d71f5dHarden verifier JSON parsing for critical-path retriese858f11Harden OpenAI payloads against empty assistant content92e4d4eAdd market-research process and harden TUI process UXc815333Replace hard truncation with semantic compaction
1a9841eHarden process verification stack and tighten delegate logging
e1dc880massive processing refactor. v2 of process definition.84c5798TUI hierarchy fixesba3c7a4Fixing some process issues, TUI issues, and more.bf26548fixing a small bug in testing and reworked the process progress box in the TUI028b4e5small ui bug21cfe1ddoc updates
28b4caaFix TUI mouse interaction startup flagec0c240Simplify MCP/auth UX and prune routing complexity
4f42efeTune compactor budgeting and docs defaultsf1d80d2Align CLI run process resolution with TUI flowc883f64Stabilize event persistence assertions in integration tests2d28ae3Harden replanning with version fencing and strict ID continuity
1fe5202docs: align model role split examples and revalidate dead-code planccb07fbfeat: add artifact ingest handling and telemetry transparency controlsb92d1b6Implement telemetry transparency events and default-on rolloutd88f5f2Harden contradiction scan coverage gating4fba048Avoid hard import dependency for contradiction event typed082fdcImplement keyless research tool suitea2d66d2doc updates, process updates, retry architecutre changesc177ba6adding potential web frontend1f7f7e9Export evidence ledger CSV during wrap-up
79295b3Harden economic provider JSON payload parsing9aa8371Honor read_roots for spreadsheet read operations63eaa9cAdd /run goal-file input support and docs291437fAdd humanize_writing tool with deterministic scoring and tests6e43efeMake map-competition non-blocking for unverified competitor entries
3318acdAdd keyless investment tool suite and FRED economic provider support1d5524aAdd TUI input history navigation with resume restore3b24715Fix portfolio optimizer event-loop freeze in TUI runsa0e495fAdd keyless market-signal tool suite6914233Fix synthesis deadlocks and add stalled-run safeguardsd2dd913Fix deterministic synthesis contract responses84e95f5docs: align tutorial intro with harness positioning0e22f88Make missing-data remediation non-fatal in marketing strategy
c5880f7docs: use uv run loom in README commands3ebb559adding technical design doce088aa9Implement reliability hardening and refresh technical design
8fb9b59docs: update README.md551670ddocs: add README screenshot0de3623Implement resource-first auth lifecycle, migration tooling, and UX hardeningd133ef2Harden process prompts and shell safety for segmentation runsf3747a4Improve cowork turn telemetry and render chat as Markdowne98d3d5Reduce startup and interaction latency via async MCP warmupd1dfa4fAdd hybrid tool entrypoints and follow-up config/auth updates338f427Harden auth profile selection and tool inventory coverage
dc3afe9cowork: compact context via recall index and add turn telemetry55156eeImprove hybrid list_tools flow and enforce scoped schema lookupb94f013Fix cowork prompt JSON examples in f-stringc2e61ffRepair dangling tool-call chains in cowork context4536fb3Add model-planned failure remediation with bounded metadata context8ef408aAdd cowork tool-loop convergence guard and context-window fixf1b3064Add structured match and file counts to ripgrep_searchf23d72dImplement chat history replay refactor for TUI session resume3a743cfHarden slash command hints with full scrollable cataloge994e59Fix duplicate chat panel rows during live turns0883857Implement cowork delegate progress UX and realtime TUI refresh44db5b9Fix lint line-length in delegate progress widget1184a00Harden /run launch liveness and in-place stage heartbeat UX2edf67eHarden process-run cancel flow and fix queued Ctrl+W hangsb5df6ceMove technical design doc to docs with updated date5cda3c2changing image1a139bfAdd live GA4 API retrieval with auth to google-analytics package1e59c87Fix ga_live_api tests leaking global tool registrationsab377f5Move GA live API tests into package-local test directory
c4630d8Improve auth discovery scope and preserve selected mode in /authd6e05eftui: remove /process mode and simplify /run palette flows38f57c9mcp: add oauth token runtime and manager support486a6b6Harden MCP/Auth management and tab UXc876a05Add header activity indicator and refine active animation0ad619aAdd rich /model details and new /models TUI command1738235Refine header activity indicator rendering behavior17d9b20Align outputs with replans via phase IDs; remove deprecated auth-path noise48bda35tui: align sidebar progress icons in dedicated column9d1a0f4Fix MCP stale alias reload and auth-check explicit scopinge0d72f6Implement hybrid cowork chat stop control and hardening227c1e7Implement cowork steering queue controls and execution fixesfa6035eFix remote MCP OAuth and streamable MCP tool discovery9c20a61Enable clickable markdown links with URL tooltip in cowork chat7c236dfauth: harden mcp oauth boundary and reuse compatible drafts72bb236tui: make auth manager sync explicit and refresh read-only951db4cRetheme cowork markdown to replace magenta defaultse3e2ad4auth: classify audit history separately from active orphan findingsc9fbfc1auth: add /auth oauth lifecycle commands and tui actions
241e47cComplete auth cleanup phases: OAuth parity, TUI mode UX, and token handlinge8a2d6bdocs: sync endpoint count and current project stats5dac6bachanging imagee2dba38tests: remove credential-style URI fixtureae69a68ci: keep live canary config out of uploaded artifacts7416521Improve tooling UX and provider-specific coding agent integrations385c66aGuard on_key screen lookup when no screen stack is mounted
ed92c32Add phase-level iteration loop runtime, gates, persistence, and docs42b5e08Improve process run controls, auth preflight, and workspace selectiona30398dFix chat scroll lock and tighten activity pane spacing5c36ed6feat(cowork): harden long-session context recall and indexing
3456125Harden ask_user runtime flow and execution-surface gatinged2a6bcAlign delegate_task TUI approval default with /runf3c68cadocs: remove stale LOC remark from README1ce7ccaadding trufflehog precommit hook
0813474Improve command palette, landing flow, and close-tab safety031a631Add loom2 hero image to README3dd0b07feat(validity): enforce claim-level synthesis gates and evidence lineage6b72edfEnforce evidence-backed edits for sealed verified artifactsbfdd915Enable ask_user interactive defaults935e21dDefault process test execution to temp workspace
ca97094Refine ask_user UX and raise per-subtask cap defaultb75d87aSplit placeholder prepass from confirm-or-prune resolutionfecb07aHarden SQLite migrations and startup persistence semantics8aaefc4Implement telemetry coverage and auditability hardening03a16beadding refactor plans and updates to technical docc42ebbdRelink migration diagnostics to event type constants0d77f06Fix verification guard wording and token redactiond8df362Harden fan-in output coordination and transactional publish flows0d70627Implement runtime telemetry verbosity modes and controls
a7fef18Refactor core engine modules into package-based subsystems48ad5ecrefactor(tui): split app into package modules with css filecc90b6arefactor(cli): split main into modular cli package8ac0558docs(plan): update main entrypoint split plan0c86629Split monolithic TUI tests into tests/tui modulesab1647bSplit orchestrator tests into package and add legacy path guardd8ab27dUnify sealed artifact mutation policy and sanitize docs paths