Commit 0a64d58
docs + refactor: fix audit inconsistencies, decouple product from research packages (#26)
* feat(sdk): add effect lifecycle model and treasury sentinel demo agent
The effect model makes crash-safe side effects a runtime primitive.
IntentState machine: Recorded → InFlight → Confirmed, with the "resume
rule" (InFlight → Unresolved on Unmarshal) for safe crash recovery.
Treasury sentinel agent demonstrates the pattern end-to-end.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* docs: fix 10 documentation inconsistencies found in audit
- Fix tick timeout 100ms → 15s across 4 files (matches config.TickTimeout)
- Fix igord resume CLI syntax (positional → --checkpoint/--wasm flags)
- Add HTTP hostcall documentation to HOSTCALL_ABI.md
- Fix IMPLEMENTATION_STATUS.md: flag attribution (igord-lab not igord),
add HTTP/effects/pricewatcher/sentinel entries, fix stale claims
- Update ROADMAP.md Phase 2 with completed items and current status
- Fix stale phase references and lease version (v0x03 → v0x04)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* refactor(agent): decouple product binary from research-only packages
Break the transitive dependency chain that pulled authority and config
packages into the product igord binary:
- Extract DefaultTickTimeout (15s) into internal/agent, replacing
config.TickTimeout usage in the product path
- Define EpochData struct in internal/agent to replace authority.Epoch
in checkpoint headers; Instance.Lease becomes `any` with LeaseInfo
interface for checkpoint building
- Extract duplicated loadOrGenerateIdentity into pkg/identity/loader.go
with a minimal Store interface
- Move research agents (example, reconciliation) under agents/research/
- Move cmd/demo-reconciliation into agents/research/reconciliation/cmd/demo/
- Update Makefile, CLAUDE.md, and all doc references for new paths
Verified: `go list -deps ./cmd/igord/ | grep -E 'authority|config'`
returns nothing — product binary is fully decoupled.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* chore: set LICENSE copyright to Janko Simonovic
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(agent): address PR review — checkpoint-before-execute and unmarshal bounds check
- Sentinel: return false (standard 1s tick) after recording a refill
intent so the runtime persists a checkpoint before executeRefill runs.
Previously returned true (10ms fast tick), risking intent loss on crash.
- EffectLog.Unmarshal: add bounds check before reading state byte to
prevent panic on truncated effect-log payloads during resume.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>1 parent e0c04bd commit 0a64d58
46 files changed
Lines changed: 1606 additions & 204 deletions
File tree
- agents
- reconciliation
- research
- example
- reconciliation
- cmd/demo
- sentinel
- cmd
- igord-lab
- igord
- docs
- archive
- enforcement
- governance
- philosophy
- runtime
- internal
- agent
- authority
- inspector
- migration
- replay
- runner/research
- simulator
- pkg/identity
- scripts
- sdk/igor
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
19 | 19 | | |
20 | 20 | | |
| 21 | + | |
21 | 22 | | |
22 | 23 | | |
23 | 24 | | |
| |||
27 | 28 | | |
28 | 29 | | |
29 | 30 | | |
| 31 | + | |
30 | 32 | | |
31 | 33 | | |
32 | 34 | | |
| |||
35 | 37 | | |
36 | 38 | | |
37 | 39 | | |
38 | | - | |
| 40 | + | |
39 | 41 | | |
40 | 42 | | |
41 | 43 | | |
42 | 44 | | |
43 | 45 | | |
44 | 46 | | |
45 | | - | |
| 47 | + | |
46 | 48 | | |
47 | 49 | | |
48 | 50 | | |
| |||
79 | 81 | | |
80 | 82 | | |
81 | 83 | | |
82 | | - | |
| 84 | + | |
| 85 | + | |
83 | 86 | | |
84 | 87 | | |
85 | | - | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
86 | 91 | | |
87 | 92 | | |
88 | 93 | | |
89 | 94 | | |
90 | 95 | | |
91 | 96 | | |
92 | 97 | | |
93 | | - | |
| 98 | + | |
94 | 99 | | |
95 | 100 | | |
96 | 101 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
186 | 186 | | |
187 | 187 | | |
188 | 188 | | |
189 | | - | |
| 189 | + | |
190 | 190 | | |
191 | 191 | | |
192 | 192 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
8 | | - | |
| 8 | + | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
| 12 | + | |
12 | 13 | | |
13 | 14 | | |
14 | 15 | | |
| |||
51 | 52 | | |
52 | 53 | | |
53 | 54 | | |
54 | | - | |
55 | | - | |
| 55 | + | |
| 56 | + | |
56 | 57 | | |
57 | | - | |
| 58 | + | |
58 | 59 | | |
| 60 | + | |
59 | 61 | | |
60 | 62 | | |
61 | 63 | | |
| |||
127 | 129 | | |
128 | 130 | | |
129 | 131 | | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
130 | 139 | | |
131 | 140 | | |
132 | 141 | | |
133 | | - | |
| 142 | + | |
134 | 143 | | |
135 | 144 | | |
136 | 145 | | |
| |||
144 | 153 | | |
145 | 154 | | |
146 | 155 | | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
147 | 161 | | |
148 | 162 | | |
149 | 163 | | |
| |||
This file was deleted.
File renamed without changes.
Lines changed: 3 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
68 | 68 | | |
69 | 69 | | |
70 | 70 | | |
71 | | - | |
| 71 | + | |
72 | 72 | | |
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
77 | 77 | | |
78 | | - | |
| 78 | + | |
79 | 79 | | |
80 | 80 | | |
81 | 81 | | |
82 | 82 | | |
83 | | - | |
| 83 | + | |
84 | 84 | | |
File renamed without changes.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
File renamed without changes.
File renamed without changes.
0 commit comments