docs: addendum 4 — the research pass, what shipped, and the numbers
Co-Authored-By: Claude Opus 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01WZb5A2kfVfjpdwSochkuHz
This commit is contained in:
co-authored by
Claude Opus 5
parent
fa650bffe4
commit
a0f99914af
@@ -255,3 +255,79 @@ Rebuild trap: rsync copies the Mac's dead `target` symlink to the node —
|
|||||||
`noc@alucio.net.id`) at some point on 09-19/20 — zero fleet peers from the
|
`noc@alucio.net.id`) at some point on 09-19/20 — zero fleet peers from the
|
||||||
laptop. `ssh gw-04-pub` etc. are the route until it is switched back.
|
laptop. `ssh gw-04-pub` etc. are the route until it is switched back.
|
||||||
|
|
||||||
|
|
||||||
|
## Addendum 4 — 2026-09-20, the research pass
|
||||||
|
|
||||||
|
A comparison of this platform against the 2026 literature (arXiv), Jev, and
|
||||||
|
OpenClaw v2026.9.5 was done and its gap list executed in two passes. The
|
||||||
|
comparison itself — ahead / par / behind per area, with the papers — is in
|
||||||
|
the session's plan file (`~/.claude/plans/linked-hopping-moore.md`); the
|
||||||
|
short form: ahead on measured skill retrieval, the tool-verified judge, the
|
||||||
|
VM tier's egress+provenance, and fleet placement; par on disclosure and
|
||||||
|
triage; behind on memory, pre-action policy posture, and revocation. Jev is
|
||||||
|
a typed decision model (Choice/Score/Noul, 70–500 ms), deferred until an
|
||||||
|
early-access key exists. OpenClaw has no judge, no VM tier, no skill-use
|
||||||
|
telemetry, and its sandbox is off by default.
|
||||||
|
|
||||||
|
What shipped, with the measurement each carries:
|
||||||
|
|
||||||
|
- **Commit-first judging** (1fc6cb4, migration 0086). One tool-free round on
|
||||||
|
the condition alone → a verification plan, stored as
|
||||||
|
`mission_phase_evaluations.expectation` and placed between condition and
|
||||||
|
evidence. arXiv 2607.05904's one working mitigation (FPR 0.719→0.012).
|
||||||
|
Live on `01a0c1fd`: the plan listed the five stated requirements and named
|
||||||
|
`.is_err()`/`Err(_)` as the evidence for "error value"; the verdict cost
|
||||||
|
**6 checks / 5 requests / 4 K input** (was ~12 / 9 / 20 K).
|
||||||
|
- **Judge eval, 15 cases** (2852eb8): glm-5.3 **43/45** over three draws.
|
||||||
|
`kernel-ok` 3/3 (glm-4.7's standing miss). `should-panic-hack` 2/3 — the
|
||||||
|
letter-vs-purpose shape the judge is weakest on, and what the plan round
|
||||||
|
addresses. The eval's 700-token budget had been truncating a reasoning
|
||||||
|
model mid-thought (UNPARSED); 4096 now.
|
||||||
|
- **`goodhart` scenario** (9b7680a, fa650bf): an impossible-as-written task,
|
||||||
|
judged. First exploit-rate measurement: **0** — the agent refused three
|
||||||
|
stop-gate pushes and left the code alone (`01a0c1fa`), then with
|
||||||
|
`allow_empty` the judge said met=false with a plan (`01a0c1fd`, 5/5).
|
||||||
|
- **Verifier read-only, proven from the tap** (9b7680a): `01a0c1ff` — 3
|
||||||
|
calls attributed to `agent_type=verifier`, none a write. The first live
|
||||||
|
proof the `--agents` allowlist applies (it could not before cbc9c2d).
|
||||||
|
- **Door fails closed** (76ac371): governor unreachable → deny; a reply
|
||||||
|
without an explicit ALLOW → deny (the old rule was `!contains("DENY")`, so
|
||||||
|
an empty reply approved); no governor + no `CLAWMATES_DOOR_POLICY=allow`
|
||||||
|
→ deny. arXiv 2603.20953: 74.6% → 0/879 is entirely the default. Local
|
||||||
|
override gains the governor prod already had.
|
||||||
|
- **Self-authoring off by default** (76ac371): never delivered, never
|
||||||
|
scored, zero proposals on prod. `CLAWMATES_SKILL_SELF_AUTHORING=1` to
|
||||||
|
re-enable once promoted skills get a Skill-Use score.
|
||||||
|
- **Missions remember, per repository** (13f7fb3): `mission_memory` writes
|
||||||
|
each verdict into `repo_<id>.h5` (reason when met, sanitized guidance when
|
||||||
|
not) and recalls against the next phase's task. BM25, no embedder. The
|
||||||
|
harness asserts the brief carries the section once one judged mission
|
||||||
|
exists on the repo — it FAILED correctly on `01a0c1ff` (pass A deployed,
|
||||||
|
pass B not), which is the assertion discriminating. OpenClaw's
|
||||||
|
flush-before-compaction is moot here: the chat loop has no compaction and
|
||||||
|
already remembers both halves of every turn.
|
||||||
|
- **Gate: rule ids, write-path policy, container-tier denials** (3909fa1).
|
||||||
|
Every denial is `{"rule","payload"}` → `gate.denied.detail.rule`. Write
|
||||||
|
tools are refused over the hooks, their records, the settings, and
|
||||||
|
`.git/hooks/`; the same paths to Bash whatever the tool in front. The
|
||||||
|
container tier never drained denials at all until now. `gatepolicy`
|
||||||
|
scenario: two negative controls, asserting the two rule ids.
|
||||||
|
- **Door token revoked at mission end** (2069bdf, migration 0087):
|
||||||
|
`auth_sessions.mission_id`, revoked on the runner's close and the
|
||||||
|
operator's stop; cascade on purge. Granularity is the mission — the door
|
||||||
|
is installed once per mission and serves every phase.
|
||||||
|
|
||||||
|
Open after this pass:
|
||||||
|
|
||||||
|
1. `gatepolicy` and a second `microvm` run against pass B once it rolls —
|
||||||
|
the container-tier `gate.denied` events, the 401 to the revoked token,
|
||||||
|
and the brief carrying project memory are the three things not yet seen
|
||||||
|
live. Also `01a0c1fa`'s tap drained ZERO tool calls on a VM where the
|
||||||
|
agent plainly read `lib.rs` — one occurrence, on the older `:latest`;
|
||||||
|
watch for it.
|
||||||
|
2. Jev pilot (item 7) when a key exists; DAG phases (item 8) as a design.
|
||||||
|
3. A declarative per-role policy is still a deny-list with ids. The next
|
||||||
|
step is per-role allowlists (tools × path globs × hosts) rendered by the
|
||||||
|
same generator; the OAP-style signed audit record after that.
|
||||||
|
4. Memory retrieval is BM25 by design until the first mission shows it is
|
||||||
|
the bottleneck; the measurement is the harness's memory assertion.
|
||||||
|
|||||||
Reference in New Issue
Block a user