@aiassesstech/sam 0.3.16 → 0.5.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 (56) hide show
  1. package/README.md +41 -0
  2. package/dist/compilation/wiki-compiler.d.ts +50 -0
  3. package/dist/compilation/wiki-compiler.d.ts.map +1 -0
  4. package/dist/compilation/wiki-compiler.js +158 -0
  5. package/dist/compilation/wiki-compiler.js.map +1 -0
  6. package/dist/index.d.ts +1 -0
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +1 -0
  9. package/dist/index.js.map +1 -1
  10. package/dist/memory/direct-writer.d.ts.map +1 -1
  11. package/dist/memory/direct-writer.js +1 -0
  12. package/dist/memory/direct-writer.js.map +1 -1
  13. package/dist/pipeline/types.d.ts +26 -0
  14. package/dist/pipeline/types.d.ts.map +1 -1
  15. package/dist/pipeline/types.js +9 -0
  16. package/dist/pipeline/types.js.map +1 -1
  17. package/dist/plugin.d.ts.map +1 -1
  18. package/dist/plugin.js +240 -11
  19. package/dist/plugin.js.map +1 -1
  20. package/dist/tools/engine-session-manager.d.ts +18 -0
  21. package/dist/tools/engine-session-manager.d.ts.map +1 -0
  22. package/dist/tools/engine-session-manager.js +29 -0
  23. package/dist/tools/engine-session-manager.js.map +1 -0
  24. package/dist/tools/sam-artifact.d.ts +2 -1
  25. package/dist/tools/sam-artifact.d.ts.map +1 -1
  26. package/dist/tools/sam-artifact.js +15 -2
  27. package/dist/tools/sam-artifact.js.map +1 -1
  28. package/dist/tools/sam-engineer-diff.d.ts +39 -0
  29. package/dist/tools/sam-engineer-diff.d.ts.map +1 -0
  30. package/dist/tools/sam-engineer-diff.js +61 -0
  31. package/dist/tools/sam-engineer-diff.js.map +1 -0
  32. package/dist/tools/sam-engineer-resume.d.ts +34 -0
  33. package/dist/tools/sam-engineer-resume.d.ts.map +1 -0
  34. package/dist/tools/sam-engineer-resume.js +91 -0
  35. package/dist/tools/sam-engineer-resume.js.map +1 -0
  36. package/dist/tools/sam-engineer-status.d.ts +34 -0
  37. package/dist/tools/sam-engineer-status.d.ts.map +1 -0
  38. package/dist/tools/sam-engineer-status.js +66 -0
  39. package/dist/tools/sam-engineer-status.js.map +1 -0
  40. package/dist/tools/sam-engineer-terminate.d.ts +41 -0
  41. package/dist/tools/sam-engineer-terminate.d.ts.map +1 -0
  42. package/dist/tools/sam-engineer-terminate.js +88 -0
  43. package/dist/tools/sam-engineer-terminate.js.map +1 -0
  44. package/dist/tools/sam-engineer.d.ts +60 -0
  45. package/dist/tools/sam-engineer.d.ts.map +1 -0
  46. package/dist/tools/sam-engineer.js +195 -0
  47. package/dist/tools/sam-engineer.js.map +1 -0
  48. package/dist/tools/sam-pipeline.d.ts.map +1 -1
  49. package/dist/tools/sam-pipeline.js +10 -0
  50. package/dist/tools/sam-pipeline.js.map +1 -1
  51. package/dist/tools/sam-status.d.ts +2 -1
  52. package/dist/tools/sam-status.d.ts.map +1 -1
  53. package/dist/tools/sam-status.js +11 -3
  54. package/dist/tools/sam-status.js.map +1 -1
  55. package/openclaw.plugin.json +68 -3
  56. package/package.json +5 -4
package/README.md ADDED
@@ -0,0 +1,41 @@
1
+ # @aiassesstech/sam
2
+
3
+ Sam — Chief Engineer plugin for OpenClaw. Engineering pipeline management, Docker sandbox execution, autonomous code execution, and fleet-bus communications.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ npm install @aiassesstech/sam
9
+ ```
10
+
11
+ ## Setup
12
+
13
+ ```bash
14
+ npx @aiassesstech/sam setup --model anthropic/claude-haiku-4-5
15
+ ```
16
+
17
+ ## Tools
18
+
19
+ | Tool | Description |
20
+ |------|-------------|
21
+ | `sam_status` | Current agent state, pipeline summary, sandbox/fleet status |
22
+ | `sam_pipeline` | View engineering pipeline with filters (active/blocked/complete) |
23
+ | `sam_request` | Create, update, or close Engineering Requests |
24
+ | `sam_report` | Generate summary, detailed, or debt reports |
25
+ | `sam_execute` | Run code in Docker sandbox (Node.js, Python, bash) |
26
+ | `sam_sandbox` | Manage sandbox lifecycle (status, build, cleanup) |
27
+ | `sam_test` | Run test suites in sandbox (vitest, jest, pytest, custom) |
28
+ | `sam_artifact` | List, package, and clean up build artifacts |
29
+ | `sam_fleet_task_status` | Report ER status to Jessie via fleet-bus |
30
+ | `sam_fleet_task_complete` | Report ER completion with artifact reference |
31
+
32
+ ## Architecture
33
+
34
+ - **PipelineManager** — Engineering Request lifecycle (INTAKE → ANALYSIS → BUILD → SELF-REVIEW → ARCHIE-REVIEW → DELIVERED)
35
+ - **SandboxManager** — Docker container lifecycle with resource limits
36
+ - **DirectMemoryWriter** — Filesystem-based memory persistence (compatible with Mighty Mark vector search)
37
+ - **Fleet-bus integration** — Cross-agent task coordination with Jessie
38
+
39
+ ## Repository
40
+
41
+ Part of the [compsi](https://github.com/spehargreg/compsi) monorepo — `packages/sam/`.
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Sam Wiki Compiler — executes knowledge base compilation for Jessie and Nole.
3
+ *
4
+ * SPEC-fleet-knowledge-base-v1.2 §6.1 (BB Amendment 3):
5
+ * Compilation jobs are Sam-executed, Noah-scheduled. Requesting agent
6
+ * reads and queries; Sam writes under FORBIDDEN_PATTERNS enforcement.
7
+ *
8
+ * Flow:
9
+ * 1. Receive compilation task (target agent, topic)
10
+ * 2. Read target agent's raw memory files
11
+ * 3. Read existing wiki/intel INDEX.md
12
+ * 4. Compute SHA-256 hashes for all source files, classify raw/derived
13
+ * 5. Check expires_at on any output files — reject expired
14
+ * 6. For Nole: run sensitivity scan on body. If failed → reject
15
+ * 7. Write articles with provenance frontmatter (atomic write)
16
+ * 8. Log WIKI_COMPILATION event
17
+ */
18
+ export type CompileTarget = 'jessie' | 'nole';
19
+ export interface CompilationRequest {
20
+ target: CompileTarget;
21
+ topic: string;
22
+ articleSlug: string;
23
+ articleTitle: string;
24
+ articleBody: string;
25
+ category: string;
26
+ tags: string[];
27
+ summary: string;
28
+ sourcePaths: string[];
29
+ }
30
+ export interface CompilationResult {
31
+ success: boolean;
32
+ articleSlug?: string;
33
+ contentHash?: string;
34
+ compilationEventId?: string;
35
+ sourceCount?: number;
36
+ derivedRatio?: number;
37
+ error?: string;
38
+ sensitivityRejection?: boolean;
39
+ }
40
+ export interface SourceReference {
41
+ path: string;
42
+ sha256: string;
43
+ type: 'raw' | 'derived';
44
+ }
45
+ export declare class WikiCompiler {
46
+ private readonly workspaceMap;
47
+ constructor(workspaceMap: Record<string, string>);
48
+ compile(request: CompilationRequest): CompilationResult;
49
+ }
50
+ //# sourceMappingURL=wiki-compiler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wiki-compiler.d.ts","sourceRoot":"","sources":["../../src/compilation/wiki-compiler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE9C,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC;CACzB;AAqDD,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAAZ,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAGvD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,iBAAiB;CAyGxD"}
@@ -0,0 +1,158 @@
1
+ /**
2
+ * Sam Wiki Compiler — executes knowledge base compilation for Jessie and Nole.
3
+ *
4
+ * SPEC-fleet-knowledge-base-v1.2 §6.1 (BB Amendment 3):
5
+ * Compilation jobs are Sam-executed, Noah-scheduled. Requesting agent
6
+ * reads and queries; Sam writes under FORBIDDEN_PATTERNS enforcement.
7
+ *
8
+ * Flow:
9
+ * 1. Receive compilation task (target agent, topic)
10
+ * 2. Read target agent's raw memory files
11
+ * 3. Read existing wiki/intel INDEX.md
12
+ * 4. Compute SHA-256 hashes for all source files, classify raw/derived
13
+ * 5. Check expires_at on any output files — reject expired
14
+ * 6. For Nole: run sensitivity scan on body. If failed → reject
15
+ * 7. Write articles with provenance frontmatter (atomic write)
16
+ * 8. Log WIKI_COMPILATION event
17
+ */
18
+ import * as fs from 'node:fs';
19
+ import * as path from 'node:path';
20
+ import * as crypto from 'node:crypto';
21
+ function computeFileHash(filePath) {
22
+ const content = fs.readFileSync(filePath, 'utf-8');
23
+ return crypto.createHash('sha256').update(content).digest('hex');
24
+ }
25
+ function computeContentHash(content) {
26
+ return crypto.createHash('sha256').update(content).digest('hex');
27
+ }
28
+ function classifySource(sourcePath) {
29
+ if (sourcePath.startsWith('wiki/') || sourcePath.startsWith('intel/')) {
30
+ return 'derived';
31
+ }
32
+ return 'raw';
33
+ }
34
+ function isExpiredOutput(filePath) {
35
+ try {
36
+ const content = fs.readFileSync(filePath, 'utf-8');
37
+ const match = content.match(/expires_at:\s*"(.+?)"/);
38
+ if (match) {
39
+ return new Date(match[1]).getTime() < Date.now();
40
+ }
41
+ }
42
+ catch { /* not an output file or unreadable */ }
43
+ return false;
44
+ }
45
+ const SENSITIVITY_PATTERNS = [
46
+ /(?:0x)?[0-9a-fA-F]{64}/,
47
+ /(?:sk_|pk_|rk_)(live|test)_[a-zA-Z0-9]{24,}/,
48
+ /(?:AKIA|ASIA)[A-Z0-9]{16}/,
49
+ /Bearer\s+[a-zA-Z0-9\-._~+\/]{20,}/,
50
+ /hck_[a-zA-Z0-9]{32,}/,
51
+ /-----BEGIN (?:RSA |EC )?PRIVATE KEY-----/,
52
+ ];
53
+ function scanSensitivity(bodyContent) {
54
+ const matches = [];
55
+ const lines = bodyContent.split('\n');
56
+ for (let i = 0; i < lines.length; i++) {
57
+ for (const pattern of SENSITIVITY_PATTERNS) {
58
+ if (pattern.test(lines[i])) {
59
+ matches.push({ pattern: pattern.source, lineNumber: i + 1 });
60
+ }
61
+ }
62
+ }
63
+ return { passed: matches.length === 0, matches };
64
+ }
65
+ let compileSeq = 0;
66
+ export class WikiCompiler {
67
+ workspaceMap;
68
+ constructor(workspaceMap) {
69
+ this.workspaceMap = workspaceMap;
70
+ }
71
+ compile(request) {
72
+ const targetWorkspace = this.workspaceMap[request.target];
73
+ if (!targetWorkspace) {
74
+ return { success: false, error: `No workspace configured for ${request.target}` };
75
+ }
76
+ const targetDir = request.target === 'nole'
77
+ ? path.join(targetWorkspace, 'intel')
78
+ : path.join(targetWorkspace, 'wiki');
79
+ if (!fs.existsSync(targetDir)) {
80
+ fs.mkdirSync(targetDir, { recursive: true });
81
+ }
82
+ // Step 1: Resolve and hash source files
83
+ const sources = [];
84
+ const rejectedExpired = [];
85
+ for (const sourcePath of request.sourcePaths) {
86
+ const fullPath = path.resolve(targetWorkspace, sourcePath);
87
+ if (!fs.existsSync(fullPath)) {
88
+ continue;
89
+ }
90
+ if (isExpiredOutput(fullPath)) {
91
+ rejectedExpired.push(sourcePath);
92
+ continue;
93
+ }
94
+ sources.push({
95
+ path: sourcePath,
96
+ sha256: computeFileHash(fullPath),
97
+ type: classifySource(sourcePath),
98
+ });
99
+ }
100
+ // Step 2: Sensitivity scan for Nole (IH2: body only, before frontmatter)
101
+ if (request.target === 'nole') {
102
+ const scanResult = scanSensitivity(request.articleBody);
103
+ if (!scanResult.passed) {
104
+ return {
105
+ success: false,
106
+ error: `Sensitivity scan failed: ${scanResult.matches.length} match(es) detected`,
107
+ sensitivityRejection: true,
108
+ };
109
+ }
110
+ }
111
+ // Step 3: Build article with provenance frontmatter
112
+ const compilationEventId = `WIKI-COMPILE-${Date.now()}-${++compileSeq}`;
113
+ const lastUpdated = new Date().toISOString();
114
+ const derivedCount = sources.filter(s => s.type === 'derived').length;
115
+ const derivedRatio = sources.length > 0 ? derivedCount / sources.length : 0;
116
+ const frontmatterFields = [
117
+ '---',
118
+ `title: "${request.articleTitle}"`,
119
+ `slug: "${request.articleSlug}"`,
120
+ `category: "${request.category}"`,
121
+ `updated: "${lastUpdated}"`,
122
+ `tags: [${request.tags.map(t => `"${t}"`).join(', ')}]`,
123
+ 'sources:',
124
+ ...sources.map(s => ` - path: "${s.path}"\n sha256: "${s.sha256}"\n type: "${s.type}"`),
125
+ `compilation_event: "${compilationEventId}"`,
126
+ ];
127
+ if (rejectedExpired.length > 0) {
128
+ frontmatterFields.push(`rejected_expired: [${rejectedExpired.map(p => `"${p}"`).join(', ')}]`);
129
+ }
130
+ // IH1: Compute content_hash before the hash line is added
131
+ const bodyWithFrontmatterNoHash = [...frontmatterFields, '---', ''].join('\n') + request.articleBody;
132
+ const contentHash = computeContentHash(bodyWithFrontmatterNoHash);
133
+ const fullContent = [
134
+ ...frontmatterFields,
135
+ `content_hash: "${contentHash}"`,
136
+ '---',
137
+ '',
138
+ ].join('\n') + request.articleBody;
139
+ // Step 4: Atomic write (IH1)
140
+ const articlePath = path.join(targetDir, `${request.articleSlug}.md`);
141
+ const articleDir = path.dirname(articlePath);
142
+ if (!fs.existsSync(articleDir)) {
143
+ fs.mkdirSync(articleDir, { recursive: true });
144
+ }
145
+ const tmpPath = articlePath + `.tmp.${Date.now()}`;
146
+ fs.writeFileSync(tmpPath, fullContent);
147
+ fs.renameSync(tmpPath, articlePath);
148
+ return {
149
+ success: true,
150
+ articleSlug: request.articleSlug,
151
+ contentHash,
152
+ compilationEventId,
153
+ sourceCount: sources.length,
154
+ derivedRatio,
155
+ };
156
+ }
157
+ }
158
+ //# sourceMappingURL=wiki-compiler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wiki-compiler.js","sourceRoot":"","sources":["../../src/compilation/wiki-compiler.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -8,4 +8,5 @@ export type { PipelineStage, EngineeringRequest, PipelineData, SamStatusResult,
8
8
  export { PIPELINE_STAGES, STAGE_ORDER, DEFAULT_CONFIG } from './pipeline/types.js';
9
9
  export type { FleetContext } from './tools/sam-fleet-tools.js';
10
10
  export type { MemoryWriterLike } from './memory/sam-memory.js';
11
+ export { EngineSessionManager } from './tools/engine-session-manager.js';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,UAAU,EACV,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEnF,YAAY,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,UAAU,EACV,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEnF,YAAY,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC"}
package/dist/index.js CHANGED
@@ -5,4 +5,5 @@ export { SamMemory } from './memory/sam-memory.js';
5
5
  export { DirectMemoryWriter } from './memory/direct-writer.js';
6
6
  export { SandboxManager } from './sandbox/sandbox-manager.js';
7
7
  export { PIPELINE_STAGES, STAGE_ORDER, DEFAULT_CONFIG } from './pipeline/types.js';
8
+ export { EngineSessionManager } from './tools/engine-session-manager.js';
8
9
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAa9D,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAa9D,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAInF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"direct-writer.d.ts","sourceRoot":"","sources":["../../src/memory/direct-writer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AA0BxD,qBAAa,kBAAmB,YAAW,gBAAgB;IACzD,OAAO,CAAC,SAAS,CAAS;gBAEd,SAAS,CAAC,EAAE,MAAM;IAI9B,OAAO,CAAC,uBAAuB;IAMzB,KAAK,CAAC,IAAI,EAAE;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;KACtD,GAAG,OAAO,CAAC,MAAM,CAAC;CAiCpB"}
1
+ {"version":3,"file":"direct-writer.d.ts","sourceRoot":"","sources":["../../src/memory/direct-writer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AA2BxD,qBAAa,kBAAmB,YAAW,gBAAgB;IACzD,OAAO,CAAC,SAAS,CAAS;gBAEd,SAAS,CAAC,EAAE,MAAM;IAI9B,OAAO,CAAC,uBAAuB;IAMzB,KAAK,CAAC,IAAI,EAAE;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;KACtD,GAAG,OAAO,CAAC,MAAM,CAAC;CAiCpB"}
@@ -12,6 +12,7 @@
12
12
  import * as fs from 'node:fs';
13
13
  import * as path from 'node:path';
14
14
  const SUBDIR_MAP = {
15
+ engineering: 'engineering',
15
16
  'engineering-request': 'engineering',
16
17
  'engineering-stage-change': 'engineering',
17
18
  'failure-escalation': 'engineering',
@@ -1 +1 @@
1
- {"version":3,"file":"direct-writer.js","sourceRoot":"","sources":["../../src/memory/direct-writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"direct-writer.js","sourceRoot":"","sources":["../../src/memory/direct-writer.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,12 @@ export interface EngineeringRequest {
19
19
  deliveredAt?: string;
20
20
  buildAttempts: number;
21
21
  notes: string[];
22
+ engineSessionId?: string;
23
+ engineTurnCount?: number;
24
+ engineCostUsd?: number;
25
+ engineAuditHead?: string;
26
+ engineWorktreePath?: string;
27
+ engineLastGrilloVerdict?: 'allow' | 'allow_with_comment' | 'block';
22
28
  }
23
29
  export interface PipelineData {
24
30
  version: number;
@@ -44,6 +50,13 @@ export interface SamStatusResult {
44
50
  status: 'unavailable' | 'available' | 'busy';
45
51
  };
46
52
  fleetBus: 'connected' | 'observer' | 'standalone';
53
+ engine?: {
54
+ status: 'disabled' | 'enabled' | 'active';
55
+ activeSessions: number;
56
+ activeErIds: string[];
57
+ model: string;
58
+ grilloFailMode: string;
59
+ };
47
60
  }
48
61
  export interface PipelineFilter {
49
62
  filter?: 'all' | 'active' | 'blocked' | 'complete';
@@ -68,6 +81,19 @@ export interface SamPluginConfig {
68
81
  artifactRetentionDays: number;
69
82
  telegramToken?: string;
70
83
  telegramChatId?: string;
84
+ engineEnabled: boolean;
85
+ anthropicApiKey?: string;
86
+ engineModel?: string;
87
+ worktreeBasePath?: string;
88
+ maxBudgetUsd?: number;
89
+ maxBudgetTokens?: number;
90
+ maxIterations?: number;
91
+ sessionTimeoutMs?: number;
92
+ grilloFailMode?: 'fail_closed' | 'fail_open';
93
+ jessieResponseTimeoutMs?: number;
94
+ grilloEndpoint?: string;
95
+ noahEndpoint?: string;
96
+ jessieEndpoint?: string;
71
97
  }
72
98
  export declare const DEFAULT_CONFIG: SamPluginConfig;
73
99
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/pipeline/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,UAAU,GACV,OAAO,GACP,aAAa,GACb,eAAe,GACf,WAAW,CAAC;AAEhB,eAAO,MAAM,eAAe,EAAE,SAAS,aAAa,EAO1C,CAAC;AAEX,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAOrD,CAAC;AAIF,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAID,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAID,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE;QACP,MAAM,EAAE,aAAa,GAAG,WAAW,GAAG,MAAM,CAAC;KAC9C,CAAC;IACF,QAAQ,EAAE,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;CACnD;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;CACpD;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;CACxC;AAID,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,cAAc,EAAE,eAM5B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/pipeline/types.ts"],"names":[],"mappings":"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"}
@@ -26,5 +26,14 @@ export const DEFAULT_CONFIG = {
26
26
  sandboxImage: 'sam-sandbox:latest',
27
27
  artifactDir: '.sam-artifacts',
28
28
  artifactRetentionDays: 7,
29
+ engineEnabled: false,
30
+ engineModel: 'claude-sonnet-4-6',
31
+ worktreeBasePath: '/root/sam/worktrees',
32
+ maxBudgetUsd: 10.0,
33
+ maxBudgetTokens: 500_000,
34
+ maxIterations: 50,
35
+ sessionTimeoutMs: 1_800_000,
36
+ grilloFailMode: 'fail_closed',
37
+ jessieResponseTimeoutMs: 1_800_000,
29
38
  };
30
39
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/pipeline/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,MAAM,CAAC,MAAM,eAAe,GAA6B;IACvD,QAAQ;IACR,UAAU;IACV,OAAO;IACP,aAAa;IACb,eAAe;IACf,WAAW;CACH,CAAC;AAEX,MAAM,CAAC,MAAM,WAAW,GAAkC;IACxD,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,OAAO,EAAE,CAAC;IACV,aAAa,EAAE,CAAC;IAChB,eAAe,EAAE,CAAC;IAClB,WAAW,EAAE,CAAC;CACf,CAAC;AA+EF,MAAM,CAAC,MAAM,cAAc,GAAoB;IAC7C,OAAO,EAAE,WAAW;IACpB,cAAc,EAAE,KAAK;IACrB,YAAY,EAAE,oBAAoB;IAClC,WAAW,EAAE,gBAAgB;IAC7B,qBAAqB,EAAE,CAAC;CACzB,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/pipeline/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,MAAM,CAAC,MAAM,eAAe,GAA6B;IACvD,QAAQ;IACR,UAAU;IACV,OAAO;IACP,aAAa;IACb,eAAe;IACf,WAAW;CACH,CAAC;AAEX,MAAM,CAAC,MAAM,WAAW,GAAkC;IACxD,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,OAAO,EAAE,CAAC;IACV,aAAa,EAAE,CAAC;IAChB,eAAe,EAAE,CAAC;IAClB,WAAW,EAAE,CAAC;CACf,CAAC;AA6GF,MAAM,CAAC,MAAM,cAAc,GAAoB;IAC7C,OAAO,EAAE,WAAW;IACpB,cAAc,EAAE,KAAK;IACrB,YAAY,EAAE,oBAAoB;IAClC,WAAW,EAAE,gBAAgB;IAC7B,qBAAqB,EAAE,CAAC;IACxB,aAAa,EAAE,KAAK;IACpB,WAAW,EAAE,mBAAmB;IAChC,gBAAgB,EAAE,qBAAqB;IACvC,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,OAAO;IACxB,aAAa,EAAE,EAAE;IACjB,gBAAgB,EAAE,SAAS;IAC3B,cAAc,EAAE,aAAa;IAC7B,uBAAuB,EAAE,SAAS;CACnC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAyFH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,GAAG,EAAE,GAAG,QA+WxC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AA4GH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,GAAG,EAAE,GAAG,QAucxC"}