core/docs/assessment/README.md
Claude e025de7ad4
docs(assessment): fold in the external-assessment triage — H-13, H-14, H-8e; six proposals cleared
Two external first-principles assessments of CORE were verified against code
line-by-line at 8f0ccfe3. What survived is entered; what failed is recorded in
the audit's negative space with the refuting file named, per the register's own
discipline.

Entered:

  H-13 — the speculative-marker cache over-evicts shared tokens: promoting one
  proposal to COHERENT pops tokens regardless of owner (pipeline.py:736-739,
  :1045-1055), so a sibling proposal's still-SPECULATIVE material is served
  without its marker. Honesty regression, served direction. Remedy: refcounted
  cache, failing test first. (The source assessment described this seam with
  the direction inverted — under-eviction; the code over-evicts. The check
  that caught the inversion is what confirmed the bug.)

  H-14 — _run_turn is 759 lines (pipeline.py:189-947) under a thin-wrapper
  docstring, with finalize_turn_trace_hash x2 / finalize_turn_surface x1
  back-stamps as the measured symptom. H-4's sibling: refactor ADR, PR-10's
  byte-identical-trace bar, and the learn stage named stateful.

  H-8e — inductive_closure.py's docstring claims a path-based cycle skip the
  code does not perform (:106 vs :189-193) — and the code is the right side:
  the monotone fixed point needs no path check, and adding one would refuse
  sound derivations. path records only (a,b,c) for longer chains (:198), so
  trace provenance is incomplete. Docstring fix is mechanical; extending path
  changes operator_invocation bytes -> trace_hash, held to the trace-change bar.

  PR-9 widened — the logos-authority bare except (pipeline.py:555) and the
  three OOV-probe swallows (:605-657) join the count-the-swallow scope; same
  remedy shape (record repr(e), keep the backstop), explicitly not the
  narrow-catch alternative.

  R-4 packet addition — first collapse candidate: composed_surface +
  transitive_surface + transitive_max_depth -> chain_depth:int, justified by
  ADR-0083's own docstring ladder; ruled in-lineage, not ad-hoc.

  R-12a note — lived_life.json staleness recorded as a question; the proposed
  PID-attestation fix rejected (refuses every reboot resume; PID reuse).

Cleared, with the refuting file named: EpistemicState compression
(vault/store.py, policy.py's ADR-0206 partition), the EpistemicState x
NormativeClearance product type (erases refusal evidence — H-3 rebuilt as a
type), PID attestation, path-based cycle skipping, the depth-enrichment cache
(pack_resolver.py:19 already lru_caches the cost), and the unified reasoning
engine as-refactor (trace_hash change + capability widening + discards the
ROBDD engine one merge after ADR-0265 ratified denial).

Register ranges updated to G-1..G-21 / H-1..H-14. Docs only; no runtime
behavior, no flag, no test changed.

[Verification]: uv run pytest tests/test_adr_index.py
tests/test_adr_status_governance.py tests/test_adr_0252_s5_blindness.py -q —
327 passed at this tree.

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wcw2pnMBwyvmNyQg4uPEt4
2026-07-28 03:17:54 +00:00

3.4 KiB
Raw Blame History

docs/assessment/ — The Holistic Macro→Micro Assessment (2026-07-27)

A read-only, evidence-bearing assessment of CORE's cognitive-cycle design versus implementation fulfillment, conducted under docs/conceptualizing_engineering_mastery.md at forgejo/main @ 8927c563. Phases 05 change no runtime behavior, fix no defect, and decide nothing — they produce evidence and judgments for ruling. Phase 6 adds the execution plan built on them and the ruling packet they require.

Start here: 40-assessment.md — the synthesis (the verdict, the five frontiers, the recommended attack order). Then 50-execution-plan.md for what follows from it, and 50-rulings.md for what is waiting on a decision. The registers rank the work; the cards are the evidence base.

File / dir Phase What it is
00-scope-and-method.md Charter, method, rules of engagement, phase/executor table
01-phase0-ground-truth.md 0 Corpus triage, the five unreconciled articulations, system-map recovery
02-layer-taxonomy.md 1 The two-axis taxonomy: 7 macro layers + 2 cross-cuts over 33 zones; the Candidate Register (CR-1…4); completeness criteria
03-card-schema.md 1 The card metadata schema: liveness ⊥ fitness, design ⊥ build, sabotage-tested evidence, verified_at stamps
10-layer-cards/ 2 Nine layer cards (M0M6, MG, MV), every liveness label re-verified against code
04-phase2-findings.md 2 Stage-coverage audit; corrections to Phase 0; findings F-1…F-5
20-component-cards/ 3 Eight component cards: the four zero-subsystem zones + always-on, derivation organs, surface selection, attention
05-phase3-findings.md 3 Corrections C-1…C-5; findings F-6…F-10; the consolidated Phase-4 seed list
30-gap-register.md 4 The live gap register — 20 entries, 4 tiers, each with evidence + deciding authority (proposes superseding docs/gaps.md); four entries amended in Phase 6
31-hindrance-audit.md 4 Fourteen hindrances with fitness verdicts and better homes; eleven candidates examined and cleared (five in Phase 4, six in the 2026-07-28 external-assessment triage)
40-assessment.md 5 The synthesis
50-execution-plan.md 6 The execution plan — five waves + five frontier tracks over every G/H entry, with the dependency gates and the risks. §0 carries seven corrections to the assessment found while sizing it
50-rulings.md 6 The ruling packet — R-1…R-14, each with evidence, options, a recommendation, and the exact diff that follows from each choice. Wave 0's deliverable

Maintenance contract (from §8 of the synthesis): a card whose verified_at falls behind a load-bearing arc is testimony, not evidence. Update cards when their subsystems move, or this directory becomes the next dead instrument it was built to replace.

Standing note: the PR #138 fabrication findings appear throughout as measured & pinned, fix held for ADR + ratification — recorded, never re-discovered, never fixed here, per explicit instruction.