Releases: AgustinCastanol/glia
Releases · AgustinCastanol/glia
Release list
v1.4.0
Changelog
Features
- 47104e5: feat(source/openspec): read-only openspec artifact source — foundation (PRD-11, PR 1/2) (#11) (@AgustinCastanol)
- 6258134: feat(source/openspec): status sources block, TUI filters, e2e + engine ingestion fix (PRD-11, PR 2/2) (#12) (@AgustinCastanol)
Bug fixes
- 2ad0ad6: fix(sync): compute newest-artifact timestamp for source status (PRD-11 §10) (@AgustinCastanol)
Documentation
- e53796b: docs(claudemem): document that supervisor.json publishes no port (v13.2.0) (@AgustinCastanol)
v1.3.1
Changelog
Bug fixes
- fd177cb: fix(tui): read store files from .glia subdir, not project root (#10) (@AgustinCastanol)
Chores
- 6b31a98: chore(security): add SECURITY.md and CODEOWNERS for OSS launch (#9) (@AgustinCastanol)
v1.3.0
Changelog
Bug fixes
- 6ef6661: fix(tui): route async loads to owning sub-model and redesign tab nav (@AgustinCastanol)
Documentation
- 350ea48: docs(prds): add PRD-10 (claude-mem file source) and PRD-11 (openspec source) (@AgustinCastanol)
- 3db0883: docs(prds): add PRD-8 (shelved) and PRD-9 (backup), rename tool to glia (@AgustinCastanol)
- 9fb02a7: docs: rewrite README as public OSS guide, promote docs/ out of drafts (@AgustinCastanol)
v1.2.0
Changelog
Features
- 8d825e9: feat(adapters): use cfg.Project in ListNative and FromCanonical (PRD-6 phases 4-5) (@AgustinCastanol)
- 3243863: feat(config): add per-provider project field and ResolveProject helper (@AgustinCastanol)
- 55a2332: feat(status): surface effective project per provider in glia status table and JSON (@AgustinCastanol)
- c0a71ba: feat(wiring): wire per-provider project into adapters (PRD-6 phases 2-3) (@AgustinCastanol)
Bug fixes
- ad4ecb9: fix(config): remove project-required check from validate(), add happy-path status test (@AgustinCastanol)
Tests
- 8811688: test(status): replace happy-path test with CI-safe wiring integration (@AgustinCastanol)
Documentation
- cd39aa1: docs(per-provider-project): add README docs, CHANGELOG v1.2.0, and integration smoke test (@AgustinCastanol)
v1.1.0
Changelog
Features
- fa96352: feat(adapter): add WriteCapability method to Adapter interface (@AgustinCastanol)
- affeabf: feat(adapter/claudemem): add SaveMemory transport and WriteSupported probe (@AgustinCastanol)
- d4736dd: feat(adapter/claudemem): implement WriteNative via POST /api/memory/save (@AgustinCastanol)
- 475427d: feat(config): add write_enabled to claude-mem provider config (@AgustinCastanol)
- ea1d345: feat(status): add write_capability column and JSON field to glia status (@AgustinCastanol)
- 6fdea2c: feat(store): add ByProviderRevision map and atomic BindProviderWithRevision (@AgustinCastanol)
- 40f30d9: feat(sync): add WriteErrors counter for non-fatal write failures (@AgustinCastanol)
- 7229592: feat(sync/pull): add drift detection and use BindProviderWithRevision after write (@AgustinCastanol)
Bug fixes
- b35dda2: fix(ci): make e2e and perf tests tolerant of CI environment (@AgustinCastanol)
- 63ae096: fix(wiring): propagate write_enabled from config into ClaudeMemAdapter (@AgustinCastanol)
Refactoring
- 9e7e835: refactor(sync/pull): use slices.Contains for supported-kinds check (@AgustinCastanol)
- 2172914: refactor(test/claudemem): use atomic.Int32 in 400 pass-through integration test (@AgustinCastanol)
- f239dff: refactor(test/claudemem): use atomic.Int64 in idempotency integration test (@AgustinCastanol)
Tests
- b1431ec: test(adapter/claudemem): add httptest-based integration tests for WriteNative write path (@AgustinCastanol)
- 3feedd1: test(adapter/claudemem): cover title-only and narrative-only WriteNative payload branches (@AgustinCastanol)
- 3946992: test(e2e): add bidirectional write path e2e tests for claude-mem (@AgustinCastanol)
Documentation
- 476171a: docs(store): clarify ByProviderRevision nil intent in loadIndex (@AgustinCastanol)
Chores
- 42c4c50: chore: modernize loops and remove dead test helper (@AgustinCastanol)
v1.0.1
Changelog
Bug fixes
- 2cad142: fix(adapter/claudemem): remove leftover debug log of first observation JSON (@AgustinCastanol)
- e91abd7: fix(adapter/engram): cache full records in ListNative for ReadNative (@AgustinCastanol)
- 8c8c5bc: fix(cmd/sync): fall back to config.Project when --project flag is empty (@AgustinCastanol)
Documentation
- 554e718: docs: add MIT LICENSE (@AgustinCastanol)
Chores
- 8b9add9: chore: gitignore README-LOCAL.md (local-only install/test notes) (@AgustinCastanol)
v1.0.0
Changelog
Features
- 55e2c8a: feat(adapter/claudemem): implement Health, ListNative, ReadNative with degrade-to-scan (PR#3) (AgustinCastanol acastanol@fi.uba.ar)
- 7d32adb: feat(adapter/claudemem): native record, ToCanonical/FromCanonical, helpers, unit tests (PR#2) (AgustinCastanol acastanol@fi.uba.ar)
- a8b0d1d: feat(adapter/claudemem): skeleton, Transport seam, resolveBaseURL, provisional record struct (PR#1) (AgustinCastanol acastanol@fi.uba.ar)
- a16ba9d: feat(adapter/engram): engram adapter impl + unit tests (PR#2) (AgustinCastanol acastanol@fi.uba.ar)
- b490737: feat(cli): add cobra skeleton with init, status, show commands (AgustinCastanol acastanol@fi.uba.ar)
- 5d0e26b: feat(cmd): add version command and no-telemetry help text (T-3.4, T-3.5, T-3.3) (AgustinCastanol acastanol@fi.uba.ar)
- 303134a: feat(cmd): buildAdapters wiring helper for shared adapter construction (AgustinCastanol acastanol@fi.uba.ar)
- dd9a443: feat(cmd): enforce version refusal in sync and status entry points (REQ-CFG-04) (AgustinCastanol acastanol@fi.uba.ar)
- 46a2056: feat(cmd,sync): sync CLI wiring with pull/push subcommands, exit codes, and tests (PR-D) (AgustinCastanol acastanol@fi.uba.ar)
- 73f4811: feat(cmd/doctor): health check command with --fix flag (T-3.1, T-3.2) (AgustinCastanol acastanol@fi.uba.ar)
- e52b6ca: feat(cmd/init): redesign with --force, --providers, --project flags and provider detection (AgustinCastanol acastanol@fi.uba.ar)
- ab69b43: feat(cmd/status): add --json flag for machine-readable status output (AgustinCastanol acastanol@fi.uba.ar)
- 40f62de: feat(cmd/tui): register tui and ui cobra commands (AgustinCastanol acastanol@fi.uba.ar)
- c06bc54: feat(config): new internal/config package with Load, merge, env overlay, version guard (AgustinCastanol acastanol@fi.uba.ar)
- 993ee82: feat(identity): new internal/identity package with Default and Resolve (AgustinCastanol acastanol@fi.uba.ar)
- f7be679: feat(store): add lock-free Stats() for TUI backend (AgustinCastanol acastanol@fi.uba.ar)
- e94e85f: feat(store): canonical memory schema primitives (PR 1) (AgustinCastanol acastanol@fi.uba.ar)
- 25fc5b9: feat(store): index, rebuild, recovery and Store core (PR 2) (AgustinCastanol acastanol@fi.uba.ar)
- e60d93d: feat(store): sync-state schema, conflict detection, sentinel errors (PR-A) (AgustinCastanol acastanol@fi.uba.ar)
- 3848ad8: feat(store): write path, tombstones and debug CLI (PR 3) (AgustinCastanol acastanol@fi.uba.ar)
- 3f4a5a8: feat(store,adapter): ByProvider IDMap + adapter contract (PR#1) (AgustinCastanol acastanol@fi.uba.ar)
- c8e6eb4: feat(store,sync): add ListLive, ConfigFilename, export ConflictSummary (AgustinCastanol acastanol@fi.uba.ar)
- 465542e: feat(store/schema): add WrapperMemsMinVersion field with omitempty + ReadSchema (AgustinCastanol acastanol@fi.uba.ar)
- e791213: feat(sync): Engine skeleton, equal, config, state helpers, Resolve (PR-B) (AgustinCastanol acastanol@fi.uba.ar)
- aa3a27a: feat(sync): implement push, pull, mirror flows; extend adapter/store contracts (PR-D) (AgustinCastanol acastanol@fi.uba.ar)
- d4ec4e5: feat(sync): resolve command, conflicts table, exit-code 2 polish (PR-E) (AgustinCastanol acastanol@fi.uba.ar)
- 4f83a02: feat(tui): add root bubbletea Model with tab routing and overlay system (AgustinCastanol acastanol@fi.uba.ar)
- 6471a53: feat(tui): add styles, data loader, and exec subprocess runner (AgustinCastanol acastanol@fi.uba.ar)
- bfe367e: feat(tui): conflicts tab with w/l/s keybindings; status tab with provider health and sync actions (AgustinCastanol acastanol@fi.uba.ar)
- ce444c8: feat(tui): lazy-index loadRecords with LazyRecord type; remove stub sub-models (AgustinCastanol acastanol@fi.uba.ar)
- 4e8f72b: feat(tui): observations tab with filterable list, detail pane, glamour render, OSC52 clipboard (AgustinCastanol acastanol@fi.uba.ar)
Bug fixes
- 7860638: fix(adapter/claudemem): discharge pre-merge gate with verified live shape (AgustinCastanol acastanol@fi.uba.ar)
- d70b5ed: fix(adapter/engram): reimplement ListNative over GET /export (DEFECT-LN-01) (AgustinCastanol acastanol@fi.uba.ar)
- 138d917: fix(adapter/engram): use rfc3339NanoFixed for ListNative since boundary (AgustinCastanol acastanol@fi.uba.ar)
- ae5e2ad: fix(cli): route exit codes through ExitCode, correct show filter docs (AgustinCastanol acastanol@fi.uba.ar)
- 09061a9: fix(cmd/status): align --json exit codes and add ConflictSummary JSON tags (AgustinCastanol acastanol@fi.uba.ar)
- 9368694: fix(cmd/status): wire real adapters via buildAdapters so provider_health populates (AgustinCastanol acastanol@fi.uba.ar)
- f544cc6: fix(store): preserve SyncState across Rebuild (AgustinCastanol acastanol@fi.uba.ar)
- b864ea3: fix(sync): correct equal_test case name, document watermark write atomicity (AgustinCastanol acastanol@fi.uba.ar)
- eb018d0: fix(sync): wire real adapter transports, reachable update-gap skip, durable push watermark (AgustinCastanol acastanol@fi.uba.ar)
- a009436: fix(tui): pointer-receiver sub-models, callStatusJSON guard, stable sort, nil-runner panic, vacuous test (AgustinCastanol acastanol@fi.uba.ar)
Refactoring
- 152ea5f: refactor(adapter/claudemem): take claudemem.Config; filter ExcludedSessionIDs in ListNative (AgustinCastanol acastanol@fi.uba.ar)
- 76a84fe: refactor(adapter/engram): complete Config-based New() signature (AgustinCastanol acastanol@fi.uba.ar)
- a61213f: refactor(adapter/engram): take engram.Config in New(); thread CLIPath and HTTPBaseURL (AgustinCastanol acastanol@fi.uba.ar)
- 191a69f: refactor(cmd/status): remove redundant enginesync.Load() call (T-3.7) (AgustinCastanol acastanol@fi.uba.ar)
- 5f34d4b: refactor(cmd/sync): wire adapters via buildAdapters; add toEngineConfig shim (AgustinCastanol acastanol@fi.uba.ar)
Tests
- 6a08c1e: test(adapter/claudemem): add integration pre-merge gate, pin verified /api/observations shape (PR#4) (AgustinCastanol acastanol@fi.uba.ar)
- b321e40: test(adapter/engram): integration tests against real engram binary (PR#3) (AgustinCastanol acastanol@fi.uba.ar)
- e4ac4b5: test(adapter/engram): update tests for Export-based ListNative (DEFECT-LN-01) (AgustinCastanol acastanol@fi.uba.ar)
- 1a3c8d7: test(cmd/doctor): unit tests for all 7 checkers and --fix idempotence (T-3.3) (AgustinCastanol acastanol@fi.uba.ar)
- a0c4fd4: test(cmd/init): unit tests for all REQ-INIT-01..07 scenarios and T-2.3 (AgustinCastanol acastanol@fi.uba.ar)
- c8913f2: test(e2e): end-to-end tests via compiled binary for init, status, doctor, version refusal (AgustinCastanol acastanol@fi.uba.ar)
- 8ee7a43: test(tui): unit tests for all tabs, golden layout snapshots, teatest smoke test, 100k benchmark (AgustinCastanol acastanol@fi.uba.ar)
- 597fce8: test(tui): unit tests for data loader, exec runner, and root model (AgustinCastanol acastanol@fi.uba.ar)
Documentation
- 6267a87: docs(store): correct providerIDMap interface satisfaction comment (AgustinCastanol acastanol@fi.uba.ar)
Chores
- 1cb1b76: chore(deps): add charm TUI dependencies for PR-2 compilation (AgustinCastanol acastanol@fi.uba.ar)
- 518bd86: chore(deps): add charmbracelet TUI dependencies to go.mod (AgustinCastanol acastanol@fi.uba.ar)
- f3cfe68: chore(deps): add glamour and teatest direct dependencies for PR-3 (AgustinCastanol acastanol@fi.uba.ar)
- 798d242: chore: add README and ignore .atl local state (AgustinCastanol acastanol@fi.uba.ar)
- fb29810: chore: ignore .glia/index.json (renamed), local agent state, and docs/ drafts (AgustinCastanol acastanol@fi.uba.ar)
- 0e48611: chore: project scaffolding, PRDs and skill registry (AgustinCastanol acastanol@fi.uba.ar)
- 421baee: chore: rename project from wrapper-mems to glia (AgustinCastanol acastanol@fi.uba.ar)