owlrunkit 0.19.2 → 0.20.0

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.20.0
4
+
5
+ - Adds read-only `team recommend` and `team status` projections over the
6
+ existing Project Driver. Ordinary single-owner work remains off; real
7
+ multi-lane coordination, owned-path conflicts, independent verification, and
8
+ owner transitions are explained without persisting a second task graph.
9
+ - Publishes strict TeamTaskPacket V2, TeamAcceptancePacket V2, and
10
+ CandidateTransferPacket V1 contracts plus `team packet validate`. Project
11
+ bindings, exact WorkItem ownership, model-family independence, candidate
12
+ identity, handoff ACK, false-authority fields, and duplicate JSON keys fail
13
+ closed.
14
+ - Keeps Team Delivery orthogonal to continuity and assurance. This phase does
15
+ not dispatch Agents, rank providers, federate vendor CLIs, grant authority,
16
+ or turn multi-Agent coordination into Formal Delivery.
17
+
3
18
  ## 0.19.2
4
19
 
5
20
  - Adds read-only `formal preflight` and reuses it before an envelope-backed
package/README.md CHANGED
@@ -67,6 +67,17 @@ Independent verification requires a different assigned Agent. Append-only
67
67
  scope revision can widen or narrow a WorkItem after diagnosis without rewriting
68
68
  history, and missing Quick/Formal receipt references remain visible warnings.
69
69
 
70
+ RunKit 0.20.0 Phase 1 adds Team Delivery as a read-only coordination dimension
71
+ over the existing Project Driver. `team recommend` exits for ordinary
72
+ single-owner work, recommends Team only for real coordination facts, exposes
73
+ owned-path conflicts and independent-acceptance gaps, and never dispatches an
74
+ Agent. `team status` projects the existing project graph without storing a
75
+ second graph. Three strict portable contracts—TeamTaskPacket V2,
76
+ TeamAcceptancePacket V2, and CandidateTransferPacket V1—can be validated on a
77
+ machine that does not have the local `manage-agent-team` Skill. This candidate
78
+ does not add automatic or assisted dispatch and does not change Quick or Formal
79
+ assurance.
80
+
70
81
  The 0.18 Project Driver is a bounded surface for new projects and controlled
71
82
  dogfood. Its product name does not claim to be a general long-running,
72
83
  multi-phase, or enterprise control plane. Version 0.18 adds one bounded
@@ -80,13 +91,13 @@ separate authority boundaries.
80
91
 
81
92
  ## Install
82
93
 
83
- `owlrunkit@0.19.2` is an unpublished release candidate. Until registry
94
+ `owlrunkit@0.20.0` is an unpublished release candidate. Until registry
84
95
  publication is independently verified, the current installable release is
85
- `owlrunkit@0.19.1`; a locally packed 0.19.2 tarball is for candidate testing
96
+ `owlrunkit@0.19.2`; a locally packed 0.20.0 tarball is for candidate testing
86
97
  only and is not adoption provenance.
87
98
 
88
99
  ```bash
89
- npm install --save-exact owlrunkit@0.19.1
100
+ npm install --save-exact owlrunkit@0.19.2
90
101
  ```
91
102
 
92
103
  Use `npx --no-install owlrunkit` for project commands. The package bootstrap
@@ -102,9 +113,9 @@ the project Config must independently bind the same Core.
102
113
  ```bash
103
114
  npx --no-install owlrunkit --version
104
115
  npx --no-install owlrunkit bootstrap --workspace /absolute/path/to/project \
105
- --exact owlrunkit@0.19.1 --dry-run
116
+ --exact owlrunkit@0.19.2 --dry-run
106
117
  npx --no-install owlrunkit bootstrap --workspace /absolute/path/to/project \
107
- --exact owlrunkit@0.19.1 --apply
118
+ --exact owlrunkit@0.19.2 --apply
108
119
  npx --no-install owlrunkit init --workspace /absolute/path/to/project
109
120
  npx --no-install owlrunkit doctor --workspace /absolute/path/to/project
110
121
  npx --no-install owlrunkit mode recommend --workspace /absolute/path/to/project
@@ -123,6 +134,28 @@ machine contract. The five user modes are presets over `continuity`
123
134
  (`none | project_driver`) and `assurance` (`none | quick | formal`). They never
124
135
  grant Git, release, deployment, production, or business authority.
125
136
 
137
+ ## Team Delivery: Recommend coordination without dispatch
138
+
139
+ Team Delivery is separate from continuity and assurance. It reads the current
140
+ Project Driver, recommends whether Team coordination is useful, and validates
141
+ self-contained packets without importing model-specific routing policy:
142
+
143
+ ```bash
144
+ npx --no-install owlrunkit team recommend --workspace .
145
+ npx --no-install owlrunkit team status --workspace .
146
+ npx --no-install owlrunkit team packet validate --workspace . \
147
+ --packet ./team-task-packet.json
148
+ ```
149
+
150
+ No initialized project, no actionable work, and one ordinary ready WorkItem
151
+ remain `off`. Two disjoint actionable WorkItems may be parallel-eligible.
152
+ Overlapping owned paths recommend Team but block parallel writing and point to
153
+ append-only scope revision or serialization. Verification, handoff, rework,
154
+ candidate transfer, or multiple active owners keep coordination visible without
155
+ raising assurance. Every result keeps Agent dispatch and all external authority
156
+ false. Phase 1 contains no launcher, scheduler, model ranking, or vendor CLI
157
+ federation.
158
+
126
159
  ## Project Driver: Coordinate a multi-Agent project
127
160
 
128
161
  RunKit 0.18 keeps the project alive independently of any one Agent or chat.
@@ -0,0 +1,296 @@
1
+ # OwlRunKit 0.20 Team Delivery Phase 1 Product Decision
2
+
3
+ Date: 2026-08-13
4
+ Status: `source_candidate_implemented_and_verified / initial_read_only_dogfood_passed / owner_release_authorized / registry_publication_pending`
5
+
6
+ ## Decision
7
+
8
+ OwlRunKit 0.20 Phase 1 adds a read-only Team Delivery projection and portable
9
+ team packet contracts on top of the existing Project Driver. It does not add a
10
+ second task graph, start Agents, route vendors, dispatch work, or change Quick
11
+ or Formal assurance.
12
+
13
+ The product sequence is fixed:
14
+
15
+ 1. publish and stabilize 0.19.2;
16
+ 2. implement 0.20 Phase 1 as read-only recommendation plus native contracts;
17
+ 3. dogfood it in at least two real projects;
18
+ 4. only if measured net value is positive, ask the Owner whether opt-in assisted
19
+ dispatch should be designed.
20
+
21
+ Steps 1 and 2 are complete through a repository source candidate. Step 3 has
22
+ started with read-only recommendation and status projection; transfer and
23
+ acceptance value have not yet been proven through a complete live lifecycle.
24
+ The Owner separately authorized the 0.20 publication transition after the
25
+ initial read-only dogfood. That authorization does not pre-authorize assisted
26
+ dispatch, project adoption, deployment, production, business, funds, or any
27
+ other permission transition.
28
+
29
+ ## Current source-candidate evidence
30
+
31
+ - Focused Team Delivery and public-contract checks: 25 passed, 0 failed.
32
+ - Compatibility, CLI, project-local binding, and neighboring Formal checks:
33
+ 129 passed, 0 failed.
34
+ - Standalone pack, isolated install, initialization, Team packet validation,
35
+ and Quick attestation: 6 passed, 0 failed.
36
+ - Complete RunKit gate: 853 tests, 841 passed, 0 failed, 12 skipped.
37
+ - Root build and production dependency audit passed; the production audit
38
+ reported 0 vulnerabilities.
39
+ - Core, Skill candidate, package config, public attester, and distribution
40
+ manifest resolve to
41
+ `sha256:30098aa9344c17c1ed0b5ed45ef1c590b3214b824402f584029c1ecb38ca7a70`.
42
+
43
+ These facts establish a source candidate only. They do not establish dogfood
44
+ value, registry publication, project adoption, runtime activation, or release
45
+ authority.
46
+
47
+ ## Initial read-only dogfood
48
+
49
+ The candidate was run directly against current Project Driver truth without
50
+ installing or modifying either target project.
51
+
52
+ - OwlFootball had one actionable owned lane and one dependency-blocked future
53
+ lane. Recommendation: `off + project_driver`, assurance unchanged.
54
+ - The active Sierac MES control project had one actionable writer and several
55
+ dependency-blocked future lanes. Recommendation: `off + project_driver`,
56
+ assurance unchanged.
57
+ - A real Sierac MES parallel worktree had two simultaneously actionable,
58
+ disjoint, unassigned lanes. Recommendation: `team + project_driver_team`,
59
+ both lanes parallel-eligible, no path conflict, assurance unchanged.
60
+ - The first Team result exposed a self-referential `team status` next action.
61
+ The candidate was corrected so unassigned actionable lanes now point to
62
+ `project assign --help`; focused and complete gates were rerun afterward.
63
+ - For each directly tested project/worktree, the Project Driver tree
64
+ fingerprint and Git status fingerprint were byte-identical before and after.
65
+ Dispatch remained disabled and every authority field remained false.
66
+
67
+ This establishes correct initial admission and exit behavior. It does not yet
68
+ establish lower handoff time, candidate transfer value, independent acceptance
69
+ value, or eligibility for assisted dispatch.
70
+
71
+ ## Verified starting facts
72
+
73
+ - `owlrunkit@0.19.2` is published and exact-registry verified.
74
+ - Project Driver already owns durable WorkItems, dependencies, owned paths,
75
+ assignments, decisions, checkpoints, handoffs, rework, integration gates,
76
+ source delivery, takeover, and project truth hashing.
77
+ - Usage Mode already keeps continuity and assurance separate.
78
+ - Quick and Formal already own evidence strength; multi-Agent work does not by
79
+ itself imply Formal.
80
+ - The local `manage-agent-team` Skill contains useful operating policy, but it
81
+ is not available on every machine and is not an acceptable product runtime
82
+ dependency.
83
+ - Real dogfood shows Team coordination is useful for multiple writers,
84
+ independent acceptance, candidate transfer, and cross-session ownership; it
85
+ is negative value for ordinary single-owner closure.
86
+
87
+ ## Stable product model
88
+
89
+ Team Delivery adds one orthogonal dimension:
90
+
91
+ ```text
92
+ continuity none | project_driver
93
+ coordination none | team_delivery
94
+ assurance none | quick | formal
95
+ acceptance L0 | L1 | L2 | L3
96
+ authority always externally granted; never inferred by RunKit
97
+ ```
98
+
99
+ `team_delivery` is a read-only coordination recommendation in Phase 1. It is
100
+ not a continuity mode, assurance level, acceptance verdict, or authority.
101
+
102
+ Project Driver remains the sole active project and task truth. Team Delivery
103
+ may project WorkItems into lanes, but it cannot create a parallel team/task
104
+ database or reinterpret project events.
105
+
106
+ ## User-visible Phase 1 surface
107
+
108
+ ```text
109
+ npx --no-install owlrunkit team recommend --workspace "$PWD"
110
+ npx --no-install owlrunkit team status --workspace "$PWD"
111
+ npx --no-install owlrunkit team packet validate --workspace "$PWD" --packet <file>
112
+ ```
113
+
114
+ All commands are read-only and support `--json`. Human output is the default.
115
+ Every result includes the authority boundary and
116
+ `authorizationGranted=false`.
117
+
118
+ ### `team recommend`
119
+
120
+ The recommendation is derived only from current Project Driver truth:
121
+
122
+ - no initialized project, no ready work, or one ordinary ready WorkItem:
123
+ `off`;
124
+ - two or more simultaneously actionable WorkItems with disjoint owned paths:
125
+ `team`;
126
+ - overlapping owned paths: `team`, but parallel writing is blocked and the
127
+ unique next action is to revise ownership or serialize the lanes;
128
+ - a WorkItem in independent verification: `team`;
129
+ - a pending handoff, rework return, or live candidate ownership transfer:
130
+ `team`;
131
+ - multiple active owners: `team`.
132
+
133
+ The result explains trigger reasons, rejected lighter handling, projected
134
+ overhead, path conflicts, acceptance gaps, and one next command. It never
135
+ chooses a model vendor or starts an Agent.
136
+
137
+ ### `team status`
138
+
139
+ Status projects the current Project Driver into:
140
+
141
+ - current project identity and truth hash;
142
+ - incomplete lanes with current owner, dependencies, owned paths, and explicit
143
+ actionable state;
144
+ - which lanes may run concurrently;
145
+ - path conflicts;
146
+ - independent-acceptance gaps;
147
+ - handoff, rework, and source-delivery continuity facts;
148
+ - the current Team recommendation and unique coordination next action.
149
+
150
+ The next command must not loop back to `team status`. An unassigned actionable
151
+ lane points to assignment help, a path conflict points to immutable scope
152
+ revision help, an owner transition points to takeover help, and an already
153
+ owned Team candidate points to portable packet validation help.
154
+
155
+ It does not copy or persist a second task graph.
156
+
157
+ ### `team packet validate`
158
+
159
+ The validator accepts one bounded regular non-symlink JSON file, rejects
160
+ duplicate keys and extra fields, validates the native packet contract, and
161
+ binds project-aware packets to the current `projectId`, `projectTruthHash`,
162
+ WorkItem, and owned paths. Validation performs no packet creation or project
163
+ mutation.
164
+
165
+ ## Native portable contracts
166
+
167
+ Phase 1 publishes three strict Draft 2020-12 contracts and matching runtime
168
+ validators.
169
+
170
+ ### TeamTaskPacket V2
171
+
172
+ The task packet binds one Project Driver WorkItem and Gate. It carries:
173
+
174
+ - actual launcher-declared Agent, model family, and model version;
175
+ - risk axes and required acceptance level;
176
+ - exact worktree and candidate-entry identity;
177
+ - allowed and prohibited paths/actions;
178
+ - evidence plan, verification cadence, handoff requirement, escalation budget,
179
+ and exact stop point;
180
+ - project identity and project truth hash;
181
+ - an explicit all-false authority boundary.
182
+
183
+ Model family is opaque declared identity. Core does not contain Sol, Luna,
184
+ Grok, Kimi, capacity ratios, retries, or routing preferences.
185
+
186
+ ### TeamAcceptancePacket V2
187
+
188
+ The acceptance packet binds one Gate and candidate, records implementation and
189
+ verification identities, acceptance level, fresh adversarial families,
190
+ candidate identity before and after, evidence reuse, findings, verdict, and
191
+ remaining levels. Medium or high second-order risk cannot claim independent
192
+ acceptance when implementation and verification model families are equal.
193
+
194
+ `ACCEPT`, `REWORK`, and `BLOCKED` remain distinct. One packet accepts one Gate;
195
+ it does not grant the next external transition.
196
+
197
+ ### CandidateTransferPacket V1
198
+
199
+ The transfer packet preserves a live candidate across writer ownership change:
200
+
201
+ ```text
202
+ candidate_active
203
+ -> transfer_requested
204
+ -> packet_generated
205
+ -> new_owner_validation
206
+ -> handoff_ack
207
+ -> old_writer_release
208
+ ```
209
+
210
+ It binds candidate identity, dirty manifest, reconstruction sources, protected
211
+ artifacts, previous and next owner, verification state, and handoff ACK. A
212
+ packet at `old_writer_release` is invalid unless the new owner has accepted the
213
+ handoff with evidence. The packet does not itself assign Project Driver
214
+ authority or release the prior writer.
215
+
216
+ ## Admission and exit rules
217
+
218
+ Team Mode is recommended only when coordination changes the outcome or critical
219
+ path. Parallelism being possible is insufficient.
220
+
221
+ The recommendation must explicitly exit Team Mode for a single authorized
222
+ owner with a bounded, reversible, directly verifiable task. Production or
223
+ release labels alone do not force Team Mode. Long duration alone selects
224
+ continuity, not coordination. Multiple Agents alone do not force Formal.
225
+
226
+ Path conflict does not authorize parallel writers. It creates a visible
227
+ coordination blocker.
228
+
229
+ ## Acceptance scenarios
230
+
231
+ 1. No Project Driver definition returns `off`, zero lanes, no dispatch, and no
232
+ authority.
233
+ 2. One ordinary ready WorkItem returns `off` even though Project Driver exists.
234
+ 3. Two independent ready WorkItems with disjoint owned paths return `team` and
235
+ both lanes are parallel-eligible.
236
+ 4. Two actionable WorkItems with overlapping owned paths return `team`, expose
237
+ the exact conflict, and mark both lanes non-parallel.
238
+ 5. Independent verification, pending handoff/rework, candidate transfer, or
239
+ multiple active owners recommends `team` without changing assurance.
240
+ 6. `team recommend`, `team status`, and packet validation write zero project,
241
+ source, Git, or RunKit bytes.
242
+ 7. A valid TeamTaskPacket is bound to the current Project Driver WorkItem and
243
+ owned paths; stale project truth or widened scope is rejected.
244
+ 8. Same-family verification at medium/high second-order risk cannot claim
245
+ independent acceptance.
246
+ 9. Candidate transfer cannot reach `old_writer_release` before accepted
247
+ handoff ACK with evidence.
248
+ 10. Packet schemas and runtime validators reject missing, extra, duplicate-key,
249
+ authority-looking, and malformed identity fields consistently.
250
+ 11. Installed-package help, CLI JSON, public schemas, Core manifest, and the
251
+ Skill describe the same Phase 1 surface without requiring the local
252
+ `manage-agent-team` Skill.
253
+ 12. No output authorizes Git, release, deployment, production, business,
254
+ automation, money, credentials, or Agent dispatch.
255
+
256
+ ## Phase 1 non-goals
257
+
258
+ - no automatic or assisted Agent launch;
259
+ - no vendor CLI federation or general swarm;
260
+ - no model ranking, scorecard, capacity allocation, retry policy, or
261
+ model-specific prompt logic in Core;
262
+ - no second project/task graph;
263
+ - no packet generator that silently assigns ownership;
264
+ - no new Quick or Formal Gate;
265
+ - no replacement for COM-019 or any domain product decision;
266
+ - no 0.20 publication claim before a separately verified release transition.
267
+
268
+ ## Dogfood Gate before assisted dispatch
269
+
270
+ At least two real projects must demonstrate all of the following:
271
+
272
+ - ordinary single-owner work reliably exits Team Mode;
273
+ - multiple writers and independent acceptance produce correct lanes, path
274
+ conflicts, and independence gaps;
275
+ - a machine without the local Skill can validate and continue from the npm
276
+ package and self-contained packets;
277
+ - writer transfer preserves the candidate through ACK;
278
+ - measured handoff time, controller intervention, or duplicate verification
279
+ decreases;
280
+ - the benefit is not merely more packets or receipts.
281
+
282
+ Only after these facts exist may the Owner decide whether to design opt-in
283
+ assisted dispatch. General automatic federation remains a separate product and
284
+ authority decision.
285
+
286
+ ## What cannot be claimed now
287
+
288
+ - 0.20 has not completed transfer or independent-acceptance dogfood and has not
289
+ yet been committed, tagged, registry-published, adopted, or made active;
290
+ source-candidate verification is not registry publication proof.
291
+ - Team Delivery does not dispatch or supervise Agents.
292
+ - The local Skill is not part of the product runtime contract.
293
+ - Team recommendation is not acceptance or authority.
294
+ - Phase 1 is not the selected COM-019 Primary AI Value Loop.
295
+ - No business, production, deployment, or release outcome follows from this
296
+ product decision.
@@ -7,11 +7,11 @@ description: Run receipt-backed, project-owned work with OwlCoda RunKit. Use whe
7
7
 
8
8
  Use the bundled deterministic Core to coordinate work through project artifacts rather than chat memory. Require Node.js 20 or later.
9
9
 
10
- Bundled candidate: standalone `owlrunkit@0.19.2`, bundling Contract `0.2` and
11
- Core `0.19.2` with manifest
12
- `sha256:c46ae9d8ed0572e5636ab5725f922f8db3ee5bf0f966b200bce7b2287c9267c8`.
10
+ Bundled candidate: standalone `owlrunkit@0.20.0`, bundling Contract `0.2` and
11
+ Core `0.20.0` with manifest
12
+ `sha256:30098aa9344c17c1ed0b5ed45ef1c590b3214b824402f584029c1ecb38ca7a70`.
13
13
  This candidate is not published. The current published release remains
14
- `owlrunkit@0.19.1`, which is the trusted prior for rollback and the only
14
+ `owlrunkit@0.19.2`, which is the trusted prior for rollback and the only
15
15
  registry-installable version named by this Skill before publication. Verify
16
16
  exact official npm registry provenance before adoption. The immutable
17
17
  rollback baseline for the prior release is `owlrunkit@0.16.1` with SHA-1
@@ -21,6 +21,28 @@ The root `owlcoda` package has a separate version lifecycle.
21
21
 
22
22
  The session is an execution interface. Project artifacts are the system of record.
23
23
 
24
+ ## Team Delivery Phase 1
25
+
26
+ Use Team Delivery only when current Project Driver facts make coordination
27
+ material. It is a read-only projection, not a second graph or an Agent launcher.
28
+
29
+ ```bash
30
+ npx --no-install owlrunkit team recommend --workspace "$PROJECT_ROOT"
31
+ npx --no-install owlrunkit team status --workspace "$PROJECT_ROOT"
32
+ npx --no-install owlrunkit team packet validate --workspace "$PROJECT_ROOT" \
33
+ --packet /absolute/path/to/team-packet.json
34
+ ```
35
+
36
+ An uninitialized project, no actionable work, or one ordinary ready WorkItem
37
+ must remain off. Disjoint actionable lanes may be parallel-eligible; overlapping
38
+ owned paths must block parallel writing. Independent verification, handoff,
39
+ rework, candidate transfer, or multiple active owners may recommend Team without
40
+ changing assurance. TeamTaskPacket V2, TeamAcceptancePacket V2, and
41
+ CandidateTransferPacket V1 are package-owned portable contracts. Do not depend
42
+ on a user-level `manage-agent-team` Skill at runtime. Core does not choose model
43
+ vendors, score Agents, start tasks, or grant Git, release, deployment,
44
+ production, business, automation, or money authority.
45
+
24
46
  ## Project Driver actions
25
47
 
26
48
  Translate ordinary user requests into durable typed project actions. Do not ask
@@ -211,9 +233,9 @@ below has no CLI entry.
211
233
 
212
234
  ```bash
213
235
  npx --no-install owlrunkit bootstrap --workspace "$PROJECT_ROOT" \
214
- --exact owlrunkit@0.19.1 --dry-run
236
+ --exact owlrunkit@0.19.2 --dry-run
215
237
  npx --no-install owlrunkit bootstrap --workspace "$PROJECT_ROOT" \
216
- --exact owlrunkit@0.19.1 --apply
238
+ --exact owlrunkit@0.19.2 --apply
217
239
  npx --no-install owlrunkit init --workspace "$PROJECT_ROOT"
218
240
  npx --no-install owlrunkit inspect --json --workspace "$PROJECT_ROOT"
219
241
  npx --no-install owlrunkit status --workspace "$PROJECT_ROOT"
@@ -2,9 +2,9 @@
2
2
  "schemaVersion": "OwlCodaRunKitConfigV2",
3
3
  "core": {
4
4
  "contractVersion": "0.2",
5
- "coreVersion": "0.19.2",
6
- "coreManifestSha256": "sha256:c46ae9d8ed0572e5636ab5725f922f8db3ee5bf0f966b200bce7b2287c9267c8",
7
- "coreSourceRef": "artifact:sha256:c46ae9d8ed0572e5636ab5725f922f8db3ee5bf0f966b200bce7b2287c9267c8"
5
+ "coreVersion": "0.20.0",
6
+ "coreManifestSha256": "sha256:30098aa9344c17c1ed0b5ed45ef1c590b3214b824402f584029c1ecb38ca7a70",
7
+ "coreSourceRef": "artifact:sha256:30098aa9344c17c1ed0b5ed45ef1c590b3214b824402f584029c1ecb38ca7a70"
8
8
  },
9
9
  "authorizationPolicy": "external_explicit_authority_required"
10
10
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "owlrunkit",
3
- "version": "0.19.2",
3
+ "version": "0.20.0",
4
4
  "description": "Project Driver for cross-Agent project continuity and progression; execution, evidence, verification, and recovery are the underlying trust substrate.",
5
5
  "license": "GPL-3.0-or-later",
6
6
  "author": "yeemio <owlclaw@163.com>",
@@ -39,6 +39,11 @@
39
39
  "sha256": "sha256:3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986"
40
40
  },
41
41
  "supportedProducerCoreIdentities": [
42
+ {
43
+ "contractVersion": "0.2",
44
+ "coreVersion": "0.20.0",
45
+ "coreManifestSha256": "sha256:30098aa9344c17c1ed0b5ed45ef1c590b3214b824402f584029c1ecb38ca7a70"
46
+ },
42
47
  {
43
48
  "contractVersion": "0.2",
44
49
  "coreVersion": "0.19.2",
@@ -19,6 +19,11 @@ import { captureWorkspaceSnapshot } from "./workspace-snapshot.mjs";
19
19
  export { validQuickReceiptShape } from "./quick-receipt-contract.mjs";
20
20
 
21
21
  export const SUPPORTED_QUICK_CORE_IDENTITIES = Object.freeze([
22
+ {
23
+ contractVersion: "0.2",
24
+ coreVersion: "0.20.0",
25
+ coreManifestSha256: "sha256:30098aa9344c17c1ed0b5ed45ef1c590b3214b824402f584029c1ecb38ca7a70",
26
+ },
22
27
  {
23
28
  contractVersion: "0.2",
24
29
  coreVersion: "0.19.2",
@@ -2,7 +2,7 @@
2
2
  "schemaVersion": "OwlCodaRunKitRegistryReleasePolicyV1",
3
3
  "status": "release_candidate_unpublished",
4
4
  "packageName": "owlrunkit",
5
- "candidateVersion": "0.19.2",
5
+ "candidateVersion": "0.20.0",
6
6
  "registry": "https://registry.npmjs.org",
7
7
  "registryRequiredBeforeAdoption": true,
8
8
  "exactVersionRequired": true,
@@ -23,10 +23,10 @@
23
23
  ],
24
24
  "currentPublishedRelease": {
25
25
  "packageName": "owlrunkit",
26
- "version": "0.19.1",
27
- "shasum": "e14aac84fb680ec9051d786bc84848c8f3ca0ca4",
28
- "integrity": "sha512-I9sd41tD4kDXz8fOuZqMC06JOmofFDitveInGOPbsGJH5HCp7oa+dMdBCSO2KJjdfsVDXoiOPiTpxfahbTUfrg==",
29
- "tarballUrl": "https://registry.npmjs.org/owlrunkit/-/owlrunkit-0.19.1.tgz"
26
+ "version": "0.19.2",
27
+ "shasum": "f9b0f797fe9f79878374380db0756223accd61dc",
28
+ "integrity": "sha512-rFEnbOtPuybztz8EZbcQSY3tGycCAuTkg+qGDwcKaTPjdJRhsXS4OB2HLwDBiILIV6BFyRPSQ7zanObT4jd58g==",
29
+ "tarballUrl": "https://registry.npmjs.org/owlrunkit/-/owlrunkit-0.19.2.tgz"
30
30
  },
31
31
  "registryRelease": null,
32
32
  "registryEvidenceMustBeExternal": true,
package/sbom.spdx.json CHANGED
@@ -2,8 +2,8 @@
2
2
  "spdxVersion": "SPDX-2.3",
3
3
  "dataLicense": "CC0-1.0",
4
4
  "SPDXID": "SPDXRef-DOCUMENT",
5
- "name": "owlrunkit-0.19.2",
6
- "documentNamespace": "https://owlcoda.com/spdx/owlrunkit/0.19.2",
5
+ "name": "owlrunkit-0.20.0",
6
+ "documentNamespace": "https://owlcoda.com/spdx/owlrunkit/0.20.0",
7
7
  "creationInfo": {
8
8
  "created": "2026-07-29T00:00:00Z",
9
9
  "creators": [
@@ -14,7 +14,7 @@
14
14
  {
15
15
  "name": "owlrunkit",
16
16
  "SPDXID": "SPDXRef-Package-OwlRunKit",
17
- "versionInfo": "0.19.2",
17
+ "versionInfo": "0.20.0",
18
18
  "downloadLocation": "NOASSERTION",
19
19
  "filesAnalyzed": false,
20
20
  "licenseConcluded": "GPL-3.0-or-later",
@@ -24,7 +24,7 @@
24
24
  {
25
25
  "referenceCategory": "PACKAGE-MANAGER",
26
26
  "referenceType": "purl",
27
- "referenceLocator": "pkg:npm/owlrunkit@0.19.2"
27
+ "referenceLocator": "pkg:npm/owlrunkit@0.20.0"
28
28
  }
29
29
  ]
30
30
  }
@@ -14,7 +14,7 @@ import { fileURLToPath } from "node:url";
14
14
  import { parseProjectControlState } from "./project-control-parser.mjs";
15
15
 
16
16
  export const CONTRACT_VERSION = "0.2";
17
- export const CORE_VERSION = "0.19.2";
17
+ export const CORE_VERSION = "0.20.0";
18
18
  export const RUNTIME_ROOT = ".owlcoda/runkit";
19
19
 
20
20
  const CORE_FILES = [
@@ -78,6 +78,7 @@ const CORE_FILES = [
78
78
  "sync-release-identity.mjs",
79
79
  "team-project-successor.mjs",
80
80
  "team-project.mjs",
81
+ "team-delivery.mjs",
81
82
  "usage-mode.mjs",
82
83
  "verification-envelope.mjs",
83
84
  "verification-envelope-check.mjs",
@@ -146,6 +147,12 @@ const CORE_FILES = [
146
147
  "schemas/runtime-transition-receipt-v1.schema.json",
147
148
  "schemas/snapshot-v1.schema.json",
148
149
  "schemas/source-candidate-v2.schema.json",
150
+ "schemas/candidate-transfer-packet-v1.schema.json",
151
+ "schemas/team-acceptance-packet-v2.schema.json",
152
+ "schemas/team-delivery-status-v1.schema.json",
153
+ "schemas/team-packet-validation-v1.schema.json",
154
+ "schemas/team-recommendation-v1.schema.json",
155
+ "schemas/team-task-packet-v2.schema.json",
149
156
  "schemas/visual-smoke-request-v1.schema.json",
150
157
  "schemas/visual-smoke-result-v1.schema.json",
151
158
  "schemas/verification-context-v1.schema.json",
@@ -1394,7 +1394,7 @@ export function resumeCompletedFormalFinishV1({
1394
1394
  };
1395
1395
  }
1396
1396
  if (
1397
- closeout.artifact.core?.coreVersion === "0.19.2"
1397
+ new Set(["0.19.2", "0.20.0"]).has(closeout.artifact.core?.coreVersion)
1398
1398
  && (
1399
1399
  !hasExactKeys(formalEvidenceBinding, [
1400
1400
  "schemaVersion",
@@ -15,10 +15,13 @@ const MAX_CORE_TOTAL_BYTES = 67_108_864;
15
15
  const PACKAGE_NAME = "owlrunkit";
16
16
  const OFFICIAL_CLI_ENTRYPOINT =
17
17
  "scripts/runkit-contract/runkit-bootstrap.mjs";
18
- const SELF_NORMALIZED_QUICK_CORE_VERSIONS = new Set(["0.19.2"]);
18
+ const SELF_NORMALIZED_QUICK_CORE_VERSIONS = new Set(["0.19.2", "0.20.0"]);
19
19
  const EXACT_VERSION = /^[0-9]+\.[0-9]+\.[0-9]+(?:-[0-9A-Za-z.-]+)?$/;
20
20
  const SHA256_REF = /^sha256:[a-f0-9]{64}$/;
21
21
  const TRUSTED_PRIOR_CORE_IDENTITIES = new Map([
22
+ ["0.19.2", new Set([
23
+ "sha256:c46ae9d8ed0572e5636ab5725f922f8db3ee5bf0f966b200bce7b2287c9267c8",
24
+ ])],
22
25
  ["0.19.1", new Set([
23
26
  "sha256:291ef97c93a513eed24a29f75c400b61cefd6a8c0ab228401cf2c6a73ea9e622",
24
27
  ])],