yuangs 2.31.0 → 2.32.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/dist/cli.js +6 -1
- package/dist/cli.js.map +1 -1
- package/dist/governance/GovernanceEngine.d.ts +20 -0
- package/dist/governance/GovernanceEngine.js +95 -0
- package/dist/governance/GovernanceEngine.js.map +1 -0
- package/dist/governance/GovernedAction.d.ts +107 -0
- package/dist/governance/GovernedAction.js +9 -0
- package/dist/governance/GovernedAction.js.map +1 -0
- package/dist/governance/actions/CodeChangeAction.d.ts +28 -0
- package/dist/governance/actions/CodeChangeAction.js +139 -0
- package/dist/governance/actions/CodeChangeAction.js.map +1 -0
- package/dist/governance/capability/token.d.ts +45 -0
- package/dist/governance/capability/token.js +103 -0
- package/dist/governance/capability/token.js.map +1 -0
- package/dist/governance/commands/diffEdit.d.ts +2 -0
- package/dist/governance/commands/diffEdit.js +176 -0
- package/dist/governance/commands/diffEdit.js.map +1 -0
- package/dist/governance/execution/sandbox.d.ts +12 -0
- package/dist/governance/execution/sandbox.js +76 -0
- package/dist/governance/execution/sandbox.js.map +1 -0
- package/dist/governance/fsm/stateMachine.d.ts +40 -0
- package/dist/governance/fsm/stateMachine.js +93 -0
- package/dist/governance/fsm/stateMachine.js.map +1 -0
- package/dist/governance/index.d.ts +9 -0
- package/dist/governance/index.js +26 -0
- package/dist/governance/index.js.map +1 -0
- package/dist/governance/review/diffParser.d.ts +12 -0
- package/dist/governance/review/diffParser.js +61 -0
- package/dist/governance/review/diffParser.js.map +1 -0
- package/dist/governance/review/render.d.ts +5 -0
- package/dist/governance/review/render.js +58 -0
- package/dist/governance/review/render.js.map +1 -0
- package/dist/governance/storage/store.d.ts +16 -0
- package/dist/governance/storage/store.js +110 -0
- package/dist/governance/storage/store.js.map +1 -0
- package/package.json +2 -1
package/dist/cli.js
CHANGED
|
@@ -55,6 +55,7 @@ const registryCommands_1 = require("./commands/registryCommands");
|
|
|
55
55
|
const explainCommands_1 = require("./commands/explainCommands");
|
|
56
56
|
const replayCommands_1 = require("./commands/replayCommands");
|
|
57
57
|
const skillsCommands_1 = require("./commands/skillsCommands");
|
|
58
|
+
const diffEdit_1 = require("./governance/commands/diffEdit");
|
|
58
59
|
// Mandatory Node.js version check
|
|
59
60
|
const majorVersion = Number(process.versions.node.split('.')[0]);
|
|
60
61
|
if (majorVersion < 18) {
|
|
@@ -374,6 +375,9 @@ program
|
|
|
374
375
|
(0, explainCommands_1.registerExplainCommands)(program);
|
|
375
376
|
(0, replayCommands_1.registerReplayCommands)(program);
|
|
376
377
|
(0, skillsCommands_1.registerSkillsCommands)(program);
|
|
378
|
+
// Add governance diff-edit command
|
|
379
|
+
const diffEditCmd = (0, diffEdit_1.createDiffEditCommand)();
|
|
380
|
+
program.addCommand(diffEditCmd);
|
|
377
381
|
program
|
|
378
382
|
.command('help')
|
|
379
383
|
.description('显示帮助信息')
|
|
@@ -391,6 +395,7 @@ program
|
|
|
391
395
|
console.log(` ${chalk_1.default.green('save')} <名称> 保存快捷指令`);
|
|
392
396
|
console.log(` ${chalk_1.default.green('run')} <名称> 执行快捷指令`);
|
|
393
397
|
console.log(` ${chalk_1.default.green('registry')} Macro Registry 管理`);
|
|
398
|
+
console.log(` ${chalk_1.default.green('diff-edit')} 代码变更治理 (propose/approve/exec/list/status)`);
|
|
394
399
|
console.log(` ${chalk_1.default.green('help')} 显示帮助信息\n`);
|
|
395
400
|
});
|
|
396
401
|
const apps = (0, apps_1.loadAppsConfig)();
|
|
@@ -430,7 +435,7 @@ program
|
|
|
430
435
|
});
|
|
431
436
|
async function main() {
|
|
432
437
|
const args = process.argv.slice(2);
|
|
433
|
-
const knownCommands = ['ai', 'list', 'history', 'config', 'macros', 'save', 'run', 'help', 'shici', 'dict', 'pong', 'capabilities', 'completion', '_complete_subcommand', '_describe', 'registry', 'explain', 'replay', 'skills'];
|
|
438
|
+
const knownCommands = ['ai', 'list', 'history', 'config', 'macros', 'save', 'run', 'help', 'shici', 'dict', 'pong', 'capabilities', 'completion', '_complete_subcommand', '_describe', 'registry', 'explain', 'replay', 'skills', 'diff-edit'];
|
|
434
439
|
const globalFlags = ['-h', '--help', '-V', '--version', '-v'];
|
|
435
440
|
const firstArg = args[0];
|
|
436
441
|
const isKnownCommand = firstArg && knownCommands.includes(firstArg);
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { GovernedAction, ExecutionContext, ApprovalSource } from "./GovernedAction";
|
|
2
|
+
/**
|
|
3
|
+
* Governance engine - single point of control for all governed actions
|
|
4
|
+
* Enforces "No Diff Without Review. No Execution Without Approval."
|
|
5
|
+
*/
|
|
6
|
+
export declare class GovernanceEngine {
|
|
7
|
+
private actions;
|
|
8
|
+
private revokedActions;
|
|
9
|
+
register(action: GovernedAction): void;
|
|
10
|
+
getAction(id: string): GovernedAction | undefined;
|
|
11
|
+
listActions(): GovernedAction[];
|
|
12
|
+
requestApproval(id: string): void;
|
|
13
|
+
approve(id: string, by: ApprovalSource): void;
|
|
14
|
+
reject(id: string, reason: string): void;
|
|
15
|
+
execute(id: string, ctx: ExecutionContext): Promise<void>;
|
|
16
|
+
observe(id: string): Promise<void>;
|
|
17
|
+
verify(id: string, obs: any): boolean;
|
|
18
|
+
revoke(id: string): void;
|
|
19
|
+
has(id: string): boolean;
|
|
20
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GovernanceEngine = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Governance engine - single point of control for all governed actions
|
|
6
|
+
* Enforces "No Diff Without Review. No Execution Without Approval."
|
|
7
|
+
*/
|
|
8
|
+
class GovernanceEngine {
|
|
9
|
+
actions = new Map();
|
|
10
|
+
revokedActions = new Set();
|
|
11
|
+
register(action) {
|
|
12
|
+
if (this.revokedActions.has(action.id)) {
|
|
13
|
+
throw new Error(`Governance violation: action ${action.id} was revoked`);
|
|
14
|
+
}
|
|
15
|
+
this.actions.set(action.id, action);
|
|
16
|
+
}
|
|
17
|
+
getAction(id) {
|
|
18
|
+
return this.actions.get(id);
|
|
19
|
+
}
|
|
20
|
+
listActions() {
|
|
21
|
+
return Array.from(this.actions.values());
|
|
22
|
+
}
|
|
23
|
+
requestApproval(id) {
|
|
24
|
+
const action = this.actions.get(id);
|
|
25
|
+
if (!action) {
|
|
26
|
+
throw new Error(`Action not found: ${id}`);
|
|
27
|
+
}
|
|
28
|
+
action.propose();
|
|
29
|
+
console.log(`[PROPOSED] ${action.kind}:${id}`);
|
|
30
|
+
console.log(`Rationale: ${action.rationale}`);
|
|
31
|
+
}
|
|
32
|
+
approve(id, by) {
|
|
33
|
+
const action = this.actions.get(id);
|
|
34
|
+
if (!action) {
|
|
35
|
+
throw new Error(`Action not found: ${id}`);
|
|
36
|
+
}
|
|
37
|
+
if (by !== "human") {
|
|
38
|
+
throw new Error(`Governance violation: only human can approve`);
|
|
39
|
+
}
|
|
40
|
+
action.approve(by);
|
|
41
|
+
console.log(`[APPROVED] ${action.kind}:${id} by ${by}`);
|
|
42
|
+
}
|
|
43
|
+
reject(id, reason) {
|
|
44
|
+
const action = this.actions.get(id);
|
|
45
|
+
if (!action) {
|
|
46
|
+
throw new Error(`Action not found: ${id}`);
|
|
47
|
+
}
|
|
48
|
+
action.reject(reason);
|
|
49
|
+
console.log(`[REJECTED] ${action.kind}:${id}`);
|
|
50
|
+
console.log(`Reason: ${reason}`);
|
|
51
|
+
}
|
|
52
|
+
async execute(id, ctx) {
|
|
53
|
+
const action = this.actions.get(id);
|
|
54
|
+
if (!action) {
|
|
55
|
+
throw new Error(`Action not found: ${id}`);
|
|
56
|
+
}
|
|
57
|
+
if (action.state !== "APPROVED") {
|
|
58
|
+
throw new Error(`Governance violation: execute() called on ${action.kind}:${id} in state ${action.state}, must be APPROVED`);
|
|
59
|
+
}
|
|
60
|
+
const result = await action.execute(ctx);
|
|
61
|
+
if (!result.ok) {
|
|
62
|
+
throw new Error(`Execution failed: ${result.error || "unknown error"}`);
|
|
63
|
+
}
|
|
64
|
+
console.log(`[EXECUTED] ${action.kind}:${id}`);
|
|
65
|
+
}
|
|
66
|
+
async observe(id) {
|
|
67
|
+
const action = this.actions.get(id);
|
|
68
|
+
if (!action) {
|
|
69
|
+
throw new Error(`Action not found: ${id}`);
|
|
70
|
+
}
|
|
71
|
+
const obs = await action.observe();
|
|
72
|
+
console.log(`[OBSERVED] ${action.kind}:${id}`);
|
|
73
|
+
console.log(`Files changed: ${obs.changedFiles.length}`);
|
|
74
|
+
}
|
|
75
|
+
verify(id, obs) {
|
|
76
|
+
const action = this.actions.get(id);
|
|
77
|
+
if (!action) {
|
|
78
|
+
throw new Error(`Action not found: ${id}`);
|
|
79
|
+
}
|
|
80
|
+
const verified = action.verify(obs);
|
|
81
|
+
if (verified) {
|
|
82
|
+
console.log(`[VERIFIED] ${action.kind}:${id}`);
|
|
83
|
+
}
|
|
84
|
+
return verified;
|
|
85
|
+
}
|
|
86
|
+
revoke(id) {
|
|
87
|
+
this.actions.delete(id);
|
|
88
|
+
this.revokedActions.add(id);
|
|
89
|
+
}
|
|
90
|
+
has(id) {
|
|
91
|
+
return this.actions.has(id) && !this.revokedActions.has(id);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
exports.GovernanceEngine = GovernanceEngine;
|
|
95
|
+
//# sourceMappingURL=GovernanceEngine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GovernanceEngine.js","sourceRoot":"","sources":["../../src/governance/GovernanceEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core Governance Types and Interfaces
|
|
3
|
+
*
|
|
4
|
+
* This module defines the foundational types for the Code Change Governance System.
|
|
5
|
+
* All actions must implement GovernedAction and follow strict state transitions.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Valid governance states for any action
|
|
9
|
+
* No action can skip states or bypass approval
|
|
10
|
+
*/
|
|
11
|
+
export type GovernanceState = "DRAFT" | "PROPOSED" | "APPROVED" | "EXECUTED" | "OBSERVED" | "VERIFIED" | "REJECTED";
|
|
12
|
+
/**
|
|
13
|
+
* Approval can only come from humans - no auto-approval
|
|
14
|
+
*/
|
|
15
|
+
export type ApprovalSource = "human";
|
|
16
|
+
/**
|
|
17
|
+
* Provenance tracking for reproducibility and audit
|
|
18
|
+
*/
|
|
19
|
+
export interface ActionProvenance {
|
|
20
|
+
/** The agent that created this action */
|
|
21
|
+
agentId: string;
|
|
22
|
+
/** Hash of the plan that generated this action */
|
|
23
|
+
planHash: string;
|
|
24
|
+
/** Parent action if this is a fix/repair attempt */
|
|
25
|
+
parentAction?: string;
|
|
26
|
+
/** When this action was created */
|
|
27
|
+
createdAt: number;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Execution context for running actions
|
|
31
|
+
*/
|
|
32
|
+
export interface ExecutionContext {
|
|
33
|
+
executor: ActionExecutor;
|
|
34
|
+
snapshot?: string;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Result from executing an action
|
|
38
|
+
*/
|
|
39
|
+
export interface ExecutionResult {
|
|
40
|
+
ok: boolean;
|
|
41
|
+
error?: string;
|
|
42
|
+
executedAt?: number;
|
|
43
|
+
snapshotAfter?: string;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Observation data after execution
|
|
47
|
+
*/
|
|
48
|
+
export interface Observation {
|
|
49
|
+
gitDiff: string;
|
|
50
|
+
changedFiles: string[];
|
|
51
|
+
executionTime: number;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Action executor interface (filesystem operations)
|
|
55
|
+
* This is the ONLY place where filesystem changes can happen
|
|
56
|
+
*/
|
|
57
|
+
export interface ActionExecutor {
|
|
58
|
+
applyDiff(diff: string): Promise<void>;
|
|
59
|
+
readFile(path: string): Promise<string>;
|
|
60
|
+
writeFile(path: string, content: string): Promise<void>;
|
|
61
|
+
deleteFile(path: string): Promise<void>;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Core interface that ALL governed actions must implement
|
|
65
|
+
* This enforces the constitutional constraints
|
|
66
|
+
*/
|
|
67
|
+
export interface GovernedAction<Payload = unknown> {
|
|
68
|
+
/** Unique identifier for this action */
|
|
69
|
+
readonly id: string;
|
|
70
|
+
/** Type/kind of action (code_change, run_command, etc.) */
|
|
71
|
+
readonly kind: string;
|
|
72
|
+
/** The actual payload that will be executed */
|
|
73
|
+
readonly payload: Payload;
|
|
74
|
+
/** Current state of this action */
|
|
75
|
+
state: GovernanceState;
|
|
76
|
+
/** Why this action is being proposed (must be human-readable) */
|
|
77
|
+
readonly rationale: string;
|
|
78
|
+
/** Who created this action and when */
|
|
79
|
+
readonly provenance: ActionProvenance;
|
|
80
|
+
/** When was the state last updated */
|
|
81
|
+
updatedAt: number;
|
|
82
|
+
/** Transition from DRAFT to PROPOSED */
|
|
83
|
+
propose(): void;
|
|
84
|
+
/** Transition from PROPOSED to APPROVED (only human can approve) */
|
|
85
|
+
approve(by: ApprovalSource): void;
|
|
86
|
+
/** Transition from any state to REJECTED */
|
|
87
|
+
reject(reason: string): void;
|
|
88
|
+
/** Execute the action (only possible if APPROVED) */
|
|
89
|
+
execute(ctx: ExecutionContext): Promise<ExecutionResult>;
|
|
90
|
+
/** Observe the results of execution (only possible if EXECUTED) */
|
|
91
|
+
observe(): Promise<Observation>;
|
|
92
|
+
/** Verify the observation (only possible if OBSERVED) */
|
|
93
|
+
verify(obs: Observation): boolean;
|
|
94
|
+
/** Get a summary of this action for display */
|
|
95
|
+
summarize(): ActionSummary;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Human-readable summary of an action
|
|
99
|
+
*/
|
|
100
|
+
export interface ActionSummary {
|
|
101
|
+
id: string;
|
|
102
|
+
kind: string;
|
|
103
|
+
state: GovernanceState;
|
|
104
|
+
rationale: string;
|
|
105
|
+
filesAffected?: string[];
|
|
106
|
+
changeSize?: number;
|
|
107
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Core Governance Types and Interfaces
|
|
4
|
+
*
|
|
5
|
+
* This module defines the foundational types for the Code Change Governance System.
|
|
6
|
+
* All actions must implement GovernedAction and follow strict state transitions.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
//# sourceMappingURL=GovernedAction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GovernedAction.js","sourceRoot":"","sources":["../../src/governance/GovernedAction.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { GovernedAction, GovernanceState, ExecutionContext, ExecutionResult, Observation, ActionSummary, ApprovalSource, ActionProvenance } from "../GovernedAction";
|
|
2
|
+
/**
|
|
3
|
+
* Payload for code change actions
|
|
4
|
+
* Contains unified diff and affected files
|
|
5
|
+
*/
|
|
6
|
+
export interface CodeChangePayload {
|
|
7
|
+
files: string[];
|
|
8
|
+
diff: string;
|
|
9
|
+
}
|
|
10
|
+
export declare class CodeChangeAction implements GovernedAction<CodeChangePayload> {
|
|
11
|
+
readonly id: string;
|
|
12
|
+
readonly payload: CodeChangePayload;
|
|
13
|
+
readonly rationale: string;
|
|
14
|
+
readonly provenance: ActionProvenance;
|
|
15
|
+
readonly kind = "code_change";
|
|
16
|
+
state: GovernanceState;
|
|
17
|
+
updatedAt: number;
|
|
18
|
+
constructor(id: string, payload: CodeChangePayload, rationale: string, provenance: ActionProvenance);
|
|
19
|
+
propose(): void;
|
|
20
|
+
approve(by: ApprovalSource): void;
|
|
21
|
+
reject(reason: string): void;
|
|
22
|
+
execute(ctx: ExecutionContext): Promise<ExecutionResult>;
|
|
23
|
+
observe(): Promise<Observation>;
|
|
24
|
+
verify(obs: Observation): boolean;
|
|
25
|
+
summarize(): ActionSummary;
|
|
26
|
+
private calculateChangeSize;
|
|
27
|
+
static create(payload: CodeChangePayload, rationale: string, agentId: string, planHash: string, parentAction?: string): CodeChangeAction;
|
|
28
|
+
}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.CodeChangeAction = void 0;
|
|
7
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
8
|
+
class CodeChangeAction {
|
|
9
|
+
id;
|
|
10
|
+
payload;
|
|
11
|
+
rationale;
|
|
12
|
+
provenance;
|
|
13
|
+
kind = "code_change";
|
|
14
|
+
state = "DRAFT";
|
|
15
|
+
updatedAt = Date.now();
|
|
16
|
+
constructor(id, payload, rationale, provenance) {
|
|
17
|
+
this.id = id;
|
|
18
|
+
this.payload = payload;
|
|
19
|
+
this.rationale = rationale;
|
|
20
|
+
this.provenance = provenance;
|
|
21
|
+
this.updatedAt = provenance.createdAt;
|
|
22
|
+
}
|
|
23
|
+
propose() {
|
|
24
|
+
if (this.state !== "DRAFT") {
|
|
25
|
+
throw new Error(`Governance violation: propose() called from ${this.state}, must be DRAFT`);
|
|
26
|
+
}
|
|
27
|
+
this.state = "PROPOSED";
|
|
28
|
+
this.updatedAt = Date.now();
|
|
29
|
+
}
|
|
30
|
+
approve(by) {
|
|
31
|
+
if (this.state !== "PROPOSED") {
|
|
32
|
+
throw new Error(`Governance violation: approve() called from ${this.state}, must be PROPOSED`);
|
|
33
|
+
}
|
|
34
|
+
if (by !== "human") {
|
|
35
|
+
throw new Error(`Governance violation: only human can approve, got ${by}`);
|
|
36
|
+
}
|
|
37
|
+
this.state = "APPROVED";
|
|
38
|
+
this.updatedAt = Date.now();
|
|
39
|
+
}
|
|
40
|
+
reject(reason) {
|
|
41
|
+
if (this.state === "REJECTED") {
|
|
42
|
+
throw new Error(`Governance violation: reject() called from ${this.state}, already rejected`);
|
|
43
|
+
}
|
|
44
|
+
this.state = "REJECTED";
|
|
45
|
+
this.updatedAt = Date.now();
|
|
46
|
+
}
|
|
47
|
+
async execute(ctx) {
|
|
48
|
+
if (this.state !== "APPROVED") {
|
|
49
|
+
throw new Error(`Governance violation: execute() called from ${this.state}, must be APPROVED`);
|
|
50
|
+
}
|
|
51
|
+
const startTime = Date.now();
|
|
52
|
+
try {
|
|
53
|
+
await ctx.executor.applyDiff(this.payload.diff);
|
|
54
|
+
this.state = "EXECUTED";
|
|
55
|
+
this.updatedAt = Date.now();
|
|
56
|
+
return {
|
|
57
|
+
ok: true,
|
|
58
|
+
executedAt: Date.now(),
|
|
59
|
+
snapshotAfter: ctx.snapshot,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
this.state = "REJECTED";
|
|
64
|
+
this.updatedAt = Date.now();
|
|
65
|
+
return {
|
|
66
|
+
ok: false,
|
|
67
|
+
error: error instanceof Error ? error.message : String(error),
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
async observe() {
|
|
72
|
+
if (this.state !== "EXECUTED") {
|
|
73
|
+
throw new Error(`Governance violation: observe() called from ${this.state}, must be EXECUTED`);
|
|
74
|
+
}
|
|
75
|
+
const { execSync } = require("child_process");
|
|
76
|
+
const changedFiles = execSync("git diff --name-only", {
|
|
77
|
+
encoding: "utf-8",
|
|
78
|
+
})
|
|
79
|
+
.trim()
|
|
80
|
+
.split("\n")
|
|
81
|
+
.filter((f) => f);
|
|
82
|
+
const gitDiff = execSync("git diff", { encoding: "utf-8" });
|
|
83
|
+
this.state = "OBSERVED";
|
|
84
|
+
this.updatedAt = Date.now();
|
|
85
|
+
return {
|
|
86
|
+
gitDiff,
|
|
87
|
+
changedFiles,
|
|
88
|
+
executionTime: Date.now(),
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
verify(obs) {
|
|
92
|
+
if (this.state !== "OBSERVED") {
|
|
93
|
+
throw new Error(`Governance violation: verify() called from ${this.state}, must be OBSERVED`);
|
|
94
|
+
}
|
|
95
|
+
const changedFiles = new Set(obs.changedFiles);
|
|
96
|
+
const declaredFiles = new Set(this.payload.files);
|
|
97
|
+
const extraFiles = obs.changedFiles.filter((f) => !declaredFiles.has(f));
|
|
98
|
+
if (extraFiles.length > 0) {
|
|
99
|
+
throw new Error(`Governance violation: execution modified undeclared files: ${extraFiles.join(", ")}`);
|
|
100
|
+
}
|
|
101
|
+
this.state = "VERIFIED";
|
|
102
|
+
this.updatedAt = Date.now();
|
|
103
|
+
return true;
|
|
104
|
+
}
|
|
105
|
+
summarize() {
|
|
106
|
+
const changeSize = this.calculateChangeSize();
|
|
107
|
+
return {
|
|
108
|
+
id: this.id,
|
|
109
|
+
kind: this.kind,
|
|
110
|
+
state: this.state,
|
|
111
|
+
rationale: this.rationale,
|
|
112
|
+
filesAffected: this.payload.files,
|
|
113
|
+
changeSize,
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
calculateChangeSize() {
|
|
117
|
+
let additions = 0;
|
|
118
|
+
let deletions = 0;
|
|
119
|
+
for (const line of this.payload.diff.split("\n")) {
|
|
120
|
+
if (line.startsWith("+") && !line.startsWith("+++"))
|
|
121
|
+
additions++;
|
|
122
|
+
if (line.startsWith("-") && !line.startsWith("---"))
|
|
123
|
+
deletions++;
|
|
124
|
+
}
|
|
125
|
+
return additions + deletions;
|
|
126
|
+
}
|
|
127
|
+
static create(payload, rationale, agentId, planHash, parentAction) {
|
|
128
|
+
const id = crypto_1.default.randomUUID();
|
|
129
|
+
const provenance = {
|
|
130
|
+
agentId,
|
|
131
|
+
planHash,
|
|
132
|
+
parentAction,
|
|
133
|
+
createdAt: Date.now(),
|
|
134
|
+
};
|
|
135
|
+
return new CodeChangeAction(id, payload, rationale, provenance);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
exports.CodeChangeAction = CodeChangeAction;
|
|
139
|
+
//# sourceMappingURL=CodeChangeAction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CodeChangeAction.js","sourceRoot":"","sources":["../../../src/governance/actions/CodeChangeAction.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export type Right = {
|
|
2
|
+
type: "APPLY_DIFF";
|
|
3
|
+
} | {
|
|
4
|
+
type: "READ_FILE";
|
|
5
|
+
path: string;
|
|
6
|
+
} | {
|
|
7
|
+
type: "EXECUTE_ACTION";
|
|
8
|
+
actionId: string;
|
|
9
|
+
};
|
|
10
|
+
export type Scope = {
|
|
11
|
+
type: "ACTION";
|
|
12
|
+
id: string;
|
|
13
|
+
} | {
|
|
14
|
+
type: "PATH_PREFIX";
|
|
15
|
+
prefix: string;
|
|
16
|
+
} | {
|
|
17
|
+
type: "REPO";
|
|
18
|
+
};
|
|
19
|
+
export interface Capability {
|
|
20
|
+
id: string;
|
|
21
|
+
subject: string;
|
|
22
|
+
rights: Right[];
|
|
23
|
+
scope: Scope;
|
|
24
|
+
issuedAt: number;
|
|
25
|
+
expiresAt: number;
|
|
26
|
+
maxUses: number;
|
|
27
|
+
used: number;
|
|
28
|
+
signature: string;
|
|
29
|
+
}
|
|
30
|
+
export declare function sign(data: string): string;
|
|
31
|
+
export declare function verify(cap: Capability): boolean;
|
|
32
|
+
export declare function issue(input: {
|
|
33
|
+
subject: string;
|
|
34
|
+
rights: Right[];
|
|
35
|
+
scope: Scope;
|
|
36
|
+
ttlMs: number;
|
|
37
|
+
maxUses?: number;
|
|
38
|
+
}): Capability;
|
|
39
|
+
export declare function checkCapability(cap: Capability, want: Right, context: {
|
|
40
|
+
actionId?: string;
|
|
41
|
+
path?: string;
|
|
42
|
+
}): void;
|
|
43
|
+
export declare function attenuate(cap: Capability, limits: Partial<Pick<Capability, "expiresAt" | "maxUses">>): Capability;
|
|
44
|
+
export declare function revoke(capId: string): void;
|
|
45
|
+
export declare function checkRevoked(cap: Capability): void;
|