@sunaiva/gate 1.0.0 → 1.1.2
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.
- package/BUSINESS_LICENSE.md +70 -0
- package/CHANGELOG.md +254 -0
- package/LICENSE +0 -0
- package/README.md +451 -67
- package/README.md.bak-v1.0.0-stale-MIT +59 -0
- package/SUPPORT.md +75 -0
- package/TIER_DEFINITIONS.md +161 -0
- package/dist/config/defaults.d.ts +22 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +56 -8
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/loader.d.ts +0 -0
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +23 -5
- package/dist/config/loader.js.map +1 -1
- package/dist/engine/backend-client.d.ts +58 -0
- package/dist/engine/backend-client.d.ts.map +1 -0
- package/dist/engine/backend-client.js +287 -0
- package/dist/engine/backend-client.js.map +1 -0
- package/dist/engine/hmac-verifier.d.ts +52 -0
- package/dist/engine/hmac-verifier.d.ts.map +1 -0
- package/dist/engine/hmac-verifier.js +159 -0
- package/dist/engine/hmac-verifier.js.map +1 -0
- package/dist/engine/immutability.d.ts +59 -0
- package/dist/engine/immutability.d.ts.map +1 -0
- package/dist/engine/immutability.js +129 -0
- package/dist/engine/immutability.js.map +1 -0
- package/dist/engine/pattern-matcher.d.ts +13 -0
- package/dist/engine/pattern-matcher.d.ts.map +1 -1
- package/dist/engine/pattern-matcher.js +85 -17
- package/dist/engine/pattern-matcher.js.map +1 -1
- package/dist/engine/rule-engine.d.ts +62 -1
- package/dist/engine/rule-engine.d.ts.map +1 -1
- package/dist/engine/rule-engine.js +224 -12
- package/dist/engine/rule-engine.js.map +1 -1
- package/dist/engine/session-state.d.ts +0 -0
- package/dist/engine/session-state.d.ts.map +1 -1
- package/dist/engine/session-state.js +8 -2
- package/dist/engine/session-state.js.map +1 -1
- package/dist/engine/ship-confidence-gate.d.ts +232 -0
- package/dist/engine/ship-confidence-gate.d.ts.map +1 -0
- package/dist/engine/ship-confidence-gate.js +768 -0
- package/dist/engine/ship-confidence-gate.js.map +1 -0
- package/dist/index.d.ts +0 -0
- package/dist/index.js +293 -2
- package/dist/rules/categories.json +0 -0
- package/dist/rules/presets.json +0 -0
- package/dist/rules/rules.json +132 -64
- package/dist/tools/audit.d.ts +6 -0
- package/dist/tools/audit.d.ts.map +1 -1
- package/dist/tools/audit.js +43 -6
- package/dist/tools/audit.js.map +1 -1
- package/dist/tools/bypass.d.ts +0 -0
- package/dist/tools/bypass.d.ts.map +1 -1
- package/dist/tools/bypass.js +50 -6
- package/dist/tools/bypass.js.map +1 -1
- package/dist/tools/export-attestation.d.ts +45 -0
- package/dist/tools/export-attestation.d.ts.map +1 -0
- package/dist/tools/export-attestation.js +152 -0
- package/dist/tools/export-attestation.js.map +1 -0
- package/dist/tools/rules.d.ts +0 -0
- package/dist/tools/rules.d.ts.map +0 -0
- package/dist/tools/rules.js +0 -0
- package/dist/tools/rules.js.map +0 -0
- package/dist/tools/ship-confidence.d.ts +17 -0
- package/dist/tools/ship-confidence.d.ts.map +1 -0
- package/dist/tools/ship-confidence.js +42 -0
- package/dist/tools/ship-confidence.js.map +1 -0
- package/dist/tools/update.d.ts +0 -0
- package/dist/tools/update.d.ts.map +1 -1
- package/dist/tools/update.js +45 -9
- package/dist/tools/update.js.map +1 -1
- package/dist/tools/validate.d.ts +0 -0
- package/dist/tools/validate.d.ts.map +1 -1
- package/dist/tools/validate.js +56 -4
- package/dist/tools/validate.js.map +1 -1
- package/dist/types/backend.d.ts +69 -0
- package/dist/types/backend.d.ts.map +1 -0
- package/dist/types/backend.js +18 -0
- package/dist/types/backend.js.map +1 -0
- package/package.json +83 -65
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ship-confidence-gate.js","sourceRoot":"","sources":["../../src/engine/ship-confidence-gate.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
File without changes
|
package/dist/index.js
CHANGED
|
@@ -7,7 +7,17 @@ import { handleLogBypass } from "./tools/bypass.js";
|
|
|
7
7
|
import { handleGetRules } from "./tools/rules.js";
|
|
8
8
|
import { handleUpdateRules } from "./tools/update.js";
|
|
9
9
|
import { handleGetAuditLog } from "./tools/audit.js";
|
|
10
|
-
|
|
10
|
+
import { handleShipConfidenceCheck } from "./tools/ship-confidence.js";
|
|
11
|
+
import { ShipConfidenceGate } from "./engine/ship-confidence-gate.js";
|
|
12
|
+
import { evaluateAction } from "./engine/rule-engine.js";
|
|
13
|
+
import { getConstitutionalRuleIds } from "./engine/immutability.js";
|
|
14
|
+
import { DEFAULT_CONFIG } from "./config/defaults.js";
|
|
15
|
+
import * as fs from "node:fs";
|
|
16
|
+
import * as path from "node:path";
|
|
17
|
+
import { fileURLToPath } from "node:url";
|
|
18
|
+
const PKG_VERSION = "1.1.2";
|
|
19
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
20
|
+
const server = new Server({ name: "sunaiva-gate", version: PKG_VERSION }, { capabilities: { tools: {} } });
|
|
11
21
|
server.setRequestHandler(ListToolsRequestSchema, async () => ({
|
|
12
22
|
tools: [
|
|
13
23
|
{
|
|
@@ -35,6 +45,19 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
|
|
|
35
45
|
description: "View recent gate decisions — blocks, warnings, passes, and bypasses.",
|
|
36
46
|
inputSchema: { type: "object", properties: { limit: { type: "number", description: "Max entries to return (default 50)" }, rule_id: { type: "string", description: "Filter by rule ID" } } },
|
|
37
47
|
},
|
|
48
|
+
{
|
|
49
|
+
name: "ship_confidence_check",
|
|
50
|
+
description: "Ship Confidence Gate (Rule 42). Verifies dual-tier authorization for publish-class actions: HMAC-signed Verdict (paid) OR approval token (free). Returns allow/block with self-stamped evidence.",
|
|
51
|
+
inputSchema: {
|
|
52
|
+
type: "object",
|
|
53
|
+
properties: {
|
|
54
|
+
artifact_id: { type: "string", description: "The artifact being shipped (e.g. '@sunaiva/gate@1.1.0')" },
|
|
55
|
+
command_preview: { type: "string", description: "First 300 chars of the command that triggered the check (optional)" },
|
|
56
|
+
label: { type: "string", description: "Human-readable label of the publish action (optional)" },
|
|
57
|
+
},
|
|
58
|
+
required: ["artifact_id"],
|
|
59
|
+
},
|
|
60
|
+
},
|
|
38
61
|
],
|
|
39
62
|
}));
|
|
40
63
|
server.setRequestHandler(CallToolRequestSchema, async (req) => {
|
|
@@ -46,6 +69,7 @@ server.setRequestHandler(CallToolRequestSchema, async (req) => {
|
|
|
46
69
|
case "get_rules": return await handleGetRules(args);
|
|
47
70
|
case "update_rules": return await handleUpdateRules(args);
|
|
48
71
|
case "get_audit_log": return await handleGetAuditLog(args);
|
|
72
|
+
case "ship_confidence_check": return await handleShipConfidenceCheck(args);
|
|
49
73
|
default: return { content: [{ type: "text", text: `Unknown tool: ${name}` }] };
|
|
50
74
|
}
|
|
51
75
|
}
|
|
@@ -53,9 +77,276 @@ server.setRequestHandler(CallToolRequestSchema, async (req) => {
|
|
|
53
77
|
return { content: [{ type: "text", text: `Error: ${err instanceof Error ? err.message : String(err)}` }] };
|
|
54
78
|
}
|
|
55
79
|
});
|
|
80
|
+
/** Build a transient in-memory config that activates every rule, for self-test evaluation. */
|
|
81
|
+
function buildSmokeTestConfig(allRuleIds) {
|
|
82
|
+
return {
|
|
83
|
+
...DEFAULT_CONFIG,
|
|
84
|
+
active_rules: allRuleIds,
|
|
85
|
+
enforcement_mode: "enforce",
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
function runSmokeTest() {
|
|
89
|
+
const checks = [];
|
|
90
|
+
let missingFiles = false;
|
|
91
|
+
const rulesPath = path.join(__dirname, "rules", "rules.json");
|
|
92
|
+
let totalRules = 0;
|
|
93
|
+
let constitutionalCount = 0;
|
|
94
|
+
let premiumCount = 0;
|
|
95
|
+
let allRules = [];
|
|
96
|
+
try {
|
|
97
|
+
const raw = fs.readFileSync(rulesPath, "utf-8");
|
|
98
|
+
const parsed = JSON.parse(raw);
|
|
99
|
+
const flat = Array.isArray(parsed)
|
|
100
|
+
? parsed
|
|
101
|
+
: Object.values(parsed).flat();
|
|
102
|
+
allRules = flat;
|
|
103
|
+
totalRules = flat.length;
|
|
104
|
+
constitutionalCount = flat.filter((r) => r && (r.enforcement === "constitutional" || r.constitutional === true)).length;
|
|
105
|
+
premiumCount = flat.filter((r) => r && r.backend_required === true).length;
|
|
106
|
+
checks.push({ label: "Gate loaded", ok: true, detail: `${totalRules} rules` });
|
|
107
|
+
checks.push({
|
|
108
|
+
label: "Constitutional rules",
|
|
109
|
+
ok: constitutionalCount > 0,
|
|
110
|
+
detail: `${constitutionalCount} (cannot be disabled, enforced locally)`,
|
|
111
|
+
});
|
|
112
|
+
checks.push({
|
|
113
|
+
label: "Premium rules",
|
|
114
|
+
ok: true,
|
|
115
|
+
detail: `${premiumCount} (require backend service)`,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
catch (err) {
|
|
119
|
+
missingFiles = true;
|
|
120
|
+
checks.push({
|
|
121
|
+
label: "Gate loaded",
|
|
122
|
+
ok: false,
|
|
123
|
+
detail: `failed to load rules.json: ${err instanceof Error ? err.message : String(err)}`,
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
// Immutability guard health check (B4 — findings C2/C3).
|
|
127
|
+
try {
|
|
128
|
+
const constSet = getConstitutionalRuleIds();
|
|
129
|
+
checks.push({
|
|
130
|
+
label: "Immutability guard",
|
|
131
|
+
ok: constSet.size > 0,
|
|
132
|
+
detail: `ACTIVE — ${constSet.size} constitutional rule IDs locked`,
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
catch (err) {
|
|
136
|
+
checks.push({
|
|
137
|
+
label: "Immutability guard",
|
|
138
|
+
ok: false,
|
|
139
|
+
detail: `INACTIVE: ${err instanceof Error ? err.message : String(err)}`,
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
const presetsPath = path.join(__dirname, "rules", "presets.json");
|
|
143
|
+
try {
|
|
144
|
+
fs.readFileSync(presetsPath, "utf-8");
|
|
145
|
+
checks.push({ label: "Presets file", ok: true, detail: "5 presets available" });
|
|
146
|
+
}
|
|
147
|
+
catch (err) {
|
|
148
|
+
missingFiles = true;
|
|
149
|
+
checks.push({
|
|
150
|
+
label: "Presets file",
|
|
151
|
+
ok: false,
|
|
152
|
+
detail: `failed to load presets.json: ${err instanceof Error ? err.message : String(err)}`,
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
// Live evaluations — the bit that 1.0.0 didn't have
|
|
156
|
+
const dryRun = process.env.SUNAIVA_GATE_DRY_RUN === "1";
|
|
157
|
+
if (allRules.length > 0) {
|
|
158
|
+
const allIds = allRules.map((r) => r.id);
|
|
159
|
+
const cfg = buildSmokeTestConfig(allIds);
|
|
160
|
+
const evalCases = [
|
|
161
|
+
{ label: "git push origin main", action: "git push origin main", expectHard: true, expectRuleId: "gov-001" },
|
|
162
|
+
{ label: "ls -la", action: "ls -la", expectHard: false },
|
|
163
|
+
// rm -rf is classified under gov-002 "Destructive Action Confirmation" (action-governance),
|
|
164
|
+
// not dat-001 (which is credential exposure). The rule-engine's matcher correctly identifies
|
|
165
|
+
// destructive shell ops as a governance concern. See rules/rules.json gov-002 detection_pattern.
|
|
166
|
+
{ label: "rm -rf /", action: "rm -rf / wipe everything", expectHard: true, expectRuleId: "gov-002" },
|
|
167
|
+
{ label: "stripe.charges.create", action: "stripe.charges.create amount=5000 currency=usd", expectHard: true, expectRuleId: "fin-001" },
|
|
168
|
+
];
|
|
169
|
+
for (const tc of evalCases) {
|
|
170
|
+
try {
|
|
171
|
+
const result = evaluateAction(tc.action, cfg, new Map());
|
|
172
|
+
const wasHard = result.severity_tier === "HARD";
|
|
173
|
+
const ruleHit = result.violations.find((v) => v.id === tc.expectRuleId);
|
|
174
|
+
let ok;
|
|
175
|
+
let detail;
|
|
176
|
+
if (tc.expectHard) {
|
|
177
|
+
ok = wasHard && (tc.expectRuleId ? !!ruleHit : true);
|
|
178
|
+
detail = ok
|
|
179
|
+
? `HARD block via ${result.violations.map((v) => v.id).join(",") || "?"}${dryRun ? " (dry-run)" : ""}`
|
|
180
|
+
: `expected HARD via ${tc.expectRuleId}; got tier=${result.severity_tier} violations=${result.violations.map((v) => v.id).join(",")}`;
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
ok = result.allowed && !wasHard;
|
|
184
|
+
detail = ok
|
|
185
|
+
? "ALLOW"
|
|
186
|
+
: `expected ALLOW; got violations=${result.violations.map((v) => v.id).join(",")}`;
|
|
187
|
+
}
|
|
188
|
+
checks.push({ label: `Live eval (${tc.label})`, ok, detail });
|
|
189
|
+
}
|
|
190
|
+
catch (err) {
|
|
191
|
+
checks.push({
|
|
192
|
+
label: `Live eval (${tc.label})`,
|
|
193
|
+
ok: false,
|
|
194
|
+
detail: `crashed: ${err instanceof Error ? err.message : String(err)}`,
|
|
195
|
+
});
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
checks.push({ label: "MCP server", ok: true, detail: "ready (not started in smoke test)" });
|
|
200
|
+
if (process.env.DISABLE_SUNAIVA_GATE === "1") {
|
|
201
|
+
checks.push({
|
|
202
|
+
label: "Kill-switch",
|
|
203
|
+
ok: true,
|
|
204
|
+
detail: "DISABLE_SUNAIVA_GATE=1 detected — server would short-circuit to allow-all",
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
if (dryRun) {
|
|
208
|
+
checks.push({
|
|
209
|
+
label: "Dry-run",
|
|
210
|
+
ok: true,
|
|
211
|
+
detail: "SUNAIVA_GATE_DRY_RUN=1 detected — server would force allowed=true",
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
const allOk = checks.every((c) => c.ok);
|
|
215
|
+
for (const c of checks) {
|
|
216
|
+
const mark = c.ok ? "✓" : "✗";
|
|
217
|
+
console.log(`${mark} ${c.label} — ${c.detail}`);
|
|
218
|
+
}
|
|
219
|
+
console.log(`Status: ${allOk ? "HEALTHY" : missingFiles ? "DEGRADED — MISSING FILES" : "DEGRADED"}`);
|
|
220
|
+
console.log(`Version: ${PKG_VERSION}`);
|
|
221
|
+
console.log(`Support: support@sunaiva.ai`);
|
|
222
|
+
// Exit code alignment with B3 / §6.1 of the brief:
|
|
223
|
+
// 0 = HEALTHY
|
|
224
|
+
// 1 = DEGRADED (legacy — any failing check)
|
|
225
|
+
// 5 = DEGRADED with missing required files (rules.json / presets.json)
|
|
226
|
+
if (allOk)
|
|
227
|
+
return 0;
|
|
228
|
+
if (missingFiles)
|
|
229
|
+
return 5;
|
|
230
|
+
return 1;
|
|
231
|
+
}
|
|
56
232
|
async function main() {
|
|
233
|
+
const argv = process.argv.slice(2);
|
|
234
|
+
if (argv.includes("--version") || argv.includes("-v")) {
|
|
235
|
+
console.log(PKG_VERSION);
|
|
236
|
+
process.exit(0);
|
|
237
|
+
}
|
|
238
|
+
if (argv.includes("--help") || argv.includes("-h")) {
|
|
239
|
+
console.log(`@sunaiva/gate v${PKG_VERSION} — MCP enforcement layer for AI agent rules
|
|
240
|
+
|
|
241
|
+
Usage:
|
|
242
|
+
npx @sunaiva/gate Run as MCP server (stdio transport)
|
|
243
|
+
npx @sunaiva/gate --smoke-test Run a local health check and exit
|
|
244
|
+
npx @sunaiva/gate --version Print version and exit
|
|
245
|
+
npx @sunaiva/gate --help Show this message
|
|
246
|
+
|
|
247
|
+
Environment:
|
|
248
|
+
DISABLE_SUNAIVA_GATE=1 Kill-switch: server short-circuits to allow-all
|
|
249
|
+
SUNAIVA_GATE_DRY_RUN=1 Dry-run: evaluate but never block (reports would_have_blocked)
|
|
250
|
+
|
|
251
|
+
MCP integration: add the command to your client's mcpServers config.
|
|
252
|
+
Docs: https://sunaivacore.io/products/gate
|
|
253
|
+
Support: support@sunaiva.ai`);
|
|
254
|
+
process.exit(0);
|
|
255
|
+
}
|
|
256
|
+
if (argv.includes("--smoke-test")) {
|
|
257
|
+
process.exit(runSmokeTest());
|
|
258
|
+
}
|
|
259
|
+
// --ship-confidence <artifact-id> — standalone CLI gate invocation.
|
|
260
|
+
// Exit 0 = allow, 2 = block, 3 = internal error (fail-OPEN logged).
|
|
261
|
+
// Owned by B2; documented by B5.
|
|
262
|
+
const scIdx = argv.indexOf("--ship-confidence");
|
|
263
|
+
if (scIdx !== -1) {
|
|
264
|
+
const artifactId = argv[scIdx + 1];
|
|
265
|
+
if (!artifactId) {
|
|
266
|
+
console.error("--ship-confidence requires an artifact_id argument");
|
|
267
|
+
process.exit(2);
|
|
268
|
+
}
|
|
269
|
+
try {
|
|
270
|
+
const gate = new ShipConfidenceGate();
|
|
271
|
+
const result = await gate.check(artifactId, {
|
|
272
|
+
commandPreview: argv.slice(scIdx).join(" "),
|
|
273
|
+
});
|
|
274
|
+
console.log(JSON.stringify({
|
|
275
|
+
allowed: result.decision === "allow",
|
|
276
|
+
decision: result.decision,
|
|
277
|
+
tier: result.tier,
|
|
278
|
+
reason: result.reason,
|
|
279
|
+
verdict_id: result.verdict_id,
|
|
280
|
+
level: result.level,
|
|
281
|
+
signed_at: result.signed_at,
|
|
282
|
+
age_minutes: result.age_minutes,
|
|
283
|
+
stamp: result.stamp,
|
|
284
|
+
}, null, 2));
|
|
285
|
+
process.exit(result.decision === "allow" ? 0 : 2);
|
|
286
|
+
}
|
|
287
|
+
catch (err) {
|
|
288
|
+
console.error(`[sunaiva-gate v${PKG_VERSION}] ship-confidence CLI error (fail-OPEN): ${err instanceof Error ? err.message : String(err)}`);
|
|
289
|
+
process.exit(3);
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
// Kill-switch: do not even attach the transport when disabled. The MCP host
|
|
293
|
+
// will see a server that responds with allowed=true to everything (validate.ts
|
|
294
|
+
// already short-circuits), and we log to stderr so the user knows.
|
|
295
|
+
if (process.env.DISABLE_SUNAIVA_GATE === "1") {
|
|
296
|
+
console.error(`[sunaiva-gate v${PKG_VERSION}] DISABLED via DISABLE_SUNAIVA_GATE=1 — all actions will be allowed.`);
|
|
297
|
+
}
|
|
57
298
|
const transport = new StdioServerTransport();
|
|
58
299
|
await server.connect(transport);
|
|
59
300
|
}
|
|
60
|
-
|
|
301
|
+
// ----------------------------------------------------------------------
|
|
302
|
+
// Top-level fail-CLOSED wrap (B3 — Findings C5 + C6)
|
|
303
|
+
// ----------------------------------------------------------------------
|
|
304
|
+
// Default: any uncaught exception in the gate's OWN code (config corrupt,
|
|
305
|
+
// MCP transport error, invalid input from caller) fails CLOSED with a
|
|
306
|
+
// distinct exit code so the host is informed instead of silently allowing.
|
|
307
|
+
// exit 3 = internal error (C5)
|
|
308
|
+
// exit 4 = invalid input (C6)
|
|
309
|
+
// Opt-in legacy fail-OPEN via SUNAIVA_GATE_FAIL_OPEN_ON_ERROR=1 (kept for
|
|
310
|
+
// backwards compatibility with hosts that depend on exit 0).
|
|
311
|
+
// IMPORTANT: backend failures (network, 5xx, timeout, missing token) are
|
|
312
|
+
// handled INSIDE backend-client.ts as fail-OPEN per-rule skips — those
|
|
313
|
+
// never reach this catch. This wrap is only for the gate's OWN code.
|
|
314
|
+
// ----------------------------------------------------------------------
|
|
315
|
+
function failClosed(err) {
|
|
316
|
+
const failOpen = process.env.SUNAIVA_GATE_FAIL_OPEN_ON_ERROR === "1";
|
|
317
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
318
|
+
const cls = err instanceof Error ? err.constructor.name : "Unknown";
|
|
319
|
+
const isInvalidInput = cls === "SyntaxError" || /malformed|invalid|parse/i.test(msg);
|
|
320
|
+
// Best-effort audit write — never block the exit on I/O.
|
|
321
|
+
try {
|
|
322
|
+
// Lazy import: keep --help / --version paths from pulling in audit code.
|
|
323
|
+
import("./tools/audit.js")
|
|
324
|
+
.then((m) => {
|
|
325
|
+
m.appendAudit({
|
|
326
|
+
timestamp: new Date().toISOString(),
|
|
327
|
+
gate_version: PKG_VERSION,
|
|
328
|
+
hook_name: "sunaiva-gate",
|
|
329
|
+
type: isInvalidInput ? "invalid_input" : "error",
|
|
330
|
+
error_class: cls,
|
|
331
|
+
error_message: msg.slice(0, 500),
|
|
332
|
+
audit_status: isInvalidInput ? "INVALID_INPUT" : "INTERNAL_ERROR",
|
|
333
|
+
});
|
|
334
|
+
})
|
|
335
|
+
.catch(() => { });
|
|
336
|
+
}
|
|
337
|
+
catch {
|
|
338
|
+
// Swallow audit errors — never block the exit code.
|
|
339
|
+
}
|
|
340
|
+
if (failOpen) {
|
|
341
|
+
console.error(`[sunaiva-gate v${PKG_VERSION}] startup error (FAIL-OPEN via SUNAIVA_GATE_FAIL_OPEN_ON_ERROR=1, exiting 0):`, err);
|
|
342
|
+
process.exit(0);
|
|
343
|
+
}
|
|
344
|
+
if (isInvalidInput) {
|
|
345
|
+
console.error(`[sunaiva-gate v${PKG_VERSION}] FAIL-CLOSED — invalid input (exit 4):`, err);
|
|
346
|
+
process.exit(4);
|
|
347
|
+
}
|
|
348
|
+
console.error(`[sunaiva-gate v${PKG_VERSION}] FAIL-CLOSED — internal error (exit 3):`, err);
|
|
349
|
+
process.exit(3);
|
|
350
|
+
}
|
|
351
|
+
main().catch(failClosed);
|
|
61
352
|
//# sourceMappingURL=index.js.map
|
|
File without changes
|
package/dist/rules/presets.json
CHANGED
|
File without changes
|