@enterprise-skills/orchestrator 3.3.0 → 3.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.
@@ -0,0 +1,194 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.LessonStore = exports.RCA_CAUSES = void 0;
37
+ exports.validateLessonInput = validateLessonInput;
38
+ const fs = __importStar(require("fs"));
39
+ const path = __importStar(require("path"));
40
+ const yaml = __importStar(require("js-yaml"));
41
+ /**
42
+ * Structured Root Cause Analysis + Institutional Learning (ESAGS "Root Cause
43
+ * Analysis" and "Institutional Learning").
44
+ *
45
+ * Lessons are governed records, not chat prose: every defect is classified
46
+ * against the fixed ESAGS cause taxonomy, starts as `proposed`, and only
47
+ * becomes institutional knowledge through an explicit approval that records
48
+ * who approved it. Execution memories, reusable patterns, and enterprise
49
+ * knowledge stay separate via the `scope` field.
50
+ */
51
+ exports.RCA_CAUSES = [
52
+ 'missing-context',
53
+ 'unread-context',
54
+ 'stale-context',
55
+ 'conflicting-instructions',
56
+ 'reasoning-error',
57
+ 'planning-error',
58
+ 'implementation-error',
59
+ 'testing-gap',
60
+ 'unsafe-assumption',
61
+ ];
62
+ function validateLessonInput(input) {
63
+ const errors = [];
64
+ if (!input.title?.trim())
65
+ errors.push({ field: 'title', message: 'title is required' });
66
+ if (!input.defect?.trim())
67
+ errors.push({ field: 'defect', message: 'defect is required' });
68
+ if (!input.correctiveAction?.trim()) {
69
+ errors.push({ field: 'corrective_action', message: 'corrective action is required' });
70
+ }
71
+ if (!input.rootCauses?.length) {
72
+ errors.push({ field: 'root_causes', message: 'at least one root cause is required' });
73
+ }
74
+ else {
75
+ for (const cause of input.rootCauses) {
76
+ if (!exports.RCA_CAUSES.includes(cause)) {
77
+ errors.push({ field: 'root_causes', message: `unknown cause "${cause}" — one of: ${exports.RCA_CAUSES.join(', ')}` });
78
+ }
79
+ }
80
+ }
81
+ if (!['execution', 'pattern', 'enterprise'].includes(input.scope)) {
82
+ errors.push({ field: 'scope', message: 'scope must be execution | pattern | enterprise' });
83
+ }
84
+ return errors;
85
+ }
86
+ function slugify(title) {
87
+ return (title
88
+ .toLowerCase()
89
+ .replace(/[^a-z0-9]+/g, '-')
90
+ .replace(/^-+|-+$/g, '')
91
+ .slice(0, 48) || 'lesson');
92
+ }
93
+ class LessonStore {
94
+ projectRoot;
95
+ constructor(projectRoot) {
96
+ this.projectRoot = projectRoot;
97
+ }
98
+ dir() {
99
+ return path.join(this.projectRoot, '.project-ai', 'lessons');
100
+ }
101
+ fileFor(id) {
102
+ return path.join(this.dir(), `${id}.yaml`);
103
+ }
104
+ record(input) {
105
+ const errors = validateLessonInput(input);
106
+ if (errors.length > 0) {
107
+ throw new Error(`Invalid lesson: ${errors.map((e) => `${e.field}: ${e.message}`).join('; ')}`);
108
+ }
109
+ const now = input.now ?? new Date();
110
+ const day = now.toISOString().slice(0, 10).replace(/-/g, '');
111
+ let id = `lesson-${day}-${slugify(input.title)}`;
112
+ let n = 2;
113
+ while (fs.existsSync(this.fileFor(id))) {
114
+ id = `lesson-${day}-${slugify(input.title)}-${n}`;
115
+ n += 1;
116
+ }
117
+ const record = {
118
+ schema: 'esags-lesson',
119
+ version: 1,
120
+ id,
121
+ created_at: now.toISOString(),
122
+ title: input.title.trim(),
123
+ defect: input.defect.trim(),
124
+ root_causes: input.rootCauses,
125
+ corrective_action: input.correctiveAction.trim(),
126
+ scope: input.scope,
127
+ status: 'proposed',
128
+ ...(input.sourceExecutionId ? { source_execution_id: input.sourceExecutionId } : {}),
129
+ };
130
+ fs.mkdirSync(this.dir(), { recursive: true });
131
+ fs.writeFileSync(this.fileFor(id), yaml.dump(record, { lineWidth: 100 }), 'utf-8');
132
+ return record;
133
+ }
134
+ get(id) {
135
+ const file = this.fileFor(id);
136
+ if (!fs.existsSync(file))
137
+ return null;
138
+ return yaml.load(fs.readFileSync(file, 'utf-8'));
139
+ }
140
+ list(filter) {
141
+ if (!fs.existsSync(this.dir()))
142
+ return [];
143
+ const records = [];
144
+ for (const name of fs.readdirSync(this.dir()).sort()) {
145
+ if (!name.endsWith('.yaml'))
146
+ continue;
147
+ try {
148
+ const rec = yaml.load(fs.readFileSync(path.join(this.dir(), name), 'utf-8'));
149
+ if (rec?.schema !== 'esags-lesson')
150
+ continue;
151
+ if (filter?.status && rec.status !== filter.status)
152
+ continue;
153
+ if (filter?.scope && rec.scope !== filter.scope)
154
+ continue;
155
+ records.push(rec);
156
+ }
157
+ catch {
158
+ /* unreadable lesson files are skipped, never fatal for listing */
159
+ }
160
+ }
161
+ return records;
162
+ }
163
+ /** Promote a proposed lesson to institutional knowledge. Approval is explicit and attributed. */
164
+ approve(id, approvedBy, now) {
165
+ return this.transition(id, 'approved', approvedBy, undefined, now);
166
+ }
167
+ reject(id, rejectedBy, reason, now) {
168
+ if (!reason?.trim())
169
+ throw new Error('A rejection reason is required.');
170
+ return this.transition(id, 'rejected', rejectedBy, reason.trim(), now);
171
+ }
172
+ transition(id, to, actor, reason, nowOpt) {
173
+ if (!actor?.trim())
174
+ throw new Error('An actor (--by) is required for lesson transitions.');
175
+ const record = this.get(id);
176
+ if (!record)
177
+ throw new Error(`Lesson not found: ${id}`);
178
+ if (record.status !== 'proposed') {
179
+ throw new Error(`Lesson ${id} is ${record.status}; only proposed lessons can transition.`);
180
+ }
181
+ const now = (nowOpt ?? new Date()).toISOString();
182
+ const updated = {
183
+ ...record,
184
+ status: to,
185
+ ...(to === 'approved'
186
+ ? { approved_by: actor.trim(), approved_at: now }
187
+ : { rejected_by: actor.trim(), rejected_at: now, rejection_reason: reason }),
188
+ };
189
+ fs.writeFileSync(this.fileFor(id), yaml.dump(updated, { lineWidth: 100 }), 'utf-8');
190
+ return updated;
191
+ }
192
+ }
193
+ exports.LessonStore = LessonStore;
194
+ //# sourceMappingURL=lessons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lessons.js","sourceRoot":"","sources":["../src/lessons.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -152,9 +152,14 @@ export interface PolicyPack {
152
152
  export interface AuditEntry {
153
153
  timestamp: string;
154
154
  session_id: string;
155
- event_type: 'skill_start' | 'skill_complete' | 'gate_check' | 'gate_result' | 'signal_emitted' | 'signal_processed' | 'workflow_start' | 'workflow_complete' | 'policy_check' | 'policy_bypass' | 'error';
155
+ event_type: 'skill_start' | 'skill_complete' | 'gate_check' | 'gate_result' | 'signal_emitted' | 'signal_processed' | 'workflow_start' | 'workflow_complete' | 'policy_check' | 'policy_bypass' | 'error' | 'context_gate' | 'lesson_recorded' | 'lesson_status_changed';
156
156
  skill_id?: string;
157
157
  workflow_id?: string;
158
+ execution_id?: string;
159
+ model?: string;
160
+ model_version?: string;
161
+ repo_revision?: string;
162
+ context_receipt_hash?: string;
158
163
  details: Record<string, unknown>;
159
164
  integrity_hash: string;
160
165
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@enterprise-skills/orchestrator",
3
- "version": "3.3.0",
3
+ "version": "3.5.0",
4
4
  "description": "Governance orchestration engine — state machine, DAG resolver, signal router, policy enforcer, audit logger",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -0,0 +1,28 @@
1
+ name: onboard-audit
2
+ description: New project setup followed by a full audit baseline
3
+ version: "1.0"
4
+
5
+ steps:
6
+ - id: setup
7
+ type: sequential
8
+ skill: infrastructure-setup
9
+
10
+ - id: context
11
+ type: sequential
12
+ skill: session-start
13
+ depends_on: [setup]
14
+
15
+ - id: baseline
16
+ type: parallel
17
+ skills: [security-audit, dependency-audit, full-stack-audit]
18
+ depends_on: [context]
19
+
20
+ - id: quality
21
+ type: sequential
22
+ skill: code-review
23
+ depends_on: [context]
24
+
25
+ - id: report
26
+ type: sequential
27
+ skill: project-manager
28
+ depends_on: [baseline, quality]
@@ -0,0 +1,87 @@
1
+ name: release-confidence
2
+ description: Enterprise quality & reliability release gate — 10-domain audits normalized into a risk-scored go/no-go report
3
+ version: "1.0"
4
+
5
+ steps:
6
+ - id: context
7
+ type: sequential
8
+ skill: session-start
9
+
10
+ - id: grounding
11
+ type: sequential
12
+ skill: anti-hallucination-agent
13
+ config:
14
+ scope: code
15
+ depends_on: [context]
16
+
17
+ - id: static-analysis
18
+ type: parallel
19
+ skills: [security-audit, dependency-audit]
20
+ depends_on: [context]
21
+
22
+ - id: quality
23
+ type: parallel
24
+ skills: [code-review, api-contract-check]
25
+ depends_on: [context]
26
+
27
+ - id: tests
28
+ type: sequential
29
+ skill: test-orchestrator
30
+ depends_on: [context]
31
+
32
+ - id: ui
33
+ type: parallel
34
+ skills: [accessibility-audit, visual-regression-agent]
35
+ depends_on: [context]
36
+
37
+ - id: performance
38
+ type: parallel
39
+ skills: [performance-audit, load-and-resilience]
40
+ depends_on: [context]
41
+
42
+ - id: data
43
+ type: sequential
44
+ skill: db-migration-agent
45
+ depends_on: [context]
46
+
47
+ - id: mobile
48
+ type: sequential
49
+ skill: mobile-qa
50
+ depends_on: [context]
51
+
52
+ - id: observability
53
+ type: sequential
54
+ skill: observability-qa
55
+ depends_on: [context]
56
+
57
+ - id: gate-security
58
+ type: gate
59
+ check:
60
+ source: security-audit
61
+ field: findings
62
+ operator: none_match
63
+ value: { severity: critical }
64
+ pass_action: deploy-check
65
+ fail_action: STOP
66
+ depends_on: [static-analysis]
67
+
68
+ - id: deploy-check
69
+ type: sequential
70
+ skill: pre-deploy-check
71
+ depends_on: [gate-security, quality, tests, grounding]
72
+
73
+ - id: gate-deploy
74
+ type: gate
75
+ check:
76
+ source: pre-deploy-check
77
+ field: status
78
+ operator: equals
79
+ value: completed
80
+ pass_action: confidence
81
+ fail_action: STOP
82
+ depends_on: [deploy-check]
83
+
84
+ - id: confidence
85
+ type: sequential
86
+ skill: release-confidence
87
+ depends_on: [gate-deploy, ui, performance, data, mobile, observability]