refactor: arborist/v7+v8 → arborist/substrate (single topic dir)
fox's read: the version-prefixed namespace pattern (`arborist/v7/`,
`arborist/v8/`) coupled module location to the substrate-paper
version. That collided with the live SQLite schema version (v9.8)
and made readers ask "is this dir tracking schema or paper?" —
a real onboarding hazard surfaced when the v7 dir landed earlier
today (06c95a0) for #000035 Phase 1.
Resolution: collapse v7+v8 into one topic-named dir,
``arborist/substrate/``, which holds Merkle-AGI substrate primitives
that future paper specs require — decoupled from the paper version.
Moves
=====
arborist/v7/anchor_prg.py → arborist/substrate/anchor_prg.py
arborist/v8/fork_score.py → arborist/substrate/fork_score.py
arborist/v8/weights.py → arborist/substrate/weights.py
Empty v7/ + v8/ dirs deleted; their __init__.py docstrings folded
into the new arborist/substrate/__init__.py with an explanation of
why the version-prefixed pattern was retired.
Imports updated
===============
- arborist/cli.py:_cmd_v8_score — arborist.v8 → arborist.substrate
- arborist/substrate/fork_score.py — internal weights import
- tests/test_anchor_prg.py — module + module-docstring
- tests/test_v8_fork_score.py — three import lines
Docs updated
============
- docs/v8-fork-score.md — header note explaining the move
- docs/_source/v8-fork-score.rst — :class: ref updated
- docs/tickets/ticket-000012-selection-consensus-protocol.md — §7
Phase 1a close-out paths refreshed (kept "Originally landed at
arborist/v8/..." parenthetical so the historical record survives);
§7 Phase 1b consensus-paper reference; §7 Phase 1c proposal §3
read-API path
- docs/tickets/ticket-000035-prg-choice-phi-prg.md — §7 Phase 1
close-out path refreshed (with full path-note explaining the
move); §3.1 + §5 left as the original design log per CLAUDE.md
"closed tickets stay in place as design log"
Left untouched
==============
- arborist/world/ — already topic-named; not version-prefixed; the
v7-W reservation lives there with its own planned subdir layout.
- docs/tickets/ticket-000037-prometheus-sigma-...md §13 still refs
``arborist/v9/prometheus.py`` and ``arborist/v8/fork_score.py`` —
fox has 792 lines of in-flight modifications on this file; those
refs should refresh to ``arborist/substrate/`` when the in-flight
edit lands. Avoiding interleaved edits.
Hygiene
=======
- make test → 1643 passed, 45 skipped (was 1643; refactor preserved)
- make chain-check-shards → 0 across all 7 shards
- arborist.substrate namespace picked up by the existing
pyproject.toml ``include = ["arborist*"]`` glob; no setup change.
This commit is contained in:
parent
4d4e4d4249
commit
654d923da0
13 changed files with 96 additions and 101 deletions
|
|
@ -1,4 +1,4 @@
|
|||
"""Tests for arborist.v7.anchor_prg per ticket #000035 §3.2.
|
||||
"""Tests for arborist.substrate.anchor_prg per ticket #000035 §3.2.
|
||||
|
||||
Coverage matches the ticket's acceptance criteria:
|
||||
|
||||
|
|
@ -24,7 +24,7 @@ from pathlib import Path
|
|||
|
||||
import pytest
|
||||
|
||||
from arborist.v7.anchor_prg import (
|
||||
from arborist.substrate.anchor_prg import (
|
||||
PHI_PRG_VERSION,
|
||||
PLACEHOLDER_SEED,
|
||||
_bytes_to_floats,
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ from pathlib import Path
|
|||
|
||||
import pytest
|
||||
|
||||
from arborist.v8 import (
|
||||
from arborist.substrate import (
|
||||
DEFAULT_WEIGHTS,
|
||||
SIGNAL_FLOOR,
|
||||
ScoredFork,
|
||||
|
|
@ -26,11 +26,11 @@ from arborist.v8 import (
|
|||
bench_result_to_metrics,
|
||||
fork_score,
|
||||
)
|
||||
from arborist.v8.fork_score import (
|
||||
from arborist.substrate.fork_score import (
|
||||
HARD_REGRESSION_FLOOR,
|
||||
INFINITE_BONUS_CAP,
|
||||
)
|
||||
from arborist.v8.weights import from_dict as weights_from_dict
|
||||
from arborist.substrate.weights import from_dict as weights_from_dict
|
||||
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue