bla-agents 0.0.0-stage → 1.5.3
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/.agents/skills/blind-llm-agents/SKILL.md +56 -0
- package/.agents/skills/blind-llm-agents/references/counter-rea-matrix.md +28 -0
- package/DISCLAIMER.md +28 -0
- package/LICENSE +21 -0
- package/README.md +246 -2
- package/dist/bundler/index.d.ts +117 -0
- package/dist/bundler/index.d.ts.map +1 -0
- package/dist/bundler/index.js +167 -0
- package/dist/bundler/index.js.map +1 -0
- package/dist/cli.d.ts +30 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +447 -0
- package/dist/cli.js.map +1 -0
- package/dist/core/config.d.ts +54 -0
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js +160 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/coverage-contract.d.ts +97 -0
- package/dist/core/coverage-contract.d.ts.map +1 -0
- package/dist/core/coverage-contract.js +164 -0
- package/dist/core/coverage-contract.js.map +1 -0
- package/dist/core/debug-posture.d.ts +40 -0
- package/dist/core/debug-posture.d.ts.map +1 -0
- package/dist/core/debug-posture.js +197 -0
- package/dist/core/debug-posture.js.map +1 -0
- package/dist/core/detector.d.ts +7 -0
- package/dist/core/detector.d.ts.map +1 -0
- package/dist/core/detector.js +190 -0
- package/dist/core/detector.js.map +1 -0
- package/dist/core/identifiers.d.ts +32 -0
- package/dist/core/identifiers.d.ts.map +1 -0
- package/dist/core/identifiers.js +263 -0
- package/dist/core/identifiers.js.map +1 -0
- package/dist/core/llm-directives.d.ts +12 -0
- package/dist/core/llm-directives.d.ts.map +1 -0
- package/dist/core/llm-directives.js +23 -0
- package/dist/core/llm-directives.js.map +1 -0
- package/dist/core/output-path.d.ts +3 -0
- package/dist/core/output-path.d.ts.map +1 -0
- package/dist/core/output-path.js +51 -0
- package/dist/core/output-path.js.map +1 -0
- package/dist/core/prng.d.ts +27 -0
- package/dist/core/prng.d.ts.map +1 -0
- package/dist/core/prng.js +85 -0
- package/dist/core/prng.js.map +1 -0
- package/dist/core/release-exposure.d.ts +26 -0
- package/dist/core/release-exposure.d.ts.map +1 -0
- package/dist/core/release-exposure.js +213 -0
- package/dist/core/release-exposure.js.map +1 -0
- package/dist/core/release-plan.d.ts +68 -0
- package/dist/core/release-plan.d.ts.map +1 -0
- package/dist/core/release-plan.js +235 -0
- package/dist/core/release-plan.js.map +1 -0
- package/dist/core/sarif.d.ts +53 -0
- package/dist/core/sarif.d.ts.map +1 -0
- package/dist/core/sarif.js +91 -0
- package/dist/core/sarif.js.map +1 -0
- package/dist/core/sqlite-runtime.d.ts +17 -0
- package/dist/core/sqlite-runtime.d.ts.map +1 -0
- package/dist/core/sqlite-runtime.js +49 -0
- package/dist/core/sqlite-runtime.js.map +1 -0
- package/dist/core/token-estimator.d.ts +11 -0
- package/dist/core/token-estimator.d.ts.map +1 -0
- package/dist/core/token-estimator.js +87 -0
- package/dist/core/token-estimator.js.map +1 -0
- package/dist/core/types.d.ts +159 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +2 -0
- package/dist/core/types.js.map +1 -0
- package/dist/engine/auditor.d.ts +6 -0
- package/dist/engine/auditor.d.ts.map +1 -0
- package/dist/engine/auditor.js +977 -0
- package/dist/engine/auditor.js.map +1 -0
- package/dist/engine/benchmark.d.ts +6 -0
- package/dist/engine/benchmark.d.ts.map +1 -0
- package/dist/engine/benchmark.js +425 -0
- package/dist/engine/benchmark.js.map +1 -0
- package/dist/engine/defender.d.ts +57 -0
- package/dist/engine/defender.d.ts.map +1 -0
- package/dist/engine/defender.js +130 -0
- package/dist/engine/defender.js.map +1 -0
- package/dist/engine/harden.d.ts +61 -0
- package/dist/engine/harden.d.ts.map +1 -0
- package/dist/engine/harden.js +292 -0
- package/dist/engine/harden.js.map +1 -0
- package/dist/engine/protector.d.ts +8 -0
- package/dist/engine/protector.d.ts.map +1 -0
- package/dist/engine/protector.js +500 -0
- package/dist/engine/protector.js.map +1 -0
- package/dist/engine/verifier.d.ts +6 -0
- package/dist/engine/verifier.d.ts.map +1 -0
- package/dist/engine/verifier.js +91 -0
- package/dist/engine/verifier.js.map +1 -0
- package/dist/identity.d.ts +180 -0
- package/dist/identity.d.ts.map +1 -0
- package/dist/identity.js +180 -0
- package/dist/identity.js.map +1 -0
- package/dist/index.d.ts +53 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +53 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/server.d.ts +81 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +730 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/setup/clients.d.ts +58 -0
- package/dist/setup/clients.d.ts.map +1 -0
- package/dist/setup/clients.js +1268 -0
- package/dist/setup/clients.js.map +1 -0
- package/dist/setup/doctor.d.ts +69 -0
- package/dist/setup/doctor.d.ts.map +1 -0
- package/dist/setup/doctor.js +339 -0
- package/dist/setup/doctor.js.map +1 -0
- package/dist/setup/setup.d.ts +99 -0
- package/dist/setup/setup.d.ts.map +1 -0
- package/dist/setup/setup.js +652 -0
- package/dist/setup/setup.js.map +1 -0
- package/dist/shields/chaff/chaff-generator.d.ts +17 -0
- package/dist/shields/chaff/chaff-generator.d.ts.map +1 -0
- package/dist/shields/chaff/chaff-generator.js +80 -0
- package/dist/shields/chaff/chaff-generator.js.map +1 -0
- package/dist/shields/deception/architecture-mirage.d.ts +16 -0
- package/dist/shields/deception/architecture-mirage.d.ts.map +1 -0
- package/dist/shields/deception/architecture-mirage.js +46 -0
- package/dist/shields/deception/architecture-mirage.js.map +1 -0
- package/dist/shields/deception/canary-honeypot.d.ts +33 -0
- package/dist/shields/deception/canary-honeypot.d.ts.map +1 -0
- package/dist/shields/deception/canary-honeypot.js +95 -0
- package/dist/shields/deception/canary-honeypot.js.map +1 -0
- package/dist/shields/deception/cognitive-armor-trigger.d.ts +43 -0
- package/dist/shields/deception/cognitive-armor-trigger.d.ts.map +1 -0
- package/dist/shields/deception/cognitive-armor-trigger.js +204 -0
- package/dist/shields/deception/cognitive-armor-trigger.js.map +1 -0
- package/dist/shields/deception/crash-trace-decoy.d.ts +16 -0
- package/dist/shields/deception/crash-trace-decoy.d.ts.map +1 -0
- package/dist/shields/deception/crash-trace-decoy.js +36 -0
- package/dist/shields/deception/crash-trace-decoy.js.map +1 -0
- package/dist/shields/deception/decompiler-illusion.d.ts +15 -0
- package/dist/shields/deception/decompiler-illusion.d.ts.map +1 -0
- package/dist/shields/deception/decompiler-illusion.js +29 -0
- package/dist/shields/deception/decompiler-illusion.js.map +1 -0
- package/dist/shields/deception/diff-noise-injector.d.ts +17 -0
- package/dist/shields/deception/diff-noise-injector.d.ts.map +1 -0
- package/dist/shields/deception/diff-noise-injector.js +29 -0
- package/dist/shields/deception/diff-noise-injector.js.map +1 -0
- package/dist/shields/deception/evidence-contract-poison.d.ts +25 -0
- package/dist/shields/deception/evidence-contract-poison.d.ts.map +1 -0
- package/dist/shields/deception/evidence-contract-poison.js +66 -0
- package/dist/shields/deception/evidence-contract-poison.js.map +1 -0
- package/dist/shields/deception/format-payloads.d.ts +21 -0
- package/dist/shields/deception/format-payloads.d.ts.map +1 -0
- package/dist/shields/deception/format-payloads.js +24 -0
- package/dist/shields/deception/format-payloads.js.map +1 -0
- package/dist/shields/deception/index.d.ts +35 -0
- package/dist/shields/deception/index.d.ts.map +1 -0
- package/dist/shields/deception/index.js +69 -0
- package/dist/shields/deception/index.js.map +1 -0
- package/dist/shields/deception/prompt-completion-poison.d.ts +19 -0
- package/dist/shields/deception/prompt-completion-poison.d.ts.map +1 -0
- package/dist/shields/deception/prompt-completion-poison.js +45 -0
- package/dist/shields/deception/prompt-completion-poison.js.map +1 -0
- package/dist/shields/deception/semantic-honeypot.d.ts +17 -0
- package/dist/shields/deception/semantic-honeypot.d.ts.map +1 -0
- package/dist/shields/deception/semantic-honeypot.js +45 -0
- package/dist/shields/deception/semantic-honeypot.js.map +1 -0
- package/dist/shields/deception/shadow-business-logic.d.ts +24 -0
- package/dist/shields/deception/shadow-business-logic.d.ts.map +1 -0
- package/dist/shields/deception/shadow-business-logic.js +66 -0
- package/dist/shields/deception/shadow-business-logic.js.map +1 -0
- package/dist/shields/deception/system-diagnostic-decoy.d.ts +36 -0
- package/dist/shields/deception/system-diagnostic-decoy.d.ts.map +1 -0
- package/dist/shields/deception/system-diagnostic-decoy.js +101 -0
- package/dist/shields/deception/system-diagnostic-decoy.js.map +1 -0
- package/dist/shields/exhaustion/asar-header-amplifier.d.ts +25 -0
- package/dist/shields/exhaustion/asar-header-amplifier.d.ts.map +1 -0
- package/dist/shields/exhaustion/asar-header-amplifier.js +59 -0
- package/dist/shields/exhaustion/asar-header-amplifier.js.map +1 -0
- package/dist/shields/exhaustion/bpe-token-amplifier.d.ts +21 -0
- package/dist/shields/exhaustion/bpe-token-amplifier.d.ts.map +1 -0
- package/dist/shields/exhaustion/bpe-token-amplifier.js +68 -0
- package/dist/shields/exhaustion/bpe-token-amplifier.js.map +1 -0
- package/dist/shields/exhaustion/callgraph-labyrinth.d.ts +20 -0
- package/dist/shields/exhaustion/callgraph-labyrinth.d.ts.map +1 -0
- package/dist/shields/exhaustion/callgraph-labyrinth.js +62 -0
- package/dist/shields/exhaustion/callgraph-labyrinth.js.map +1 -0
- package/dist/shields/exhaustion/cdp-shape-budget-breaker.d.ts +20 -0
- package/dist/shields/exhaustion/cdp-shape-budget-breaker.d.ts.map +1 -0
- package/dist/shields/exhaustion/cdp-shape-budget-breaker.js +40 -0
- package/dist/shields/exhaustion/cdp-shape-budget-breaker.js.map +1 -0
- package/dist/shields/exhaustion/frida-capture-saturation.d.ts +33 -0
- package/dist/shields/exhaustion/frida-capture-saturation.d.ts.map +1 -0
- package/dist/shields/exhaustion/frida-capture-saturation.js +58 -0
- package/dist/shields/exhaustion/frida-capture-saturation.js.map +1 -0
- package/dist/shields/exhaustion/index.d.ts +30 -0
- package/dist/shields/exhaustion/index.d.ts.map +1 -0
- package/dist/shields/exhaustion/index.js +43 -0
- package/dist/shields/exhaustion/index.js.map +1 -0
- package/dist/shields/exhaustion/obligation-flooder.d.ts +128 -0
- package/dist/shields/exhaustion/obligation-flooder.d.ts.map +1 -0
- package/dist/shields/exhaustion/obligation-flooder.js +145 -0
- package/dist/shields/exhaustion/obligation-flooder.js.map +1 -0
- package/dist/shields/exhaustion/rea-budget-matrix.d.ts +54 -0
- package/dist/shields/exhaustion/rea-budget-matrix.d.ts.map +1 -0
- package/dist/shields/exhaustion/rea-budget-matrix.js +300 -0
- package/dist/shields/exhaustion/rea-budget-matrix.js.map +1 -0
- package/dist/shields/exhaustion/regex-worker-tarpit.d.ts +23 -0
- package/dist/shields/exhaustion/regex-worker-tarpit.d.ts.map +1 -0
- package/dist/shields/exhaustion/regex-worker-tarpit.js +43 -0
- package/dist/shields/exhaustion/regex-worker-tarpit.js.map +1 -0
- package/dist/shields/exhaustion/wasm-interface-exhaustion.d.ts +26 -0
- package/dist/shields/exhaustion/wasm-interface-exhaustion.d.ts.map +1 -0
- package/dist/shields/exhaustion/wasm-interface-exhaustion.js +59 -0
- package/dist/shields/exhaustion/wasm-interface-exhaustion.js.map +1 -0
- package/dist/shields/formats/android-dex-xref.d.ts +19 -0
- package/dist/shields/formats/android-dex-xref.d.ts.map +1 -0
- package/dist/shields/formats/android-dex-xref.js +427 -0
- package/dist/shields/formats/android-dex-xref.js.map +1 -0
- package/dist/shields/formats/android-manifest.d.ts +44 -0
- package/dist/shields/formats/android-manifest.d.ts.map +1 -0
- package/dist/shields/formats/android-manifest.js +240 -0
- package/dist/shields/formats/android-manifest.js.map +1 -0
- package/dist/shields/formats/android-r8.d.ts +44 -0
- package/dist/shields/formats/android-r8.d.ts.map +1 -0
- package/dist/shields/formats/android-r8.js +246 -0
- package/dist/shields/formats/android-r8.js.map +1 -0
- package/dist/shields/formats/apple-plist.d.ts +46 -0
- package/dist/shields/formats/apple-plist.d.ts.map +1 -0
- package/dist/shields/formats/apple-plist.js +119 -0
- package/dist/shields/formats/apple-plist.js.map +1 -0
- package/dist/shields/formats/archive.d.ts +55 -0
- package/dist/shields/formats/archive.d.ts.map +1 -0
- package/dist/shields/formats/archive.js +369 -0
- package/dist/shields/formats/archive.js.map +1 -0
- package/dist/shields/formats/asar.d.ts +72 -0
- package/dist/shields/formats/asar.d.ts.map +1 -0
- package/dist/shields/formats/asar.js +343 -0
- package/dist/shields/formats/asar.js.map +1 -0
- package/dist/shields/formats/bun-standalone.d.ts +78 -0
- package/dist/shields/formats/bun-standalone.d.ts.map +1 -0
- package/dist/shields/formats/bun-standalone.js +272 -0
- package/dist/shields/formats/bun-standalone.js.map +1 -0
- package/dist/shields/formats/dotnet-managed.d.ts +30 -0
- package/dist/shields/formats/dotnet-managed.d.ts.map +1 -0
- package/dist/shields/formats/dotnet-managed.js +66 -0
- package/dist/shields/formats/dotnet-managed.js.map +1 -0
- package/dist/shields/formats/electron-fuses.d.ts +93 -0
- package/dist/shields/formats/electron-fuses.d.ts.map +1 -0
- package/dist/shields/formats/electron-fuses.js +349 -0
- package/dist/shields/formats/electron-fuses.js.map +1 -0
- package/dist/shields/formats/erlang-beam.d.ts +34 -0
- package/dist/shields/formats/erlang-beam.d.ts.map +1 -0
- package/dist/shields/formats/erlang-beam.js +319 -0
- package/dist/shields/formats/erlang-beam.js.map +1 -0
- package/dist/shields/formats/evm-bytecode.d.ts +28 -0
- package/dist/shields/formats/evm-bytecode.d.ts.map +1 -0
- package/dist/shields/formats/evm-bytecode.js +124 -0
- package/dist/shields/formats/evm-bytecode.js.map +1 -0
- package/dist/shields/formats/go-flutter-exhaustion.d.ts +55 -0
- package/dist/shields/formats/go-flutter-exhaustion.d.ts.map +1 -0
- package/dist/shields/formats/go-flutter-exhaustion.js +346 -0
- package/dist/shields/formats/go-flutter-exhaustion.js.map +1 -0
- package/dist/shields/formats/gpu-ptx.d.ts +40 -0
- package/dist/shields/formats/gpu-ptx.d.ts.map +1 -0
- package/dist/shields/formats/gpu-ptx.js +62 -0
- package/dist/shields/formats/gpu-ptx.js.map +1 -0
- package/dist/shields/formats/headers.d.ts +22 -0
- package/dist/shields/formats/headers.d.ts.map +1 -0
- package/dist/shields/formats/headers.js +193 -0
- package/dist/shields/formats/headers.js.map +1 -0
- package/dist/shields/formats/jvm-bytecode.d.ts +20 -0
- package/dist/shields/formats/jvm-bytecode.d.ts.map +1 -0
- package/dist/shields/formats/jvm-bytecode.js +134 -0
- package/dist/shields/formats/jvm-bytecode.js.map +1 -0
- package/dist/shields/formats/mobile-game.d.ts +42 -0
- package/dist/shields/formats/mobile-game.d.ts.map +1 -0
- package/dist/shields/formats/mobile-game.js +131 -0
- package/dist/shields/formats/mobile-game.js.map +1 -0
- package/dist/shields/formats/model.d.ts +66 -0
- package/dist/shields/formats/model.d.ts.map +1 -0
- package/dist/shields/formats/model.js +461 -0
- package/dist/shields/formats/model.js.map +1 -0
- package/dist/shields/formats/native.d.ts +101 -0
- package/dist/shields/formats/native.d.ts.map +1 -0
- package/dist/shields/formats/native.js +585 -0
- package/dist/shields/formats/native.js.map +1 -0
- package/dist/shields/formats/pcap-capture.d.ts +27 -0
- package/dist/shields/formats/pcap-capture.d.ts.map +1 -0
- package/dist/shields/formats/pcap-capture.js +201 -0
- package/dist/shields/formats/pcap-capture.js.map +1 -0
- package/dist/shields/formats/python.d.ts +62 -0
- package/dist/shields/formats/python.d.ts.map +1 -0
- package/dist/shields/formats/python.js +637 -0
- package/dist/shields/formats/python.js.map +1 -0
- package/dist/shields/formats/sourcemap.d.ts +22 -0
- package/dist/shields/formats/sourcemap.d.ts.map +1 -0
- package/dist/shields/formats/sourcemap.js +66 -0
- package/dist/shields/formats/sourcemap.js.map +1 -0
- package/dist/shields/formats/sqlite.d.ts +115 -0
- package/dist/shields/formats/sqlite.d.ts.map +1 -0
- package/dist/shields/formats/sqlite.js +528 -0
- package/dist/shields/formats/sqlite.js.map +1 -0
- package/dist/shields/formats/wasm.d.ts +38 -0
- package/dist/shields/formats/wasm.d.ts.map +1 -0
- package/dist/shields/formats/wasm.js +314 -0
- package/dist/shields/formats/wasm.js.map +1 -0
- package/dist/shields/javascript/ast-shield.d.ts +37 -0
- package/dist/shields/javascript/ast-shield.d.ts.map +1 -0
- package/dist/shields/javascript/ast-shield.js +645 -0
- package/dist/shields/javascript/ast-shield.js.map +1 -0
- package/dist/shields/runtime/memory-diff-shield.d.ts +56 -0
- package/dist/shields/runtime/memory-diff-shield.d.ts.map +1 -0
- package/dist/shields/runtime/memory-diff-shield.js +170 -0
- package/dist/shields/runtime/memory-diff-shield.js.map +1 -0
- package/dist/shields/runtime/runtime-shield.d.ts +24 -0
- package/dist/shields/runtime/runtime-shield.d.ts.map +1 -0
- package/dist/shields/runtime/runtime-shield.js +84 -0
- package/dist/shields/runtime/runtime-shield.js.map +1 -0
- package/dist/shields/tarpit/opaque-predicates.d.ts +10 -0
- package/dist/shields/tarpit/opaque-predicates.d.ts.map +1 -0
- package/dist/shields/tarpit/opaque-predicates.js +40 -0
- package/dist/shields/tarpit/opaque-predicates.js.map +1 -0
- package/dist/shields/tarpit/tarpit-generator.d.ts +31 -0
- package/dist/shields/tarpit/tarpit-generator.d.ts.map +1 -0
- package/dist/shields/tarpit/tarpit-generator.js +194 -0
- package/dist/shields/tarpit/tarpit-generator.js.map +1 -0
- package/dist/ui/reporter.d.ts +13 -0
- package/dist/ui/reporter.d.ts.map +1 -0
- package/dist/ui/reporter.js +197 -0
- package/dist/ui/reporter.js.map +1 -0
- package/package.json +89 -4
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { BLA_IDENTITY } from "../identity.js";
|
|
2
|
+
/**
|
|
3
|
+
* Formats an `AuditReport` (and optional `ReleaseExposureReport`) as a SARIF 2.1.0 JSON document
|
|
4
|
+
* compatible with GitHub Code Scanning (`github/codeql-action/upload-sarif`).
|
|
5
|
+
*/
|
|
6
|
+
export function buildSarifReport(audit, releaseExposure) {
|
|
7
|
+
const rulesMap = new Map();
|
|
8
|
+
const results = [];
|
|
9
|
+
for (const item of audit.exposedItems) {
|
|
10
|
+
const ruleId = `BLA-AUDIT-${item.kind.toUpperCase()}`;
|
|
11
|
+
const level = item.riskLevel === "critical"
|
|
12
|
+
? "error"
|
|
13
|
+
: item.riskLevel === "high"
|
|
14
|
+
? "warning"
|
|
15
|
+
: "note";
|
|
16
|
+
if (!rulesMap.has(ruleId)) {
|
|
17
|
+
rulesMap.set(ruleId, {
|
|
18
|
+
id: ruleId,
|
|
19
|
+
name: `ExposedArtifact_${item.kind}`,
|
|
20
|
+
shortDescription: {
|
|
21
|
+
text: `Artifact surface (${item.kind}) exposed to automated reverse-engineering tool (${item.reaToolUsed})`,
|
|
22
|
+
},
|
|
23
|
+
defaultConfiguration: { level },
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
const [uriPart, linePart] = item.location.split(":");
|
|
27
|
+
const startLine = linePart ? Number.parseInt(linePart, 10) : undefined;
|
|
28
|
+
results.push({
|
|
29
|
+
ruleId,
|
|
30
|
+
level,
|
|
31
|
+
message: {
|
|
32
|
+
text: `${item.name}: ${item.reason} (Est. reconstruction: ${item.estimatedTokensToReconstruct} tokens / $${item.estimatedCostUsd.toFixed(2)})`,
|
|
33
|
+
},
|
|
34
|
+
locations: [
|
|
35
|
+
{
|
|
36
|
+
physicalLocation: {
|
|
37
|
+
artifactLocation: { uri: uriPart || audit.targetPath },
|
|
38
|
+
...(startLine && Number.isFinite(startLine) ? { region: { startLine } } : {}),
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
],
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
if (releaseExposure) {
|
|
45
|
+
for (const f of releaseExposure.findings) {
|
|
46
|
+
const ruleId = `BLA-RELEASE-${f.kind.toUpperCase()}`;
|
|
47
|
+
const level = f.kind === "embedded-source-text" ? "error" : "warning";
|
|
48
|
+
if (!rulesMap.has(ruleId)) {
|
|
49
|
+
rulesMap.set(ruleId, {
|
|
50
|
+
id: ruleId,
|
|
51
|
+
name: `ReleaseExposure_${f.kind}`,
|
|
52
|
+
shortDescription: { text: `Release source-map exposure (${f.kind}, ${f.representation})` },
|
|
53
|
+
defaultConfiguration: { level },
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
results.push({
|
|
57
|
+
ruleId,
|
|
58
|
+
level,
|
|
59
|
+
message: {
|
|
60
|
+
text: `${f.kind} (${f.representation}) in ${f.file} — Run "npx bla-agents defend" to replace with decoy source maps.`,
|
|
61
|
+
},
|
|
62
|
+
locations: [
|
|
63
|
+
{
|
|
64
|
+
physicalLocation: {
|
|
65
|
+
artifactLocation: { uri: f.file },
|
|
66
|
+
},
|
|
67
|
+
},
|
|
68
|
+
],
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
$schema: "https://json.schemastore.org/sarif-2.1.0.json",
|
|
74
|
+
version: "2.1.0",
|
|
75
|
+
runs: [
|
|
76
|
+
{
|
|
77
|
+
tool: {
|
|
78
|
+
driver: {
|
|
79
|
+
name: BLA_IDENTITY.packageName,
|
|
80
|
+
fullName: BLA_IDENTITY.fullName,
|
|
81
|
+
version: BLA_IDENTITY.version,
|
|
82
|
+
informationUri: "https://bla.tools",
|
|
83
|
+
rules: [...rulesMap.values()],
|
|
84
|
+
},
|
|
85
|
+
},
|
|
86
|
+
results,
|
|
87
|
+
},
|
|
88
|
+
],
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=sarif.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sarif.js","sourceRoot":"","sources":["../../src/core/sarif.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { DatabaseSync } from "node:sqlite";
|
|
2
|
+
/**
|
|
3
|
+
* Probe whether the current Node runtime exposes a usable `node:sqlite`
|
|
4
|
+
* `DatabaseSync` with custom scalar `function()` support (Node ^22.13 || >=24).
|
|
5
|
+
* Result is memoized for the process lifetime.
|
|
6
|
+
*/
|
|
7
|
+
export declare function isNodeSqliteAvailable(): boolean;
|
|
8
|
+
/**
|
|
9
|
+
* Load `DatabaseSync` when available; return `null` on unsupported runtimes
|
|
10
|
+
* (Node < 22.13, `--no-experimental-sqlite`, or missing `function` API).
|
|
11
|
+
* Prefer this for optional/degraded paths; use `getDatabaseSyncClass()` when
|
|
12
|
+
* SQLite is required and a clear hard-error is appropriate.
|
|
13
|
+
*/
|
|
14
|
+
export declare function tryGetDatabaseSyncClass(): typeof DatabaseSync | null;
|
|
15
|
+
/** Load lazily so non-SQLite commands can still explain an unsupported setup. */
|
|
16
|
+
export declare function getDatabaseSyncClass(): typeof DatabaseSync;
|
|
17
|
+
//# sourceMappingURL=sqlite-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite-runtime.d.ts","sourceRoot":"","sources":["../../src/core/sqlite-runtime.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAOhD;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAI/C;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,YAAY,GAAG,IAAI,CAiBpE;AAED,iFAAiF;AACjF,wBAAgB,oBAAoB,IAAI,OAAO,YAAY,CAQ1D"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { createRequire } from "node:module";
|
|
2
|
+
const require = createRequire(import.meta.url);
|
|
3
|
+
let cachedAvailable;
|
|
4
|
+
let cachedClass;
|
|
5
|
+
/**
|
|
6
|
+
* Probe whether the current Node runtime exposes a usable `node:sqlite`
|
|
7
|
+
* `DatabaseSync` with custom scalar `function()` support (Node ^22.13 || >=24).
|
|
8
|
+
* Result is memoized for the process lifetime.
|
|
9
|
+
*/
|
|
10
|
+
export function isNodeSqliteAvailable() {
|
|
11
|
+
if (cachedAvailable !== undefined)
|
|
12
|
+
return cachedAvailable;
|
|
13
|
+
cachedAvailable = tryGetDatabaseSyncClass() !== null;
|
|
14
|
+
return cachedAvailable;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Load `DatabaseSync` when available; return `null` on unsupported runtimes
|
|
18
|
+
* (Node < 22.13, `--no-experimental-sqlite`, or missing `function` API).
|
|
19
|
+
* Prefer this for optional/degraded paths; use `getDatabaseSyncClass()` when
|
|
20
|
+
* SQLite is required and a clear hard-error is appropriate.
|
|
21
|
+
*/
|
|
22
|
+
export function tryGetDatabaseSyncClass() {
|
|
23
|
+
if (cachedClass !== undefined)
|
|
24
|
+
return cachedClass;
|
|
25
|
+
try {
|
|
26
|
+
const mod = require("node:sqlite");
|
|
27
|
+
if (typeof mod.DatabaseSync !== "function" ||
|
|
28
|
+
typeof mod.DatabaseSync.prototype?.function !== "function") {
|
|
29
|
+
cachedClass = null;
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
cachedClass = mod.DatabaseSync;
|
|
33
|
+
return cachedClass;
|
|
34
|
+
}
|
|
35
|
+
catch {
|
|
36
|
+
cachedClass = null;
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
/** Load lazily so non-SQLite commands can still explain an unsupported setup. */
|
|
41
|
+
export function getDatabaseSyncClass() {
|
|
42
|
+
const cls = tryGetDatabaseSyncClass();
|
|
43
|
+
if (cls)
|
|
44
|
+
return cls;
|
|
45
|
+
throw new Error(`BLA SQLite support requires Node.js 22.x >=22.13.0 or Node.js >=24.0.0 ` +
|
|
46
|
+
`with node:sqlite enabled (current runtime: ${process.version}). ` +
|
|
47
|
+
"Upgrade Node.js and remove --no-experimental-sqlite if set.");
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=sqlite-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite-runtime.js","sourceRoot":"","sources":["../../src/core/sqlite-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/C,IAAI,eAAoC,CAAC;AACzC,IAAI,WAAmD,CAAC;AAExD;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,IAAI,eAAe,KAAK,SAAS;QAAE,OAAO,eAAe,CAAC;IAC1D,eAAe,GAAG,uBAAuB,EAAE,KAAK,IAAI,CAAC;IACrD,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB;IACrC,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,WAAW,CAAC;IAClD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAA2C,CAAC;QAC7E,IACE,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU;YACtC,OAAO,GAAG,CAAC,YAAY,CAAC,SAAS,EAAE,QAAQ,KAAK,UAAU,EAC1D,CAAC;YACD,WAAW,GAAG,IAAI,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,WAAW,GAAG,GAAG,CAAC,YAAY,CAAC;QAC/B,OAAO,WAAW,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,WAAW,GAAG,IAAI,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,oBAAoB;IAClC,MAAM,GAAG,GAAG,uBAAuB,EAAE,CAAC;IACtC,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC;IACpB,MAAM,IAAI,KAAK,CACb,yEAAyE;QACvE,8CAA8C,OAAO,CAAC,OAAO,KAAK;QAClE,6DAA6D,CAChE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AgentCostEstimate, ReaSemanticSimulationResult } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Models REA's exact investigation workflow:
|
|
4
|
+
* 1. Initial `analyze_javascript_application` / `open_binary` / `inspect_*` summary call
|
|
5
|
+
* 2. Paging `inspect_analysis_view` across modules/functions (`limit: 16`)
|
|
6
|
+
* 3. Calling `trace_application_feature` / `analyze_function` for each obligation node
|
|
7
|
+
* 4. Retrying unresolved dynamic/ambiguous IPC channels & semantic resource-limit bailouts
|
|
8
|
+
* 5. Accumulating context window history across every MCP tool call turn (`O(N^2)` cumulative input tokens)
|
|
9
|
+
*/
|
|
10
|
+
export declare function estimateAgentReverseEngineeringCosts(sim: ReaSemanticSimulationResult, byteSize: number): readonly AgentCostEstimate[];
|
|
11
|
+
//# sourceMappingURL=token-estimator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-estimator.d.ts","sourceRoot":"","sources":["../../src/core/token-estimator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAC;AAkCjF;;;;;;;GAOG;AACH,wBAAgB,oCAAoC,CAClD,GAAG,EAAE,2BAA2B,EAChC,QAAQ,EAAE,MAAM,GACf,SAAS,iBAAiB,EAAE,CA2E9B"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
const AGENT_MODELS = [
|
|
2
|
+
{
|
|
3
|
+
modelName: "Claude Opus 4 / Claude Code (Deep REA Loop)",
|
|
4
|
+
inputUsdPerMillion: 15.0,
|
|
5
|
+
outputUsdPerMillion: 75.0,
|
|
6
|
+
contextWindowTokens: 200_000,
|
|
7
|
+
secondsPerMcpRoundtrip: 7.5,
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
modelName: "Claude Sonnet 4 / Cursor Agent",
|
|
11
|
+
inputUsdPerMillion: 3.0,
|
|
12
|
+
outputUsdPerMillion: 15.0,
|
|
13
|
+
contextWindowTokens: 200_000,
|
|
14
|
+
secondsPerMcpRoundtrip: 4.8,
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
modelName: "OpenAI o3 / Codex CLI",
|
|
18
|
+
inputUsdPerMillion: 10.0,
|
|
19
|
+
outputUsdPerMillion: 40.0,
|
|
20
|
+
contextWindowTokens: 200_000,
|
|
21
|
+
secondsPerMcpRoundtrip: 6.2,
|
|
22
|
+
},
|
|
23
|
+
];
|
|
24
|
+
/**
|
|
25
|
+
* Models REA's exact investigation workflow:
|
|
26
|
+
* 1. Initial `analyze_javascript_application` / `open_binary` / `inspect_*` summary call
|
|
27
|
+
* 2. Paging `inspect_analysis_view` across modules/functions (`limit: 16`)
|
|
28
|
+
* 3. Calling `trace_application_feature` / `analyze_function` for each obligation node
|
|
29
|
+
* 4. Retrying unresolved dynamic/ambiguous IPC channels & semantic resource-limit bailouts
|
|
30
|
+
* 5. Accumulating context window history across every MCP tool call turn (`O(N^2)` cumulative input tokens)
|
|
31
|
+
*/
|
|
32
|
+
export function estimateAgentReverseEngineeringCosts(sim, byteSize) {
|
|
33
|
+
const isShielded = sim.examinationStatus === "limited" ||
|
|
34
|
+
sim.decoyFunctionsDetectedAsReal >= 5 ||
|
|
35
|
+
sim.triggeredResourceLimits.length > 0;
|
|
36
|
+
const baseSourceTokens = Math.max(350, Math.min(25_000, Math.ceil(byteSize / 3.8)));
|
|
37
|
+
const obligationNodes = Math.max(1, sim.obligationLedgerNodes);
|
|
38
|
+
if (!isShielded) {
|
|
39
|
+
// Unprotected target: fast, linear 4-8 MCP calls, ~$0.11-$0.19 on Opus / ~$0.03 on Sonnet
|
|
40
|
+
const totalMcpCalls = Math.max(3, Math.min(10, Math.ceil(obligationNodes * 1.2) + 2));
|
|
41
|
+
const cumulativeInputTokens = baseSourceTokens * 2 + totalMcpCalls * 820;
|
|
42
|
+
const outputTokens = 650 + totalMcpCalls * 210;
|
|
43
|
+
return AGENT_MODELS.map((model) => {
|
|
44
|
+
const inputUsd = (cumulativeInputTokens / 1_000_000) * model.inputUsdPerMillion;
|
|
45
|
+
const outputUsd = (outputTokens / 1_000_000) * model.outputUsdPerMillion;
|
|
46
|
+
const cost = Number(Math.max(0.02, inputUsd + outputUsd).toFixed(2));
|
|
47
|
+
return {
|
|
48
|
+
modelName: model.modelName,
|
|
49
|
+
estimatedInputTokens: cumulativeInputTokens,
|
|
50
|
+
estimatedOutputTokens: outputTokens,
|
|
51
|
+
estimatedMcpToolCalls: totalMcpCalls,
|
|
52
|
+
estimatedWallClockSeconds: Math.round(totalMcpCalls * model.secondsPerMcpRoundtrip),
|
|
53
|
+
estimatedCostUsd: cost,
|
|
54
|
+
contextWindowOverflowProbability: 0.02,
|
|
55
|
+
outcomeVerdict: "TRIVIAL_CLONE",
|
|
56
|
+
};
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
// Protected target: Tarpit + Semantic Budget Breakers + Ambiguous IPC + Chaff
|
|
60
|
+
const ambiguityRetries = Math.min(40, sim.ipcChannelsAmbiguousOrDynamic * 2) +
|
|
61
|
+
sim.triggeredResourceLimits.length * 5 +
|
|
62
|
+
Math.min(20, sim.decoyRoutesHarvested);
|
|
63
|
+
const totalMcpCalls = Math.min(140, Math.max(32, Math.ceil(obligationNodes * 0.65) + ambiguityRetries));
|
|
64
|
+
// Each MCP turn adds ~3,400 tokens of decoy Evidence dossier & chaff into the sliding context window:
|
|
65
|
+
const avgContextPerTurn = Math.min(165_000, 18_000 + sim.decoyFunctionsDetectedAsReal * 1_650 + sim.architecturalChaffPayloads * 1_200);
|
|
66
|
+
const rawCumulativeInput = baseSourceTokens + totalMcpCalls * avgContextPerTurn;
|
|
67
|
+
const rawOutputTokens = 4_500 + totalMcpCalls * 780 + sim.decoyFunctionsDetectedAsReal * 320;
|
|
68
|
+
return AGENT_MODELS.map((model) => {
|
|
69
|
+
const inputUsd = (rawCumulativeInput / 1_000_000) * model.inputUsdPerMillion;
|
|
70
|
+
const outputUsd = (rawOutputTokens / 1_000_000) * model.outputUsdPerMillion;
|
|
71
|
+
const totalCostUsd = Number((inputUsd + outputUsd).toFixed(2));
|
|
72
|
+
const wallClockSeconds = Math.round(totalMcpCalls * model.secondsPerMcpRoundtrip);
|
|
73
|
+
return {
|
|
74
|
+
modelName: model.modelName,
|
|
75
|
+
estimatedInputTokens: rawCumulativeInput,
|
|
76
|
+
estimatedOutputTokens: rawOutputTokens,
|
|
77
|
+
estimatedMcpToolCalls: totalMcpCalls,
|
|
78
|
+
estimatedWallClockSeconds: wallClockSeconds,
|
|
79
|
+
estimatedCostUsd: Math.max(1.5, totalCostUsd),
|
|
80
|
+
contextWindowOverflowProbability: sim.decoyFunctionsDetectedAsReal >= 10 ? 0.98 : 0.84,
|
|
81
|
+
outcomeVerdict: sim.examinationStatus === "limited" && sim.decoyFunctionsDetectedAsReal >= 8
|
|
82
|
+
? "AGENT_HALLUCINATION_AND_BANKRUPTCY"
|
|
83
|
+
: "HIGH_FRICTION",
|
|
84
|
+
};
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=token-estimator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-estimator.js","sourceRoot":"","sources":["../../src/core/token-estimator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
export type ArtifactFormat = "javascript" | "typescript" | "electron-asar" | "sourcemap" | "html-bundle" | "wasm" | "python-source" | "python-pyc" | "native-elf" | "native-macho" | "native-pe" | "dotnet-managed" | "apple-plist" | "jvm-class" | "sqlite" | "model-safetensors" | "model-gguf" | "android-dex" | "il2cpp-metadata" | "archive-zip" | "android-apk" | "erlang-beam" | "evm-bytecode" | "pcap-capture" | "gpu-ptx" | "directory" | "unknown";
|
|
2
|
+
export type ProtectionIntensity = "stealth" | "balanced" | "maximum" | "bankrupt";
|
|
3
|
+
export type ReaAttackVectorId = "js-static-semantics" | "electron-ipc-bridge" | "electron-fuses-inspection" | "runtime-cdp-frida-reconciliation" | "js-route-rpc-inventory" | "sourcemap-recovery" | "call-graph-tracing" | "obligation-ledger-cloning" | "wasm-wat-interface" | "python-pyc-marshal" | "native-go-buildinfo" | "native-rust-auditable" | "native-decompiler-pseudocode" | "flutter-dart-aot-snapshot" | "dotnet-managed-budget" | "apple-plist-budget" | "jvm-bytecode-decompilation" | "sqlite-database-inspection" | "model-artifact-inspection" | "android-dex-il2cpp-inspection" | "archive-inventory" | "asar-header-admission" | "erlang-beam-inspection" | "evm-bytecode-inspection" | "pcap-capture-inspection" | "gpu-ptx-inspection" | "bun-standalone-module-graph";
|
|
4
|
+
export interface ExposedSymbolOrModule {
|
|
5
|
+
readonly id: string;
|
|
6
|
+
readonly name: string;
|
|
7
|
+
readonly kind: "function" | "class" | "export" | "ipc-channel" | "route" | "rpc-endpoint" | "wasm-export" | "pyc-code-object" | "native-symbol" | "metadata-section" | "sourcemap-source" | "sqlite-table" | "model-tensor" | "electron-fuse" | "dex-class";
|
|
8
|
+
readonly location: string;
|
|
9
|
+
readonly riskLevel: "critical" | "high" | "medium" | "low";
|
|
10
|
+
readonly reaToolUsed: string;
|
|
11
|
+
readonly estimatedTokensToReconstruct: number;
|
|
12
|
+
readonly estimatedCostUsd: number;
|
|
13
|
+
readonly reason: string;
|
|
14
|
+
}
|
|
15
|
+
export interface ReaSemanticSimulationResult {
|
|
16
|
+
readonly parseStatus: "complete" | "recovered" | "failed";
|
|
17
|
+
readonly examinationStatus: "complete" | "limited";
|
|
18
|
+
readonly triggeredResourceLimits: readonly string[];
|
|
19
|
+
readonly semanticUncertainties: readonly string[];
|
|
20
|
+
readonly visitedAstNodes: number;
|
|
21
|
+
readonly totalFunctions: number;
|
|
22
|
+
readonly decoyFunctionsDetectedAsReal: number;
|
|
23
|
+
readonly staticStringsResolved: number;
|
|
24
|
+
readonly staticStringsOpaque: number;
|
|
25
|
+
readonly ipcChannelsTotal: number;
|
|
26
|
+
readonly ipcChannelsPairedUniquely: number;
|
|
27
|
+
readonly ipcChannelsAmbiguousOrDynamic: number;
|
|
28
|
+
readonly routesDiscovered: number;
|
|
29
|
+
readonly decoyRoutesHarvested: number;
|
|
30
|
+
readonly obligationLedgerNodes: number;
|
|
31
|
+
readonly architecturalChaffPayloads: number;
|
|
32
|
+
}
|
|
33
|
+
export interface AgentCostEstimate {
|
|
34
|
+
readonly modelName: string;
|
|
35
|
+
readonly estimatedInputTokens: number;
|
|
36
|
+
readonly estimatedOutputTokens: number;
|
|
37
|
+
readonly estimatedMcpToolCalls: number;
|
|
38
|
+
readonly estimatedWallClockSeconds: number;
|
|
39
|
+
readonly estimatedCostUsd: number;
|
|
40
|
+
readonly contextWindowOverflowProbability: number;
|
|
41
|
+
readonly outcomeVerdict: "TRIVIAL_CLONE" | "MODERATE_EFFORT" | "HIGH_FRICTION" | "AGENT_HALLUCINATION_AND_BANKRUPTCY";
|
|
42
|
+
}
|
|
43
|
+
export interface AuditReport {
|
|
44
|
+
readonly targetPath: string;
|
|
45
|
+
readonly detectedFormat: ArtifactFormat;
|
|
46
|
+
readonly sha256: string;
|
|
47
|
+
readonly byteSize: number;
|
|
48
|
+
readonly timestamp: string;
|
|
49
|
+
readonly exposureScore: number;
|
|
50
|
+
readonly protectionStatus: "UNPROTECTED" | "PARTIALLY_SHIELDED" | "BLA_PROTECTED";
|
|
51
|
+
readonly reaSimulation: ReaSemanticSimulationResult;
|
|
52
|
+
readonly exposedItems: readonly ExposedSymbolOrModule[];
|
|
53
|
+
readonly vulnerableReaVectors: readonly ReaAttackVectorId[];
|
|
54
|
+
readonly agentEstimates: readonly AgentCostEstimate[];
|
|
55
|
+
readonly headlineWarning: string;
|
|
56
|
+
readonly recommendedCommand: string;
|
|
57
|
+
}
|
|
58
|
+
export interface ProtectionOptions {
|
|
59
|
+
readonly inputPath: string;
|
|
60
|
+
readonly outputPath?: string;
|
|
61
|
+
readonly inPlace?: boolean;
|
|
62
|
+
readonly intensity?: ProtectionIntensity;
|
|
63
|
+
readonly seed?: string | number;
|
|
64
|
+
readonly tarpitDecoyCount?: number;
|
|
65
|
+
readonly tarpitDepth?: number;
|
|
66
|
+
readonly chaffPayloads?: boolean;
|
|
67
|
+
readonly breakSemanticBudgets?: boolean;
|
|
68
|
+
readonly protectElectronIpc?: boolean;
|
|
69
|
+
readonly injectRouteMirage?: boolean;
|
|
70
|
+
readonly honeySourceMaps?: boolean;
|
|
71
|
+
readonly runtimeDeception?: boolean;
|
|
72
|
+
/**
|
|
73
|
+
* When true, embed opt-in risky LLM directive layers (fake COPPA/medical notices,
|
|
74
|
+
* dual-use imitation vocabulary, in-band AI chat markers). Default false.
|
|
75
|
+
*/
|
|
76
|
+
readonly llmDirectives?: boolean;
|
|
77
|
+
}
|
|
78
|
+
export interface ProtectionMetrics {
|
|
79
|
+
readonly originalBytes: number;
|
|
80
|
+
readonly protectedBytes: number;
|
|
81
|
+
readonly decoyFunctionsInjected: number;
|
|
82
|
+
readonly fakeCrossReferencesCreated: number;
|
|
83
|
+
readonly primitiveCandidateBranchesCreated: number;
|
|
84
|
+
readonly aliasSelectionStatesCreated: number;
|
|
85
|
+
readonly ipcAmbiguitySitesInjected: number;
|
|
86
|
+
readonly decoyRoutesInjected: number;
|
|
87
|
+
readonly chaffPayloadsEmbedded: number;
|
|
88
|
+
readonly honeySourceMapsGenerated: number;
|
|
89
|
+
readonly binarySectionsPatched: number;
|
|
90
|
+
}
|
|
91
|
+
export interface ProtectionResult {
|
|
92
|
+
readonly inputPath: string;
|
|
93
|
+
readonly outputPath: string;
|
|
94
|
+
readonly detectedFormat: ArtifactFormat;
|
|
95
|
+
readonly intensity: ProtectionIntensity;
|
|
96
|
+
readonly seed: string;
|
|
97
|
+
readonly originalSha256: string;
|
|
98
|
+
readonly protectedSha256: string;
|
|
99
|
+
readonly metrics: ProtectionMetrics;
|
|
100
|
+
readonly counteredReaVectors: readonly ReaAttackVectorId[];
|
|
101
|
+
readonly beforeAudit: AuditReport;
|
|
102
|
+
readonly afterAudit: AuditReport;
|
|
103
|
+
readonly elapsedMs: number;
|
|
104
|
+
}
|
|
105
|
+
export interface VerificationCheck {
|
|
106
|
+
readonly id: string;
|
|
107
|
+
readonly name: string;
|
|
108
|
+
readonly targetReaComponent: string;
|
|
109
|
+
readonly passed: boolean;
|
|
110
|
+
readonly details: string;
|
|
111
|
+
}
|
|
112
|
+
export interface VerificationReport {
|
|
113
|
+
readonly targetPath: string;
|
|
114
|
+
readonly originalPath?: string;
|
|
115
|
+
readonly detectedFormat: ArtifactFormat;
|
|
116
|
+
readonly overallPassed: boolean;
|
|
117
|
+
readonly defenseScore: number;
|
|
118
|
+
readonly checks: readonly VerificationCheck[];
|
|
119
|
+
readonly tokenAmplificationFactor: number;
|
|
120
|
+
readonly costAmplificationFactor: number;
|
|
121
|
+
readonly obligationGraphExpansionFactor: number;
|
|
122
|
+
readonly functionalIntegrityVerified: boolean;
|
|
123
|
+
}
|
|
124
|
+
export interface ShowcaseCaseResult {
|
|
125
|
+
readonly id: string;
|
|
126
|
+
readonly title: string;
|
|
127
|
+
readonly reaShowcaseReference: string;
|
|
128
|
+
readonly format: ArtifactFormat;
|
|
129
|
+
readonly before: {
|
|
130
|
+
readonly exposureScore: number;
|
|
131
|
+
readonly examinationStatus: "complete" | "limited";
|
|
132
|
+
readonly obligationNodes: number;
|
|
133
|
+
readonly estimatedTokens: number;
|
|
134
|
+
readonly estimatedCostUsd: number;
|
|
135
|
+
readonly estimatedSeconds: number;
|
|
136
|
+
readonly agentOutcome: string;
|
|
137
|
+
};
|
|
138
|
+
readonly after: {
|
|
139
|
+
readonly exposureScore: number;
|
|
140
|
+
readonly examinationStatus: "complete" | "limited";
|
|
141
|
+
readonly triggeredLimits: readonly string[];
|
|
142
|
+
readonly obligationNodes: number;
|
|
143
|
+
readonly estimatedTokens: number;
|
|
144
|
+
readonly estimatedCostUsd: number;
|
|
145
|
+
readonly estimatedSeconds: number;
|
|
146
|
+
readonly agentOutcome: string;
|
|
147
|
+
};
|
|
148
|
+
readonly tokenMultiplier: number;
|
|
149
|
+
readonly costMultiplier: number;
|
|
150
|
+
readonly functionalCheckPassed: boolean;
|
|
151
|
+
}
|
|
152
|
+
export interface BenchmarkReport {
|
|
153
|
+
readonly timestamp: string;
|
|
154
|
+
readonly blaVersion: string;
|
|
155
|
+
readonly cases: readonly ShowcaseCaseResult[];
|
|
156
|
+
readonly aggregateTokenMultiplier: number;
|
|
157
|
+
readonly aggregateCostMultiplier: number;
|
|
158
|
+
}
|
|
159
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auditor.d.ts","sourceRoot":"","sources":["../../src/engine/auditor.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAEV,WAAW,EAIZ,MAAM,kBAAkB,CAAC;AA6Q1B;;GAEG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,CAuuB3D"}
|