Snider
2c18322dfe
fix: address CodeRabbit PR #2 findings (batch 2)
...
- datanode/medium.go: add compile-time Medium interface check
- docs/RFC.md: remove duplicated MemoryMedium Read/Write method entries
- docs/RFC-CORE-008-AGENT-EXPERIENCE.md: add text language tag to fenced code block
- io.go: rename WriteMode param path→filePath to avoid shadowing path package
- io.go: add directory collision check in WriteMode and MemoryWriteCloser.Close
- io.go: Copy now preserves source file permissions via Stat+WriteMode
- node/node.go: add goroutine-safety doc comment on Node
- node/node.go: Rename handles directory prefix batch-rename
- node/node.go: rename CopyFile→ExportFile, document local-only behaviour, wrap PathError with core.E()
- node/node.go: filter empty path components in Walk depth calculation
- node/node_test.go: update tests to use ExportFile
- sigil/crypto_sigil.go: make Key/Obfuscator unexported, add Key()/Obfuscator()/SetObfuscator() accessors
- sigil/crypto_sigil.go: rename receiver sigil→s to avoid shadowing package name
- sigil/crypto_sigil_test.go: update to use accessor methods
- store/medium.go: use KeyValueStore.ListGroups() instead of direct DB query
- store/medium.go: add doc comment that WriteMode does not persist file mode
- store/store.go: add ListGroups() method to KeyValueStore
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-05 12:39:57 +01:00
Snider
a43a16fb0d
fix: address CodeRabbit PR #2 findings
...
- datanode: add isFileLocked() helper to prevent RLock re-entry deadlock in Append
- io: MemoryMedium WriteMode rejects ancestor-is-file collision; EnsureDir rejects target-is-file collision
- io: copy fileModes during directory rename
- local: guard Delete/DeleteAll against removing sandbox root
- local: add TOCTOU TODO comment on validatePath symlink loop
- local: alias stdlib io→goio in medium_test.go
- datanode: alias stdlib io→goio in medium_test.go
- sqlite: add isValidTableName() whitelist to prevent table-name SQL injection in New()
- sqlite: remove duplicate WHERE clause args in List query
- sqlite: add mode field to sqliteWriteCloser; use it in Close (was hardcoded 420)
- sigil: GzipSigil.In returns nil when custom outputWriter is used (buffer was empty)
- sigil: capture hasher.Write error in HashSigil.In
- sigil: add comment explaining DecryptionFailedError hides raw AEAD error intentionally
- s3: add comment explaining WriteMode ignores mode (no POSIX on S3)
- s3_test: ListObjectsV2 mock sets IsTruncated+NextContinuationToken when maxKeys exceeded
- node: add comment explaining WriteMode ignores mode for in-memory nodes
- store: sort keys before building List entries for deterministic output
- store: add explanatory comment on NotFoundError sentinel
- workspace: replace sha256.Sum256 key derivation with HKDF (RFC 5869)
- docs: fix RFC-CORE-008 header (was RFC-025)
- docs: update import paths from forge.lthn.ai/core/go-io to dappco.re/go/core/io
- docs/RFC.md: remove duplicate Read/Write alias doc blocks
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-05 12:22:25 +01:00
Snider
a6d473fcee
merge: resolve dev←github/main conflicts — accept dev restructure
...
Dev renamed datanode/local client files to better names and updated
interfaces. Accept dev's versions throughout; remove old files that
github/main still had as modify-vs-delete conflicts.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-05 11:34:36 +01:00
Virgil
c713bafd48
refactor(ax): align remaining AX examples and names
...
CI / test (push) Failing after 3s
CI / auto-fix (push) Failing after 0s
CI / auto-merge (push) Failing after 0s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-31 14:27:58 +00:00
Virgil
ede0c8bb49
refactor(ax): rename remaining test helpers and examples
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-31 14:13:15 +00:00
Virgil
9dbcc5d184
refactor(ax): rename medium test variables and examples
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-31 14:00:33 +00:00
Virgil
e922734c6e
refactor(store): rename key-value store surface
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-31 13:54:58 +00:00
Virgil
45bd96387a
refactor(workspace): harden path boundaries and naming
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-31 13:47:35 +00:00
Virgil
c6adf478d8
refactor(ax): rename nonce helper for clearer naming
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-31 13:41:04 +00:00
Virgil
378fc7c0de
docs(ax): align sigil references with current surfaces
...
CI / test (push) Failing after 2s
CI / auto-fix (push) Failing after 0s
CI / auto-merge (push) Failing after 0s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-31 07:24:17 +00:00
Virgil
cc2b553c94
docs(ax): align RFC API reference with current surfaces
CI / auto-merge (push) Failing after 0s
CI / auto-fix (push) Failing after 0s
CI / test (push) Failing after 2s
2026-03-31 06:26:16 +00:00
Virgil
97535f650a
docs(ax): align guidance with current medium surface
...
CI / test (push) Failing after 2s
CI / auto-fix (push) Failing after 0s
CI / auto-merge (push) Failing after 0s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-31 06:17:48 +00:00
Virgil
d9f5b7101b
refactor(ax): replace option chains with config structs
2026-03-30 19:36:30 +00:00
Snider
aaf0aca661
docs: add AX design principles RFC for agent dispatch
...
CI / test (push) Failing after 2s
CI / auto-fix (push) Failing after 1s
CI / auto-merge (push) Failing after 1s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-30 20:27:13 +01:00
Virgil
bdd925e771
Add complete API reference
CI / test (push) Failing after 2s
CI / auto-fix (push) Failing after 0s
CI / auto-merge (push) Failing after 0s
2026-03-30 09:14:45 +00:00
7dbb8fcafa
Merge pull request '[agent/codex] API contract extraction. Read CLAUDE.md. For every exported ...' ( #13 ) from agent/api-contract-extraction--read-claude-md into dev
CI / test (push) Failing after 2s
CI / auto-fix (push) Failing after 0s
CI / auto-merge (push) Failing after 0s
CI / test (pull_request) Failing after 2s
CI / auto-fix (pull_request) Failing after 1s
CI / auto-merge (pull_request) Failing after 1s
2026-03-23 14:54:23 +00:00
Virgil
e208589493
docs: add API contract report
2026-03-23 14:53:51 +00:00
17e0624daf
Merge pull request '[agent/codex] Convention drift check. Read CLAUDE.md. Find: missing SPDX h...' ( #12 ) from agent/convention-drift-check--read-claude-md into dev
CI / test (push) Failing after 2s
CI / auto-fix (push) Failing after 0s
CI / auto-merge (push) Failing after 0s
2026-03-23 14:48:38 +00:00
Virgil
39d5ca8480
docs: add convention drift audit
2026-03-23 14:48:12 +00:00
Virgil
19c4339229
docs: add security attack vector mapping
2026-03-23 13:20:41 +00:00
Snider
a97bbc4ae2
docs: add human-friendly documentation
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-11 13:02:40 +00:00