Repository navigation
Releases: Daily-Nerd/daimon
Releases · Daily-Nerd/daimon
Release list
v0.63.1
v0.63.0
0.63.0 (2026-10-29)
Features
Bug Fixes
- config: skip the git spawn for a project dir that does not exist (0909575), closes #1262
- llm: keep claude-cli model calls out of the host's session store (e48933a), closes #1261
- llm: report a serialize run's facts on its result, not through shared state (4490140), closes #1255
- llm: scope capture collectors per serialize (7830aad)
Documentation
v0.62.0
0.62.0 (2026-10-28)
Features
- briefing: an imported latest gets a head note and the active topic says imported (e9e37ca)
- cli: daimon import serializes the given transcripts of one project in one bounded run (16508e6)
- import: a window of captured sessions names the way to older history, in the plan and in both CLI reference rows (45b1167), closes #1236
- import: discover a project's transcripts on disk and plan the N newest, skips applied inside that window (df85e93), closes #1236
- ledger: an import marker opens an attempt that heal never retries (9cefcb2), closes #1236
- llm: capture_cost stamps how many calls the backends answered (de92774)
- provenance: a session key per host, and the hosts whose transcripts record no project (712b257)
- provenance: public HOSTS and roots, one listing pattern per root, and the import table iterates the host set (80b2910), closes #1236
- provenance: SourceResolver.transcripts lists each host's files from its own roots (3e68cbf), closes #1236
- serializer: count the model calls a transcript's serialize will make before any spend (4c88aea)
- serialize: the import door stamps capture_door and marks its success line (381f577), closes #1236
- transcript: read the working directory a transcript recorded (5c2c900)
- view: open reports the import door count and when the newest imported session ended (9a00602)
Bug Fixes
- briefing: a planted age key on disk is dropped before the stamp (c280410)
- briefing: the import note is set only once the body has something to show (82a6f7d)
- briefing: the import note travels with the body and its facts are read on demand (313c85a)
- carry: a capture behind the stream's latest folds nothing backward (aabb447), closes #1236
- import: a transcript root the user cannot list is one named plan line, and the other roots still list (3c84abe), closes #1236
- import: a transcript the capture reader cannot decode is the named unreadable skip, before any spend (9bb0f3e), closes #1236
- import: bound on spent calls, key sessions by host, accept no-project hosts on a typed --project (5229987)
- import: one stat decides a missing transcript, and an unreadable one is a named skip (5c581fc)
- import: the reason a rootless host cannot be imported is provenance's, Gemini reads no registered root, and a Gemini path given by hand is refused by name (ab8b5c8), closes #1236
- ledger: any success line marks a session captured for the import's done-set (0879f41)
- ledger: every spawn line owns its attempt's reason, and a held import names its own cure (9c94ab2), closes #1236
- provenance: a Codex rollout present in both sessions and archived_sessions lists once, from sessions (dcaaace), closes #1236
- store: an older checkpoint never inherits a birth stamp newer than its own session (603ad91), closes #1236
- transcript: recorded_cwd stops at the first row that records one, and both readers answer None on undecodable bytes (df7d4c5), closes #1236
- transcript: the end stamp is the newest stamp in the tail, and the first row is read no further than the tail size (a3bad07), closes #1236
Performance Improvements
- transcript: last_timestamp reads a bounded tail and falls back to the whole file only when the tail has no stamp (dbde9b8), closes #1236
Documentation
- changelog: list each 0.61.0 change once (6357cb6), closes #1176
- claims: count the quote downgrade rate over fresh items only, 11.3% (385a3b0)
- cli: document daimon import in the reference, with the Spanish mirror (fc49c80)
- cli: the import row quotes the not-discovered line and says Gemini and Hermes cannot be imported yet, EN and ES (9babbea), closes #1236
- cli: the import row says about, spent versus planned, every refusal and exit code (e447900)
- cli: the import row says how discovery picks the N newest and which hosts stay path-given (e45b5fd), closes #1236
- hosts: the Claude Code page says import discovers sessions by the recorded working directory (7a6eac9)
- hosts: the Codex import section points at the quickstart in its own words (9ac0862)
- hosts: the Codex page says import discovers rollouts in both roots by the session_meta cwd (9c58087)
- hosts: the Gemini import cell reads no registered root (75e52a7)
- hosts: the Gemini page quotes its plan reason and describes the exit 2 refusal of a hand-given file (e01fea1)
- hosts: the Gemini page says a path given with --transcript is refused (80e4137)
- hosts: the Gemini page says import does not reach this host (f772ca8)
- hosts: the host table gains an Import column from the importer capability rows (d478046)
- hosts: the Kimi import section points at the quickstart in its own words (07b61ca)
- hosts: the Kimi page says import takes the wire log by path with the project typed (cd86c8c)
- hosts: the unsupported row s...
v0.61.0
0.61.0 (2026-10-26)
Features
- llm: record what each LLM call cost from the usage the backend printed (30cd91d), closes #1235
- provenance: the quote receipt records the message roles behind its binding (9b1dfbb), closes #1237
- refutations: a candidate turned down reads rejected, a retired record reads retired, and rejecting needs no evidence (92cfddb)
- refutations: overturn and retire record why a record ended, rejected or retired (641c545), closes #1238
- serialize: every checkpoint records what its capture cost in tokens, and stats sums the window (58c1fd7)
- serialize: stamp capture_cost on every checkpoint from the run's call records (d52eb80), closes #1235
- stats: daimon stats reports whose words the fresh verified quotes are, by role (982851e), closes #1237
- stats: one tokens line over the capture window, read from checkpoints only (605540b), closes #1235
Bug Fixes
- hooks: the hook library honours DAIMON_LOG_DIR for serialize.log, the heartbeats and the crash sink (f8e4cbd)
- hooks: the hook library resolves serialize.log, the heartbeats and the crash sink through DAIMON_LOG_DIR the way the CLI does (d737d48), closes #1234
- provenance: a transcript-scan receipt records the channels that account for the quote (1560514), closes #1237
- serialize: open the per-run LLM collectors in the shared pipeline so each capture bills only its own calls (1a1c864), closes #1235
- stats: the fresh-only quote walk drops carried copies before the once-per-id rule (5d494a2), closes #1237
- stats: the tokens line prints no dollar figure until a capture reported one and tells write-checkpoint records from pre-stamp ones (f36814c), closes #1235
Documentation
- changelog: list each 0.60.0 change once (6b17ca8)
- config: DAIMON_LOG_DIR moves the hooks' ledger and heartbeats together with the CLI's (aadc601), closes #1234
- hooks: the fallback breadcrumb docstrings say why their log directory stays a literal (62a9e63), closes #1234
- scars: scar 0043 records that paths get no exception and only the hung-after threshold stays process-env-only (36fc685), closes #1234
- website: rulings and refutations pages name the rejected and retired labels and the evidence rule (c3ad3a2), closes #1238
- website: rulings and refutations pages say what daimon decide shows for a candidate (5cb7623), closes #1238
- website: the daimon stats reference row reads without an em-dash in both languages (6fe00ef), closes #1235
- website: the stats reference says a quote both channels hold reads as mixed on a scan receipt (910ad86), closes #1237
v0.60.0
0.60.0 (2026-10-23)
Features
- team: team init writes a .gitattributes that merges the published ledgers by union (aa45bd7), closes #1174
- team: team status reports the current project's quarantines not yet published (73425bd), closes #1175
Bug Fixes
- bench: abort with nothing written when too many sessions that reached the serializer fail, and the workflow uploads only its own run (6bf7b33), closes #344
- team: team status --json says null plus a reason when nothing is proven (f3bd65a), closes #1175
- team: team sync writes and commits the merge=union rules before it merges (98fe567), closes #1174
- team: the attributes file union-merges itself so two clones' copies of the rules converge (de20e79), closes #1174
Documentation
- contributing: the PR template and CONTRIBUTING say that release-please reads the branch commits (74f845d), closes #1176
- team: describe the merge=union rule team init writes, in English and Spanish (849c6ac), closes #1174
- team: describe the unpublished-quarantine line of team status, in English and Spanish (362fb3a), closes #1175
- team: sync also commits the merge rules, said in English and Spanish (48ff6e1), closes #1174
- team: team sync owns the merge=union rule, do not add the lines by hand, in English and Spanish (7cfeb83), closes #1174
v0.59.2
0.59.2 (2026-10-22)
Bug Fixes
- cli: one owner decides whether a CLI read leaves the project's own bucket (398ac1d)
- hooks: the session-start hooks print the label the CLI gives them and decide no scope (1ae739b)
- mcp: the host grants cross-project reads, the model never chooses a scope (ece15a4), closes #1223
- mcp: the host grants cross-project reads, the model never chooses a scope (#1226) (d7b4b57)
- scope: one owner decides every read scope and an unknown project reads nothing (6a14b12)
- scope: one owner decides every read scope and an unknown project reads nothing (#1224) (c601e16)
- scope: the CLI and the host hooks read through one scope owner (#1227) (3fb2e8f)
- store: a project with no identity reads nothing and the persist read is its own (4d91b48)
Documentation
- config: describe tenant-scoped CLI refusals and the identity-less read (c73e537)
- hosts: the CLI picks the briefing checkpoint, the hooks print its label (98050a8)
- mcp: document DAIMON_MODEL_CROSS_PROJECT and the model-surface refusal (5e8ad5c), closes #1223
- skill: teach that cross-project reads over MCP need the host's grant (d972b9f)
v0.59.1
0.59.1 (2026-10-21)
Bug Fixes
- serialize: fail a prompt only when the primary cannot serve it, and run it without a rescue when only the rescue cannot (9b8c3ec)
- serialize: size merge groups to the prompt budget and fail a prompt only when the primary cannot serve it (#1221) (6eb45cb)
- serialize: size merge groups to the prompt budget of the configured backend chain (3663c23), closes #1220
v0.59.0
0.59.0 (2026-10-21)
Features
- rulings: ruling rows say when they are no longer as ratified (#1207) (d5a3807)
- rulings: say when an enforcement value of a ruling is withheld (c32ba12)
Bug Fixes
- checks: build armed checks and the guard only from values a reader may see (#1210) (0dc1334)
- checks: build the armed-check manifest and the guard from rows a reader may see (fbbf0e7)
- config: resolve the git user name once per process instead of once per stamped row (#1204) (b717182)
- config: resolve the git user name once per process per working directory (63c99f5)
- heal: retry marker carries project and transcript, fold reads them over the long window (040da7a)
- heal: retry marker carries project and transcript, fold reads them over the long window (#1215) (5ea0c1a)
- refutations: judge visible values in the view instead of diffing masked rows (b1ceee6)
- refutations: match refute search over the values a reader may see (444d636)
- refutations: match refute search over the values a reader may see (#1212) (fbd3480)
- serialize: reject a model dict with the wrong envelope shape at the parse boundary (ea40e26)
- serialize: reject a partial with the wrong envelope shape at the parse boundary (#1219) (539066d)
- serialize: reject misplaced envelope fields, accept an absent block in a partial (2f7991c)
Documentation
v0.58.0
0.58.0 (2026-10-17)
Features
- brief: carried notes that name a PR, branch, file or dependency show when they were noted (9dac0ca)
- brief: carried notes that name a PR, branch, file or dependency show when they were noted (#1197) (ab584ee)
- cli: request open and revise take --title (451fad6)
- requests: lead with the sender's title wherever a request is titled (8139a6c)
- requests: optional sender-set title on a request (047b203)
- requests: optional sender-set title on a request (#1202) (b7c3c58)
- stats: worldcheck per-note rates (5496b00), closes #1184
- worldcheck: record the first confirmed and contradicted outcome per note (53b1893), closes #1184
- worldcheck: record the first confirmed and contradicted outcome per note (#1201) (d4e051e)
- worldcheck: stamp each carried item with its text claim's own outcome (2eeefb2)
- worldcheck: usage tokens name the project (9d203e7), closes #1184
Bug Fixes
- decide: title ruling rows by subject and show the verdict under it (#1129) (2187bbb)
- decide: title ruling rows by subject and show the verdict under it (#1200) (76ac7ce)
Documentation
v0.57.0
0.57.0 (2026-10-16)
Features
- api: heal_plan and heal_all let a host plan and launch serialize repairs (#1194) (fe3c0ae)
- api: heal_plan reads the heal plan and heal_all launches the detached heal child (2488002)
- api: render_briefing returns the machine briefing and a format version (c6a002f)
- api: render_briefing returns the machine briefing and a format version (#1196) (7353dc5)
- config: settings_override and log_dir_override scope config to the calling context (668c93c)
- heal: daimon heal --all runs every healable session serially under one lock (1eb0b38)
- heal: daimon heal --all runs every healable session serially under one lock (#1192) (1b9504c)
- heal: heal.launch starts the detached heal child and heal.child_env forwards the caller's store (d620d2e)
- heal: plan every healable session in scope over one core (44e125d)
- heal: the heal child runs with the effective configuration under a settings override (50aa260)
- render: word a multi-target heal run, its summary and the busy line (6547baa)
- testing: sandbox and seeders give a host test a throwaway store (b6bd622)
- testing: sandbox and seeders give a host test a throwaway store (#1195) (04ad3b7)
Documentation
- api: the heal child keeps the caller's effective configuration (78b7372)