Skip to content

Commit 9a76905

Browse files
chore(release): prepare v1.0.40
1 parent ad3245c commit 9a76905

7 files changed

Lines changed: 64 additions & 9 deletions

File tree

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -327,7 +327,7 @@ After a tagged release is published, you can install the same CLI directly
327327
from GitHub without keeping a checkout:
328328

329329
```bash
330-
npm install --global "git+https://github.com/jcarlosrodicio/opencode-agent-orchestration-kit.git#v1.0.39"
330+
npm install --global "git+https://github.com/jcarlosrodicio/opencode-agent-orchestration-kit.git#v1.0.40"
331331
oc-switch
332332
```
333333

@@ -741,7 +741,7 @@ Validate only the canonical identity and current release note with:
741741

742742
```bash
743743
npm run check:version
744-
node scripts/version.mjs --check-tag v1.0.39
744+
node scripts/version.mjs --check-tag v1.0.40
745745
```
746746

747747
Tag validation compares an explicitly supplied tag with the package identity.

docs/models.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ oc-switch
2626
Once a release tag exists, a checkout is optional:
2727

2828
```bash
29-
npm install --global "git+https://github.com/jcarlosrodicio/opencode-agent-orchestration-kit.git#v1.0.39"
29+
npm install --global "git+https://github.com/jcarlosrodicio/opencode-agent-orchestration-kit.git#v1.0.40"
3030
oc-switch
3131
```
3232

docs/releases/v1.0.40.md

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# v1.0.40 - Safe lifecycle and canonical release identity
2+
3+
This release publishes the reviewed portable mission runtime and strengthens
4+
the boundary between the public orchestration kit and private harness
5+
configuration.
6+
7+
## Highlights
8+
9+
- Add a durable mission-status projection for bounded loop workflows, including
10+
iteration state, blocking cause, session identity, and the next safe action.
11+
- Add a read-only mission runtime observer that tracks root sessions, ignores
12+
child-session noise and duplicate events, and reports optional TUI activity
13+
without writing durable loop state.
14+
- Add a closed runtime permission policy and harness checks that keep agent
15+
identities, tool decisions, delegation, and frontmatter contracts aligned.
16+
- Add an explicit public synchronization boundary and checks for excluding
17+
private providers, MCP wiring, credentials, endpoints, paths, and raw runtime
18+
evidence.
19+
- Improve package provenance, isolated installation and package smoke coverage,
20+
rollback verification, and native tool-path performance baselines.
21+
22+
## Installation or upgrade
23+
24+
Install or upgrade the public kit using the normal manifest-owned flow:
25+
26+
```bash
27+
./install.sh --dry-run
28+
./install.sh
29+
./upgrade.sh --dry-run
30+
./upgrade.sh
31+
./doctor.sh
32+
```
33+
34+
After installation, run `oak check` and review the installed target before
35+
using the harness.
36+
37+
## Migration
38+
39+
No migration is required. Existing installation manifests without the optional
40+
release provenance block remain readable, and the new mission runtime state is
41+
created only by an explicit loop workflow.
42+
43+
## Validation performed
44+
45+
Release readiness passed with the public contract checks, 1,067 unit and
46+
script tests, typechecking, dependency vulnerability and signature audits,
47+
installation smoke, package smoke, rollback checks, compatibility checks, and
48+
the public-boundary leak scan.
49+
50+
## Public safety boundary
51+
52+
The public release excludes private OpenCode and Pi configuration, local
53+
providers and MCP wiring, credentials, authentication files, raw transcripts,
54+
private evidence, absolute machine paths, and runtime state. Pi uses its own
55+
native model catalog and is not included in this OpenCode package.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "opencode-agent-orchestration-kit",
3-
"version": "1.0.39",
3+
"version": "1.0.40",
44
"private": false,
55
"license": "Apache-2.0",
66
"type": "module",

scripts/benchmark-tool-paths.mjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ async function benchmarkFixture(fixture, iterations, temporaryRoot) {
143143
const result = await createInstallationManager({
144144
sourceRoot: fixture.sourceRoot,
145145
repositoryRoot: fixture.root,
146-
versionProvider: () => "1.0.39",
146+
versionProvider: () => "1.0.40",
147147
}).run("install", { targetRoot });
148148
if (result.exitCode !== 0) throw invalid(`installation benchmark failed for ${fixture.id}`);
149149
} finally {

scripts/package-smoke.test.mjs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import {
1717

1818
const ROOT = path.dirname(path.dirname(fileURLToPath(import.meta.url)));
1919
const HASH = "a".repeat(64);
20-
const BASENAME = "opencode-agent-orchestration-kit-1.0.39.tgz";
20+
const BASENAME = "opencode-agent-orchestration-kit-1.0.40.tgz";
2121
const REQUIRED = [
2222
"package/package.json",
2323
"package/supply-chain.json",
@@ -210,7 +210,7 @@ test("smokeTarball validates both archive listings before extraction", async ()
210210
await assert.rejects(
211211
smokeTarball({
212212
repositoryRoot: ROOT,
213-
tarball: "/public/opencode-agent-orchestration-kit-1.0.39.tgz",
213+
tarball: "/public/opencode-agent-orchestration-kit-1.0.40.tgz",
214214
captureTarball(_source, destination) {
215215
fs.writeFileSync(destination, "fixture");
216216
return { size: 1 };

scripts/version.test.mjs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ test("[V004] direct version entrypoints are exact and mutation-free", (t) => {
109109
for (const args of [["scripts/version.mjs"], ["scripts/manage-installation.mjs", "--version"]]) {
110110
const result = run(process.execPath, args, { HOME: home });
111111
assert.equal(result.status, 0, result.stderr);
112-
assert.equal(result.stdout, "opencode-agent-orchestration-kit 1.0.39\n");
112+
assert.equal(result.stdout, "opencode-agent-orchestration-kit 1.0.40\n");
113113
assert.equal(fs.existsSync(target), false);
114114
}
115115
});
@@ -118,7 +118,7 @@ test("[V005] all lifecycle wrappers expose the canonical version", () => {
118118
for (const wrapper of ["install.sh", "upgrade.sh", "doctor.sh", "uninstall.sh", "rollback.sh"]) {
119119
const result = run(path.join(REPOSITORY_ROOT, wrapper), ["--version"]);
120120
assert.equal(result.status, 0, `${wrapper}: ${result.stderr}`);
121-
assert.equal(result.stdout, "opencode-agent-orchestration-kit 1.0.39\n", wrapper);
121+
assert.equal(result.stdout, "opencode-agent-orchestration-kit 1.0.40\n", wrapper);
122122
}
123123
});
124124

0 commit comments

Comments
 (0)