engram: fix lazy-embed index gap (#20) and make activate's cosine scan lazy; extract vindex harvest primitive with a bench/oracle harness
El SDK CI - dev / build-and-test (pull_request) Successful in 6m42s
El SDK CI - dev / build-and-test (pull_request) Successful in 6m42s
Adds an O(1) "seen" bitmap so lazily-embedded older nodes get picked up incrementally instead of only on a full rebuild (embed-gap #20). Replaces engram_activate's O(N*D) cosine prescan with a lazy-memoized cosine cache (eg_cosq_at), proven bit-identical to the old path. Extracts a clean vindex_harvest_from_store primitive (read-only vector harvest, careful malloc/ownership/error-path handling) reused by both index-build and the new vindex_bench.c — a read-only proof harness comparing brute-force vs HNSW recall/latency on both the real store and synthetic data. .nsbx-env intentionally excluded — local sandbox config (ports, paths, dev-only placeholder key), not checked in.
This commit is contained in:
@@ -4,6 +4,37 @@ El is a self-hosting, statically-typed language that compiles to C. This file or
|
||||
|
||||
---
|
||||
|
||||
## Current work in this worktree — the API reshape / decorated seam (IN PROGRESS, 2026-08-14)
|
||||
|
||||
This is the `api-reshape` worktree. The build here reshapes Neuron's external
|
||||
surface and how it is *declared* — proven on isolated dev-port clones only; **live
|
||||
prod engram `:8742` is untouched and nothing is promoted.** Full framing lives in
|
||||
`neuron/docs/architecture/06-cognitive-architecture.md` (Update — 2026-08-14 deep
|
||||
night) and `02-components.md §5`.
|
||||
|
||||
- **Surface collapse.** The ~90 noun-organized CRUD MCP tools collapse to a few
|
||||
**geometry ops** — `read` (the *vantage-read*: re-origin + salience/recency +
|
||||
an **aperture** → a bounded slice, curing the whole-self dump), `write`,
|
||||
`relate`, `supersede` (evolve/tombstone/promote, never a hard delete) — plus the
|
||||
agentic primitives `think`/`attend`/`learn`/`ground`/`assert`. The old noun is a
|
||||
`type` parameter. Implemented in `tools/api-reshape/surface.el` with a parity
|
||||
harness (`parity.sh`); aperture proven to bound output. **Not yet:** compiled
|
||||
into the MCP server, hot-swap, all-alias dispatch.
|
||||
- **Decorated seam.** `@route(path,method,…)` makes codegen synthesize
|
||||
`el_route_dispatch` (replacing the hand-written `handle_request` if-else) —
|
||||
proven decorate→serve on `:8951`. `@manager`/`@engine`/`@accessor` are **parsed
|
||||
but structurally inert** in the shipped compiler today; the `@route` codegen
|
||||
lives on the **unmerged branch `feat/el-route-decorators`**. Telemetry-emit and
|
||||
dharma-bus auto-wiring at the boundary are **staged, not shipped**. In-process,
|
||||
an `@accessor` reaches the engram via **`engram_*` builtins**, not `http_get`.
|
||||
|
||||
**Do not edit** the protected build sources while this is in flight:
|
||||
`el-compiler/src/codegen.el`, `el-compiler/runtime/el_seed.c` (and the archived
|
||||
`legacy/el_runtime.c`), the `runtime/engram_*.c` boot files, and `surface.el`
|
||||
(when present in the reshape tree) — these are owned by the build agents.
|
||||
|
||||
---
|
||||
|
||||
## What El Is
|
||||
|
||||
El compiles `.el` source → C → native binary. Every El value is `el_val_t` (int64_t). Strings are heap pointers cast through int64_t. The compiler is written in El (self-hosting).
|
||||
|
||||
Reference in New Issue
Block a user