harness-everything 0.4.1 → 0.4.2
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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +2 -0
- package/ci/mechanism-2u-issue-44.test.js +15 -9
- package/ci/repository-contract.test.js +11 -1
- package/opencode-plugin/plugin.json +1 -1
- package/package.json +1 -1
- package/plugins/harness-everything/.codex-plugin/plugin.json +1 -1
- package/plugins/harness-everything/plugin.json +1 -1
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"name": "harness-everything",
|
|
10
10
|
"source": "./",
|
|
11
11
|
"description": "Harness OS: an orchestrated agent operating system — tier routing, circuit breaker guardrails, verification gates, WAL session memory, and self-evolving workspace rules.",
|
|
12
|
-
"version": "0.4.
|
|
12
|
+
"version": "0.4.2",
|
|
13
13
|
"author": {
|
|
14
14
|
"name": "Miya Daniel"
|
|
15
15
|
},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "harness-everything",
|
|
3
3
|
"description": "Harness OS: an orchestrated agent operating system — tier routing, circuit breaker guardrails, verification gates, WAL session memory, and self-evolving workspace rules.",
|
|
4
|
-
"version": "0.4.
|
|
4
|
+
"version": "0.4.2",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Miya Daniel"
|
|
7
7
|
},
|
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project are documented in this file.
|
|
4
4
|
|
|
5
|
+
## [0.4.2](https://github.com/dyphn1/Harness-everything/compare/v0.4.1...v0.4.2) (2026-09-16)
|
|
6
|
+
|
|
5
7
|
## [0.4.1](https://github.com/dyphn1/Harness-everything/compare/v0.4.0...v0.4.1) (2026-09-16)
|
|
6
8
|
|
|
7
9
|
## [0.4.0](https://github.com/dyphn1/Harness-everything/compare/v0.3.6...v0.4.0) (2026-09-16)
|
|
@@ -1,32 +1,38 @@
|
|
|
1
1
|
const fs = require('fs');
|
|
2
2
|
const path = require('path');
|
|
3
3
|
const helper = require('./test-helper');
|
|
4
|
+
const { isStableSemVer } = require('../scripts/sync-release-version');
|
|
4
5
|
|
|
5
6
|
console.log('\n[2u] Issue #44 release metadata regression checks...');
|
|
6
7
|
|
|
7
|
-
const packageJson = JSON.parse(fs.readFileSync(path.join(helper.root, 'package.json'), 'utf8'));
|
|
8
8
|
const skillText = name => fs.readFileSync(path.join(helper.root, name, 'SKILL.md'), 'utf8');
|
|
9
9
|
const versionOf = text => {
|
|
10
10
|
const match = text.match(/^ version:\s*(\S+)$/m);
|
|
11
11
|
return match && match[1];
|
|
12
12
|
};
|
|
13
13
|
|
|
14
|
+
// Skill metadata records the release in which that skill last changed; it is
|
|
15
|
+
// intentionally not required to equal the current package version. The
|
|
16
|
+
// changed-skill bump policy itself is exercised dynamically by
|
|
17
|
+
// mechanism-2x-release-automation.test.js.
|
|
18
|
+
const fableVersion = versionOf(skillText('fable-mode'));
|
|
14
19
|
helper.check(
|
|
15
|
-
'2u.
|
|
16
|
-
|
|
17
|
-
`fable-mode=${
|
|
20
|
+
'2u. fable-mode carries stable release metadata',
|
|
21
|
+
isStableSemVer(fableVersion),
|
|
22
|
+
`fable-mode=${fableVersion}`
|
|
18
23
|
);
|
|
19
24
|
for (const nested of ['execution-guardrails', 'fable-haiku', 'fable-opus', 'fable-sonnet']) {
|
|
20
25
|
helper.check(
|
|
21
26
|
`2u. fable-mode/${nested} inherits the parent version`,
|
|
22
|
-
versionOf(skillText(path.join('fable-mode', nested))) ===
|
|
23
|
-
`${nested}=${versionOf(skillText(path.join('fable-mode', nested)))}, parent=${
|
|
27
|
+
versionOf(skillText(path.join('fable-mode', nested))) === fableVersion,
|
|
28
|
+
`${nested}=${versionOf(skillText(path.join('fable-mode', nested)))}, parent=${fableVersion}`
|
|
24
29
|
);
|
|
25
30
|
}
|
|
31
|
+
const todoVersion = versionOf(skillText('todo-driven-workflow'));
|
|
26
32
|
helper.check(
|
|
27
|
-
'2u.
|
|
28
|
-
|
|
29
|
-
`todo-driven-workflow=${
|
|
33
|
+
'2u. todo-driven-workflow carries stable release metadata',
|
|
34
|
+
isStableSemVer(todoVersion),
|
|
35
|
+
`todo-driven-workflow=${todoVersion}`
|
|
30
36
|
);
|
|
31
37
|
|
|
32
38
|
const changelog = fs.readFileSync(path.join(helper.root, 'CHANGELOG.md'), 'utf8');
|
|
@@ -2,16 +2,26 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
const assert = require('assert');
|
|
5
|
+
const fs = require('fs');
|
|
6
|
+
const path = require('path');
|
|
5
7
|
const { collectContract, renderContractMarkdown, validateContract } = require('../scripts/repository-contract');
|
|
6
8
|
|
|
7
9
|
const contract = collectContract();
|
|
8
10
|
const failures = validateContract(contract);
|
|
9
11
|
assert.deepStrictEqual(failures, [], `Repository contract drift:\n- ${failures.join('\n- ')}`);
|
|
10
12
|
|
|
13
|
+
const packageJson = JSON.parse(fs.readFileSync(path.join(__dirname, '..', 'package.json'), 'utf8'));
|
|
14
|
+
const packageLock = JSON.parse(fs.readFileSync(path.join(__dirname, '..', 'package-lock.json'), 'utf8'));
|
|
15
|
+
assert.strictEqual(
|
|
16
|
+
packageLock.packages?.['']?.engines?.node,
|
|
17
|
+
packageJson.engines?.node,
|
|
18
|
+
'package-lock.json root engines.node must mirror package.json engines.node; run npm install --package-lock-only after changing the Node runtime contract',
|
|
19
|
+
);
|
|
20
|
+
|
|
11
21
|
const rendered = renderContractMarkdown(contract);
|
|
12
22
|
assert.match(rendered, /Minimum supported Node\.js/);
|
|
13
23
|
assert.match(rendered, /GitHub Actions runtime majors/);
|
|
14
24
|
assert.ok(contract.ci.qualityGates.includes('test:consistency'), 'CI contract must expose test:consistency');
|
|
15
25
|
assert.ok(contract.behavioralEvals.scheduled, 'Behavioral eval schedule must remain visible to the contract');
|
|
16
26
|
|
|
17
|
-
console.log('Repository contract verified: runtime, workflows, action majors, schedule, gates, and generated docs are synchronized.');
|
|
27
|
+
console.log('Repository contract verified: runtime, lockfile, workflows, action majors, schedule, gates, and generated docs are synchronized.');
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
|
|
3
3
|
"name": "harness-everything",
|
|
4
|
-
"version": "0.4.
|
|
4
|
+
"version": "0.4.2",
|
|
5
5
|
"description": "Invariant-first engineering harness for routing, verification, and failure recovery while preserving agent autonomy.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Miya Daniel",
|