yuangs 3.20.0 → 3.22.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 (67) hide show
  1. package/README.md +2 -0
  2. package/dist/agent/AgentRuntime.js +32 -7
  3. package/dist/agent/AgentRuntime.js.map +1 -1
  4. package/dist/agent/context.d.ts +5 -0
  5. package/dist/agent/context.js +24 -4
  6. package/dist/agent/context.js.map +1 -1
  7. package/dist/agent/governance.js +10 -0
  8. package/dist/agent/governance.js.map +1 -1
  9. package/dist/agent/llm.js +6 -2
  10. package/dist/agent/llm.js.map +1 -1
  11. package/dist/agent/prompt.js +6 -6
  12. package/dist/agent/prompt.js.map +1 -1
  13. package/dist/cli.js +34 -4
  14. package/dist/cli.js.map +1 -1
  15. package/dist/commands/handleAIChat.js +31 -1
  16. package/dist/commands/handleAIChat.js.map +1 -1
  17. package/dist/commands/preferencesCommands.d.ts +2 -0
  18. package/dist/commands/preferencesCommands.js +232 -0
  19. package/dist/commands/preferencesCommands.js.map +1 -0
  20. package/package.json +1 -1
  21. package/dist/Capabilities.js +0 -39
  22. package/dist/Governance.d.ts +0 -9
  23. package/dist/Governance.js +0 -25
  24. package/dist/Kernel.d.ts +0 -13
  25. package/dist/Kernel.js +0 -53
  26. package/dist/agent/AgentPipeline.d.ts +0 -5
  27. package/dist/agent/AgentPipeline.js +0 -105
  28. package/dist/agent/fsm.d.ts +0 -23
  29. package/dist/agent/fsm.js +0 -95
  30. package/dist/agent/intent.d.ts +0 -2
  31. package/dist/agent/intent.js +0 -28
  32. package/dist/agent/interpret.d.ts +0 -3
  33. package/dist/agent/interpret.js +0 -39
  34. package/dist/agent/loop.d.ts +0 -21
  35. package/dist/agent/loop.js +0 -214
  36. package/dist/agent/plan.d.ts +0 -13
  37. package/dist/agent/plan.js +0 -3
  38. package/dist/agent/planExecutor.d.ts +0 -10
  39. package/dist/agent/planExecutor.js +0 -74
  40. package/dist/agent/record.d.ts +0 -14
  41. package/dist/agent/record.js +0 -20
  42. package/dist/agent/replay.d.ts +0 -2
  43. package/dist/agent/replay.js +0 -25
  44. package/dist/commands/chatHistoryStorage.d.ts +0 -4
  45. package/dist/commands/chatHistoryStorage.js +0 -54
  46. package/dist/governance/GovernanceEngine.d.ts +0 -20
  47. package/dist/governance/GovernanceEngine.js +0 -95
  48. package/dist/governance/GovernedAction.d.ts +0 -107
  49. package/dist/governance/GovernedAction.js +0 -9
  50. package/dist/governance/actions/CodeChangeAction.d.ts +0 -28
  51. package/dist/governance/actions/CodeChangeAction.js +0 -139
  52. package/dist/governance/capability/token.d.ts +0 -45
  53. package/dist/governance/capability/token.js +0 -103
  54. package/dist/governance/commands/diffEdit.d.ts +0 -2
  55. package/dist/governance/commands/diffEdit.js +0 -245
  56. package/dist/governance/execution/sandbox.d.ts +0 -12
  57. package/dist/governance/execution/sandbox.js +0 -76
  58. package/dist/governance/fsm/stateMachine.d.ts +0 -40
  59. package/dist/governance/fsm/stateMachine.js +0 -93
  60. package/dist/governance/index.d.ts +0 -9
  61. package/dist/governance/index.js +0 -26
  62. package/dist/governance/review/diffParser.d.ts +0 -12
  63. package/dist/governance/review/diffParser.js +0 -61
  64. package/dist/governance/review/render.d.ts +0 -5
  65. package/dist/governance/review/render.js +0 -58
  66. package/dist/governance/storage/store.d.ts +0 -16
  67. package/dist/governance/storage/store.js +0 -110
@@ -1,110 +0,0 @@
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.ensureDataDir = ensureDataDir;
7
- exports.atomicWrite = atomicWrite;
8
- exports.loadActions = loadActions;
9
- exports.saveActions = saveActions;
10
- exports.deserializeActions = deserializeActions;
11
- exports.auditActions = auditActions;
12
- const fs_1 = __importDefault(require("fs"));
13
- const path_1 = __importDefault(require("path"));
14
- const os_1 = __importDefault(require("os"));
15
- const DATA_DIR = path_1.default.join(os_1.default.homedir(), ".yuangs");
16
- const STORE_PATH = path_1.default.join(DATA_DIR, "actions.json");
17
- function ensureDataDir() {
18
- if (!fs_1.default.existsSync(DATA_DIR)) {
19
- fs_1.default.mkdirSync(DATA_DIR, { recursive: true });
20
- }
21
- }
22
- function atomicWrite(filePath, data) {
23
- const tmpPath = `${filePath}.tmp.${Date.now()}`;
24
- try {
25
- fs_1.default.writeFileSync(tmpPath, data, "utf-8");
26
- fs_1.default.renameSync(tmpPath, filePath);
27
- }
28
- catch (error) {
29
- if (fs_1.default.existsSync(tmpPath)) {
30
- fs_1.default.unlinkSync(tmpPath);
31
- }
32
- throw error;
33
- }
34
- }
35
- function loadActions() {
36
- ensureDataDir();
37
- if (!fs_1.default.existsSync(STORE_PATH)) {
38
- return {};
39
- }
40
- try {
41
- const content = fs_1.default.readFileSync(STORE_PATH, "utf-8");
42
- const data = JSON.parse(content);
43
- return deserializeActions(data);
44
- }
45
- catch (error) {
46
- console.error(`Failed to load actions: ${error}`);
47
- return {};
48
- }
49
- }
50
- function saveActions(actions) {
51
- ensureDataDir();
52
- try {
53
- const content = JSON.stringify(actions, null, 2);
54
- atomicWrite(STORE_PATH, content);
55
- }
56
- catch (error) {
57
- console.error(`Failed to save actions: ${error}`);
58
- throw error;
59
- }
60
- }
61
- function deserializeActions(data) {
62
- const result = {};
63
- for (const [id, raw] of Object.entries(data)) {
64
- try {
65
- result[id] = validateAction(raw);
66
- }
67
- catch (error) {
68
- console.warn(`Invalid action ${id}, skipping: ${error}`);
69
- }
70
- }
71
- return result;
72
- }
73
- function validateAction(raw) {
74
- if (typeof raw.id !== "string" || !raw.id) {
75
- throw new Error("Action missing valid id");
76
- }
77
- const validStates = [
78
- "DRAFT",
79
- "PROPOSED",
80
- "APPROVED",
81
- "EXECUTED",
82
- "OBSERVED",
83
- "VERIFIED",
84
- "REJECTED",
85
- ];
86
- if (!validStates.includes(raw.state)) {
87
- throw new Error(`Invalid state: ${raw.state}`);
88
- }
89
- if (typeof raw.rationale !== "string") {
90
- throw new Error("Rationale must be a string");
91
- }
92
- if (typeof raw.updatedAt !== "number") {
93
- throw new Error("UpdatedAt must be a number");
94
- }
95
- if (raw.state === "EXECUTED" && !raw.executedAt) {
96
- throw new Error("EXECUTED actions must have executedAt");
97
- }
98
- return raw;
99
- }
100
- function auditActions(actions) {
101
- for (const [id, action] of Object.entries(actions)) {
102
- try {
103
- validateAction(action);
104
- }
105
- catch (error) {
106
- throw new Error(`Audit failed for action ${id}: ${error}`);
107
- }
108
- }
109
- }
110
- //# sourceMappingURL=store.js.map