Young's Mind
03 Decisions

Young's rulings — second set

Young, 2026-10-10: six rulings, plus "re-verify D1–D5 individually."

Young's rulings — second set

Young, 2026-10-10: six rulings, plus "re-verify D1–D5 individually."

Every D-decision below was re-verified against live state today, not carried forward from the original doc.


Part 1 — the six rulings

#QuestionRulingApplied
1Does V3 get its own repo?Yes — the root .solosthe code root IS the repo; no solos3
2Who owns the V3 build?Min + coordinationPLAN.md register
3Cost of a stuck taskMiraStage 6
4A skill curatorMinStage 4
5The gatesit is a per-model allowanceStage 6 — already recorded, now confirmed
6.solos has no remoteadd GitStage 9.1 — the action is named

1 — V3's repo is .solos itself

No solos3. The code root /home/lab/.solos is the repo. That is consistent with everything already decided: .solos is the ROOT, not a folder inside a repo — so it is the repository.

State measured: .solos is already a git repo — branch main, 7 commits, 16 tracked files, 0 remotes.

2 — Min owns the V3 build, plus coordination

Recorded in the register. Note this is a change from the earlier framing where Sol owned engineering and Min coordinated; Young has ruled Min owns the build, with coordination. Sol's lane is unchanged — transport, executor, conformance, observability.

3–4 — two owners named for two unowned items

ItemWasNow
Cost of a stuck taskin no stage (Mira proposed it)Mira — Stage 6
A skill curatorin no stage (Mira proposed it)Min — Stage 4

Both were "controls with no owner." They now have one.

5 — the gates are per-model, confirmed

Already recorded from the allowance work; Young confirms it. GLM/MiMo/Muse $60 · Qwen3.8 $30 · GPT-6/Claude-Haiku $15 · the free ones unlimited. The window rule is per model too: 5h 20% · weekly 50% · monthly 100% of that model's limit.

6 — .solos gets a Git remote

Stage 9.1's action is now named. The vault is the model — it has two:

origin  https://github.com/youngframeworks/solos-vault.git
prod    ubuntu@161.33.71.67:/home/ubuntu/.solos/docs/vault

⚠️ One caution before Stage 9.1 runs, from the vault's own rule: "a deletion committed here propagates there." The vault's prod remote points at the production host, which LAB rules put off-limits for Min. So the destination for .solos needs a decision: a new GitHub repo, or a path under the existing one. That is Stage 9's first open item, and it is not mine to pick.


Part 2 — D1–D5, re-verified individually

D1 — Where does the registry live? ✅ ANSWERED by the tree, not by a vote

The recommendation was "a declarative file", and the tree has already settled it.

Measured: /home/lab/.solos/cortex/registry/ contains agents.yaml, README.md, PHASE0-STATUS.md — and no registry.py.

So the open question — "keep, absorb, or delete registry.py?" — is moot: it is already gone from .solos. (V2's copy is referenced by two V2 tests, tests/test_registry.py and tests/test_no_old_code.py, which is V2's business.)

Ruling: the declarative file. D1 is CLOSED.

D2 — Where do tasks live? ✅ recommendation stands, re-verified

Measured: V2's core/queue.py is 61,390 bytes and intact — atomic claim with BEGIN IMMEDIATE, a sound state machine, separation-of-duties enforcement.

Ruling: cortex owns the contract; the database is the store. Relocating 61 KB of working code to satisfy a diagram is the trade the recommendation refuses. D2 is CLOSED on the recommendation.

D3 — How is a skill assigned? ⚠️ re-verified, and the registry does not yet support it

Measured: an agent record has capabilities but no skills field, and the three planes are brain · heart · pulse.

So the recommendation — plane by default, per-agent override — is implementable, but the field does not exist yet. It is Stage 4.1's work ("declare plane/capability per skill").

Ruling: plane by default, with a per-agent override. D3 CLOSED, and it creates a concrete Stage 4 task: add the assignment field.

D4 — SDK migration: replace or run both? ✅ superseded by the SDK ruling, and re-verified

Measured: a2a-sdk is 1.2.2 on PyPI.

The earlier ruling made this simpler than D4 assumed. D4 was "replace the hand-rolled server, or run both and prove with the Inspector?" — but Young ruled we build on the official SDK, and Hermes' plugin becomes the reference, not a competitor. So there is no hand-rolled server to run alongside: the plugin is a yardstick we diff against, not a live peer.

Ruling: build on the SDK; prove with the Inspector; diff against the plugin.D4 CLOSED — and the "run both" half is retired with the plugin decision.

D5 — Stage 0/1 first? ✅ confirmed, and nothing has started

Measured: .solos has 0 .py files. Stage 0 has not begun.

Ruling: yes, immediately. D5 CLOSED.


Part 3 — D1–D5 status table

#DecisionStatusNote
D1registry is a declarative file✅ CLOSEDthe tree already settled it — no registry.py exists
D2cortex owns the contract, DB is the store✅ CLOSEDcore/queue.py intact at 61 KB
D3plane by default, per-agent override✅ CLOSEDcreates Stage 4.1: the field does not exist yet
D4SDK migration✅ CLOSEDsuperseded — no hand-rolled server to run alongside
D5Stage 0/1 first✅ CLOSED0 .py files; nothing started

All five closed. Nothing in D1–D5 remains open.


Part 4 — what is now open, and it is a shorter list

ItemOwner
Where .solos gets pushed — a new GitHub repo, or under the existing one?Young
The backup cadence — and the acceptable data-loss windowMira + Young
The retention classifier's home — does this task touch vault content?Mira + Min
The MCP ruling — keep or defer, the one conflict not resolvable by evidenceYoung
spec/ — 18 MB untracked in solos2, one git clean from goneYoung
Does the V3 fleet use V2's ports?Young

Everything else has an owner and a stage.


Not established

  • No ruling was acted on beyond the documents. .solos still has 0 .py files and 0 remotes — the rulings are recorded, not executed.
  • D1's registry.py absence was measured in .solos only. V2's copy still exists and two V2 tests reference it; that is V2's tree and V2's owner.
  • D3's assignment field does not exist — the ruling makes it Stage 4 work, and Stage 4 has not started.
  • The .solos remote destination is unresolved and needs Young's call.
Copyright © 2026