Releases: innocarpe/CarpeOS
Releases · innocarpe/CarpeOS
Release list
@innocarpe/carpeos v3.0.1
[3.0.1] - 2026-07-31
Notes
- Patch release on the 3.0 line. Fixes live-home observation quality where most
statements were metadata shells (Captured … SessionEnd evidence). Does not
retag or unpublish1.0.0/2.0.0/3.0.0.
Fixed
- Recover knowledge candidate prose from host transcript tails (Claude-style JSONL
under allowed local roots) when envelopes only carrytranscript_path - Normalize host hook aliases (
user_prompt_submit/stop/ …) to product
lifecycle names so Grok/Codex captures are adjudication-eligible - Read camelCase host payload fields (
prompt,transcriptPath, …) during
candidate/scoring extraction - Bump adjudication policy identity to
adj_v2so prior metadata-only dispositions
can be re-evaluated append-only without rewriting history
Added
- Docs-only OKF export projection design track for a future 3.1 major (ADR 0014,
product-3.1.0 DoD, PRD index row). Not a runtime feature in this patch.
@innocarpe/carpeos v3.0.0
[3.0.0] - 2026-07-31
Notes
- Product-meaning MAJOR: retrieval-first knowledge graph on top of shipped 2.0
adjudication. Canonical events remain SSOT; graph/vector indexes are rebuildable
projections only. Default search stays promoted/active only. Freeze packet was
Defer, then maintainer chat Approve unlocked packaging. Does not retag
or unpublish1.0.0/2.0.0.
Added
- Capture identity:
project_idpartition plus worktree facet (worktree_id/
worktree_name/git_branch/ linked flag); absolute paths stay local-only - Retrieval filters and ranking:
project_ids/worktree_ids, same-worktree boost - Pluggable embedding provider with offline default
local-lexical-hash - Rebuildable graph projection (
graph_nodes/graph_edges) with lineage edges - Deterministic entity resolution:
subjectanddecision_threadnodes - Bounded neighborhood walk API (
walkGraphNeighborhood) with budgets/omissions - MCP
memory_neighborhoodtool and inventory/contract updates - Graph-aware hybrid ranking (seed expansion + hop-decay boost)
- Offline retrieval evaluation harness (multi-hop, isolation, false-acceptance)
- Product 3.0 DoD, ADR 0013, PRD v1–v3 series, freeze packet
Changed
memory_searchsemantic leg uses non-synthetic local lexical embeddings by default- Hybrid search expands seeds through the local graph neighborhood before ranking
- CLI
retrieval embeddefault provider islocal-lexical-hash - GraphRAG roadmap status: scheduled/executed under product 3.0 gates
Fixed
- Sibling worktrees of one repository share project knowledge while retaining
checkout provenance - Unknown-origin (pre-identity) chunks are not excluded by project/worktree filters
@innocarpe/carpeos v2.0.0
[2.0.0] - 2026-07-30
Breaking
- Product meaning major: default knowledge path is adjudicated promote | hold | reject (
adj_v1), not “every eligible SessionEnd becomes searchable meaning.” - Default
memory search/ MCP retrieval surfaces active/promoted units only; draft/held require explicit opt-in (--include-held/include_held). - Local store dispositions are keyed by
(source_event_id, trust_zone_id, policy_version)with append-only history and held-review audit tables (migrations003–005).
Added
- Knowledge adjudication MVP (
adj_v1): candidate spans, precision-first dispositions, golden suite, andpnpm smoke:knowledge - Operator held queue:
carpeos adjudicate list-held|promote-held|reject-held(append-only, no auto-AcceptanceDecision) - Policy-version re-adjudication and
carpeos adjudicate history/--policy-version - Setup/install doctor adjudication health (policy version, promote/hold/reject counts, promoted-only default search)
- Explicit held search opt-in: CLI
--include-held, MCPinclude_held - Public-safe multi-hook dogfood:
pnpm smoke:dogfood - Maintainer product-2.0 gates, freeze packet, and Claim-form defer notes
Changed
- Capture/extract path runs post-capture adjudication; hooks stay fail-open and fast
- Doctor and EN/KO honesty: 1.0 remains pipeline infrastructure; 2.0 is operator-real adjudication MVP packaging
Fixed
- Smoke fixtures and promoted-only search regressions after adjudication defaults
- Public-boundary-safe synthetic secret fixtures in dogfood smoke
@innocarpe/carpeos v1.0.0
[1.0.0] - 2026-07-30
Notes
- First stable product release for
@innocarpe/carpeos: setup installs
capture hooks, session evidence lands in local SQLite (encrypted raw +
EvidenceArtifact), Observations are derived from eligible lifecycle events,
and memory search / context-pack return meaningful units first-class on the
local path (seedocs/maintainers/product-1.0.0.md). - First stable public contract: CLI commands/flags, setup/env/
~/.carpeos
layout, MCP tool names + JSON shapes (docs/contracts/mcp-tools-v1.md), local
store migration policy, and trust-zone / visibility semantics (including
documented default resolution order: flag → env → config → device default). - Breaking changes on those surfaces after this release require a MAJOR bump
(seedocs/maintainers/versioning-and-releases.md). - Hosted Cloudflare edge, GraphRAG, multi-Mac polish, and production embeddings
remain non-goals of 1.0 and may ship later as additive1.xMINOR work.
Added
- Product setup:
carpeos setup hooks plan|install|uninstall|doctor(merge-safe
capture hooks; absolute~/.local/bin/carpeoscommands) - Setup doctor: hook status, recent capture, Observation/Claim counts
(--require-hooks/--require-capture/--require-units) - README EN/KO product path: install → hooks → doctor → rebuild/search/context-pack
- Meaningful-unit extraction policy (ADR 0011; PostToolUse off by default)
- Evidence → Observation extraction MVP; CLI
capture-hookextract default +
carpeos extract --event-id(idempotent) - Retrieval ranks Observation/Claim/decision above
evidence_excerpt; CLI
lifecycle filters align with MCP (active+draft) - Product E2E gate:
pnpm smoke:product(CI) - Product 1.0 DoD + scenario checklist + freeze Approve gate docs
@innocarpe/carpeos v0.2.2
[0.2.2] - 2026-07-30
Added
- Retrieval: project
EvidenceArtifactevents as metadata-only
evidence_excerptchunks (kind / media_type / artifact_id / subject / event
id — never protected raw payload), so capture → rebuild →memory search
works on day-to-day homes that only have hook evidence
Fixed
- Retrieval freshness: advance
last_indexed_zone_sequencefrom scanned events
as well as produced chunks (capture-only stores no longer stuck
stale:behind_sync_cursorafter a clean rebuild) - CLI
memory search: defaultepistemic_authorityfilter includesimported
(and the rest of the authority set), matching MCPmemory_searchso imported
capture evidence is not silently filtered out
@innocarpe/carpeos v0.2.1
[0.2.1] - 2026-07-29
Post-0.2.0 local/sync completeness from private dogfood (hosted Cloudflare remains
operator-private; not required for 1.0.0 per v1 readiness non-goals).
Added
carpeos project identify/carpeos sync status:trust_zone_source
(flag|env|config|device_default) so operators can see how the
active zone was resolvedcarpeos outbox status→errors[]andcarpeos sync status→
local.outbox_errors[]for pending/leased rows withlast_error- Shared PR authoring skill
skills/carpeos-pr+./scripts/install-pr-skill.sh
(Claude Code / Codex / Grok); expanded.github/PULL_REQUEST_TEMPLATE.md - Cloudflare sync guide: trust-zone resolution order, status diagnosis fields,
same-device push→pull as sequence-only replay
Fixed
- Sync Worker: rebind
protected_value_uploadson conflict when re-uploading
under a different trust zone (stale wrong-zone row no longer blocks push) - Sync client: fail closed before network when outbox trust zone ≠ store
zone; release blocked leases (delay 0) instead of leaving rows stuckleased - Sync client: transport failures include
HTTP {status}in the message (no
response bodies) - Local store: same-origin pull treats remote-only
zone_sequenceas idempotent
replay (content divergence still fails closed) - CLI: default trust zone prefers
--trust-zone→CARPEOS_TRUST_ZONE/
CARPEOS_MCP_TRUST_ZONE→config.jsontrust_zone_idbefore device-derived
tz_local_<client>(aligns with installertz_local_default)
Changed
carpeos sync statusreportsoutbox_trust_zone_ids,
outbox_trust_zone_mismatch, and structuredwarningswhen outbox zones
disagree with the active store zone
@innocarpe/carpeos v0.2.0
[0.2.0] - 2026-07-30
Dogfood milestone on the road to a deliberate 1.0.0 local-contract freeze.
Cloudflare/hosted sync remains a post-local track (not required for 1.0 per
v1 readiness non-goals).
Added
- Named G5 MCP smoke gate:
pnpm smoke:mcp(scripts/smoke-mcp.mjs) covering
MCP tool list,memory search, andmemory context-pack, wired into CI - G7 MCP tool contract inventory:
docs/contracts/mcp-tools-v1.md+
docs/contracts/mcp-tools-v1.jsonwith
drift test againstCARPEOS_MCP_TOOLS - G6 local store migration policy:
docs/architecture/local-store-migrations.md;
export migration IDs; test that events survive reopen (no silent wipe) - G8 compatibility inventory:
docs/maintainers/compatibility-and-deprecations.md
(active deprecations + empty “planned breaks before 1.0”) - G9 freeze decision template:
docs/maintainers/v1-freeze-decision.md
Changed
- v1 readiness G1–G8 marked done; only G9 (freeze decision) remains
@innocarpe/carpeos v0.1.3
[0.1.3] - 2026-07-29
Added
carpeos version/--version/-V(JSON: package name, version, Node)- Maintainer tracker: docs/maintainers/v1-readiness.md
for the1.0.0contract-freeze checklist (gates G1–G9, exit codes, non-goals)
Changed
- Root CLI help documents exit codes
0|1|2|3|4
@innocarpe/carpeos v0.1.2
[0.1.2] - 2026-07-29
Added
carpeos --help/carpeos help [command]human-readable CLI help for all
commands (init, project, capture-hook, outbox, sync, retrieval, memory, setup)
@innocarpe/carpeos v0.1.1
[0.1.1] - 2026-07-29
Added
- (none yet — fold entries here before the next release)
Fixed
- npm
carpeos setupwrappers now point at packagebin/carpeos.jsso
carpeos setupkeeps working when~/.local/binshadows the global npm bin