v1.0.4
What's Changed
- fix(core): surface failed change checks by @xingkaixin in #426
- fix(core): retain cache for unavailable agents by @xingkaixin in #427
- fix(cli): retry partial backfills by @xingkaixin in #428
- fix(web): use inclusive session costs by @xingkaixin in #429
- fix(web): bound large message and tool rendering by @xingkaixin in #430
- fix(ci): make coverage tests deterministic by @xingkaixin in #431
- fix(core): merge search cost bounds atomically by @xingkaixin in #432
- fix(cli): retry failed alias loads by @xingkaixin in #433
- fix(web): preserve bookmark toggle order by @xingkaixin in #434
- fix(web): ignore stale alias results by @xingkaixin in #435
- fix(web): surface resource load failures by @xingkaixin in #436
- fix(cli): authenticate loopback API by @xingkaixin in #437
- fix(cli)!: constrain trusted proxy access by @xingkaixin in #438
- fix(cli): bound project identity workload by @xingkaixin in #439
- fix(cli): bound active SSE connections by @xingkaixin in #440
- fix(web): handle deep session hierarchies by @xingkaixin in #441
- fix(web): restore narrow-screen navigation by @xingkaixin in #442
- fix(web): index child session lookups by @xingkaixin in #443
- fix(web): release inactive session projections by @xingkaixin in #444
- fix(projects): bound catalog pagination by @xingkaixin in #445
- fix(web): bound project timeline rendering by @xingkaixin in #446
- fix(deps): restore dependency update coverage by @xingkaixin in #447
- test(web): cover receipt lifecycle by @xingkaixin in #454
- fix(docs): validate structure map paths by @xingkaixin in #455
- fix(docs): describe live runtime architecture by @xingkaixin in #456
- fix(core): centralize agent catalog by @xingkaixin in #457
- fix(core): unify session identity by @xingkaixin in #458
- refactor(scan): declare source capabilities by @xingkaixin in #459
- fix(sessions): require identity before publication by @xingkaixin in #460
- build(deps): bump actions/setup-node from 4.4.0 to 7.0.0 by @dependabot[bot] in #448
- build(deps): bump the production-dependencies group across 1 directory with 4 updates by @dependabot[bot] in #449
- fix(core): unify Codex token usage accounting by @xingkaixin in #461
- fix(core): preserve cache callback programming errors by @xingkaixin in #462
- refactor(cli): split agent sync responsibilities by @xingkaixin in #463
- refactor(web): isolate session tree DOM adapter by @xingkaixin in #464
- refactor(web): model session loading states by @xingkaixin in #465
- build(deps-dev): bump the development-dependencies group across 1 directory with 5 updates by @dependabot[bot] in #450
- build(deps-dev): bump eslint from 9.39.5 to 10.8.1 by @dependabot[bot] in #452
- build(deps-dev): bump eslint-plugin-astro from 1.5.0 to 3.1.0 by @dependabot[bot] in #451
- chore(deps): preserve the Node 22 type contract by @dependabot[bot] in #453
- fix(cli): shut down the store on the --json path by @xingkaixin in #466
- fix(core): stage publication payloads in temp schema by @xingkaixin in #467
- perf(core): index the search freshness probe columns by @xingkaixin in #468
- Refactor agent registry as immutable data by @xingkaixin in #469
- Encapsulate agent cache metadata by @xingkaixin in #470
- Centralize agent scan execution planning by @xingkaixin in #471
- Use query cache as the session data source by @xingkaixin in #472
- Classify cache database read failures correctly by @xingkaixin in #473
- Test live scan behavior through public boundaries by @xingkaixin in #474
- fix(search): reindex project identity changes by @xingkaixin in #475
- refactor(agents): simplify file parse results by @xingkaixin in #476
- fix(agents): surface Kimi I/O failures by @xingkaixin in #477
- refactor(agents): inject session source roots by @xingkaixin in #478
- refactor(web): isolate receipt simulation by @xingkaixin in #479
- refactor(scan): unify refresh inspection by @xingkaixin in #480
- refactor(agents): centralize cache metadata state by @xingkaixin in #481
- refactor(contract): unify session reference keys by @xingkaixin in #482
- refactor(cache): split connection from schema by @xingkaixin in #483
- refactor(web): unify session scroll ownership by @xingkaixin in #484
- feat(www): add Japanese landing page by @xingkaixin in #485
- test(cli): cover backfill scheduler directly by @xingkaixin in #486
- ci: verify CLI on Node 22.0.0 by @xingkaixin in #487
- refactor(web): remove unused load error state by @xingkaixin in #488
- build: centralize shared dependency versions by @xingkaixin in #489
- build: upgrade workspace dependencies by @xingkaixin in #490
- refactor(core)!: Narrow package root exports by @xingkaixin in #491
- fix(cache): Unify session row deletion by @xingkaixin in #492
- fix(web): Reuse dashboard query cache by @xingkaixin in #493
- refactor(core)!: Remove legacy session identity fields by @xingkaixin in #494
- refactor(cache): Split content migrations by @xingkaixin in #495
- Preserve cache read failure semantics by @xingkaixin in #496
- refactor(cache): Unify session head upserts by @xingkaixin in #497
- refactor(scan): Centralize persistence decisions by @xingkaixin in #498
- refactor(cache): Split schema responsibilities by @xingkaixin in #499
- refactor(web): split timeline responsibilities by @xingkaixin in #500
- refactor(agents): isolate record conversion by @xingkaixin in #501
- refactor: remove production import cycles by @xingkaixin in #502
- refactor(scan): centralize session tag policy by @xingkaixin in #503
- refactor(cache): split search index responsibilities by @xingkaixin in #504
- refactor(web): simplify session store loading state by @xingkaixin in #505
- refactor(www): split product demo scenes by @xingkaixin in #506
- Improve agent session pipeline performance by @xingkaixin in #507
- fix(cli): preserve unavailable refresh baseline by @xingkaixin in #508
- fix(core): unify file operation classification by @xingkaixin in #509
- fix(core): slim Kimi Code head scans by @xingkaixin in #510
- fix(cli): derive scan status lists by @xingkaixin in #511
- fix(core): unify Grok message grouping by @xingkaixin in #512
- test(cli): use production worker semantics by @xingkaixin in #513
- refactor(cli): model worker run lifecycle by @xingkaixin in #514
- fix(contract): sanitize public session heads by @xingkaixin in #515
- fix(api): unify dashboard date parsing by @xingkaixin in #516
- fix(cache): validate schema migration plans by @xingkaixin in #517
- refactor(tags): centralize smart tag catalog by @xingkaixin in #518
- refactor(agents)!: Remove legacy refresh paths by @xingkaixin in #519
- perf(web): Batch detail query invalidation by @xingkaixin in #520
- refactor(contract)!: Remove duplicate event counts by @xingkaixin in #521
- refactor(discovery): Unify scan plan execution by @xingkaixin in #522
- refactor(web): Narrow session store results by @xingkaixin in #523
- refactor(sync): centralize commit finalization by @xingkaixin in #524
- refactor(discovery): unify refresh selection by @xingkaixin in #525
- refactor(web): derive session requests from window by @xingkaixin in #526
- refactor(core): narrow source sync API by @xingkaixin in #527
- Fix refresh check commit ordering by @xingkaixin in #528
- Isolate pricing miss capture context by @xingkaixin in #529
- Split session timeline responsibilities by @xingkaixin in #530
- Propagate project reload failures by @xingkaixin in #531
- fix(web): guarantee trailing aggregate refresh by @xingkaixin in #532
- fix(core): make database scans self-contained by @xingkaixin in #533
- refactor(core)!: split runtime entry points by @xingkaixin in #534
- refactor(core): remove legacy SQLite tables by @xingkaixin in #535
- fix(cache): skip legacy table backup by @xingkaixin in #536
- chore(release): prepare v1.0.4 by @xingkaixin in #537
Full Changelog: v1.0.3...v1.0.4