Peter Steinberger
723d12fd4c
refactor(apns): move registrations to shared SQLite ( #108543 )
...
* refactor(apns): move registrations to SQLite
* fix(apns): satisfy strict migration typing
* chore(apns): remove obsolete lint suppression
* chore: prune APNs max-lines baseline
* refactor(apns): keep store internals private
* fix(apns): preserve stored relay origins
* fix(apns): advance versions across deletion
* fix(apns): harden legacy state import
* fix(apns): redact legacy import errors
* fix(apns): reserve version successor
* fix(apns): bound legacy timestamp imports
* refactor(apns): extract payload builders
2026-07-16 01:52:15 -07:00
morluto
16801bf4f0
fix(agents): prevent subagent registry resurrection ( #105793 )
...
* fix(agents): retire legacy subagent registry JSON
Co-authored-by: morluto <76467478+morluto@users.noreply.github.com >
* fix(agents): keep migration decision internal
Co-authored-by: morluto <76467478+morluto@users.noreply.github.com >
* style(agents): format migration decision type
Co-authored-by: morluto <76467478+morluto@users.noreply.github.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-15 17:01:42 -07:00
Peter Steinberger
766742c674
refactor(node-host): move configuration to shared SQLite ( #108457 )
...
* refactor(node-host): move config to shared SQLite
* test(node-host): satisfy migration gates
2026-07-15 14:02:23 -07:00
xydt-tanshanshan
d201acd6e8
refactor(push-web): move web push store to shared SQLite state DB ( #103294 )
...
* refactor(push-web): move state to shared SQLite
Co-authored-by: hailory <hailory@xydigit.com >
* fix(push-web): harden legacy migration retries
* fix(push-web): format migration lock errors
* fix(push-web): gate runtime during legacy migration
* fix(push-web): keep store internals private
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: hailory <hailory@xydigit.com >
2026-07-15 12:54:22 -07:00
Peter Steinberger
f41c143345
refactor(state): move skill upload staging to SQLite ( #108346 )
...
* refactor(state): move skill upload staging to sqlite
* test(skills): make archive mode assertion portable
* fix(skills): fence upload finalization by lease owner
* fix(skills): handle nullable lease expiry
* fix(skills): bound upload install leases
2026-07-15 08:40:46 -07:00
Peter Steinberger
e38cd62e0d
refactor(state): move managed image records to SQLite ( #108290 )
...
* refactor(state): move managed image records to sqlite
* refactor(state): narrow managed image store exports
* fix(state): preserve managed image media roots
* test(state): track managed image temp directories
2026-07-15 06:14:10 -07:00
morluto
1a34950d9c
fix(commitments): keep heartbeats responsive with large queues ( #105780 )
...
* fix(commitments): migrate store to sqlite
Replace steady-state JSON persistence with typed shared-state rows and a doctor-only verified import for shipped legacy data.
Co-authored-by: morluto <76467478+morluto@users.noreply.github.com >
* fix(commitments): satisfy migration gates
* fix(commitments): type sqlite counts defensively
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-15 03:58:03 -07:00
Peter Steinberger
75db23f3fc
fix: prevent stale rescue approvals from executing ( #108147 )
...
* fix(system-agent): persist rescue approvals in sqlite
Co-authored-by: Yung-Chen Tang <46495124+yungchentang@users.noreply.github.com >
* fix(system-agent): narrow rescue expiry clock
* test(system-agent): isolate rescue docker inference
* test(system-agent): align rescue docker doctor contract
* test(system-agent): accept canonical model shape
* fix(system-agent): refuse remote doctor repairs
* fix(infra): break rescue migration import cycle
* test(system-agent): lock rescue publish ordering
* test(system-agent): align rescue harness assertions
---------
Co-authored-by: Yung-Chen Tang <46495124+yungchentang@users.noreply.github.com >
2026-07-15 01:53:00 -07:00
Peter Steinberger
92fc907ffb
fix: preserve TUI restore state without JSON races ( #108058 )
...
* refactor(tui): move last session state to sqlite
* chore: keep release notes in PR body
* test: update doctor migration fixture
* chore: satisfy dead code export gate
2026-07-14 23:46:22 -07:00
Vincent Koc
6ef4684b89
fix(scripts): skip generated dist in legacy store guard
2026-06-19 17:22:14 +02:00
Vincent Koc
d16d2460b8
fix(ci): align sqlite refactor checks
2026-06-19 01:20:06 +08:00
Vincent Koc
38988d5395
fix(scripts): skip generated asset bundles in legacy-store guard
2026-06-17 20:03:12 +02:00
Galin Iliev
50c82b3020
fix(scripts): add database-first legacy store guard
...
Adds a required database-first legacy-store guard and regression coverage for legacy runtime state write patterns.
The guard is wired into architecture/preflight/changed checks, narrows the documented guard contract to the implemented filesystem-write scope, and tightens extension migration exemptions to explicit owner APIs. Also includes a small memory-core lint unblocker after current CI flagged an unnecessary non-null assertion.
Verification:
- pnpm check:database-first-legacy-stores
- pnpm lint:scripts
- node scripts/run-vitest.mjs test/scripts/check-database-first-legacy-stores.test.ts -- --reporter=verbose
- node scripts/run-oxlint.mjs extensions/memory-core/src/memory/manager-embedding-ops.ts
- git diff --check
- .agents/skills/autoreview/scripts/autoreview --mode branch --base origin/main
- GitHub CI green for PR head 34dde2c620
Closes #91628 .
2026-06-14 20:08:06 -07:00