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.
Files changed (36) hide show
  1. package/dist/cli.js +6 -1
  2. package/dist/cli.js.map +1 -1
  3. package/dist/governance/GovernanceEngine.d.ts +20 -0
  4. package/dist/governance/GovernanceEngine.js +95 -0
  5. package/dist/governance/GovernanceEngine.js.map +1 -0
  6. package/dist/governance/GovernedAction.d.ts +107 -0
  7. package/dist/governance/GovernedAction.js +9 -0
  8. package/dist/governance/GovernedAction.js.map +1 -0
  9. package/dist/governance/actions/CodeChangeAction.d.ts +28 -0
  10. package/dist/governance/actions/CodeChangeAction.js +139 -0
  11. package/dist/governance/actions/CodeChangeAction.js.map +1 -0
  12. package/dist/governance/capability/token.d.ts +45 -0
  13. package/dist/governance/capability/token.js +103 -0
  14. package/dist/governance/capability/token.js.map +1 -0
  15. package/dist/governance/commands/diffEdit.d.ts +2 -0
  16. package/dist/governance/commands/diffEdit.js +176 -0
  17. package/dist/governance/commands/diffEdit.js.map +1 -0
  18. package/dist/governance/execution/sandbox.d.ts +12 -0
  19. package/dist/governance/execution/sandbox.js +76 -0
  20. package/dist/governance/execution/sandbox.js.map +1 -0
  21. package/dist/governance/fsm/stateMachine.d.ts +40 -0
  22. package/dist/governance/fsm/stateMachine.js +93 -0
  23. package/dist/governance/fsm/stateMachine.js.map +1 -0
  24. package/dist/governance/index.d.ts +9 -0
  25. package/dist/governance/index.js +26 -0
  26. package/dist/governance/index.js.map +1 -0
  27. package/dist/governance/review/diffParser.d.ts +12 -0
  28. package/dist/governance/review/diffParser.js +61 -0
  29. package/dist/governance/review/diffParser.js.map +1 -0
  30. package/dist/governance/review/render.d.ts +5 -0
  31. package/dist/governance/review/render.js +58 -0
  32. package/dist/governance/review/render.js.map +1 -0
  33. package/dist/governance/storage/store.d.ts +16 -0
  34. package/dist/governance/storage/store.js +110 -0
  35. package/dist/governance/storage/store.js.map +1 -0
  36. 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;