@awebai/oats 0.25.6 → 0.25.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -50,7 +50,12 @@ refused (`E_WORKSPACE_SCHEMA`).
50
50
  Every `oats` command that needs the workspace (`sync`, `workspace status`,
51
51
  `capabilities`, `souls`, `spawn`, `status` drift) walks **up** from the current
52
52
  directory (or `--dir`) to the nearest `oats-local.yaml`; its directory is the
53
- deployment. Not found → `E_LOCAL_MISSING`. Beside it:
53
+ deployment. Not found → `E_LOCAL_MISSING`. The deployment is also a
54
+ **configuration boundary**: nothing above the directory holding
55
+ `oats-local.yaml` composes into it (a deployment created inside another
56
+ scope — a scratch deployment under a repository, a fixture under an operator
57
+ workspace — sees only its own files; `oats inspect` reports it, not the outer
58
+ scope, as the workspace). Beside it:
54
59
 
55
60
  ```
56
61
  ~/acme-workspace/
@@ -2,7 +2,7 @@
2
2
 
3
3
  **Purpose:** the one accurate view of every work stream in the redesign, what is on main, what is in flight, who owns it, and what blocks it. Lead: `oats-expert` (redesign lead). Updated whenever anything merges, is returned, or reality changes. Older per-lane boards are superseded by this file.
4
4
 
5
- **Last update:** 2026-09-23 20:00Z · **0.25.0–0.25.5 PUBLISHED** (workspace model A–C; team-review fixes; operator-rebuild round; OATS_SOUL_ID; quarantine-retry fix; launch meta + catalog pins) · **OKF v2.1.4 + oats.aweb v1.12.0 TAGGED and pinned** · **decision 27 accepted; K1′/K1″/K2 kernel PR next** · **oats.aweb 1.13.0 (#110) queued** · **Desktop 10B-0 resumed** · Phase D plan next · **Desktop engineer paused by the human** (10B-0 uncommitted foundation preserved; resume is the human's call; 0.24.14 to be cut from a maintenance branch off `e5cdaf95` when its PR lands) · parity pipeline ⏸.
5
+ **Last update:** 2026-09-24 13:30Z · **0.25.0–0.25.6 PUBLISHED** (0.25.6 = decision 27 kernel half + Desktop 10B-0 terminal owner leases, native gate 23/23) (workspace model A–C; team-review fixes; operator-rebuild round; OATS_SOUL_ID; quarantine-retry fix; launch meta + catalog pins) · **OKF v2.1.4 + oats.aweb v1.12.0 TAGGED and pinned** · **decision 27 accepted; K1′/K1″/K2 kernel PR next** · **oats.aweb 1.13.0 (#110) queued** · **Desktop 10B-0 resumed** · Phase D plan next · **Desktop engineer paused by the human** (10B-0 uncommitted foundation preserved; resume is the human's call; 0.24.14 to be cut from a maintenance branch off `e5cdaf95` when its PR lands) · parity pipeline ⏸.
6
6
 
7
7
  Legend: ✅ on main/published · 🔄 in flight (PR/branch) · 🟡 preserved, not adopted · ⬜ not started · ⛔ blocked
8
8
 
@@ -7,6 +7,41 @@ instances retire"). Mailed to the human and the OSS coordinator before the
7
7
  first swarm. Method per standing instruction: write → swarm build →
8
8
  adversarial-review swarm → PR → main; releases under delegated authority.
9
9
 
10
+ ## Co-leads and lanes (human, 2026-09-24)
11
+
12
+ The human made the two `oats-expert` instances — the redesign lead
13
+ (`oats-expert-knowledge-reworks`) and the maintainer of the second deployment
14
+ (`oats-expert-antares`) — **co-leads with equivalent authority**, who agree on
15
+ pushes. Agreed by both on 2026-09-24:
16
+
17
+ | Lane | Owner | Status |
18
+ |---|---|---|
19
+ | Desktop Phase F (engineer PRs, native gates) | lead | assigned |
20
+ | Kernel (`lib/`, `bin/`; kernel gaps raised by anyone) | lead | assigned |
21
+ | Releases 0.25.7 and D5 (catalog + 0.26.0) | lead | assigned |
22
+ | oats.aweb 1.13.0 re-land end to end | Antares | assigned |
23
+ | D1 operator node + integrations node | Antares | assigned (draft PR `d1/operator-node` handed over) |
24
+ | aweb and okf package-expert seams | Antares | assigned |
25
+ | D2, D3, D4, desktop + kernel bundle migrations (D1 remainder) | Antares | assigned (both humans agreed, 2026-09-24). D2's machine-bound onboard of the lead's deployment is run by the lead on Antares' word; kernel gaps come to the lead as asks. |
26
+
27
+ **Push protocol.**
28
+ - **Class A** — notify after, one line: stewardship, docs and knowledge inside
29
+ one's own lane or node; merging a PR the other co-lead approved in writing;
30
+ merging one's own lane's PR after the other co-lead's review; the bump PR of
31
+ an agreed release.
32
+ - **Class B** — `PUSH INTENT: <what> @ <commit/PR>` → `ACK <message-id>` before
33
+ acting: tags, releases, npm publishes, catalog pins; framework-behaviour
34
+ changes (kernel semantics, OKF/memory contracts, workspace config semantics,
35
+ published skills); merges into the other's lane; reverts, force-anything,
36
+ branch or tag deletion. A blocking intent unanswered for about 45 minutes goes
37
+ to the human, never to action.
38
+ - Every PR is reviewed by the co-lead who did not author it (a helper's PR is
39
+ reviewed by its own lead, inside that lead's lane). A disagreement not settled
40
+ in two mails goes to the human. Standing rules unchanged: PR CI is the full
41
+ gate; published tags never move; no destructive git on shared checkouts.
42
+ - `main` on these repositories carries no branch or tag protection: the parity
43
+ gate and the cross-review are the only things between a merge and `main`.
44
+
10
45
  ## Slices, in order
11
46
 
12
47
  ### D1 — Knowledge centralisation (IN PROGRESS)
@@ -0,0 +1,11 @@
1
+ # OATS 0.25.7
2
+
3
+ ## Fixed
4
+
5
+ - **A v2 deployment is a configuration boundary.** The ancestor walk that
6
+ composes legacy `oats-config.yaml` levels now stops at the directory holding
7
+ `oats-local.yaml`. A deployment created inside another scope (a scratch
8
+ deployment under an operator's workspace, a fixture under a repository) no
9
+ longer inherits the outer scope's files, and `oats inspect` no longer names
10
+ the outer checkout as its `scope.workspace` or lists the outer files in
11
+ `scope.chain`. Found by the Desktop engineer's Phase F study.
package/lib/core.mjs CHANGED
@@ -781,6 +781,13 @@ export function configChain(startDir) {
781
781
  while (true) {
782
782
  const cfg = loadLevelConfig(d);
783
783
  if (cfg) chain.push(cfg);
784
+ // A v2 deployment root (the directory holding oats-local.yaml) is a
785
+ // configuration boundary: nothing above it composes into it. Without this
786
+ // stop, a deployment created under another scope (a scratch deployment
787
+ // inside an operator's workspace, a fixture under a repo) inherited the
788
+ // ancestors' oats-config.yaml and `oats inspect` reported the outer scope
789
+ // as its workspace (Desktop Phase F study, 2026-09-24).
790
+ if (existsSync(join(d, "oats-local.yaml"))) break;
784
791
  const parent = dirname(d);
785
792
  if (parent === d) break;
786
793
  d = parent;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awebai/oats",
3
- "version": "0.25.6",
3
+ "version": "0.25.7",
4
4
  "description": "OATS (Open Agent Team Specification) — durable souls, disposable instances, targetable capability packages, and the runtime-neutral oats CLI/kernel.",
5
5
  "keywords": [
6
6
  "agents",