Skill: one feature across two areas #23

Merged
eureka merged 7 commits from self/cross-area-coordination into main 2026-11-05 10:57:50 +00:00
4 changed files with 37 additions and 2 deletions

View file

@ -613,6 +613,13 @@ and reconciles the target doc with the Body.
operator. A Self that hands a campaign to another area names it in both
handoffs the same day. (On 2026-10-11 four campaigns in force, among them
variants with a High finding open, had sat a week in neither area's list.)
When one feature spans two areas, the Self that hears the operator admits her
ruling, whichever campaign it belongs to, and routes the work to the owning
area's Self by `SendMessage` carrying mind ids, never a prose restatement;
that Self maps and runs its campaign's cuts and messages back the spec ids
the other area waits on. (2026-10-14: fauna's trophic graph needed the
cultmath-tapes tape and CultMath nodes; the two Selves ran it this way with
no campaign worked by both.)
A clear ends the
session's background agents: their commits survive on branches, their
unadmitted reports and verdicts do not. Rotate when no agent is in flight; if

View file

@ -170,7 +170,10 @@ labelled `<pass>.<label>` and `toward` the question, follow_up or cut it was mad
for (empty is legal). An alternative you reject is admitted with its Recorded
resolution, with the reason, in the same batch; one left open stays an idea in
force for the decider to resolve. A transferable fact about the world, not this
cut, goes to an Eyes pass. In the prose map at <path>, edit body facts and rationale. Also edit the model page
cut, goes to an Eyes pass. In the prose map at <path>, edit body facts and rationale. <path> is in a worktree
Self names, at the current head of the map's branch; never the operator's
checkout (2026-10-13: a loot-2 pass edited an operator checkout whose map was
three days stale, beside the operator's uncommitted work). Also edit the model page
whenever a probe changes a row's identity, lifecycle or authority. Imagination
wrote that page in 0b, and a model a cut contradicts is stale steering text.
Do not commit; the root agent commits. Do not change code in any repo. Scratch probes under
@ -434,7 +437,11 @@ Commits:
- Stage explicit paths only; never `git add -A`.
- Never amend a commit or force-push. Self and other agents commit on the
same branch while you work. Fix a commit with a new commit. On a rejected
push, `git pull --rebase`, then push.
push of a cut branch, `git pull --rebase`, then push. A merge pass that
pushes to master never rebases on a rejected push: rebase flattens the merge
commit and drops merge-time fixes (master broke at Aetheria 07854ed5,
2026-10-13). It fetches, merges `origin/master` into its verified merge,
re-verifies what the new upstream commits change, and pushes.
- In Git Bash, one call: `git add <paths> && git commit -F- <<'MSG' ... MSG &&
git push`. Never commit from PowerShell (it writes a BOM and breaks
here-strings).

View file

@ -370,6 +370,11 @@ invariants, not-in-scope list and canonical implementations are the typed
- **Admit only the ruling that answers a question.** Its `Answered`
resolution is derived in the same commit; admitting that resolution by hand
is refused `IdentityCollision`.
- **Re-mapping a withdrawn cut takes two batches.** First admit a `Withdrawn`
resolution on the spec's withdrawal resolution, which reopens the spec. Then,
in a second batch, admit revision N+1 with a `Superseded` resolution on
revision N. One batch holding both is refused `WouldReinstateOverLater`
(loot-2 r3, 2026-10-13). A fresh cut label at revision 1 needs neither.
- **A finding cannot be resolved `Superseded`** (`IncompatibleResolution`).
Resolve it `Recorded`, naming its successor in the reason.
- **Test negative greps before publishing them** in a spec's

View file

@ -35,6 +35,13 @@ Self, session `self-2026-10-23-ag8`.
Evidence. `C:\aeth-wt` held 255 GB, mostly 1.7-3.9 GB Unity worktrees from sessions ag3 to ag7. The ag7 handoff listed them as "worktrees to remove when idle". C: was at 1.4 GB free while the operator flew, and a new worktree checkout failed mid-write. A two-pass sweep removed about 140 worktrees and directories. Operator: "you really gotta start cleaning up after yourself".
What changed. `SKILL.md` git and tooling rules: Self removes a cut's worktrees in the turn the cut merges or is abandoned, parks unreferenced heads under `keep/` tags first, and checks free space before creating a worktree.
## 2026-10-14: one feature across two areas
Self, session `self-2026-10-14-ag`.
Evidence. Fauna's trophic placement (aetheria-fauna, Aetheria area) needed the CultMath tape and nodes (cultmath-tapes, Eureka area). The operator ruled tape and node questions in the Aetheria session; the Aetheria Self admitted her rulings there and messaged the Eureka Self with ids, which mapped and ran the CultMath cuts and messaged spec ids back. Nothing in the skill said how two Selves coordinate (Life, 2026-10-14).
What changed. `SKILL.md`, the area paragraph: the Self that hears the operator admits her ruling; work goes to the owning area's Self by message with ids.
## 2026-10-14: nothing that exists is sacred, her words included
@ -51,6 +58,15 @@ Evidence. `aetheria-release:cut_report:cut-sensor-catalog.h4` names branch `eure
What changed. `SKILL.md`, Self's worktree bullet: the worktree's branch is the spec's `branch` field, spelled exactly.
## 2026-10-13: a merge pass never rebases on a rejected push
Self, session `self-2026-10-13-ag`.
Evidence. `aetheria-release:cut_report:cut-reveals-replace-tiers.h3`: the merge agent's first push to master was rejected because a docs commit had landed. Following the Hands brief ("On a rejected push, `git pull --rebase`, then push"), it rebased: that flattened the merge commit and dropped its merge-time fix to two test files, so Aetheria master 07854ed5 did not compile until the agent repaired it forward in 20cd1d7c. Master history now carries the cut's commits twice.
What changed. The Hands brief's commit rules keep `git pull --rebase` for cut branches only. A merge pass that pushes to master fetches, merges `origin/master` into its verified merge, re-verifies what the new upstream commits change, and pushes.
## 2026-10-12: no test run of any size on Starfire
Self, session `self-2026-10-12-eureka`.