clawaid 1.0.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 @@
1
+ {"version":3,"file":"loop.js","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { RuleFinding } from './rules';
2
+ export interface ObservationResult {
3
+ timestamp: string;
4
+ openclawStatus: string;
5
+ gatewayStatus: string;
6
+ gatewayStatusJson: string;
7
+ configContent: string;
8
+ configPath: string;
9
+ portCheck: string;
10
+ processCheck: string;
11
+ plistContent: string;
12
+ plistPath: string;
13
+ recentLogs: string;
14
+ logPath: string;
15
+ nodeVersion: string;
16
+ npmVersion: string;
17
+ openclawVersion: string;
18
+ systemInfo: string;
19
+ homeDir: string;
20
+ officialDoctorOutput: string;
21
+ desktopAppVersion: string;
22
+ desktopAppRunning: string;
23
+ errors: string[];
24
+ ruleFindings?: RuleFinding[];
25
+ }
26
+ export declare function loadMockObservation(scenario: string): ObservationResult;
27
+ export declare function observe(onProgress?: (msg: string) => void): Promise<ObservationResult>;
28
+ export declare function formatObservation(obs: ObservationResult): string;
29
+ //# sourceMappingURL=observe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observe.d.ts","sourceRoot":"","sources":["../src/observe.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAgC,MAAM,SAAS,CAAC;AAIpE,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAC9B;AAyHD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAIvE;AAED,wBAAsB,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAwE5F;AAyDD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,iBAAiB,GAAG,MAAM,CAoDhE"}
@@ -0,0 +1,330 @@
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.loadMockObservation = loadMockObservation;
37
+ exports.observe = observe;
38
+ exports.formatObservation = formatObservation;
39
+ const child_process_1 = require("child_process");
40
+ const util_1 = require("util");
41
+ const fs = __importStar(require("fs"));
42
+ const path = __importStar(require("path"));
43
+ const os = __importStar(require("os"));
44
+ const rules_1 = require("./rules");
45
+ const execAsync = (0, util_1.promisify)(child_process_1.exec);
46
+ async function runCommand(cmd, timeout = 10000) {
47
+ try {
48
+ const { stdout, stderr } = await execAsync(cmd, {
49
+ timeout,
50
+ env: { ...process.env, PATH: '/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:' + (process.env.PATH || '') }
51
+ });
52
+ return (stdout + (stderr ? '\nSTDERR: ' + stderr : '')).trim();
53
+ }
54
+ catch (err) {
55
+ if (err && typeof err === 'object' && 'stdout' in err && 'stderr' in err) {
56
+ const e = err;
57
+ const out = (e.stdout || '').trim();
58
+ const errOut = (e.stderr || '').trim();
59
+ if (out || errOut) {
60
+ return (out + (errOut ? '\nSTDERR: ' + errOut : '')).trim();
61
+ }
62
+ }
63
+ return `[command failed: ${err.message}]`;
64
+ }
65
+ }
66
+ async function findRecentLog() {
67
+ const homeDir = os.homedir();
68
+ // Check config for custom log path
69
+ let logDir = '/tmp/openclaw';
70
+ let customLogPath = '';
71
+ try {
72
+ const configPath = path.join(homeDir, '.openclaw', 'openclaw.json');
73
+ if (fs.existsSync(configPath)) {
74
+ const configContent = fs.readFileSync(configPath, 'utf-8');
75
+ // Simple JSON5 parsing - look for logging.file
76
+ const logFileMatch = configContent.match(/"?file"?\s*:\s*"([^"]+)"/);
77
+ if (logFileMatch) {
78
+ customLogPath = logFileMatch[1].replace('~', homeDir);
79
+ }
80
+ }
81
+ }
82
+ catch {
83
+ // ignore
84
+ }
85
+ // Try to find logs
86
+ const possiblePaths = [
87
+ customLogPath,
88
+ '/tmp/openclaw',
89
+ path.join(homeDir, '.openclaw', 'logs'),
90
+ '/var/log/openclaw',
91
+ ].filter(Boolean);
92
+ for (const p of possiblePaths) {
93
+ if (!p || !fs.existsSync(p))
94
+ continue;
95
+ try {
96
+ const stat = fs.statSync(p);
97
+ if (stat.isFile()) {
98
+ // Direct file path
99
+ const content = fs.readFileSync(p, 'utf-8');
100
+ const lines = content.split('\n');
101
+ const last200 = lines.slice(-200).join('\n');
102
+ return { content: last200, logPath: p };
103
+ }
104
+ else if (stat.isDirectory()) {
105
+ // Find most recent log file
106
+ const files = fs.readdirSync(p)
107
+ .filter(f => f.endsWith('.log'))
108
+ .map(f => ({
109
+ name: f,
110
+ fullPath: path.join(p, f),
111
+ mtime: fs.statSync(path.join(p, f)).mtime.getTime()
112
+ }))
113
+ .sort((a, b) => b.mtime - a.mtime);
114
+ if (files.length > 0) {
115
+ const latestLog = files[0].fullPath;
116
+ const content = fs.readFileSync(latestLog, 'utf-8');
117
+ const lines = content.split('\n');
118
+ const last200 = lines.slice(-200).join('\n');
119
+ return { content: last200, logPath: latestLog };
120
+ }
121
+ }
122
+ }
123
+ catch {
124
+ continue;
125
+ }
126
+ }
127
+ return { content: '[no log files found]', logPath: '[none]' };
128
+ }
129
+ async function readPlist() {
130
+ const homeDir = os.homedir();
131
+ const plistPath = path.join(homeDir, 'Library', 'LaunchAgents', 'ai.openclaw.gateway.plist');
132
+ try {
133
+ if (fs.existsSync(plistPath)) {
134
+ const content = fs.readFileSync(plistPath, 'utf-8');
135
+ return { content, plistPath };
136
+ }
137
+ }
138
+ catch {
139
+ // ignore
140
+ }
141
+ return { content: '[plist not found]', plistPath };
142
+ }
143
+ async function readConfig() {
144
+ const homeDir = os.homedir();
145
+ const configPath = path.join(homeDir, '.openclaw', 'openclaw.json');
146
+ try {
147
+ if (fs.existsSync(configPath)) {
148
+ const content = fs.readFileSync(configPath, 'utf-8');
149
+ return { content, configPath };
150
+ }
151
+ }
152
+ catch {
153
+ // ignore
154
+ }
155
+ return { content: '[config file not found - OpenClaw may not be configured]', configPath };
156
+ }
157
+ function loadMockObservation(scenario) {
158
+ const scenarioPath = path.join(__dirname, '..', 'test-scenarios', scenario + '.json');
159
+ const content = fs.readFileSync(scenarioPath, 'utf-8');
160
+ return JSON.parse(content);
161
+ }
162
+ async function observe(onProgress) {
163
+ const errors = [];
164
+ const homeDir = os.homedir();
165
+ const progress = (msg) => {
166
+ if (onProgress)
167
+ onProgress(msg);
168
+ };
169
+ progress('Checking OpenClaw status...');
170
+ const openclawStatusRaw = await runCommand('openclaw status 2>&1');
171
+ const openclawStatus = truncate(openclawStatusRaw, 2000);
172
+ progress('Checking gateway status...');
173
+ const gatewayStatus = await runCommand('openclaw gateway status 2>&1');
174
+ const gatewayStatusJson = await runCommand('openclaw gateway status --json 2>&1');
175
+ progress('Running official openclaw doctor...');
176
+ const officialDoctorRaw = await runCommand('openclaw doctor 2>&1', 30000);
177
+ const officialDoctorOutput = truncate(officialDoctorRaw, 3000);
178
+ progress('Reading config file...');
179
+ const { content: configContent, configPath } = await readConfig();
180
+ progress('Checking port 18789...');
181
+ const portCheck = await runCommand('lsof -i :18789 2>&1 || echo "[lsof not available or port not in use]"');
182
+ progress('Checking OpenClaw processes...');
183
+ const processCheck = await runCommand('ps aux | grep -i "[o]penclaw"');
184
+ progress('Reading launch agent plist...');
185
+ const { content: plistContent, plistPath } = await readPlist();
186
+ progress('Finding and reading logs...');
187
+ const { content: recentLogs, logPath } = await findRecentLog();
188
+ progress('Checking Node.js version...');
189
+ const nodeVersion = await runCommand('node -v 2>&1');
190
+ const npmVersion = await runCommand('npm -v 2>&1');
191
+ progress('Checking OpenClaw version...');
192
+ const openclawVersion = await runCommand('openclaw --version 2>&1');
193
+ progress('Checking OpenClaw desktop app...');
194
+ const desktopAppVersion = await runCommand('defaults read /Applications/OpenClaw.app/Contents/Info.plist CFBundleShortVersionString 2>&1');
195
+ const desktopAppRunning = await runCommand('pgrep -f "OpenClaw.app" 2>&1');
196
+ progress('Gathering system info...');
197
+ const systemInfo = await runCommand('sw_vers 2>/dev/null || uname -a');
198
+ return {
199
+ timestamp: new Date().toISOString(),
200
+ openclawStatus,
201
+ gatewayStatus,
202
+ gatewayStatusJson,
203
+ configContent,
204
+ configPath,
205
+ portCheck,
206
+ processCheck,
207
+ plistContent,
208
+ plistPath,
209
+ recentLogs,
210
+ logPath,
211
+ nodeVersion,
212
+ npmVersion,
213
+ openclawVersion,
214
+ systemInfo,
215
+ homeDir,
216
+ officialDoctorOutput,
217
+ desktopAppVersion,
218
+ desktopAppRunning,
219
+ errors,
220
+ };
221
+ }
222
+ function truncate(text, maxChars) {
223
+ if (text.length <= maxChars)
224
+ return text;
225
+ return text.slice(0, maxChars) + `\n... [truncated, ${text.length - maxChars} chars omitted]`;
226
+ }
227
+ function redactApiKeys(text) {
228
+ // Redact API keys but keep first 8 chars for identification
229
+ return text.replace(/(sk-or-v1-[a-f0-9]{8})[a-f0-9]+/g, '$1...[REDACTED]')
230
+ .replace(/(sk-[a-zA-Z0-9]{8})[a-zA-Z0-9]+/g, '$1...[REDACTED]');
231
+ }
232
+ function extractGatewayEssentials(statusJson) {
233
+ // Try to parse and extract only diagnostically relevant fields
234
+ try {
235
+ const parsed = JSON.parse(statusJson);
236
+ const essentials = {};
237
+ // Keep only diagnostic fields, skip session data
238
+ for (const key of ['runtime', 'gateway', 'version', 'pid', 'uptime', 'mode', 'status', 'error', 'errors', 'channels', 'channelSummary', 'heartbeat']) {
239
+ if (key in parsed)
240
+ essentials[key] = parsed[key];
241
+ }
242
+ return JSON.stringify(essentials, null, 2);
243
+ }
244
+ catch {
245
+ return truncate(statusJson, 3000);
246
+ }
247
+ }
248
+ function extractConfigEssentials(configContent) {
249
+ // Try to parse and extract only diagnostically relevant fields (no sessions, no API keys in full)
250
+ try {
251
+ const parsed = JSON.parse(configContent);
252
+ const essentials = {};
253
+ // Keep structure but remove large/sensitive data
254
+ for (const key of ['gateway', 'models', 'channels', 'tools', 'security', 'logging', 'agent']) {
255
+ if (key in parsed)
256
+ essentials[key] = parsed[key];
257
+ }
258
+ // Include provider names but redact keys
259
+ if (parsed.providers) {
260
+ const providers = {};
261
+ for (const [name, val] of Object.entries(parsed.providers)) {
262
+ if (val && typeof val === 'object') {
263
+ const p = { ...val };
264
+ if (p.apiKey && typeof p.apiKey === 'string') {
265
+ p.apiKey = p.apiKey.slice(0, 12) + '...[REDACTED]';
266
+ }
267
+ providers[name] = p;
268
+ }
269
+ }
270
+ essentials.providers = providers;
271
+ }
272
+ return JSON.stringify(essentials, null, 2);
273
+ }
274
+ catch {
275
+ return truncate(redactApiKeys(configContent), 4000);
276
+ }
277
+ }
278
+ function formatObservation(obs) {
279
+ // Run deterministic rules engine
280
+ const findings = (0, rules_1.runRules)(obs);
281
+ obs.ruleFindings = findings;
282
+ const ruleSection = (0, rules_1.formatRuleFindings)(findings);
283
+ return `
284
+ ${ruleSection}
285
+
286
+ === CLAWAID OBSERVATION ===
287
+ Timestamp: ${obs.timestamp}
288
+ Home: ${obs.homeDir}
289
+
290
+ --- OFFICIAL openclaw doctor output (IMPORTANT - check this first) ---
291
+ ${truncate(obs.officialDoctorOutput, 3000)}
292
+
293
+ --- Desktop App ---
294
+ Version: ${obs.desktopAppVersion}
295
+ Running (pgrep): ${obs.desktopAppRunning}
296
+
297
+ --- openclaw status (text, truncated) ---
298
+ ${truncate(obs.openclawStatus, 2000)}
299
+
300
+ --- openclaw gateway status ---
301
+ ${truncate(obs.gatewayStatus, 3000)}
302
+
303
+ --- openclaw gateway status (json, essentials) ---
304
+ ${extractGatewayEssentials(obs.gatewayStatusJson)}
305
+
306
+ --- config essentials: ${obs.configPath} ---
307
+ ${extractConfigEssentials(obs.configContent)}
308
+
309
+ --- port 18789 check ---
310
+ ${truncate(obs.portCheck, 1000)}
311
+
312
+ --- openclaw processes ---
313
+ ${truncate(obs.processCheck, 1000)}
314
+
315
+ --- launch agent plist: ${obs.plistPath} ---
316
+ ${truncate(obs.plistContent, 2000)}
317
+
318
+ --- recent logs (last 50 lines): ${obs.logPath} ---
319
+ ${truncate(obs.recentLogs.split('\n').slice(-50).join('\n'), 5000)}
320
+
321
+ --- runtime versions ---
322
+ node: ${obs.nodeVersion}
323
+ npm: ${obs.npmVersion}
324
+ openclaw: ${obs.openclawVersion}
325
+
326
+ --- system info ---
327
+ ${obs.systemInfo}
328
+ `.trim();
329
+ }
330
+ //# sourceMappingURL=observe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observe.js","sourceRoot":"","sources":["../src/observe.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyJA,kDAIC;AAED,0BAwEC;AAyDD,8CAoDC;AApVD,iDAAqC;AACrC,+BAAiC;AACjC,uCAAyB;AACzB,2CAA6B;AAC7B,uCAAyB;AACzB,mCAAoE;AAEpE,MAAM,SAAS,GAAG,IAAA,gBAAS,EAAC,oBAAI,CAAC,CAAC;AA2BlC,KAAK,UAAU,UAAU,CAAC,GAAW,EAAE,OAAO,GAAG,KAAK;IACpD,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE;YAC9C,OAAO;YACP,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,iDAAiD,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE;SAC5G,CAAC,CAAC;QACH,OAAO,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjE,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,IAAI,QAAQ,IAAI,GAAG,EAAE,CAAC;YACzE,MAAM,CAAC,GAAG,GAA0D,CAAC;YACrE,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACpC,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACvC,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;gBAClB,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9D,CAAC;QACH,CAAC;QACD,OAAO,oBAAqB,GAAa,CAAC,OAAO,GAAG,CAAC;IACvD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa;IAC1B,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAE7B,mCAAmC;IACnC,IAAI,MAAM,GAAG,eAAe,CAAC;IAC7B,IAAI,aAAa,GAAG,EAAE,CAAC;IAEvB,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;QACpE,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,MAAM,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC3D,+CAA+C;YAC/C,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;YACrE,IAAI,YAAY,EAAE,CAAC;gBACjB,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,SAAS;IACX,CAAC;IAED,mBAAmB;IACnB,MAAM,aAAa,GAAG;QACpB,aAAa;QACb,eAAe;QACf,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC;QACvC,mBAAmB;KACpB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAElB,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;YAAE,SAAS;QAEtC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;gBAClB,mBAAmB;gBACnB,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;gBAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;YAC1C,CAAC;iBAAM,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC9B,4BAA4B;gBAC5B,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;qBAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;qBAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACT,IAAI,EAAE,CAAC;oBACP,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBACzB,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE;iBACpD,CAAC,CAAC;qBACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;gBAErC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;oBACpC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBACpD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAClC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC7C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;gBAClD,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;AAChE,CAAC;AAED,KAAK,UAAU,SAAS;IACtB,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,2BAA2B,CAAC,CAAC;IAE7F,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACpD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QAChC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,SAAS;IACX,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,CAAC;AACrD,CAAC;AAED,KAAK,UAAU,UAAU;IACvB,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;IAEpE,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACrD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;QACjC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,SAAS;IACX,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,0DAA0D,EAAE,UAAU,EAAE,CAAC;AAC7F,CAAC;AAED,SAAgB,mBAAmB,CAAC,QAAgB;IAClD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC;IACtF,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAsB,CAAC;AAClD,CAAC;AAEM,KAAK,UAAU,OAAO,CAAC,UAAkC;IAC9D,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAE7B,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAE;QAC/B,IAAI,UAAU;YAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC,CAAC;IAEF,QAAQ,CAAC,6BAA6B,CAAC,CAAC;IACxC,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,sBAAsB,CAAC,CAAC;IACnE,MAAM,cAAc,GAAG,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IAEzD,QAAQ,CAAC,4BAA4B,CAAC,CAAC;IACvC,MAAM,aAAa,GAAG,MAAM,UAAU,CAAC,8BAA8B,CAAC,CAAC;IACvE,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,qCAAqC,CAAC,CAAC;IAElF,QAAQ,CAAC,qCAAqC,CAAC,CAAC;IAChD,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;IAC1E,MAAM,oBAAoB,GAAG,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IAE/D,QAAQ,CAAC,wBAAwB,CAAC,CAAC;IACnC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,MAAM,UAAU,EAAE,CAAC;IAElE,QAAQ,CAAC,wBAAwB,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,uEAAuE,CAAC,CAAC;IAE5G,QAAQ,CAAC,gCAAgC,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,+BAA+B,CAAC,CAAC;IAEvE,QAAQ,CAAC,+BAA+B,CAAC,CAAC;IAC1C,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAE/D,QAAQ,CAAC,6BAA6B,CAAC,CAAC;IACxC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,EAAE,CAAC;IAE/D,QAAQ,CAAC,6BAA6B,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,CAAC;IAEnD,QAAQ,CAAC,8BAA8B,CAAC,CAAC;IACzC,MAAM,eAAe,GAAG,MAAM,UAAU,CAAC,yBAAyB,CAAC,CAAC;IAEpE,QAAQ,CAAC,kCAAkC,CAAC,CAAC;IAC7C,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,8FAA8F,CAAC,CAAC;IAC3I,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,8BAA8B,CAAC,CAAC;IAE3E,QAAQ,CAAC,0BAA0B,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,iCAAiC,CAAC,CAAC;IAEvE,OAAO;QACL,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,cAAc;QACd,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,UAAU;QACV,SAAS;QACT,YAAY;QACZ,YAAY;QACZ,SAAS;QACT,UAAU;QACV,OAAO;QACP,WAAW;QACX,UAAU;QACV,eAAe;QACf,UAAU;QACV,OAAO;QACP,oBAAoB;QACpB,iBAAiB;QACjB,iBAAiB;QACjB,MAAM;KACP,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,QAAgB;IAC9C,IAAI,IAAI,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,qBAAqB,IAAI,CAAC,MAAM,GAAG,QAAQ,iBAAiB,CAAC;AAChG,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,4DAA4D;IAC5D,OAAO,IAAI,CAAC,OAAO,CAAC,kCAAkC,EAAE,iBAAiB,CAAC;SAC9D,OAAO,CAAC,kCAAkC,EAAE,iBAAiB,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,wBAAwB,CAAC,UAAkB;IAClD,+DAA+D;IAC/D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,UAAU,GAA4B,EAAE,CAAC;QAC/C,iDAAiD;QACjD,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,CAAC,EAAE,CAAC;YACrJ,IAAI,GAAG,IAAI,MAAM;gBAAE,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,aAAqB;IACpD,kGAAkG;IAClG,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACzC,MAAM,UAAU,GAA4B,EAAE,CAAC;QAC/C,iDAAiD;QACjD,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;YAC7F,IAAI,GAAG,IAAI,MAAM;gBAAE,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACnD,CAAC;QACD,yCAAyC;QACzC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,MAAM,SAAS,GAA4B,EAAE,CAAC;YAC9C,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAoC,CAAC,EAAE,CAAC;gBACtF,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBACnC,MAAM,CAAC,GAAG,EAAE,GAAI,GAA+B,EAAE,CAAC;oBAClD,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC7C,CAAC,CAAC,MAAM,GAAI,CAAC,CAAC,MAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,eAAe,CAAC;oBACjE,CAAC;oBACD,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;YACD,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;AACH,CAAC;AAED,SAAgB,iBAAiB,CAAC,GAAsB;IACtD,iCAAiC;IACjC,MAAM,QAAQ,GAAG,IAAA,gBAAQ,EAAC,GAAG,CAAC,CAAC;IAC/B,GAAG,CAAC,YAAY,GAAG,QAAQ,CAAC;IAC5B,MAAM,WAAW,GAAG,IAAA,0BAAkB,EAAC,QAAQ,CAAC,CAAC;IAEjD,OAAO;EACP,WAAW;;;aAGA,GAAG,CAAC,SAAS;QAClB,GAAG,CAAC,OAAO;;;EAGjB,QAAQ,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC;;;WAG/B,GAAG,CAAC,iBAAiB;mBACb,GAAG,CAAC,iBAAiB;;;EAGtC,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC;;;EAGlC,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC;;;EAGjC,wBAAwB,CAAC,GAAG,CAAC,iBAAiB,CAAC;;yBAExB,GAAG,CAAC,UAAU;EACrC,uBAAuB,CAAC,GAAG,CAAC,aAAa,CAAC;;;EAG1C,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC;;;EAG7B,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC;;0BAER,GAAG,CAAC,SAAS;EACrC,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC;;mCAEC,GAAG,CAAC,OAAO;EAC5C,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;;;QAG1D,GAAG,CAAC,WAAW;OAChB,GAAG,CAAC,UAAU;YACT,GAAG,CAAC,eAAe;;;EAG7B,GAAG,CAAC,UAAU;CACf,CAAC,IAAI,EAAE,CAAC;AACT,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { ObservationResult } from './observe';
2
+ export interface RuleFinding {
3
+ id: string;
4
+ severity: 'critical' | 'high' | 'warning' | 'info';
5
+ title: string;
6
+ description: string;
7
+ fix?: string;
8
+ }
9
+ export declare function runRules(obs: ObservationResult): RuleFinding[];
10
+ export declare function formatRuleFindings(findings: RuleFinding[]): string;
11
+ //# sourceMappingURL=rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../src/rules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AA8SD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,iBAAiB,GAAG,WAAW,EAAE,CAgB9D;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,CAgClE"}