Commit graph

80 commits

Author SHA1 Message Date
Carl Niklas Rydberg 8ea3ec861f asl/index-fs: add neg-cache, bloom precheck, and fix O(N²) load_segment
- Introduce a 256-entry ring-buffer negative cache (neg_cache) to short-circuit
  repeated NOT_FOUND lookups without touching disk.  Invalidated on put/tombstone-lift.
- Add bloom precheck in scan_segments: read only the 368-byte header+bloom prefix
  before committing to a full segment load; segments that definitively miss are skipped.
- Remove summary_lookup_hash from load_segment; the linear scan over 40-byte entries
  was O(N²) on large indexes and is now replaced by a direct SHA-256 of the segment bytes.
- Gitignore .codex and .claude tool artifacts.
- Add test_miss_latency_bounded: regression test that builds 200 segments and asserts
  miss-path latency stays within 5 s total across 20 trials.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 22:12:11 +02:00
Carl Niklas Rydberg bc55ed994b index-fs: append log records in place and add opt-in put precheck bypass 2026-03-30 22:37:46 +02:00
Carl Niklas Rydberg 3473b19425 trow AI at it. 2026-02-22 00:25:56 +01:00
Carl Niklas Rydberg 5bcf06783b Add substrate contract wit oversteps into app building. 2026-02-21 18:22:41 +01:00
Carl Niklas Rydberg 7e3e302988 Add Minio adapter. 2026-02-21 18:04:15 +01:00
Carl Niklas Rydberg c7a9e2f6aa Fix index-fs write locking and add index backend regressions 2026-02-08 00:06:42 +01:00
Carl Niklas Rydberg d9122b53bb Add PEL collection view projection 2026-01-23 20:18:23 +01:00
Carl Niklas Rydberg 85c23e49eb Add generic records and collections 2026-01-23 19:15:16 +01:00
Carl Niklas Rydberg e2d26e53cd Add CAS-native append-only log 2026-01-23 19:04:49 +01:00
Carl Niklas Rydberg c4571c3bfb Add SID cache and read-first derivation 2026-01-23 18:31:21 +01:00
Carl Niklas Rydberg 4932fbd21c federation? 2026-01-21 19:54:32 +01:00
Carl Niklas Rydberg 0f38165804 Document federation API and deprecate replay_domain 2026-01-18 12:10:12 +01:00
Carl Niklas Rydberg 282d1eb959 Document ownership and add replay build alias 2026-01-18 12:07:43 +01:00
Carl Niklas Rydberg d8a6603ddc Improve federation API docs and errors 2026-01-18 12:03:18 +01:00
Carl Niklas Rydberg ed64c6ed89 Remove federation location metadata 2026-01-18 11:43:03 +01:00
Carl Niklas Rydberg 2931e35c69 Add federation locations and conflict checks 2026-01-18 11:25:39 +01:00
Carl Niklas Rydberg 489738c5ba Add federation view cache and resolve 2026-01-18 11:17:35 +01:00
Carl Niklas Rydberg 5a0a2f80c7 Add federation registry, replay, and ingest 2026-01-18 10:56:52 +01:00
Carl Niklas Rydberg 948a156f5c Add PEL program builder and derivation indexing 2026-01-18 09:21:25 +01:00
Carl Niklas Rydberg 1d04c32401 Add derivation index CLI 2026-01-18 07:27:48 +01:00
Carl Niklas Rydberg 745cf89eb7 Add ASL index accel routing key 2026-01-18 06:20:48 +01:00
Carl Niklas Rydberg 7878cd3702 Add TGK exec plan encoding 2026-01-18 06:13:07 +01:00
Carl Niklas Rydberg dde532d68f Improve ASL store index lifecycle 2026-01-18 05:54:31 +01:00
Carl Niklas Rydberg b506cc6c7c Extend FER/1 receipts and TGK store support 2026-01-17 21:34:24 +01:00
Carl Niklas Rydberg 017bc87e04 asl_store_index_fs: stream log snapshot/truncate 2026-01-17 17:58:59 +01:00
Carl Niklas Rydberg 0667cee17d Add bloom filters to ASL index segments 2026-01-17 16:55:46 +01:00
Carl Niklas Rydberg 06a96f25db Add snapshot manifests and auto snapshot policy 2026-01-17 16:43:47 +01:00
Carl Niklas Rydberg 347d2e4dda Add filesystem-backed ASL index store 2026-01-17 14:08:41 +01:00
Carl Niklas Rydberg 68371b1554 Add ASL core index codec and tests 2026-01-17 13:10:07 +01:00
Carl Niklas Rydberg b7b4b2f195 Add ASL log encoding/decoding 2026-01-17 12:51:32 +01:00
Carl Niklas Rydberg 0d810affb0 Add ASL index state API stubs 2026-01-17 12:45:13 +01:00
Carl Niklas Rydberg 0fc1fbd980 Something 2025-12-23 09:15:47 +01:00
Carl Niklas Rydberg a4932b1217 PEL/TRACE-DAG: wire exec_result_ref + node failure diagnostics
Persist pre-trace ExecutionResult to embed exec_result_ref in traces
Capture node-level runtime diagnostics and clone into trace artifacts
Clarify trace spec for pre-trace result linkage
Add tests for exec_result_ref and node-failure diagnostics
2025-12-22 11:16:23 +01:00
Carl Niklas Rydberg d301823c12 Added scheme-aware dispatch for in‑memory exec so non‑SchemeRef_DAG_1 refs are rejected, and exposed it via the CLI. 2025-12-22 08:34:40 +01:00
Carl Niklas Rydberg 6dfcb2bfc6 Implemented descriptor-aware program binding checks so program interpretation now consults the descriptor’s program_type_tag and program_enc_profile before decoding or tagging artifacts. 2025-12-22 08:27:41 +01:00
Carl Niklas Rydberg db3eb98b83 Added a concrete recognition path for TYPE_TAG_PEL_SCHEME_DESC_1 Artifacts by exposing canonical checks and wiring them into amduat-pel validate. 2025-12-22 08:19:39 +01:00
Carl Niklas Rydberg f5e1ab8801 Add PEL DAG scheme descriptor codec and validation
If you want a longer one:
Add codec + tests for PEL DAG scheme descriptor
2025-12-22 08:16:58 +01:00
Carl Niklas Rydberg 5438b93efd Expose diagnostic messages in formatters 2025-12-22 07:27:30 +01:00
Carl Niklas Rydberg ef2fd955f1 Hide DAG exec entrypoints 2025-12-22 07:01:11 +01:00
Carl Niklas Rydberg e838e2c977 Add deterministic diagnostics and OOM handling 2025-12-22 06:55:29 +01:00
Carl Niklas Rydberg b891b588ee Demote PEL exec bytes helper 2025-12-22 06:31:53 +01:00
Carl Niklas Rydberg 92edd06642 Fix PEL DAG params plumbing and surface IO 2025-12-22 06:25:52 +01:00
Carl Niklas Rydberg 7c19c04dc4 Added an explicit OOM status for kernel ops and routed it as out‑of‑model 2025-12-22 00:41:18 +01:00
Carl Niklas Rydberg 3333b577ff Implemented an OOM-aware decode path for PEL/PROGRAM-DAG and plumbed it through the core entrypoints so OOM is treated as out‑of‑model (returns false) while invalid bytes still map to INVALID_PROGRAM. 2025-12-22 00:36:10 +01:00
Carl Niklas Rydberg 87c8bcc799 Align HASH/ASL1 registry and codecs with spec constraints
- reject reserved HashId values across lookup/parse/encode paths
- add reserved-range registry table and remove 0x0000 from runtime list
- forbid SHA-256 impl overrides; add streaming hash API
- update tgk_store_mem test to use unsupported but non-reserved hash id
- document ASL store digest-length constraint in README
2025-12-22 00:21:16 +01:00
Carl Niklas Rydberg 9754582ae7 Implement store error IO class, optional config validation, and ops init helper 2025-12-21 23:29:24 +01:00
Carl Niklas Rydberg a992e89766 Made StoreConfig enforcement pluggable at the amduat_asl_store_t boundary by adding a validate_config hook to store ops. validate_config is now optional, get rejects refs whose hash_id doesn’t match the store config, and put verifies the returned Reference matches the configured hash_id. This uses the StoreConfig at the boundary without forcing every store to implement the hook. 2025-12-21 23:18:12 +01:00
Carl Niklas Rydberg 24ad51ff46 Added AMDUAT_ASL_STORE_ERR_IO and used it in the FS store path so I/O/internal failures no longer surface as integrity errors; updated CLI/error mappings so the new error is visible and gets the IO exit code. This keeps integrity reserved for actual content/hash/collision issues while still preserving existing semantics for not-found/unsupported. 2025-12-21 22:59:31 +01:00
Carl Niklas Rydberg 39712f7b70 Added a central ASL reference-derivation API and wired the filesystem store (plus the PEL stub store) to use it, so all reference creation now goes through the canonical encode+hash path. 2025-12-21 22:22:17 +01:00
Carl Niklas Rydberg 71d2303c3c Moved EncodingProfileId into ASL core and decoupled the encoder header from STORE, so ASL/1-CORE stands alone as required. 2025-12-21 22:12:09 +01:00