@calliopelabs/cli 3.5.4 → 3.7.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/README.md +8 -0
- package/dist/acp/controls.d.ts +10 -0
- package/dist/acp/controls.d.ts.map +1 -0
- package/dist/acp/controls.js +81 -0
- package/dist/acp/controls.js.map +1 -0
- package/dist/acp.d.ts +21 -7
- package/dist/acp.d.ts.map +1 -1
- package/dist/acp.js +139 -23
- package/dist/acp.js.map +1 -1
- package/dist/bin.d.ts.map +1 -1
- package/dist/bin.js +28 -8
- package/dist/bin.js.map +1 -1
- package/dist/build-identity.d.ts +27 -0
- package/dist/build-identity.d.ts.map +1 -0
- package/dist/build-identity.js +32 -0
- package/dist/build-identity.js.map +1 -0
- package/dist/build-metadata.json +1 -0
- package/dist/execution/authority.d.ts +4 -1
- package/dist/execution/authority.d.ts.map +1 -1
- package/dist/execution/authority.js +23 -7
- package/dist/execution/authority.js.map +1 -1
- package/dist/execution/child-grants.d.ts +2 -0
- package/dist/execution/child-grants.d.ts.map +1 -1
- package/dist/execution/child-grants.js +19 -4
- package/dist/execution/child-grants.js.map +1 -1
- package/dist/execution/delegated.d.ts +14 -0
- package/dist/execution/delegated.d.ts.map +1 -0
- package/dist/execution/delegated.js +66 -0
- package/dist/execution/delegated.js.map +1 -0
- package/dist/execution/files.js +6 -6
- package/dist/execution/files.js.map +1 -1
- package/dist/execution/guard.d.ts +5 -0
- package/dist/execution/guard.d.ts.map +1 -1
- package/dist/execution/guard.js +31 -16
- package/dist/execution/guard.js.map +1 -1
- package/dist/execution/index.d.ts +4 -0
- package/dist/execution/index.d.ts.map +1 -1
- package/dist/execution/index.js +4 -0
- package/dist/execution/index.js.map +1 -1
- package/dist/execution/ledger-cli.d.ts +2 -1
- package/dist/execution/ledger-cli.d.ts.map +1 -1
- package/dist/execution/ledger-cli.js +51 -14
- package/dist/execution/ledger-cli.js.map +1 -1
- package/dist/execution/ledger-protocol.d.ts +6 -2
- package/dist/execution/ledger-protocol.d.ts.map +1 -1
- package/dist/execution/ledger-protocol.js +110 -24
- package/dist/execution/ledger-protocol.js.map +1 -1
- package/dist/execution/ledger-server.d.ts +13 -0
- package/dist/execution/ledger-server.d.ts.map +1 -1
- package/dist/execution/ledger-server.js +57 -13
- package/dist/execution/ledger-server.js.map +1 -1
- package/dist/execution/ledger-tunnel.d.ts +50 -0
- package/dist/execution/ledger-tunnel.d.ts.map +1 -0
- package/dist/execution/ledger-tunnel.js +307 -0
- package/dist/execution/ledger-tunnel.js.map +1 -0
- package/dist/execution/ledger.d.ts +4 -0
- package/dist/execution/ledger.d.ts.map +1 -1
- package/dist/execution/ledger.js +30 -4
- package/dist/execution/ledger.js.map +1 -1
- package/dist/execution/parent-accounting.d.ts +41 -0
- package/dist/execution/parent-accounting.d.ts.map +1 -0
- package/dist/execution/parent-accounting.js +52 -0
- package/dist/execution/parent-accounting.js.map +1 -0
- package/dist/execution/parent-budget.d.ts +25 -0
- package/dist/execution/parent-budget.d.ts.map +1 -0
- package/dist/execution/parent-budget.js +102 -0
- package/dist/execution/parent-budget.js.map +1 -0
- package/dist/execution/project-spend.d.ts.map +1 -1
- package/dist/execution/project-spend.js +35 -5
- package/dist/execution/project-spend.js.map +1 -1
- package/dist/execution/remote-checkpoint.d.ts +15 -0
- package/dist/execution/remote-checkpoint.d.ts.map +1 -0
- package/dist/execution/remote-checkpoint.js +165 -0
- package/dist/execution/remote-checkpoint.js.map +1 -0
- package/dist/execution/remote-ledger.d.ts +12 -2
- package/dist/execution/remote-ledger.d.ts.map +1 -1
- package/dist/execution/remote-ledger.js +53 -21
- package/dist/execution/remote-ledger.js.map +1 -1
- package/dist/execution/types.d.ts +23 -5
- package/dist/execution/types.d.ts.map +1 -1
- package/dist/execution/types.js.map +1 -1
- package/dist/goals/supervised.js +2 -2
- package/dist/goals/supervised.js.map +1 -1
- package/dist/headless.d.ts +2 -6
- package/dist/headless.d.ts.map +1 -1
- package/dist/headless.js +17 -21
- package/dist/headless.js.map +1 -1
- package/dist/improvement/actions.d.ts +3 -4
- package/dist/improvement/actions.d.ts.map +1 -1
- package/dist/improvement/actions.js +10 -7
- package/dist/improvement/actions.js.map +1 -1
- package/dist/improvement/capabilities.d.ts +54 -0
- package/dist/improvement/capabilities.d.ts.map +1 -0
- package/dist/improvement/capabilities.js +44 -0
- package/dist/improvement/capabilities.js.map +1 -0
- package/dist/improvement/cli.d.ts +1 -1
- package/dist/improvement/cli.d.ts.map +1 -1
- package/dist/improvement/cli.js +29 -3
- package/dist/improvement/cli.js.map +1 -1
- package/dist/improvement/host-capabilities.d.ts +119 -0
- package/dist/improvement/host-capabilities.d.ts.map +1 -0
- package/dist/improvement/host-capabilities.js +18 -0
- package/dist/improvement/host-capabilities.js.map +1 -0
- package/dist/improvement/index.d.ts +6 -0
- package/dist/improvement/index.d.ts.map +1 -1
- package/dist/improvement/index.js +6 -0
- package/dist/improvement/index.js.map +1 -1
- package/dist/improvement/proposal-hash.d.ts +3 -0
- package/dist/improvement/proposal-hash.d.ts.map +1 -0
- package/dist/improvement/proposal-hash.js +5 -0
- package/dist/improvement/proposal-hash.js.map +1 -0
- package/dist/improvement/review-contract.d.ts +32 -0
- package/dist/improvement/review-contract.d.ts.map +1 -0
- package/dist/improvement/review-contract.js +62 -0
- package/dist/improvement/review-contract.js.map +1 -0
- package/dist/improvement/review-requests.d.ts +72 -0
- package/dist/improvement/review-requests.d.ts.map +1 -0
- package/dist/improvement/review-requests.js +63 -0
- package/dist/improvement/review-requests.js.map +1 -0
- package/dist/improvement/source-changes.d.ts +78 -0
- package/dist/improvement/source-changes.d.ts.map +1 -0
- package/dist/improvement/source-changes.js +91 -0
- package/dist/improvement/source-changes.js.map +1 -0
- package/dist/improvement/task-outcomes.d.ts +82 -0
- package/dist/improvement/task-outcomes.d.ts.map +1 -0
- package/dist/improvement/task-outcomes.js +72 -0
- package/dist/improvement/task-outcomes.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/isolation/contracts.d.ts +13 -0
- package/dist/isolation/contracts.d.ts.map +1 -1
- package/dist/isolation/contracts.js +9 -1
- package/dist/isolation/contracts.js.map +1 -1
- package/dist/isolation/coordinator.d.ts.map +1 -1
- package/dist/isolation/coordinator.js +4 -0
- package/dist/isolation/coordinator.js.map +1 -1
- package/dist/isolation/process.d.ts.map +1 -1
- package/dist/isolation/process.js +3 -1
- package/dist/isolation/process.js.map +1 -1
- package/dist/isolation/worktree.d.ts +9 -1
- package/dist/isolation/worktree.d.ts.map +1 -1
- package/dist/isolation/worktree.js +8 -3
- package/dist/isolation/worktree.js.map +1 -1
- package/dist/memory.d.ts +5 -3
- package/dist/memory.d.ts.map +1 -1
- package/dist/memory.js +8 -6
- package/dist/memory.js.map +1 -1
- package/dist/migration/assessment-contract.d.ts +60 -0
- package/dist/migration/assessment-contract.d.ts.map +1 -0
- package/dist/migration/assessment-contract.js +132 -0
- package/dist/migration/assessment-contract.js.map +1 -0
- package/dist/migration/assessment-schema.d.ts +19 -0
- package/dist/migration/assessment-schema.d.ts.map +1 -0
- package/dist/migration/assessment-schema.js +43 -0
- package/dist/migration/assessment-schema.js.map +1 -0
- package/dist/migration/assessment.d.ts +159 -0
- package/dist/migration/assessment.d.ts.map +1 -0
- package/dist/migration/assessment.js +219 -0
- package/dist/migration/assessment.js.map +1 -0
- package/dist/migration/cli.d.ts +6 -0
- package/dist/migration/cli.d.ts.map +1 -0
- package/dist/migration/cli.js +101 -0
- package/dist/migration/cli.js.map +1 -0
- package/dist/migration/evidence.d.ts +27 -0
- package/dist/migration/evidence.d.ts.map +1 -0
- package/dist/migration/evidence.js +124 -0
- package/dist/migration/evidence.js.map +1 -0
- package/dist/migration/example.d.ts +33 -0
- package/dist/migration/example.d.ts.map +1 -0
- package/dist/migration/example.js +28 -0
- package/dist/migration/example.js.map +1 -0
- package/dist/migration/index.d.ts +21 -0
- package/dist/migration/index.d.ts.map +1 -0
- package/dist/migration/index.js +15 -0
- package/dist/migration/index.js.map +1 -0
- package/dist/migration/inventory.d.ts +70 -0
- package/dist/migration/inventory.d.ts.map +1 -0
- package/dist/migration/inventory.js +233 -0
- package/dist/migration/inventory.js.map +1 -0
- package/dist/migration/schema.d.ts +61 -0
- package/dist/migration/schema.d.ts.map +1 -0
- package/dist/migration/schema.js +76 -0
- package/dist/migration/schema.js.map +1 -0
- package/dist/migration/verification.d.ts +146 -0
- package/dist/migration/verification.d.ts.map +1 -0
- package/dist/migration/verification.js +260 -0
- package/dist/migration/verification.js.map +1 -0
- package/dist/orchestration/actions.d.ts +2 -0
- package/dist/orchestration/actions.d.ts.map +1 -1
- package/dist/orchestration/actions.js.map +1 -1
- package/dist/orchestration/artifact-host.d.ts +46 -0
- package/dist/orchestration/artifact-host.d.ts.map +1 -0
- package/dist/orchestration/artifact-host.js +64 -0
- package/dist/orchestration/artifact-host.js.map +1 -0
- package/dist/orchestration/coordinator-actions.d.ts +1 -1
- package/dist/orchestration/coordinator-actions.d.ts.map +1 -1
- package/dist/orchestration/coordinator-actions.js +5 -3
- package/dist/orchestration/coordinator-actions.js.map +1 -1
- package/dist/orchestration/coordinator-types.d.ts +23 -2
- package/dist/orchestration/coordinator-types.d.ts.map +1 -1
- package/dist/orchestration/coordinator.d.ts +5 -0
- package/dist/orchestration/coordinator.d.ts.map +1 -1
- package/dist/orchestration/coordinator.js +30 -13
- package/dist/orchestration/coordinator.js.map +1 -1
- package/dist/orchestration/execution-cli.d.ts +1 -1
- package/dist/orchestration/execution-cli.d.ts.map +1 -1
- package/dist/orchestration/execution-cli.js +29 -6
- package/dist/orchestration/execution-cli.js.map +1 -1
- package/dist/orchestration/execution-journal.d.ts.map +1 -1
- package/dist/orchestration/execution-journal.js +79 -6
- package/dist/orchestration/execution-journal.js.map +1 -1
- package/dist/orchestration/execution-store.d.ts +5 -1
- package/dist/orchestration/execution-store.d.ts.map +1 -1
- package/dist/orchestration/execution-store.js +66 -5
- package/dist/orchestration/execution-store.js.map +1 -1
- package/dist/orchestration/execution.d.ts.map +1 -1
- package/dist/orchestration/execution.js +37 -10
- package/dist/orchestration/execution.js.map +1 -1
- package/dist/orchestration/index.d.ts +6 -0
- package/dist/orchestration/index.d.ts.map +1 -1
- package/dist/orchestration/index.js +6 -0
- package/dist/orchestration/index.js.map +1 -1
- package/dist/orchestration/interruption.d.ts +10 -0
- package/dist/orchestration/interruption.d.ts.map +1 -0
- package/dist/orchestration/interruption.js +38 -0
- package/dist/orchestration/interruption.js.map +1 -0
- package/dist/orchestration/question-contract.d.ts +19 -0
- package/dist/orchestration/question-contract.d.ts.map +1 -0
- package/dist/orchestration/question-contract.js +21 -0
- package/dist/orchestration/question-contract.js.map +1 -0
- package/dist/orchestration/questions.d.ts +9 -0
- package/dist/orchestration/questions.d.ts.map +1 -0
- package/dist/orchestration/questions.js +75 -0
- package/dist/orchestration/questions.js.map +1 -0
- package/dist/orchestration/reviewed-ledger.d.ts +23 -0
- package/dist/orchestration/reviewed-ledger.d.ts.map +1 -0
- package/dist/orchestration/reviewed-ledger.js +57 -0
- package/dist/orchestration/reviewed-ledger.js.map +1 -0
- package/dist/orchestration/routing.d.ts +3 -0
- package/dist/orchestration/routing.d.ts.map +1 -1
- package/dist/orchestration/routing.js +5 -1
- package/dist/orchestration/routing.js.map +1 -1
- package/dist/orchestration/source-candidates.d.ts +64 -0
- package/dist/orchestration/source-candidates.d.ts.map +1 -0
- package/dist/orchestration/source-candidates.js +95 -0
- package/dist/orchestration/source-candidates.js.map +1 -0
- package/dist/orchestration/validation.js +1 -1
- package/dist/orchestration/validation.js.map +1 -1
- package/dist/runlog.js +2 -2
- package/dist/runlog.js.map +1 -1
- package/dist/runtime/permissions.d.ts.map +1 -1
- package/dist/runtime/permissions.js +3 -2
- package/dist/runtime/permissions.js.map +1 -1
- package/dist/runtime/turn.d.ts +2 -0
- package/dist/runtime/turn.d.ts.map +1 -1
- package/dist/runtime/turn.js +21 -7
- package/dist/runtime/turn.js.map +1 -1
- package/dist/session-management/actions.js +1 -1
- package/dist/session-management/actions.js.map +1 -1
- package/dist/sessions/execution-binding.d.ts +8 -0
- package/dist/sessions/execution-binding.d.ts.map +1 -0
- package/dist/sessions/execution-binding.js +9 -0
- package/dist/sessions/execution-binding.js.map +1 -0
- package/dist/sessions/index.d.ts +1 -0
- package/dist/sessions/index.d.ts.map +1 -1
- package/dist/sessions/index.js +1 -0
- package/dist/sessions/index.js.map +1 -1
- package/dist/source-changes/writer.d.ts +77 -0
- package/dist/source-changes/writer.d.ts.map +1 -0
- package/dist/source-changes/writer.js +189 -0
- package/dist/source-changes/writer.js.map +1 -0
- package/dist/spawning/actions.d.ts +10 -1
- package/dist/spawning/actions.d.ts.map +1 -1
- package/dist/spawning/actions.js +26 -7
- package/dist/spawning/actions.js.map +1 -1
- package/dist/spawning/cli.js +1 -1
- package/dist/spawning/cli.js.map +1 -1
- package/dist/spawning/execution.d.ts.map +1 -1
- package/dist/spawning/execution.js +2 -0
- package/dist/spawning/execution.js.map +1 -1
- package/dist/spawning/types.d.ts +19 -6
- package/dist/spawning/types.d.ts.map +1 -1
- package/dist/spawning/validation.d.ts +16 -0
- package/dist/spawning/validation.d.ts.map +1 -1
- package/dist/spawning/validation.js +44 -8
- package/dist/spawning/validation.js.map +1 -1
- package/dist/storage.d.ts +5 -0
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +10 -1
- package/dist/storage.js.map +1 -1
- package/dist/supervision/contracts.js +4 -1
- package/dist/supervision/contracts.js.map +1 -1
- package/dist/tools.d.ts +1 -0
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +5 -0
- package/dist/tools.js.map +1 -1
- package/docs/README.md +66 -0
- package/docs/acp.md +228 -0
- package/docs/delegation-ledger.md +331 -0
- package/docs/improvement-cycles.md +304 -0
- package/docs/migration-assessment.md +113 -0
- package/docs/migration-example-plan.json +88 -0
- package/docs/migration-example-report.json +511 -0
- package/docs/migration-inventory.md +63 -0
- package/docs/migration-playbook.md +152 -0
- package/docs/migration-verification.md +177 -0
- package/docs/releases/3.6.0.md +43 -0
- package/docs/releases/3.7.0.md +53 -0
- package/package.json +11 -3
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/** Versioned description of implemented native mechanisms, never a permission grant. */
|
|
2
|
+
export declare function improvementCapabilities(): {
|
|
3
|
+
readonly version: 2;
|
|
4
|
+
readonly kind: 'improvement.capabilities';
|
|
5
|
+
readonly owner: 'calliope-cli';
|
|
6
|
+
readonly mechanisms: {
|
|
7
|
+
readonly recursiveTaskStrategy: true;
|
|
8
|
+
readonly crossRunLearnedStrategy: false;
|
|
9
|
+
readonly modelTraining: false;
|
|
10
|
+
readonly externalFeedbackImport: false;
|
|
11
|
+
};
|
|
12
|
+
readonly historyVersions: readonly [1, 2, 3];
|
|
13
|
+
readonly hostAdmission: {
|
|
14
|
+
readonly version: 1;
|
|
15
|
+
readonly option: 'expectedExecutionRevision';
|
|
16
|
+
readonly operations: readonly ['propose', 'run'];
|
|
17
|
+
readonly semantics: 'exact-revision-before-start';
|
|
18
|
+
readonly controllerReset: 'own-committed-event';
|
|
19
|
+
};
|
|
20
|
+
readonly operations: {
|
|
21
|
+
readonly history: {
|
|
22
|
+
readonly mode: 'read-only';
|
|
23
|
+
readonly mayCallModel: false;
|
|
24
|
+
};
|
|
25
|
+
readonly propose: {
|
|
26
|
+
readonly mode: 'reviewed-mutation';
|
|
27
|
+
readonly mayCallModel: true;
|
|
28
|
+
};
|
|
29
|
+
readonly run: {
|
|
30
|
+
readonly mode: 'reviewed-mutation';
|
|
31
|
+
readonly mayCallModel: true;
|
|
32
|
+
};
|
|
33
|
+
readonly rollback: {
|
|
34
|
+
readonly mode: 'reviewed-mutation';
|
|
35
|
+
readonly mayCallModel: false;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
readonly scope: {
|
|
39
|
+
readonly owner: 'native-project-run';
|
|
40
|
+
readonly requiredPlanVersion: 4;
|
|
41
|
+
readonly activation: 'exact-proposal-hash-and-native-policy';
|
|
42
|
+
readonly inheritedLimits: readonly ['scope', 'budget', 'deadline', 'depth', 'count'];
|
|
43
|
+
readonly rollback: 'strategy-withdrawal-no-source-inverse-or-refund';
|
|
44
|
+
};
|
|
45
|
+
readonly evidence: {
|
|
46
|
+
readonly authority: 'native-execution-and-request-journals';
|
|
47
|
+
readonly hypotheses: 'proposed-not-verified-facts';
|
|
48
|
+
readonly acceptance: 'source-attributed-native-checks-or-human-acceptance';
|
|
49
|
+
readonly missingMetrics: 'null-not-zero';
|
|
50
|
+
readonly cost: 'comparable-only-with-settled-bound-request-provenance';
|
|
51
|
+
};
|
|
52
|
+
readonly notice: 'Capabilities describe this CLI implementation. Inspect the exact project/run and current policy before acting. No feedback is imported, no project is opened, and no authority or budget is granted by this query.';
|
|
53
|
+
};
|
|
54
|
+
//# sourceMappingURL=capabilities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/improvement/capabilities.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,wBAAgB,uBAAuB;aAEnC,OAAO,EAAE,CAAC;aACV,IAAI,EAAE,0BAA0B;aAChC,KAAK,EAAE,cAAc;aACrB,UAAU;iBACR,qBAAqB;iBACrB,uBAAuB;iBACvB,aAAa;iBACb,sBAAsB;;aAExB,eAAe,YAAG,CAAC,EAAE,CAAC,EAAE,CAAC;aACzB,aAAa;iBACX,OAAO,EAAE,CAAC;iBACV,MAAM,EAAE,2BAA2B;iBACnC,UAAU,YAAG,SAAS,EAAE,KAAK;iBAC7B,SAAS,EAAE,6BAA6B;iBACxC,eAAe,EAAE,qBAAqB;;aAExC,UAAU;iBACR,OAAO;qBAAG,IAAI,EAAE,WAAW;qBAAE,YAAY;;iBACzC,OAAO;qBAAG,IAAI,EAAE,mBAAmB;qBAAE,YAAY;;iBACjD,GAAG;qBAAG,IAAI,EAAE,mBAAmB;qBAAE,YAAY;;iBAC7C,QAAQ;qBAAG,IAAI,EAAE,mBAAmB;qBAAE,YAAY;;;aAEpD,KAAK;iBACH,KAAK,EAAE,oBAAoB;iBAC3B,mBAAmB,EAAE,CAAC;iBACtB,UAAU,EAAE,uCAAuC;iBACnD,eAAe,YAAG,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO;iBACjE,QAAQ,EAAE,iDAAiD;;aAE7D,QAAQ;iBACN,SAAS,EAAE,uCAAuC;iBAClD,UAAU,EAAE,6BAA6B;iBACzC,UAAU,EAAE,qDAAqD;iBACjE,cAAc,EAAE,eAAe;iBAC/B,IAAI,EAAE,uDAAuD;;aAE/D,MAAM,EAAE,oNAAoN;EAE/N"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/** Versioned description of implemented native mechanisms, never a permission grant. */
|
|
2
|
+
export function improvementCapabilities() {
|
|
3
|
+
return {
|
|
4
|
+
version: 2,
|
|
5
|
+
kind: 'improvement.capabilities',
|
|
6
|
+
owner: 'calliope-cli',
|
|
7
|
+
mechanisms: {
|
|
8
|
+
recursiveTaskStrategy: true,
|
|
9
|
+
crossRunLearnedStrategy: false,
|
|
10
|
+
modelTraining: false,
|
|
11
|
+
externalFeedbackImport: false,
|
|
12
|
+
},
|
|
13
|
+
historyVersions: [1, 2, 3],
|
|
14
|
+
hostAdmission: {
|
|
15
|
+
version: 1,
|
|
16
|
+
option: 'expectedExecutionRevision',
|
|
17
|
+
operations: ['propose', 'run'],
|
|
18
|
+
semantics: 'exact-revision-before-start',
|
|
19
|
+
controllerReset: 'own-committed-event',
|
|
20
|
+
},
|
|
21
|
+
operations: {
|
|
22
|
+
history: { mode: 'read-only', mayCallModel: false },
|
|
23
|
+
propose: { mode: 'reviewed-mutation', mayCallModel: true },
|
|
24
|
+
run: { mode: 'reviewed-mutation', mayCallModel: true },
|
|
25
|
+
rollback: { mode: 'reviewed-mutation', mayCallModel: false },
|
|
26
|
+
},
|
|
27
|
+
scope: {
|
|
28
|
+
owner: 'native-project-run',
|
|
29
|
+
requiredPlanVersion: 4,
|
|
30
|
+
activation: 'exact-proposal-hash-and-native-policy',
|
|
31
|
+
inheritedLimits: ['scope', 'budget', 'deadline', 'depth', 'count'],
|
|
32
|
+
rollback: 'strategy-withdrawal-no-source-inverse-or-refund',
|
|
33
|
+
},
|
|
34
|
+
evidence: {
|
|
35
|
+
authority: 'native-execution-and-request-journals',
|
|
36
|
+
hypotheses: 'proposed-not-verified-facts',
|
|
37
|
+
acceptance: 'source-attributed-native-checks-or-human-acceptance',
|
|
38
|
+
missingMetrics: 'null-not-zero',
|
|
39
|
+
cost: 'comparable-only-with-settled-bound-request-provenance',
|
|
40
|
+
},
|
|
41
|
+
notice: 'Capabilities describe this CLI implementation. Inspect the exact project/run and current policy before acting. No feedback is imported, no project is opened, and no authority or budget is granted by this query.',
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=capabilities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/improvement/capabilities.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,MAAM,UAAU,uBAAuB;IACrC,OAAO;QACL,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,0BAA0B;QAChC,KAAK,EAAE,cAAc;QACrB,UAAU,EAAE;YACV,qBAAqB,EAAE,IAAI;YAC3B,uBAAuB,EAAE,KAAK;YAC9B,aAAa,EAAE,KAAK;YACpB,sBAAsB,EAAE,KAAK;SAC9B;QACD,eAAe,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1B,aAAa,EAAE;YACb,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,2BAA2B;YACnC,UAAU,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC;YAC9B,SAAS,EAAE,6BAA6B;YACxC,eAAe,EAAE,qBAAqB;SACvC;QACD,UAAU,EAAE;YACV,OAAO,EAAE,EAAC,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAC;YACjD,OAAO,EAAE,EAAC,IAAI,EAAE,mBAAmB,EAAE,YAAY,EAAE,IAAI,EAAC;YACxD,GAAG,EAAE,EAAC,IAAI,EAAE,mBAAmB,EAAE,YAAY,EAAE,IAAI,EAAC;YACpD,QAAQ,EAAE,EAAC,IAAI,EAAE,mBAAmB,EAAE,YAAY,EAAE,KAAK,EAAC;SAC3D;QACD,KAAK,EAAE;YACL,KAAK,EAAE,oBAAoB;YAC3B,mBAAmB,EAAE,CAAC;YACtB,UAAU,EAAE,uCAAuC;YACnD,eAAe,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC;YAClE,QAAQ,EAAE,iDAAiD;SAC5D;QACD,QAAQ,EAAE;YACR,SAAS,EAAE,uCAAuC;YAClD,UAAU,EAAE,6BAA6B;YACzC,UAAU,EAAE,qDAAqD;YACjE,cAAc,EAAE,eAAe;YAC/B,IAAI,EAAE,uDAAuD;SAC9D;QACD,MAAM,EAAE,oNAAoN;KACpN,CAAC;AACb,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { CoordinatorOptions } from '../orchestration/coordinator.js';
|
|
2
2
|
import type { ImprovementCycle } from './types.js';
|
|
3
|
-
export declare const IMPROVEMENT_USAGE = "calliope improve [history|propose|run <cycle-id> --approve <hash>|rollback <cycle-id>] [--run <run-id>] [--allow-mutations] [--json]";
|
|
3
|
+
export declare const IMPROVEMENT_USAGE = "calliope improve [capabilities|host-capabilities [--contract-version 1]|history|propose|run <cycle-id> --approve <hash>|rollback <cycle-id>] [--run <run-id>] [--allow-mutations] [--json]";
|
|
4
4
|
export declare function improvementLines(cycles: ImprovementCycle[]): string[];
|
|
5
5
|
export declare function runImprovementCommand(args: string[], options?: CoordinatorOptions & {
|
|
6
6
|
cwd?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/improvement/cli.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/improvement/cli.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAIxE,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,YAAY,CAAC;AAEjD,eAAO,MAAM,iBAAiB,+LAA6L,CAAC;AAC5N,wBAAgB,gBAAgB,CAAC,MAAM,EAAC,gBAAgB,EAAE,GAAE,MAAM,EAAE,CAGnE;AACD,wBAAsB,qBAAqB,CAAC,IAAI,EAAC,MAAM,EAAE,EAAC,OAAO,GAAC,kBAAkB,GAAC;IAAC,GAAG,CAAC,EAAC,MAAM,CAAC;IAAA,KAAK,CAAC,EAAC,CAAC,IAAI,EAAC,MAAM,KAAG,IAAI,CAAA;CAAI,GAAE,OAAO,CAAC,MAAM,CAAC,CA0ChJ"}
|
package/dist/improvement/cli.js
CHANGED
|
@@ -5,7 +5,9 @@ import { SessionPolicyError } from '../session-management/index.js';
|
|
|
5
5
|
import { ExecutionLimitError } from '../execution/index.js';
|
|
6
6
|
import { OrchestrationError } from '../orchestration/types.js';
|
|
7
7
|
import { inspectImprovements, proposeImprovement, runImprovement, withdrawImprovement } from './actions.js';
|
|
8
|
-
|
|
8
|
+
import { improvementCapabilities } from './capabilities.js';
|
|
9
|
+
import { improvementHostCapabilities } from './host-capabilities.js';
|
|
10
|
+
export const IMPROVEMENT_USAGE = 'calliope improve [capabilities|host-capabilities [--contract-version 1]|history|propose|run <cycle-id> --approve <hash>|rollback <cycle-id>] [--run <run-id>] [--allow-mutations] [--json]';
|
|
9
11
|
export function improvementLines(cycles) {
|
|
10
12
|
return cycles.slice(-20).flatMap(c => [`${c.id} · ${c.principle} · ${c.proposedChange.action} · ${c.status}${c.parentCycleId ? ' · parent ' + c.parentCycleId : ''}`,
|
|
11
13
|
...c.metrics.filter(m => m.comparable).map(m => ` ${m.name}: ${m.before} → ${m.after} ${m.unit}; observed, not a causal guarantee`)]);
|
|
@@ -17,11 +19,35 @@ export async function runImprovementCommand(args, options = {}) {
|
|
|
17
19
|
try {
|
|
18
20
|
if (args.some(v => v.length > 4096 || /[\x00-\x1f\x7f]/.test(v)))
|
|
19
21
|
throw new OrchestrationError('invalid', IMPROVEMENT_USAGE);
|
|
20
|
-
const { values, positionals } = parseArgs({ args, allowPositionals: true, options: { run: { type: 'string' }, approve: { type: 'string' }, json: { type: 'boolean' }, 'allow-mutations': { type: 'boolean' } } });
|
|
22
|
+
const { values, positionals } = parseArgs({ args, allowPositionals: true, options: { run: { type: 'string' }, approve: { type: 'string' }, json: { type: 'boolean' }, 'allow-mutations': { type: 'boolean' }, 'contract-version': { type: 'string' } } });
|
|
21
23
|
json = !!values.json;
|
|
22
24
|
action = positionals[0] ?? 'history';
|
|
23
|
-
if (!['history', 'propose', 'run', 'rollback'].includes(action) || positionals.length > (['run', 'rollback'].includes(action) ? 2 : 1) || ['run', 'rollback'].includes(action) && !positionals[1] || action === 'run' && !values.approve || action !== 'run' && values.approve)
|
|
25
|
+
if (!['capabilities', 'host-capabilities', 'history', 'propose', 'run', 'rollback'].includes(action) || positionals.length > (['run', 'rollback'].includes(action) ? 2 : 1) || ['run', 'rollback'].includes(action) && !positionals[1] || action === 'run' && !values.approve || action !== 'run' && values.approve || action !== 'host-capabilities' && values['contract-version'] !== undefined)
|
|
24
26
|
throw new OrchestrationError('invalid', IMPROVEMENT_USAGE);
|
|
27
|
+
if (action === 'host-capabilities') {
|
|
28
|
+
if (Object.keys(values).some(key => !['json', 'contract-version'].includes(key)))
|
|
29
|
+
throw new OrchestrationError('invalid', IMPROVEMENT_USAGE);
|
|
30
|
+
if (values['contract-version'] !== undefined && values['contract-version'] !== '1')
|
|
31
|
+
throw new OrchestrationError('invalid', 'Unsupported improvement host contract version; supported version: 1.');
|
|
32
|
+
options.signal?.throwIfAborted();
|
|
33
|
+
const data = improvementHostCapabilities();
|
|
34
|
+
if (json)
|
|
35
|
+
emit({ version: 1, type: 'improvement', action, localOnly: true, data });
|
|
36
|
+
else
|
|
37
|
+
write(`Native improvement host contract ${data.version} (${data.implementation.package.name}@${data.implementation.package.version})\n${data.notice}\n`);
|
|
38
|
+
return 0;
|
|
39
|
+
}
|
|
40
|
+
if (action === 'capabilities') {
|
|
41
|
+
if (Object.keys(values).some(key => key !== 'json'))
|
|
42
|
+
throw new OrchestrationError('invalid', IMPROVEMENT_USAGE);
|
|
43
|
+
options.signal?.throwIfAborted();
|
|
44
|
+
const data = improvementCapabilities();
|
|
45
|
+
if (json)
|
|
46
|
+
emit({ version: 1, type: 'improvement', action, localOnly: true, data });
|
|
47
|
+
else
|
|
48
|
+
write(`Native improvement capabilities (contract ${data.version})\nSupported: recursive task-strategy history, proposal, reviewed run and strategy withdrawal.\nUnavailable: external feedback import, cross-run learned strategy selection and model training.\n` + data.notice + '\n');
|
|
49
|
+
return 0;
|
|
50
|
+
}
|
|
25
51
|
const opts = { ...options, ...(values['allow-mutations'] ? { approve: async () => 'allow' } : {}), confirmation: values['allow-mutations'] ? 'none' : options.confirmation ?? 'mutating', onEvent: event => { options.onEvent?.(event); if (json)
|
|
26
52
|
emit({ version: 1, type: 'improvement.event', runId: event.runId, event }); } };
|
|
27
53
|
let data, exitCode = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/improvement/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,WAAW,CAAC;AACpC,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAC,kBAAkB,EAAC,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAC,mBAAmB,EAAC,kBAAkB,EAAC,cAAc,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/improvement/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/** Discovery only: each native operation retains its own policy and revision checks. */
|
|
2
|
+
export declare function improvementHostCapabilities(): {
|
|
3
|
+
readonly version: 1;
|
|
4
|
+
readonly kind: 'improvement.host-capabilities';
|
|
5
|
+
readonly owner: 'calliope-cli';
|
|
6
|
+
readonly implementation: {
|
|
7
|
+
package: {
|
|
8
|
+
name: '@calliopelabs/cli';
|
|
9
|
+
version: string;
|
|
10
|
+
};
|
|
11
|
+
artifact: "node-package" | "standalone";
|
|
12
|
+
metadataStatus: "available" | "invalid" | "unavailable";
|
|
13
|
+
source: {
|
|
14
|
+
commit: string;
|
|
15
|
+
dirty: boolean;
|
|
16
|
+
} | null;
|
|
17
|
+
verification: 'external-attestation-required';
|
|
18
|
+
};
|
|
19
|
+
readonly interfaces: {
|
|
20
|
+
readonly execution: {
|
|
21
|
+
readonly version: 2;
|
|
22
|
+
readonly kind: 'improvement.capabilities';
|
|
23
|
+
readonly owner: 'calliope-cli';
|
|
24
|
+
readonly mechanisms: {
|
|
25
|
+
readonly recursiveTaskStrategy: true;
|
|
26
|
+
readonly crossRunLearnedStrategy: false;
|
|
27
|
+
readonly modelTraining: false;
|
|
28
|
+
readonly externalFeedbackImport: false;
|
|
29
|
+
};
|
|
30
|
+
readonly historyVersions: readonly [1, 2, 3];
|
|
31
|
+
readonly hostAdmission: {
|
|
32
|
+
readonly version: 1;
|
|
33
|
+
readonly option: 'expectedExecutionRevision';
|
|
34
|
+
readonly operations: readonly ['propose', 'run'];
|
|
35
|
+
readonly semantics: 'exact-revision-before-start';
|
|
36
|
+
readonly controllerReset: 'own-committed-event';
|
|
37
|
+
};
|
|
38
|
+
readonly operations: {
|
|
39
|
+
readonly history: {
|
|
40
|
+
readonly mode: 'read-only';
|
|
41
|
+
readonly mayCallModel: false;
|
|
42
|
+
};
|
|
43
|
+
readonly propose: {
|
|
44
|
+
readonly mode: 'reviewed-mutation';
|
|
45
|
+
readonly mayCallModel: true;
|
|
46
|
+
};
|
|
47
|
+
readonly run: {
|
|
48
|
+
readonly mode: 'reviewed-mutation';
|
|
49
|
+
readonly mayCallModel: true;
|
|
50
|
+
};
|
|
51
|
+
readonly rollback: {
|
|
52
|
+
readonly mode: 'reviewed-mutation';
|
|
53
|
+
readonly mayCallModel: false;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
readonly scope: {
|
|
57
|
+
readonly owner: 'native-project-run';
|
|
58
|
+
readonly requiredPlanVersion: 4;
|
|
59
|
+
readonly activation: 'exact-proposal-hash-and-native-policy';
|
|
60
|
+
readonly inheritedLimits: readonly ['scope', 'budget', 'deadline', 'depth', 'count'];
|
|
61
|
+
readonly rollback: 'strategy-withdrawal-no-source-inverse-or-refund';
|
|
62
|
+
};
|
|
63
|
+
readonly evidence: {
|
|
64
|
+
readonly authority: 'native-execution-and-request-journals';
|
|
65
|
+
readonly hypotheses: 'proposed-not-verified-facts';
|
|
66
|
+
readonly acceptance: 'source-attributed-native-checks-or-human-acceptance';
|
|
67
|
+
readonly missingMetrics: 'null-not-zero';
|
|
68
|
+
readonly cost: 'comparable-only-with-settled-bound-request-provenance';
|
|
69
|
+
};
|
|
70
|
+
readonly notice: 'Capabilities describe this CLI implementation. Inspect the exact project/run and current policy before acting. No feedback is imported, no project is opened, and no authority or budget is granted by this query.';
|
|
71
|
+
};
|
|
72
|
+
readonly review: {
|
|
73
|
+
readonly version: 1;
|
|
74
|
+
readonly kind: 'improvement.review-capabilities';
|
|
75
|
+
readonly owner: 'calliope-cli';
|
|
76
|
+
readonly operations: readonly ['request', 'inspect', 'dismiss'];
|
|
77
|
+
readonly actions: readonly ['propose', 'run', 'rollback'];
|
|
78
|
+
readonly authority: 'request-only-no-execution';
|
|
79
|
+
readonly storage: 'native-execution-journal';
|
|
80
|
+
readonly maxRequests: 64;
|
|
81
|
+
};
|
|
82
|
+
readonly taskOutcome: {
|
|
83
|
+
readonly version: 1;
|
|
84
|
+
readonly owner: 'calliope-cli';
|
|
85
|
+
readonly operations: readonly ['inspect'];
|
|
86
|
+
readonly semantics: 'exact-native-attempt-observation';
|
|
87
|
+
readonly artifactValidation: 'retained-bytes';
|
|
88
|
+
readonly assessment: false;
|
|
89
|
+
readonly reward: false;
|
|
90
|
+
readonly mayCallModel: false;
|
|
91
|
+
};
|
|
92
|
+
readonly sourceChange: {
|
|
93
|
+
readonly version: 1;
|
|
94
|
+
readonly owner: 'calliope-cli';
|
|
95
|
+
readonly writer: 'git';
|
|
96
|
+
readonly operations: readonly ['preview', 'propose', 'inspect', 'list'];
|
|
97
|
+
readonly semantics: 'verified-patch-to-local-review-branch';
|
|
98
|
+
readonly installation: false;
|
|
99
|
+
readonly merge: false;
|
|
100
|
+
readonly push: false;
|
|
101
|
+
readonly mayCallModel: false;
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
readonly transport: {
|
|
105
|
+
readonly discovery: 'cli-json';
|
|
106
|
+
readonly operations: 'native-library';
|
|
107
|
+
readonly module: '@calliopelabs/cli/dist/improvement/index.js';
|
|
108
|
+
readonly cliEnvelopeVersion: 1;
|
|
109
|
+
};
|
|
110
|
+
readonly provenance: {
|
|
111
|
+
readonly trust: 'verify-the-installed-artifact';
|
|
112
|
+
readonly repository: 'https://github.com/calliopeai/calliope-cli';
|
|
113
|
+
readonly npm: 'verify-registry-integrity-and-publish-workflow-provenance';
|
|
114
|
+
readonly standalone: 'verify-release-checksums-and-binary-workflow-attestations';
|
|
115
|
+
readonly source: 'match-the-attested-source-commit-and-release-tag';
|
|
116
|
+
};
|
|
117
|
+
readonly notice: 'Describes installed native interfaces, not remote RPC support or execution authority. Unavailable or dirty source metadata cannot establish a released build. Cross-run learning, external feedback import and model training remain unsupported.';
|
|
118
|
+
};
|
|
119
|
+
//# sourceMappingURL=host-capabilities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host-capabilities.d.ts","sourceRoot":"","sources":["../../src/improvement/host-capabilities.ts"],"names":[],"mappings":"AAMA,wFAAwF;AACxF,wBAAgB,2BAA2B;aACjC,OAAO,EAAC,CAAC;aAAC,IAAI,EAAC,+BAA+B;aAAC,KAAK,EAAC,cAAc;aAAC,cAAc;;;;;;;;;;;;;aACxF,UAAU;iBAAE,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAA2B,MAAM;;;;;;;;;;iBACpD,WAAW;;;;;;;;;;iBAA2B,YAAY;;;;;;;;;;;;aACpD,SAAS;iBAAE,SAAS,EAAC,UAAU;iBAAC,UAAU,EAAC,gBAAgB;iBAAC,MAAM,EAAC,6CAA6C;iBAAC,kBAAkB,EAAC,CAAC;;aACrI,UAAU;iBAAE,KAAK,EAAC,+BAA+B;iBAAC,UAAU,EAAC,4CAA4C;iBACvG,GAAG,EAAC,2DAA2D;iBAC/D,UAAU,EAAC,2DAA2D;iBACtE,MAAM,EAAC,kDAAkD;;aAC3D,MAAM,EAAC,mPAAmP;EAC7P"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { buildIdentity } from '../build-identity.js';
|
|
2
|
+
import { improvementCapabilities } from './capabilities.js';
|
|
3
|
+
import { improvementReviewCapabilities } from './review-requests.js';
|
|
4
|
+
import { sourceChangeCapabilities } from './source-changes.js';
|
|
5
|
+
import { taskOutcomeCapabilities } from './task-outcomes.js';
|
|
6
|
+
/** Discovery only: each native operation retains its own policy and revision checks. */
|
|
7
|
+
export function improvementHostCapabilities() {
|
|
8
|
+
return { version: 1, kind: 'improvement.host-capabilities', owner: 'calliope-cli', implementation: buildIdentity(),
|
|
9
|
+
interfaces: { execution: improvementCapabilities(), review: improvementReviewCapabilities(),
|
|
10
|
+
taskOutcome: taskOutcomeCapabilities(), sourceChange: sourceChangeCapabilities() },
|
|
11
|
+
transport: { discovery: 'cli-json', operations: 'native-library', module: '@calliopelabs/cli/dist/improvement/index.js', cliEnvelopeVersion: 1 },
|
|
12
|
+
provenance: { trust: 'verify-the-installed-artifact', repository: 'https://github.com/calliopeai/calliope-cli',
|
|
13
|
+
npm: 'verify-registry-integrity-and-publish-workflow-provenance',
|
|
14
|
+
standalone: 'verify-release-checksums-and-binary-workflow-attestations',
|
|
15
|
+
source: 'match-the-attested-source-commit-and-release-tag' },
|
|
16
|
+
notice: 'Describes installed native interfaces, not remote RPC support or execution authority. Unavailable or dirty source metadata cannot establish a released build. Cross-run learning, external feedback import and model training remain unsupported.' };
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=host-capabilities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host-capabilities.js","sourceRoot":"","sources":["../../src/improvement/host-capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAC,uBAAuB,EAAC,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAC,6BAA6B,EAAC,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAC,wBAAwB,EAAC,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAC,uBAAuB,EAAC,MAAM,oBAAoB,CAAC;AAE3D,wFAAwF;AACxF,MAAM,UAAU,2BAA2B;IACzC,OAAO,EAAC,OAAO,EAAC,CAAC,EAAC,IAAI,EAAC,+BAA+B,EAAC,KAAK,EAAC,cAAc,EAAC,cAAc,EAAC,aAAa,EAAE;QACxG,UAAU,EAAC,EAAC,SAAS,EAAC,uBAAuB,EAAE,EAAC,MAAM,EAAC,6BAA6B,EAAE;YACpF,WAAW,EAAC,uBAAuB,EAAE,EAAC,YAAY,EAAC,wBAAwB,EAAE,EAAC;QAChF,SAAS,EAAC,EAAC,SAAS,EAAC,UAAU,EAAC,UAAU,EAAC,gBAAgB,EAAC,MAAM,EAAC,6CAA6C,EAAC,kBAAkB,EAAC,CAAC,EAAC;QACtI,UAAU,EAAC,EAAC,KAAK,EAAC,+BAA+B,EAAC,UAAU,EAAC,4CAA4C;YACvG,GAAG,EAAC,2DAA2D;YAC/D,UAAU,EAAC,2DAA2D;YACtE,MAAM,EAAC,kDAAkD,EAAC;QAC5D,MAAM,EAAC,mPAAmP,EAAU,CAAC;AACzQ,CAAC"}
|
|
@@ -4,4 +4,10 @@ export * from './projection.js';
|
|
|
4
4
|
export * from './actions.js';
|
|
5
5
|
export * from './cli.js';
|
|
6
6
|
export * from './feedback.js';
|
|
7
|
+
export * from './capabilities.js';
|
|
8
|
+
export * from './host-capabilities.js';
|
|
9
|
+
export * from './review-contract.js';
|
|
10
|
+
export * from './review-requests.js';
|
|
11
|
+
export * from './source-changes.js';
|
|
12
|
+
export * from './task-outcomes.js';
|
|
7
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/improvement/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/improvement/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC"}
|
|
@@ -4,4 +4,10 @@ export * from './projection.js';
|
|
|
4
4
|
export * from './actions.js';
|
|
5
5
|
export * from './cli.js';
|
|
6
6
|
export * from './feedback.js';
|
|
7
|
+
export * from './capabilities.js';
|
|
8
|
+
export * from './host-capabilities.js';
|
|
9
|
+
export * from './review-contract.js';
|
|
10
|
+
export * from './review-requests.js';
|
|
11
|
+
export * from './source-changes.js';
|
|
12
|
+
export * from './task-outcomes.js';
|
|
7
13
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/improvement/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/improvement/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proposal-hash.d.ts","sourceRoot":"","sources":["../../src/improvement/proposal-hash.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,YAAY,CAAC;AAEjD,wBAAgB,uBAAuB,CAAC,KAAK,EAAC,gBAAgB,GAAE,MAAM,CAErE"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { canonicalJson, digest } from '../approvals/index.js';
|
|
2
|
+
export function improvementProposalHash(cycle) {
|
|
3
|
+
return digest(canonicalJson({ version: 1, runId: cycle.runId, manifestHash: cycle.source.manifestHash, decision: cycle.source.decision, proposal: cycle.proposedChange, deadline: cycle.budget.deadline }));
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=proposal-hash.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proposal-hash.js","sourceRoot":"","sources":["../../src/improvement/proposal-hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,EAAC,MAAM,uBAAuB,CAAC;AAG3D,MAAM,UAAU,uBAAuB,CAAC,KAAsB;IAC5D,OAAO,MAAM,CAAC,aAAa,CAAC,EAAC,OAAO,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,CAAC,KAAK,EAAC,YAAY,EAAC,KAAK,CAAC,MAAM,CAAC,YAAY,EAAC,QAAQ,EAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAC,QAAQ,EAAC,KAAK,CAAC,cAAc,EAAC,QAAQ,EAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAC,CAAC,CAAC,CAAC;AACjM,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { type RunManifest } from '../orchestration/types.js';
|
|
2
|
+
import type { ExecutionEvent, ExecutionHeader, ExecutionProjection, ExecutionInspection } from '../orchestration/coordinator-types.js';
|
|
3
|
+
/** Untrusted request data. It never contains a human approval or execution grant. */
|
|
4
|
+
export interface ImprovementReviewRequest {
|
|
5
|
+
version: 1;
|
|
6
|
+
action: 'propose' | 'run' | 'rollback';
|
|
7
|
+
executionRevision: string;
|
|
8
|
+
cycleId: string | null;
|
|
9
|
+
proposalHash: string | null;
|
|
10
|
+
reason: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function validateImprovementReviewRequest(value: unknown): asserts value is ImprovementReviewRequest;
|
|
13
|
+
export declare function validateImprovementReviewEvent(event: ExecutionEvent, manifest: RunManifest, header: ExecutionHeader, state: ExecutionProjection, prior: ExecutionEvent[]): void;
|
|
14
|
+
export declare function projectImprovementReviews(execution: ExecutionInspection, now?: number): {
|
|
15
|
+
version: 1;
|
|
16
|
+
kind: 'improvement.review-requests';
|
|
17
|
+
runId: string;
|
|
18
|
+
executionRevision: string;
|
|
19
|
+
requests: {
|
|
20
|
+
id: string;
|
|
21
|
+
hash: string;
|
|
22
|
+
at: string;
|
|
23
|
+
request: ImprovementReviewRequest;
|
|
24
|
+
status: string;
|
|
25
|
+
dismissal: {
|
|
26
|
+
id: string;
|
|
27
|
+
hash: string;
|
|
28
|
+
at: string;
|
|
29
|
+
} | null;
|
|
30
|
+
}[];
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=review-contract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-contract.d.ts","sourceRoot":"","sources":["../../src/improvement/review-contract.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,KAAK,WAAW,EAAC,MAAM,2BAA2B,CAAC;AAC9E,OAAO,KAAK,EAAC,cAAc,EAAC,eAAe,EAAC,mBAAmB,EAAC,mBAAmB,EAAC,MAAM,uCAAuC,CAAC;AAIlI,qFAAqF;AACrF,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAC,CAAC,CAAC;IAAA,MAAM,EAAC,SAAS,GAAC,KAAK,GAAC,UAAU,CAAC;IAAA,iBAAiB,EAAC,MAAM,CAAC;IACrE,OAAO,EAAC,MAAM,GAAC,IAAI,CAAC;IAAA,YAAY,EAAC,MAAM,GAAC,IAAI,CAAC;IAAA,MAAM,EAAC,MAAM,CAAC;CAC5D;AACD,wBAAgB,gCAAgC,CAAC,KAAK,EAAC,OAAO,GAAE,OAAO,CAAC,KAAK,IAAI,wBAAwB,CAMxG;AACD,wBAAgB,8BAA8B,CAAC,KAAK,EAAC,cAAc,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,eAAe,EAAC,KAAK,EAAC,mBAAmB,EAAC,KAAK,EAAC,cAAc,EAAE,GAAE,IAAI,CAwBrK;AACD,wBAAgB,yBAAyB,CAAC,SAAS,EAAC,mBAAmB,EAAC,GAAG,SAAW;IAC5E,OAAO,EAAC,CAAC;IAAU,IAAI,EAAC,6BAA6B;IAAU,KAAK;IAAuB,iBAAiB;IAClH,QAAQ;;;;;;;;;;;;EAOX"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { hex, shape, text, uuid, fail } from '../orchestration/validation.js';
|
|
2
|
+
import { OrchestrationError } from '../orchestration/types.js';
|
|
3
|
+
import { projectImprovementHistory } from './projection.js';
|
|
4
|
+
import { improvementProposalHash } from './proposal-hash.js';
|
|
5
|
+
export function validateImprovementReviewRequest(value) {
|
|
6
|
+
shape(value, ['version', 'action', 'executionRevision', 'cycleId', 'proposalHash', 'reason']);
|
|
7
|
+
if (value.version !== 1 || !['propose', 'run', 'rollback'].includes(String(value.action)) || !hex(value.executionRevision))
|
|
8
|
+
fail('Invalid improvement review request.');
|
|
9
|
+
text(value.reason, 1024);
|
|
10
|
+
if (/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]/.test(value.reason))
|
|
11
|
+
fail('Invalid review request text.');
|
|
12
|
+
if (value.action === 'propose' ? value.cycleId !== null || value.proposalHash !== null : !uuid(value.cycleId) || !hex(value.proposalHash))
|
|
13
|
+
fail('Review request requires an exact proposal identity.');
|
|
14
|
+
}
|
|
15
|
+
export function validateImprovementReviewEvent(event, manifest, header, state, prior) {
|
|
16
|
+
const c = event.change;
|
|
17
|
+
function conflict(message) { throw new OrchestrationError('conflict', message); }
|
|
18
|
+
if (state.ownerId || !state.supervision)
|
|
19
|
+
conflict('Improvement review requests require an inactive supervised run.');
|
|
20
|
+
if (c.type === 'improvement_review_dismissed') {
|
|
21
|
+
const last = prior.at(-1);
|
|
22
|
+
if (c.executionRevision !== state.revision || last?.id !== c.requestId || last.change.type !== 'improvement_review_requested')
|
|
23
|
+
conflict('Review request is no longer pending.');
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
if (c.type !== 'improvement_review_requested')
|
|
27
|
+
fail('Invalid improvement review event.');
|
|
28
|
+
const request = c.request;
|
|
29
|
+
if (request.executionRevision !== state.revision || event.previous !== state.revision)
|
|
30
|
+
conflict('Review request revision changed.');
|
|
31
|
+
if (prior.at(-1)?.change.type === 'improvement_review_requested')
|
|
32
|
+
conflict('Resolve the pending review request before requesting another.');
|
|
33
|
+
if (prior.filter(e => e.change.type === 'improvement_review_requested').length >= 64)
|
|
34
|
+
conflict('Review request retention reached; preserve the run.');
|
|
35
|
+
const context = { ...manifest, plan: state.graph?.plan ?? manifest.plan };
|
|
36
|
+
const history = projectImprovementHistory(manifest, { header, events: prior, state }, context);
|
|
37
|
+
if (request.action === 'propose') {
|
|
38
|
+
if (Date.parse(event.at) >= state.deadline || state.status === 'completed' || state.supervision.review || state.supervision.rounds >= context.plan.supervision.maxRounds || !prior.some(e => e.change.type === 'task_finished'))
|
|
39
|
+
conflict('A new improvement proposal is unavailable.');
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
const cycle = history.cycles.find(c => c.id === request.cycleId);
|
|
43
|
+
if (!cycle || cycle.withdrawal || improvementProposalHash(cycle) !== request.proposalHash)
|
|
44
|
+
conflict('Improvement proposal identity changed or was withdrawn.');
|
|
45
|
+
if (request.action === 'run' && (Date.parse(event.at) >= state.deadline || cycle.status !== 'proposed' || state.supervision.decisionId !== cycle.id))
|
|
46
|
+
conflict('Select the current unapplied improvement.');
|
|
47
|
+
if (request.action === 'rollback' && state.supervision.decisionId && state.supervision.decisionId !== cycle.id)
|
|
48
|
+
conflict('Resolve the current decision before requesting withdrawal.');
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export function projectImprovementReviews(execution, now = Date.now()) {
|
|
52
|
+
return { version: 1, kind: 'improvement.review-requests', runId: execution.state.runId, executionRevision: execution.state.revision,
|
|
53
|
+
requests: execution.events.flatMap(event => {
|
|
54
|
+
if (event.change.type !== 'improvement_review_requested')
|
|
55
|
+
return [];
|
|
56
|
+
const dismissed = execution.events.find(e => e.change.type === 'improvement_review_dismissed' && e.change.requestId === event.id);
|
|
57
|
+
const status = dismissed ? 'dismissed' : event.hash !== execution.state.revision ? 'stale' : event.change.request.action !== 'rollback' && now >= execution.state.deadline ? 'expired' : 'pending';
|
|
58
|
+
return [{ id: event.id, hash: event.hash, at: event.at, request: structuredClone(event.change.request), status,
|
|
59
|
+
dismissal: dismissed ? { id: dismissed.id, hash: dismissed.hash, at: dismissed.at } : null }];
|
|
60
|
+
}) };
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=review-contract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-contract.js","sourceRoot":"","sources":["../../src/improvement/review-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type { CoordinatorOptions } from '../orchestration/coordinator.js';
|
|
2
|
+
import { type ImprovementReviewRequest } from './review-contract.js';
|
|
3
|
+
/** Separately negotiated metadata API; not an extension of the execution capability contract. */
|
|
4
|
+
export declare function improvementReviewCapabilities(): {
|
|
5
|
+
readonly version: 1;
|
|
6
|
+
readonly kind: 'improvement.review-capabilities';
|
|
7
|
+
readonly owner: 'calliope-cli';
|
|
8
|
+
readonly operations: readonly ['request', 'inspect', 'dismiss'];
|
|
9
|
+
readonly actions: readonly ['propose', 'run', 'rollback'];
|
|
10
|
+
readonly authority: 'request-only-no-execution';
|
|
11
|
+
readonly storage: 'native-execution-journal';
|
|
12
|
+
readonly maxRequests: 64;
|
|
13
|
+
};
|
|
14
|
+
export declare function inspectImprovementReviews(cwd: string, runId: string | undefined, options?: CoordinatorOptions): Promise<{
|
|
15
|
+
version: 1;
|
|
16
|
+
kind: 'improvement.review-requests';
|
|
17
|
+
runId: string;
|
|
18
|
+
executionRevision: string;
|
|
19
|
+
requests: {
|
|
20
|
+
id: string;
|
|
21
|
+
hash: string;
|
|
22
|
+
at: string;
|
|
23
|
+
request: ImprovementReviewRequest;
|
|
24
|
+
status: string;
|
|
25
|
+
dismissal: {
|
|
26
|
+
id: string;
|
|
27
|
+
hash: string;
|
|
28
|
+
at: string;
|
|
29
|
+
} | null;
|
|
30
|
+
}[];
|
|
31
|
+
}>;
|
|
32
|
+
export declare function requestImprovementReview(cwd: string, runId: string | undefined, request: ImprovementReviewRequest, options?: CoordinatorOptions): Promise<{
|
|
33
|
+
requestId: string;
|
|
34
|
+
existing: boolean;
|
|
35
|
+
reviews: {
|
|
36
|
+
version: 1;
|
|
37
|
+
kind: 'improvement.review-requests';
|
|
38
|
+
runId: string;
|
|
39
|
+
executionRevision: string;
|
|
40
|
+
requests: {
|
|
41
|
+
id: string;
|
|
42
|
+
hash: string;
|
|
43
|
+
at: string;
|
|
44
|
+
request: ImprovementReviewRequest;
|
|
45
|
+
status: string;
|
|
46
|
+
dismissal: {
|
|
47
|
+
id: string;
|
|
48
|
+
hash: string;
|
|
49
|
+
at: string;
|
|
50
|
+
} | null;
|
|
51
|
+
}[];
|
|
52
|
+
};
|
|
53
|
+
}>;
|
|
54
|
+
export declare function dismissImprovementReview(cwd: string, runId: string | undefined, requestId: string, executionRevision: string, options?: CoordinatorOptions): Promise<{
|
|
55
|
+
version: 1;
|
|
56
|
+
kind: 'improvement.review-requests';
|
|
57
|
+
runId: string;
|
|
58
|
+
executionRevision: string;
|
|
59
|
+
requests: {
|
|
60
|
+
id: string;
|
|
61
|
+
hash: string;
|
|
62
|
+
at: string;
|
|
63
|
+
request: ImprovementReviewRequest;
|
|
64
|
+
status: string;
|
|
65
|
+
dismissal: {
|
|
66
|
+
id: string;
|
|
67
|
+
hash: string;
|
|
68
|
+
at: string;
|
|
69
|
+
} | null;
|
|
70
|
+
}[];
|
|
71
|
+
}>;
|
|
72
|
+
//# sourceMappingURL=review-requests.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-requests.d.ts","sourceRoot":"","sources":["../../src/improvement/review-requests.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAExE,OAAO,EAA4D,KAAK,wBAAwB,EAAC,MAAM,sBAAsB,CAAC;AAE9H,iGAAiG;AACjG,wBAAgB,6BAA6B;aACnC,OAAO,EAAC,CAAC;aAAC,IAAI,EAAC,iCAAiC;aAAC,KAAK,EAAC,cAAc;aAAC,UAAU,YAAE,SAAS,EAAC,SAAS,EAAC,SAAS;aACrH,OAAO,YAAE,SAAS,EAAC,KAAK,EAAC,UAAU;aAAE,SAAS,EAAC,2BAA2B;aAAC,OAAO,EAAC,0BAA0B;aAAC,WAAW,EAAC,EAAE;EAC/H;AACD,wBAAsB,yBAAyB,CAAC,GAAG,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,GAAC,SAAS,EAAC,OAAO,GAAC,kBAAqB;;;;;;;;;;;;;;;;;GAG9G;AACD,wBAAsB,wBAAwB,CAAC,GAAG,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,GAAC,SAAS,EAAC,OAAO,EAAC,wBAAwB,EAAC,OAAO,GAAC,kBAAqB;;;;;;;;;;;;;;;;;;;;;GAiB9I;AACD,wBAAsB,wBAAwB,CAAC,GAAG,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,GAAC,SAAS,EAAC,SAAS,EAAC,MAAM,EAAC,iBAAiB,EAAC,MAAM,EAAC,OAAO,GAAC,kBAAqB;;;;;;;;;;;;;;;;;GAavJ"}
|