@event4u/agent-config 9.32.0 → 9.33.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/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +96 -1
- package/dist/agent-src/commands/review/routing.md +3 -4
- package/dist/agent-src/contexts/communication/rules-auto/reply-close-mechanics.md +65 -0
- package/dist/agent-src/contexts/execution/orchestration-telemetry.md +3 -0
- package/dist/agent-src/rules/delegation-policy.md +6 -0
- package/dist/agent-src/scripts/roadmap_gates.ts +107 -3
- package/dist/agent-src/skills/docker/SKILL.md +11 -0
- package/dist/agent-src/skills/laravel/SKILL.md +11 -0
- package/dist/agent-src/skills/review-routing/SKILL.md +23 -6
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/dist/agent-src/templates/scripts/ownership-map.example.yml +1 -1
- package/dist/cli/registry.js +4 -4
- package/dist/cli/registry.js.map +1 -1
- package/dist/cli-delegate/chunk-HTIU3W56.js +66 -0
- package/dist/cli-delegate/{chunk-ITIQSGOQ.js → chunk-MA4GFWDY.js} +7 -4
- package/dist/cli-delegate/{chunk-542DZR4P.js → chunk-PMQ6Z3T3.js} +1651 -144
- package/dist/cli-delegate/{chunk-PFBV6XRT.js → chunk-Q26HT4QT.js} +1 -63
- package/dist/cli-delegate/{chunk-LVRYBKTI.js → chunk-YPAWXXXR.js} +158 -0
- package/dist/cli-delegate/cmd_conformance.js +256 -226
- package/dist/cli-delegate/cmd_doctor.js +3 -2
- package/dist/cli-delegate/cmd_export.js +1 -1
- package/dist/cli-delegate/cmd_handoff.js +19 -26
- package/dist/cli-delegate/cmd_prune.js +1 -1
- package/dist/cli-delegate/cmd_session_recycle.js +13 -3
- package/dist/cli-delegate/cmd_settings_get.js +4 -2
- package/dist/cli-delegate/cmd_settings_migrate.js +1 -1
- package/dist/cli-delegate/cmd_settings_set.js +5 -3
- package/dist/cli-delegate/cmd_sync.js +1 -1
- package/dist/cli-delegate/cmd_uninstall.js +1 -1
- package/dist/cli-delegate/cmd_validate.js +1 -1
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +8 -8
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +1 -1
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +2 -2
- package/dist/discovery/trust-report.md +1 -1
- package/dist/discovery/workspaces.json +2 -2
- package/dist/hooks/dispatch.js +18 -0
- package/dist/install/install.mjs +7 -4
- package/dist/mcp/registry-manifest.json +2 -2
- package/dist/mcp/server.json +2 -2
- package/dist/mcp/server.mjs +3637 -1158
- package/package.json +1 -1
- package/src/agent-src/scripts/roadmap_gates.ts +107 -3
- package/src/agent-src/templates/scripts/ownership-map.example.yml +1 -1
- package/src/config/cost-parity-budget.json +167 -0
- package/src/config/gate-coverage.yml +44 -5
- package/src/config/quorum-attendance-budget.json +39 -0
- package/src/scripts/_cli/cmd_doctor.ts +69 -1
- package/src/scripts/_cli/cmd_session_recycle.ts +19 -3
- package/src/scripts/_dispatch.bash +5 -3
- package/src/scripts/_lib/orchestration_record.ts +45 -0
- package/src/scripts/ai_council/clients.ts +31 -0
- package/src/scripts/ai_council/events_log.ts +128 -6
- package/src/scripts/ai_council/orchestrator.ts +12 -3
- package/src/scripts/ai_council/pricing.ts +48 -1
- package/src/scripts/ai_council/quorum.ts +20 -0
- package/src/scripts/ai_council/session.ts +11 -0
- package/src/scripts/ask_transport.ts +20 -1
- package/src/scripts/cache_realization_report.ts +38 -0
- package/src/scripts/check_release_highlights.ts +7 -1
- package/src/scripts/conformance_scan.ts +105 -0
- package/src/scripts/cost/track.mjs +39 -0
- package/src/scripts/cost_summary.ts +104 -1
- package/src/scripts/council_cli.ts +131 -13
- package/src/scripts/dispatch_economy_report.ts +5 -2
- package/src/scripts/install.ts +20 -6
- package/src/scripts/lint_budget_ownership.ts +81 -0
- package/src/scripts/lint_skill_frontmatter_safety.ts +55 -1
- package/src/scripts/lint_workflow_paths.ts +384 -0
- package/src/scripts/preamble_byte_census.ts +9 -1
- package/src/scripts/report_carrier_divergence.ts +10 -0
- package/src/scripts/report_conformance_funnel.ts +40 -0
- package/src/scripts/schemas/subagent.schema.json +3 -2
|
@@ -66,10 +66,11 @@ import {
|
|
|
66
66
|
_wizard_state_path,
|
|
67
67
|
main,
|
|
68
68
|
shutilWhich
|
|
69
|
-
} from "./chunk-
|
|
69
|
+
} from "./chunk-PMQ6Z3T3.js";
|
|
70
70
|
import "./chunk-FTAISGDQ.js";
|
|
71
71
|
import "./chunk-EJITJBJX.js";
|
|
72
|
-
import "./chunk-
|
|
72
|
+
import "./chunk-Q26HT4QT.js";
|
|
73
|
+
import "./chunk-YPAWXXXR.js";
|
|
73
74
|
import "./chunk-PZWRPRWP.js";
|
|
74
75
|
import "./chunk-736JCWLM.js";
|
|
75
76
|
import "./chunk-63WSP6YZ.js";
|
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
import {
|
|
24
24
|
_RAW_KEY_PREFIXES,
|
|
25
25
|
hardenedSpawnEnv
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-YPAWXXXR.js";
|
|
27
27
|
import "./chunk-PZWRPRWP.js";
|
|
28
28
|
import "./chunk-JEJABGKB.js";
|
|
29
29
|
import "./chunk-NDJLNC6Q.js";
|
|
@@ -34,7 +34,7 @@ import "./chunk-J55WI3RR.js";
|
|
|
34
34
|
import { spawnSync as spawnSync2 } from "node:child_process";
|
|
35
35
|
import * as fs5 from "node:fs";
|
|
36
36
|
import process4 from "node:process";
|
|
37
|
-
import * as
|
|
37
|
+
import * as path5 from "node:path";
|
|
38
38
|
import { fileURLToPath as fileURLToPath2, pathToFileURL } from "node:url";
|
|
39
39
|
|
|
40
40
|
// src/scripts/_cli/handoff_generate.ts
|
|
@@ -706,24 +706,17 @@ function write_handoff(text, options = {}) {
|
|
|
706
706
|
// src/scripts/_cli/handoff_sessions.ts
|
|
707
707
|
import * as fs4 from "node:fs";
|
|
708
708
|
import * as os from "node:os";
|
|
709
|
-
import * as
|
|
709
|
+
import * as path4 from "node:path";
|
|
710
710
|
|
|
711
711
|
// src/scripts/_lib/session_eol.ts
|
|
712
712
|
import * as crypto from "node:crypto";
|
|
713
713
|
import * as fs3 from "node:fs";
|
|
714
|
-
import * as path4 from "node:path";
|
|
715
|
-
|
|
716
|
-
// src/scripts/_lib/cc_transcript.ts
|
|
717
714
|
import * as path3 from "node:path";
|
|
718
|
-
import { homedir } from "node:os";
|
|
719
|
-
var DEFAULT_PROJECTS_ROOT = path3.join(homedir(), ".claude", "projects");
|
|
720
|
-
|
|
721
|
-
// src/scripts/_lib/session_eol.ts
|
|
722
715
|
function eolStateDir(workspaceRoot) {
|
|
723
|
-
return
|
|
716
|
+
return path3.join(workspaceRoot, "agents", "runtime", "state", "session-eol");
|
|
724
717
|
}
|
|
725
718
|
function eolStateFile(workspaceRoot, sessionKey) {
|
|
726
|
-
return
|
|
719
|
+
return path3.join(eolStateDir(workspaceRoot), `${sessionKey}.json`);
|
|
727
720
|
}
|
|
728
721
|
function eolSessionKey(raw) {
|
|
729
722
|
return crypto.createHash("sha256").update(raw || "unknown-session").digest("hex");
|
|
@@ -779,10 +772,10 @@ function _parse_json2(line) {
|
|
|
779
772
|
}
|
|
780
773
|
return null;
|
|
781
774
|
}
|
|
782
|
-
var CHAT_HISTORY_REL =
|
|
775
|
+
var CHAT_HISTORY_REL = path4.join("agents", "runtime", ".agent-chat-history");
|
|
783
776
|
function _chat_history_path(opts) {
|
|
784
777
|
if (opts.chatHistoryPath) return opts.chatHistoryPath;
|
|
785
|
-
return process.env.AGENT_CHAT_HISTORY_FILE ||
|
|
778
|
+
return process.env.AGENT_CHAT_HISTORY_FILE || path4.join(opts.cwd ?? process.cwd(), CHAT_HISTORY_REL);
|
|
786
779
|
}
|
|
787
780
|
function _chat_history_summaries(histPath) {
|
|
788
781
|
const bySession = /* @__PURE__ */ new Map();
|
|
@@ -867,9 +860,9 @@ function _scan_claude_transcript(file) {
|
|
|
867
860
|
return scan;
|
|
868
861
|
}
|
|
869
862
|
function _claude_transcript_sessions(opts, cap) {
|
|
870
|
-
const root = opts.claudeProjectsRoot ??
|
|
863
|
+
const root = opts.claudeProjectsRoot ?? path4.join(os.homedir(), ".claude", "projects");
|
|
871
864
|
const cwd = opts.cwd ?? process.cwd();
|
|
872
|
-
const projectDir =
|
|
865
|
+
const projectDir = path4.join(root, encode_project_path(cwd));
|
|
873
866
|
let names;
|
|
874
867
|
try {
|
|
875
868
|
names = fs4.readdirSync(projectDir).filter((n) => n.endsWith(".jsonl"));
|
|
@@ -877,9 +870,9 @@ function _claude_transcript_sessions(opts, cap) {
|
|
|
877
870
|
return [];
|
|
878
871
|
}
|
|
879
872
|
const files = names.map((n) => {
|
|
880
|
-
const full =
|
|
873
|
+
const full = path4.join(projectDir, n);
|
|
881
874
|
try {
|
|
882
|
-
return { full, id:
|
|
875
|
+
return { full, id: path4.basename(n, ".jsonl"), mtime: fs4.statSync(full).mtimeMs };
|
|
883
876
|
} catch {
|
|
884
877
|
return null;
|
|
885
878
|
}
|
|
@@ -940,12 +933,12 @@ function _codex_files(root) {
|
|
|
940
933
|
continue;
|
|
941
934
|
}
|
|
942
935
|
for (const e of entries) {
|
|
943
|
-
const full =
|
|
936
|
+
const full = path4.join(dir, e.name);
|
|
944
937
|
if (e.isDirectory()) stack.push(full);
|
|
945
938
|
else if (e.isFile() && e.name.endsWith(".jsonl")) out.push(full);
|
|
946
939
|
}
|
|
947
940
|
}
|
|
948
|
-
return out.sort((a, b) =>
|
|
941
|
+
return out.sort((a, b) => path4.basename(a) < path4.basename(b) ? 1 : -1);
|
|
949
942
|
}
|
|
950
943
|
function _codex_prompt_text(rec) {
|
|
951
944
|
if (rec.type !== "event_msg") return null;
|
|
@@ -973,13 +966,13 @@ function _scan_codex_session(file) {
|
|
|
973
966
|
return scan;
|
|
974
967
|
}
|
|
975
968
|
function _matches_repo(sessionCwd, repoCwd) {
|
|
976
|
-
const norm = (p) =>
|
|
969
|
+
const norm = (p) => path4.resolve(p).replace(/\/+$/, "");
|
|
977
970
|
const a = norm(sessionCwd);
|
|
978
971
|
const b = norm(repoCwd);
|
|
979
|
-
return a === b || a.startsWith(b +
|
|
972
|
+
return a === b || a.startsWith(b + path4.sep);
|
|
980
973
|
}
|
|
981
974
|
function _codex_sessions(opts, cap) {
|
|
982
|
-
const root = opts.codexSessionsRoot ??
|
|
975
|
+
const root = opts.codexSessionsRoot ?? path4.join(os.homedir(), ".codex", "sessions");
|
|
983
976
|
const cwd = opts.cwd ?? process.cwd();
|
|
984
977
|
const matching = [];
|
|
985
978
|
for (const file of _codex_files(root)) {
|
|
@@ -1239,7 +1232,7 @@ function main2(argv = null, options = {}) {
|
|
|
1239
1232
|
throw exc;
|
|
1240
1233
|
}
|
|
1241
1234
|
const envRoot = process4.env.AGENT_CONFIG_ROOT_OVERRIDE === "1" ? process4.env.AGENT_CONFIG_PROJECT_ROOT || null : null;
|
|
1242
|
-
const root =
|
|
1235
|
+
const root = path5.resolve(opts.root ?? envRoot ?? process4.cwd());
|
|
1243
1236
|
const sessions = list_handoff_sessions({ cwd: root });
|
|
1244
1237
|
if (opts.list) {
|
|
1245
1238
|
if (sessions.length === 0) {
|
|
@@ -1335,13 +1328,13 @@ function _isCliEntry() {
|
|
|
1335
1328
|
if (process4.argv[1] === void 0) {
|
|
1336
1329
|
return false;
|
|
1337
1330
|
}
|
|
1338
|
-
const argvUrl = pathToFileURL(
|
|
1331
|
+
const argvUrl = pathToFileURL(path5.resolve(process4.argv[1])).href;
|
|
1339
1332
|
if (import.meta.url === argvUrl) {
|
|
1340
1333
|
return true;
|
|
1341
1334
|
}
|
|
1342
1335
|
try {
|
|
1343
1336
|
const here = fs5.realpathSync(fileURLToPath2(import.meta.url));
|
|
1344
|
-
const argv = fs5.realpathSync(
|
|
1337
|
+
const argv = fs5.realpathSync(path5.resolve(process4.argv[1]));
|
|
1345
1338
|
return here === argv;
|
|
1346
1339
|
} catch {
|
|
1347
1340
|
return false;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __acCreateRequire } from 'node:module'; const require = globalThis.require ?? __acCreateRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
PROJECT_BRIDGE_MARKERS
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-MA4GFWDY.js";
|
|
5
5
|
import "./chunk-UVKNIJH2.js";
|
|
6
6
|
import "./chunk-DS6BLDMG.js";
|
|
7
7
|
import "./chunk-BKO2AZ7Z.js";
|
|
@@ -46,6 +46,8 @@ function parseArgv(argv) {
|
|
|
46
46
|
const a = argv[i];
|
|
47
47
|
if (a === "--template") {
|
|
48
48
|
parsed.template = true;
|
|
49
|
+
} else if (a === "--verify") {
|
|
50
|
+
parsed.verify = true;
|
|
49
51
|
} else if (a === "--file") {
|
|
50
52
|
const value = argv[i + 1];
|
|
51
53
|
if (!value) return { ok: false, message: "--file requires a path" };
|
|
@@ -110,6 +112,10 @@ function runSessionRecycle(input, opts) {
|
|
|
110
112
|
]
|
|
111
113
|
};
|
|
112
114
|
}
|
|
115
|
+
if (opts.verify === true) {
|
|
116
|
+
out.push(`recycle envelope VALID \u2014 ${bytes} bytes, not written (--verify).`);
|
|
117
|
+
return { code: 0, out, err };
|
|
118
|
+
}
|
|
113
119
|
const target = path.join(projectRoot, RECYCLE_ENVELOPE_REL);
|
|
114
120
|
try {
|
|
115
121
|
atomic_write_json(target, envelope);
|
|
@@ -130,9 +136,10 @@ function main(argv = process.argv.slice(2)) {
|
|
|
130
136
|
const parsed = parseArgv(argv);
|
|
131
137
|
if (!parsed.ok) {
|
|
132
138
|
const usage = [
|
|
133
|
-
"usage: agent-config session:recycle [--file <envelope.json>] [--template]",
|
|
139
|
+
"usage: agent-config session:recycle [--file <envelope.json>] [--template] [--verify]",
|
|
134
140
|
" --file <path> read the envelope JSON from a file (default: stdin)",
|
|
135
|
-
" --template print a skeleton envelope and exit"
|
|
141
|
+
" --template print a skeleton envelope and exit",
|
|
142
|
+
" --verify validate only \u2014 same rejections, no write"
|
|
136
143
|
].join("\n");
|
|
137
144
|
if (parsed.message === "usage") {
|
|
138
145
|
process.stdout.write(`${usage}
|
|
@@ -164,7 +171,10 @@ ${usage}
|
|
|
164
171
|
`);
|
|
165
172
|
return 2;
|
|
166
173
|
}
|
|
167
|
-
const result = runSessionRecycle(input, {
|
|
174
|
+
const result = runSessionRecycle(input, {
|
|
175
|
+
cwd: process.cwd(),
|
|
176
|
+
...parsed.verify === true ? { verify: true } : {}
|
|
177
|
+
});
|
|
168
178
|
for (const line of result.out) process.stdout.write(`${line}
|
|
169
179
|
`);
|
|
170
180
|
for (const line of result.err) process.stderr.write(`${line}
|
|
@@ -3,9 +3,11 @@ import {
|
|
|
3
3
|
buildSettingsClassIndex,
|
|
4
4
|
classOfPath,
|
|
5
5
|
getSettingsLeaf,
|
|
6
|
-
load,
|
|
7
6
|
parseSettingsClassRows
|
|
8
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-HTIU3W56.js";
|
|
8
|
+
import {
|
|
9
|
+
load
|
|
10
|
+
} from "./chunk-Q26HT4QT.js";
|
|
9
11
|
import {
|
|
10
12
|
MERGEABLE_KEYS,
|
|
11
13
|
SETTINGS_CARVE_OUT,
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { createRequire as __acCreateRequire } from 'node:module'; const require = globalThis.require ?? __acCreateRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
buildSettingsClassIndex,
|
|
4
|
-
dump,
|
|
5
4
|
getSettingsLeaf,
|
|
6
|
-
load,
|
|
7
5
|
parseSettingsClassRows
|
|
8
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-HTIU3W56.js";
|
|
7
|
+
import {
|
|
8
|
+
dump,
|
|
9
|
+
load
|
|
10
|
+
} from "./chunk-Q26HT4QT.js";
|
|
9
11
|
import {
|
|
10
12
|
external_exports,
|
|
11
13
|
settingsSchema
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __acCreateRequire } from 'node:module'; const require = globalThis.require ?? __acCreateRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
main
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-MA4GFWDY.js";
|
|
5
5
|
import "./chunk-UVKNIJH2.js";
|
|
6
6
|
import "./chunk-DS6BLDMG.js";
|
|
7
7
|
import "./chunk-BKO2AZ7Z.js";
|
|
@@ -3,7 +3,7 @@ import { createRequire as __acCreateRequire } from 'node:module'; const require
|
|
|
3
3
|
import {
|
|
4
4
|
PROJECT_BRIDGE_MARKERS,
|
|
5
5
|
USER_SCOPE_PATHS
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-MA4GFWDY.js";
|
|
7
7
|
import "./chunk-UVKNIJH2.js";
|
|
8
8
|
import "./chunk-DS6BLDMG.js";
|
|
9
9
|
import "./chunk-BKO2AZ7Z.js";
|
|
@@ -1643,7 +1643,7 @@
|
|
|
1643
1643
|
},
|
|
1644
1644
|
{
|
|
1645
1645
|
"category": "command",
|
|
1646
|
-
"checksum": "sha256:
|
|
1646
|
+
"checksum": "sha256:eb47b37ef426c962fffcaf1165d69dbe23c5ee9d95e0207b945769766d9a6d0a",
|
|
1647
1647
|
"install": {
|
|
1648
1648
|
"default": true,
|
|
1649
1649
|
"removable": false
|
|
@@ -5992,7 +5992,7 @@
|
|
|
5992
5992
|
},
|
|
5993
5993
|
{
|
|
5994
5994
|
"category": "rule",
|
|
5995
|
-
"checksum": "sha256:
|
|
5995
|
+
"checksum": "sha256:3df203c839e8abe438414ee36fd99004b519f23a465e97f0a531d1aa3178b564",
|
|
5996
5996
|
"install": {
|
|
5997
5997
|
"default": true,
|
|
5998
5998
|
"removable": false
|
|
@@ -9777,7 +9777,7 @@
|
|
|
9777
9777
|
},
|
|
9778
9778
|
{
|
|
9779
9779
|
"category": "skill",
|
|
9780
|
-
"checksum": "sha256:
|
|
9780
|
+
"checksum": "sha256:79282414c98571fd2370f0852d865ded3648a01952651c9e83676cd5c8c0b501",
|
|
9781
9781
|
"install": {
|
|
9782
9782
|
"default": true,
|
|
9783
9783
|
"removable": false
|
|
@@ -11141,7 +11141,7 @@
|
|
|
11141
11141
|
},
|
|
11142
11142
|
{
|
|
11143
11143
|
"category": "skill",
|
|
11144
|
-
"checksum": "sha256:
|
|
11144
|
+
"checksum": "sha256:1609f4eb7897ebce35da6146fe339bde8e4b2018ad83fd79c2cf849aaf93fb44",
|
|
11145
11145
|
"install": {
|
|
11146
11146
|
"default": false,
|
|
11147
11147
|
"removable": true
|
|
@@ -13061,7 +13061,7 @@
|
|
|
13061
13061
|
},
|
|
13062
13062
|
{
|
|
13063
13063
|
"category": "skill",
|
|
13064
|
-
"checksum": "sha256:
|
|
13064
|
+
"checksum": "sha256:5971a67fecfb6ac2b7b003a035a172af0ef54e2fda487f0118850deb3d8fb937",
|
|
13065
13065
|
"install": {
|
|
13066
13066
|
"default": true,
|
|
13067
13067
|
"removable": false
|
|
@@ -14469,7 +14469,7 @@
|
|
|
14469
14469
|
},
|
|
14470
14470
|
{
|
|
14471
14471
|
"category": "subagent",
|
|
14472
|
-
"checksum": "sha256:
|
|
14472
|
+
"checksum": "sha256:d57dfc1457cf467402e4ee1187cd162cbb62ddecb35b101d6e1aae6e2f103baa",
|
|
14473
14473
|
"install": {
|
|
14474
14474
|
"default": false,
|
|
14475
14475
|
"removable": true
|
|
@@ -14486,7 +14486,7 @@
|
|
|
14486
14486
|
"workspaces": []
|
|
14487
14487
|
}
|
|
14488
14488
|
],
|
|
14489
|
-
"checksum": "sha256:
|
|
14489
|
+
"checksum": "sha256:1a5894344548cfa9a3a79726d9063c47af89da73892e847856ca4748dad6550f",
|
|
14490
14490
|
"deprecations": [
|
|
14491
14491
|
{
|
|
14492
14492
|
"key": "tier",
|
|
@@ -14629,7 +14629,7 @@
|
|
|
14629
14629
|
"reason": "scaffold template for ticket-bundle tickets (ADR-101); carries no runtime frontmatter — emit-tickets fills it in per ticket"
|
|
14630
14630
|
}
|
|
14631
14631
|
],
|
|
14632
|
-
"generated_at": "2026-08-
|
|
14632
|
+
"generated_at": "2026-08-11T05:16:25Z",
|
|
14633
14633
|
"packs": [
|
|
14634
14634
|
{
|
|
14635
14635
|
"artefact_count": 118,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
efd249af793682a1fa9969433c123c923e08e1eee8394865bb93a7c875c7cbec discovery-manifest.json
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"checksum": "sha256:
|
|
3
|
-
"generated_at": "2026-08-
|
|
2
|
+
"checksum": "sha256:1a5894344548cfa9a3a79726d9063c47af89da73892e847856ca4748dad6550f",
|
|
3
|
+
"generated_at": "2026-08-11T05:16:25Z",
|
|
4
4
|
"packs": [
|
|
5
5
|
{
|
|
6
6
|
"always_on": false,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"checksum": "sha256:
|
|
3
|
-
"generated_at": "2026-08-
|
|
2
|
+
"checksum": "sha256:1a5894344548cfa9a3a79726d9063c47af89da73892e847856ca4748dad6550f",
|
|
3
|
+
"generated_at": "2026-08-11T05:16:25Z",
|
|
4
4
|
"scanner_version": "c24312e116f8",
|
|
5
5
|
"workspaces": [
|
|
6
6
|
{
|
package/dist/hooks/dispatch.js
CHANGED
|
@@ -23815,6 +23815,11 @@ function envelopeOutcome(d) {
|
|
|
23815
23815
|
function isInt(n) {
|
|
23816
23816
|
return typeof n === "number" && Number.isFinite(n) && Number.isInteger(n);
|
|
23817
23817
|
}
|
|
23818
|
+
function modelDivergent(requested, served) {
|
|
23819
|
+
if (typeof requested !== "string" || typeof served !== "string") return null;
|
|
23820
|
+
if (!requested || !served) return null;
|
|
23821
|
+
return requested !== served;
|
|
23822
|
+
}
|
|
23818
23823
|
function buildOrchestrationLine(input) {
|
|
23819
23824
|
const errors = [];
|
|
23820
23825
|
const zeroSpawnRoute = (input.route_taken === "primitive" || input.route_taken === "ask") && input.spawn_count === 0;
|
|
@@ -23904,6 +23909,12 @@ function buildOrchestrationLine(input) {
|
|
|
23904
23909
|
if (input.trigger_arm_earlier != null && !TRIGGER_ARMS.includes(input.trigger_arm_earlier)) {
|
|
23905
23910
|
errors.push(`trigger_arm_earlier must be one of ${TRIGGER_ARMS.join(" | ")} (or omitted / null when neither arm fired)`);
|
|
23906
23911
|
}
|
|
23912
|
+
for (const [key, v] of [
|
|
23913
|
+
["model_requested", input.model_requested],
|
|
23914
|
+
["model_served", input.model_served]
|
|
23915
|
+
]) {
|
|
23916
|
+
if (v != null && typeof v !== "string") errors.push(`${key} must be a string or omitted`);
|
|
23917
|
+
}
|
|
23907
23918
|
if (!input.ts) errors.push("ts (ISO-8601 UTC) is required");
|
|
23908
23919
|
if (!input.id) errors.push("id (ULID or content hash) is required");
|
|
23909
23920
|
if (errors.length) return { line: null, errors };
|
|
@@ -23922,6 +23933,13 @@ function buildOrchestrationLine(input) {
|
|
|
23922
23933
|
tier_source: input.tier_source ?? null,
|
|
23923
23934
|
dispatch_tokens: input.dispatch_tokens ?? null,
|
|
23924
23935
|
session_tier: input.session_tier ?? null,
|
|
23936
|
+
// Served-model attribution. `model_divergent` is DERIVED, never
|
|
23937
|
+
// supplied: `null` when either id is absent — a transport that reports
|
|
23938
|
+
// no served id cannot disagree with anything, and calling that `false`
|
|
23939
|
+
// would read as "checked, and they matched".
|
|
23940
|
+
model_requested: input.model_requested ?? null,
|
|
23941
|
+
model_served: input.model_served ?? null,
|
|
23942
|
+
model_divergent: modelDivergent(input.model_requested, input.model_served),
|
|
23925
23943
|
first_pass_success: input.first_pass_success ?? null,
|
|
23926
23944
|
escalated: input.escalated ?? null,
|
|
23927
23945
|
agent_combo: input.agent_combo ?? [],
|
package/dist/install/install.mjs
CHANGED
|
@@ -17965,7 +17965,7 @@ function ensure_vscode_bridge(project_root, package_type, force) {
|
|
|
17965
17965
|
};
|
|
17966
17966
|
const plugin_path = plugin_paths[package_type] ?? "./plugin/agent-config";
|
|
17967
17967
|
const bridge = { "chat.pluginLocations": { [plugin_path]: true } };
|
|
17968
|
-
merge_json_file(
|
|
17968
|
+
return merge_json_file(
|
|
17969
17969
|
path16.join(project_root, ".vscode", "settings.json"),
|
|
17970
17970
|
bridge,
|
|
17971
17971
|
force,
|
|
@@ -18023,7 +18023,8 @@ function _remove_legacy_augment_trampolines() {
|
|
|
18023
18023
|
fs18.unlinkSync(legacy);
|
|
18024
18024
|
skip(`removed legacy ~/.augment/hooks/${name}`);
|
|
18025
18025
|
}
|
|
18026
|
-
} catch {
|
|
18026
|
+
} catch (err) {
|
|
18027
|
+
warn(`could not remove legacy ${legacy}: ${err instanceof Error ? err.message : String(err)}`);
|
|
18027
18028
|
}
|
|
18028
18029
|
}
|
|
18029
18030
|
}
|
|
@@ -21072,8 +21073,10 @@ function _main_project_install(opts, project_root, parsed_tools, is_first_run) {
|
|
|
21072
21073
|
const tools = parsed_tools;
|
|
21073
21074
|
const merged_keys_by_tool = {};
|
|
21074
21075
|
if (!opts.skip_bridges) {
|
|
21075
|
-
|
|
21076
|
-
|
|
21076
|
+
merged_keys_by_tool["augment"] = [
|
|
21077
|
+
...ensure_vscode_bridge(project_root, package_type, opts.force),
|
|
21078
|
+
...ensure_augment_bridge(project_root, opts.force)
|
|
21079
|
+
];
|
|
21077
21080
|
if (_is_tool_enabled(tools, "claude-code")) {
|
|
21078
21081
|
merged_keys_by_tool["claude-code"] = ensure_claude_bridge(project_root, opts.force);
|
|
21079
21082
|
}
|
|
@@ -3,13 +3,13 @@
|
|
|
3
3
|
"artefact_count": 603,
|
|
4
4
|
"scanner_version": "c24312e116f8"
|
|
5
5
|
},
|
|
6
|
-
"generated_at": "2026-08-
|
|
6
|
+
"generated_at": "2026-08-11",
|
|
7
7
|
"package": {
|
|
8
8
|
"description": "Governed skills, rules and commands for AI coding tools (Claude Code, Cursor, Windsurf, Copilot) \u2014 every claim machine-checked, including \"zero runtime daemon\".",
|
|
9
9
|
"homepage": "https://event4u-app.github.io/agent-config",
|
|
10
10
|
"name": "@event4u/agent-config",
|
|
11
11
|
"repository": "https://github.com/event4u-app/agent-config",
|
|
12
|
-
"version": "9.
|
|
12
|
+
"version": "9.33.0"
|
|
13
13
|
},
|
|
14
14
|
"registries": [
|
|
15
15
|
{
|
package/dist/mcp/server.json
CHANGED
|
@@ -9,12 +9,12 @@
|
|
|
9
9
|
"transport": {
|
|
10
10
|
"type": "stdio"
|
|
11
11
|
},
|
|
12
|
-
"version": "9.
|
|
12
|
+
"version": "9.33.0"
|
|
13
13
|
}
|
|
14
14
|
],
|
|
15
15
|
"repository": {
|
|
16
16
|
"source": "github",
|
|
17
17
|
"url": "https://github.com/event4u-app/agent-config"
|
|
18
18
|
},
|
|
19
|
-
"version": "9.
|
|
19
|
+
"version": "9.33.0"
|
|
20
20
|
}
|