agentic-engineering-harness 0.6.29 → 0.7.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.
- package/dist/agents/permissions.js +4 -3
- package/dist/agents/permissions.js.map +1 -1
- package/dist/cli.js +23 -1
- package/dist/cli.js.map +1 -1
- package/dist/context/compression/headroom.d.ts +6 -1
- package/dist/context/compression/headroom.js +60 -15
- package/dist/context/compression/headroom.js.map +1 -1
- package/dist/context/compression/types.d.ts +1 -0
- package/dist/context/gateway.d.ts +1 -0
- package/dist/context/gateway.js +58 -44
- package/dist/context/gateway.js.map +1 -1
- package/dist/context/repository/serena.d.ts +1 -1
- package/dist/context/repository/serena.js +2 -1
- package/dist/context/repository/serena.js.map +1 -1
- package/dist/context/transport.d.ts +33 -0
- package/dist/context/transport.js +63 -0
- package/dist/context/transport.js.map +1 -0
- package/dist/core/config.js +1 -1
- package/dist/core/config.js.map +1 -1
- package/dist/core/init.js +2 -1
- package/dist/core/init.js.map +1 -1
- package/dist/core/run.js +6 -2
- package/dist/core/run.js.map +1 -1
- package/dist/core/types.d.ts +25 -0
- package/dist/core/verify.js +2 -1
- package/dist/core/verify.js.map +1 -1
- package/dist/evals/fullStack.d.ts +10 -7
- package/dist/evals/fullStack.js +132 -36
- package/dist/evals/fullStack.js.map +1 -1
- package/dist/evidence/graph.js +24 -7
- package/dist/evidence/graph.js.map +1 -1
- package/dist/memory/candidates.d.ts +29 -0
- package/dist/memory/candidates.js +31 -0
- package/dist/memory/candidates.js.map +1 -0
- package/dist/paseo/launchSpec.js +4 -4
- package/dist/paseo/launchSpec.js.map +1 -1
- package/dist/provenance/generate.d.ts +15 -0
- package/dist/provenance/generate.js +150 -68
- package/dist/provenance/generate.js.map +1 -1
- package/dist/providers/engram.d.ts +1 -0
- package/dist/providers/engram.js +40 -8
- package/dist/providers/engram.js.map +1 -1
- package/dist/providers/graphify.d.ts +20 -1
- package/dist/providers/graphify.js +106 -26
- package/dist/providers/graphify.js.map +1 -1
- package/dist/providers/serenaMcp.d.ts +7 -0
- package/dist/providers/serenaMcp.js +77 -0
- package/dist/providers/serenaMcp.js.map +1 -0
- package/dist/providers/versions.d.ts +10 -0
- package/dist/providers/versions.js +3 -0
- package/dist/providers/versions.js.map +1 -0
- package/dist/telemetry/events.js +36 -37
- package/dist/telemetry/events.js.map +1 -1
- package/dist/telemetry/otlp.d.ts +2 -1
- package/dist/telemetry/otlp.js +20 -41
- package/dist/telemetry/otlp.js.map +1 -1
- package/dist/telemetry/tracing.d.ts +19 -0
- package/dist/telemetry/tracing.js +141 -0
- package/dist/telemetry/tracing.js.map +1 -0
- package/dist/toolchain/config.js +3 -2
- package/dist/toolchain/config.js.map +1 -1
- package/dist/validators/external.js +6 -5
- package/dist/validators/external.js.map +1 -1
- package/dist/validators/toolEvidence.d.ts +2 -22
- package/dist/validators/toolEvidence.js +36 -3
- package/dist/validators/toolEvidence.js.map +1 -1
- package/dist/workers/agentPrompt.js +5 -3
- package/dist/workers/agentPrompt.js.map +1 -1
- package/docs/COMPONENT_MATURITY.md +15 -11
- package/docs/component-maturity.json +34 -0
- package/package.json +7 -1
- package/schemas/project.schema.json +1 -1
- package/schemas/validation-report.schema.json +2 -1
- package/scripts/headroom-bridge.py +88 -0
- package/templates/provider-versions.json +10 -0
- package/templates/toolchain.yaml +12 -4
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
# Component maturity at current `main`
|
|
2
2
|
|
|
3
3
|
This matrix records the highest level supported by executable code and tests at
|
|
4
|
-
the current revision.
|
|
5
|
-
|
|
4
|
+
the current revision. The machine-readable source is
|
|
5
|
+
[`component-maturity.json`](component-maturity.json). A roadmap checkbox means
|
|
6
|
+
that a capability exists; it is not evidence that the capability is
|
|
7
|
+
production-grade.
|
|
8
|
+
|
|
9
|
+
A roadmap checkbox means that a capability exists; it is not evidence that the capability is production-grade.
|
|
6
10
|
|
|
7
11
|
Levels are cumulative: `DECLARED`, `ADAPTER`, `EXECUTABLE`,
|
|
8
12
|
`WORKFLOW_INTEGRATED`, `DOGFOODED`, `EVAL_VALIDATED`, `PRODUCTION_GRADE`.
|
|
@@ -12,8 +16,8 @@ Levels are cumulative: `DECLARED`, `ADAPTER`, `EXECUTABLE`,
|
|
|
12
16
|
| Paseo | WORKFLOW_INTEGRATED | `src/paseo`, Paseo runtime tests |
|
|
13
17
|
| Codex CLI | WORKFLOW_INTEGRATED | `src/workers/agentPrompt.ts`, runtime invocation tests |
|
|
14
18
|
| OpenCode | WORKFLOW_INTEGRATED | `src/agents/permissions.ts`, direct/Podman/Paseo tests |
|
|
15
|
-
| Engram | WORKFLOW_INTEGRATED | `src/
|
|
16
|
-
| Graphify | WORKFLOW_INTEGRATED | canonical
|
|
19
|
+
| Engram | WORKFLOW_INTEGRATED | `src/core/run.ts`, `src/memory/candidates.ts`, real CLI contract and full-stack fixture |
|
|
20
|
+
| Graphify | WORKFLOW_INTEGRATED | provider-owned CLI lifecycle, canonical model, freshness metadata and real CLI contract |
|
|
17
21
|
| OpenSpec | WORKFLOW_INTEGRATED | `src/spec`, OpenSpec bridge tests |
|
|
18
22
|
| AEH SDD | WORKFLOW_INTEGRATED | `src/core/sdd.ts`, SDD tests |
|
|
19
23
|
| TaskContracts | WORKFLOW_INTEGRATED | contract/seal and run tests |
|
|
@@ -21,20 +25,20 @@ Levels are cumulative: `DECLARED`, `ADAPTER`, `EXECUTABLE`,
|
|
|
21
25
|
| Reqnroll | DECLARED | consumer-project capability; no AEH runtime dependency |
|
|
22
26
|
| .NET/xUnit integration | EXECUTABLE | Gherkin/project validation path |
|
|
23
27
|
| Testcontainers capability | DECLARED | consumer test capability; detected through project validation |
|
|
24
|
-
| Playwright | WORKFLOW_INTEGRATED | normalized browser evidence adapter |
|
|
28
|
+
| Playwright | WORKFLOW_INTEGRATED | pinned Chromium JSON-reporter contract and normalized browser evidence adapter |
|
|
25
29
|
| Pact | ADAPTER | normalized contract evidence adapter; consumer runtime remains external |
|
|
26
30
|
| OPA | WORKFLOW_INTEGRATED | typed execution identity and Rego policy path |
|
|
27
|
-
| Opengrep | WORKFLOW_INTEGRATED | normalized security findings |
|
|
28
|
-
| Trivy | WORKFLOW_INTEGRATED | normalized vulnerability/secret/misconfiguration findings and SBOM |
|
|
31
|
+
| Opengrep | WORKFLOW_INTEGRATED | pinned CLI JSON contract and normalized security findings |
|
|
32
|
+
| Trivy | WORKFLOW_INTEGRATED | pinned CLI JSON contract, strict full-stack validation, normalized vulnerability/secret/misconfiguration findings and SBOM |
|
|
29
33
|
| Podman | WORKFLOW_INTEGRATED | hardened worker executor and sandbox tests |
|
|
30
|
-
| OpenTelemetry | WORKFLOW_INTEGRATED |
|
|
31
|
-
| Engineering Evals |
|
|
34
|
+
| OpenTelemetry | WORKFLOW_INTEGRATED | official SDK provider/context propagation plus local NDJSON |
|
|
35
|
+
| Engineering Evals | DOGFOODED | deterministic production-path fixture in `src/evals/fullStack.ts` |
|
|
32
36
|
| SBOM | EXECUTABLE | Trivy-backed provenance generation |
|
|
33
37
|
| Cosign | EXECUTABLE | optional signing plus verification path |
|
|
34
38
|
| in-toto/SLSA | EXECUTABLE | statement/predicate and manifest-chain generation |
|
|
35
39
|
| ContextBudgetGateway | WORKFLOW_INTEGRATED | typed fragments in the actual agent prompt path |
|
|
36
|
-
| Serena |
|
|
37
|
-
| Headroom |
|
|
40
|
+
| Serena | WORKFLOW_INTEGRATED | pinned MCP initialize/tools/list/call contract and transport projection; local installation is external |
|
|
41
|
+
| Headroom | EXECUTABLE | controller-side SDK bridge, real compression contract and full-stack fixture |
|
|
38
42
|
| Repository Context Map | WORKFLOW_INTEGRATED | Graphify/filesystem map consumed by prompt preparation |
|
|
39
43
|
| `aeh_context_retrieve` | WORKFLOW_INTEGRATED | authorization, path and SHA-256 checks |
|
|
40
44
|
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1,
|
|
3
|
+
"levels": ["DECLARED", "ADAPTER", "EXECUTABLE", "WORKFLOW_INTEGRATED", "DOGFOODED", "EVAL_VALIDATED", "PRODUCTION_GRADE"],
|
|
4
|
+
"components": {
|
|
5
|
+
"Paseo": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/paseo", "tests/paseoRuntime.test.ts"] },
|
|
6
|
+
"Codex CLI": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/workers/direct.ts", "tests/runtimeInvocation.test.ts"] },
|
|
7
|
+
"OpenCode": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/agents/permissions.ts", "tests/opencodePaseoCapability.test.ts"] },
|
|
8
|
+
"Engram": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/core/run.ts", "src/memory/candidates.ts", "tests/providerContracts.test.ts", "src/evals/fullStack.ts"] },
|
|
9
|
+
"Graphify": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/providers/graphify.ts", "src/providers/graphifyModel.ts", "tests/providerContracts.test.ts", "src/evals/fullStack.ts"] },
|
|
10
|
+
"OpenSpec": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/spec", "tests/openSpecBridge.test.ts"] },
|
|
11
|
+
"AEH SDD": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/core/sdd.ts", "tests/sdd.test.ts"] },
|
|
12
|
+
"TaskContracts": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/core/seal.ts", "tests/verifyRoots.test.ts"] },
|
|
13
|
+
"Gherkin": { "claimed": "EXECUTABLE", "evidence": ["src/validators/gherkin.ts"] },
|
|
14
|
+
"Reqnroll": { "claimed": "DECLARED", "evidence": ["docs/COMPONENT_MATURITY.md"] },
|
|
15
|
+
".NET/xUnit integration": { "claimed": "EXECUTABLE", "evidence": ["src/validators/commands.ts"] },
|
|
16
|
+
"Testcontainers capability": { "claimed": "DECLARED", "evidence": ["docs/COMPONENT_MATURITY.md"] },
|
|
17
|
+
"Playwright": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/validators/external.ts", "src/validators/toolEvidence.ts", "tests/providerContracts.test.ts", ".github/workflows/ci.yml"] },
|
|
18
|
+
"Pact": { "claimed": "ADAPTER", "evidence": ["src/validators/toolEvidence.ts"] },
|
|
19
|
+
"OPA": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/validators/opa.ts", "tests/architectureIntegrationContracts.test.ts"] },
|
|
20
|
+
"Opengrep": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/validators/external.ts", "src/validators/toolEvidence.ts", "tests/providerContracts.test.ts", ".github/workflows/ci.yml"] },
|
|
21
|
+
"Trivy": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/validators/external.ts", "src/validators/toolEvidence.ts", "tests/providerContracts.test.ts", "src/evals/fullStack.ts", ".github/workflows/ci.yml"] },
|
|
22
|
+
"Podman": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/workers/podman.ts"] },
|
|
23
|
+
"OpenTelemetry": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/telemetry/tracing.ts", "src/telemetry/events.ts"] },
|
|
24
|
+
"Engineering Evals": { "claimed": "DOGFOODED", "evidence": ["src/evals/fullStack.ts"] },
|
|
25
|
+
"SBOM": { "claimed": "EXECUTABLE", "evidence": ["src/provenance/generate.ts"] },
|
|
26
|
+
"Cosign": { "claimed": "EXECUTABLE", "evidence": ["src/provenance/generate.ts"] },
|
|
27
|
+
"in-toto/SLSA": { "claimed": "EXECUTABLE", "evidence": ["src/provenance/generate.ts"] },
|
|
28
|
+
"ContextBudgetGateway": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/context/gateway.ts", "src/workers/agentPrompt.ts"] },
|
|
29
|
+
"Serena": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/context/repository/serena.ts", "src/providers/serenaMcp.ts", "tests/providerContracts.test.ts", "src/context/transport.ts", ".github/workflows/ci.yml"] },
|
|
30
|
+
"Headroom": { "claimed": "EXECUTABLE", "evidence": ["src/context/compression/headroom.ts", "scripts/headroom-bridge.py", "tests/providerContracts.test.ts", "src/evals/fullStack.ts"] },
|
|
31
|
+
"Repository Context Map": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/context/repository/map.ts", "src/workers/agentPrompt.ts"] },
|
|
32
|
+
"aeh_context_retrieve": { "claimed": "WORKFLOW_INTEGRATED", "evidence": ["src/context/retrieval", "src/context/gateway.ts"] }
|
|
33
|
+
}
|
|
34
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentic-engineering-harness",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "OSS-first engineering harness for deterministic, spec-driven, issue-driven, audit-governed and orchestration-first multi-agent software delivery.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
"schemas",
|
|
16
16
|
"skills",
|
|
17
17
|
"docs",
|
|
18
|
+
"scripts/headroom-bridge.py",
|
|
18
19
|
"scripts/link-self-bin.mjs"
|
|
19
20
|
],
|
|
20
21
|
"scripts": {
|
|
@@ -35,12 +36,17 @@
|
|
|
35
36
|
},
|
|
36
37
|
"dependencies": {
|
|
37
38
|
"@opentelemetry/api": "^1.9.0",
|
|
39
|
+
"@opentelemetry/context-async-hooks": "^2.10.0",
|
|
40
|
+
"@opentelemetry/exporter-trace-otlp-http": "^0.206.0",
|
|
41
|
+
"@opentelemetry/resources": "^2.10.0",
|
|
42
|
+
"@opentelemetry/sdk-trace-node": "^2.10.0",
|
|
38
43
|
"commander": "^14.0.1",
|
|
39
44
|
"minimatch": "^10.0.3",
|
|
40
45
|
"yaml": "^2.8.1",
|
|
41
46
|
"zod": "^4.0.17"
|
|
42
47
|
},
|
|
43
48
|
"devDependencies": {
|
|
49
|
+
"@playwright/test": "1.62.1",
|
|
44
50
|
"@types/node": "^24.2.1",
|
|
45
51
|
"agentic-engineering-harness": "^0.6.27",
|
|
46
52
|
"tsx": "^4.20.3",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
} },
|
|
48
48
|
"delivery": { "type": "object", "properties": { "stateDir": { "type": "string" }, "github": { "type": "object", "properties": { "enabled": { "type": "boolean" }, "tokenEnv": { "type": "string", "minLength": 1 }, "repository": { "type": "string", "pattern": "^[^/]+/[^/]+$" }, "apiBaseUrl": { "type": "string", "format": "uri" }, "assignTokenOwner": { "type": "boolean" }, "labels": { "type": "array", "items": { "type": "string" } }, "branchPattern": { "type": "string", "minLength": 1 }, "finalizeOnAcceptance": { "type": "boolean" }, "pullRequestDraft": { "type": "boolean" } } }, "paseo": { "type": "object", "properties": { "enabled": { "type": "boolean" }, "createWorkspace": { "type": "boolean" }, "autoUseWorkspace": { "type": "boolean" }, "worktreeSlugPattern": { "type": "string", "minLength": 1 } } } } },
|
|
49
49
|
"memory": { "type": "object" },
|
|
50
|
-
"codeIntelligence": { "type": "object", "properties": { "provider": { "type": "string" }, "required": { "type": "boolean" }, "graphPath": { "type": "string" }, "snapshotDir": { "type": "string" }, "refreshCommand": { "type": "string" }, "scheduling": { "type": "object", "properties": { "useEdges": { "type": "boolean" }, "maxGraphHops": { "type": "integer", "minimum": 1 }, "maxSharedNodes": { "type": "integer", "minimum": 0 }, "centralityConflictThreshold": { "type": "number", "minimum": 0 } } } } },
|
|
50
|
+
"codeIntelligence": { "type": "object", "properties": { "provider": { "type": "string" }, "required": { "type": "boolean" }, "graphPath": { "type": "string" }, "snapshotDir": { "type": "string" }, "codeOnly": { "type": "boolean" }, "refreshCommand": { "type": "string" }, "scheduling": { "type": "object", "properties": { "useEdges": { "type": "boolean" }, "maxGraphHops": { "type": "integer", "minimum": 1 }, "maxSharedNodes": { "type": "integer", "minimum": 0 }, "centralityConflictThreshold": { "type": "number", "minimum": 0 } } } } },
|
|
51
51
|
"context": { "type": "object", "properties": {
|
|
52
52
|
"mode": { "enum": ["observe", "enforce"] },
|
|
53
53
|
"budgets": { "type": "object", "properties": {
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
"taskId": { "type": "string" },
|
|
10
10
|
"status": { "enum": ["PASS", "FAIL"] },
|
|
11
11
|
"checks": { "type": "array" },
|
|
12
|
-
"changedFiles": { "type": "array", "items": { "type": "string" } }
|
|
12
|
+
"changedFiles": { "type": "array", "items": { "type": "string" } },
|
|
13
|
+
"findings": { "type": "array", "items": { "type": "object", "required": ["fingerprint", "tool", "kind"], "properties": { "fingerprint": { "type": "string", "pattern": "^[a-f0-9]{64}$" }, "tool": { "type": "string" }, "kind": { "type": "string" }, "rule": { "type": "string" }, "severity": { "type": "string" }, "file": { "type": "string" }, "line": { "type": "integer", "minimum": 1 }, "message": { "type": "string" }, "artifact": { "type": "string" } }, "additionalProperties": true } }
|
|
13
14
|
},
|
|
14
15
|
"additionalProperties": true
|
|
15
16
|
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""Small, line-oriented JSON bridge for the pinned Headroom SDK.
|
|
3
|
+
|
|
4
|
+
The bridge deliberately uses Headroom's public ``headroom.compression`` API,
|
|
5
|
+
never its agent wrappers or memory store. stdout is reserved for one JSON
|
|
6
|
+
response; diagnostics belong on stderr so the Node adapter can reject framing
|
|
7
|
+
corruption deterministically.
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
from __future__ import annotations
|
|
11
|
+
|
|
12
|
+
import hashlib
|
|
13
|
+
import json
|
|
14
|
+
import sys
|
|
15
|
+
from typing import Any
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def fail(message: str, code: str = "HEADROOM_BRIDGE_ERROR") -> None:
|
|
19
|
+
print(json.dumps({"version": 1, "error": {"code": code, "message": message}}), flush=True)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def main() -> int:
|
|
23
|
+
try:
|
|
24
|
+
raw = sys.stdin.read()
|
|
25
|
+
request = json.loads(raw)
|
|
26
|
+
if not isinstance(request, dict) or request.get("version") != 1:
|
|
27
|
+
fail("request version must be 1", "INVALID_REQUEST")
|
|
28
|
+
return 2
|
|
29
|
+
operation = request.get("operation", "compress")
|
|
30
|
+
from headroom import __version__
|
|
31
|
+
|
|
32
|
+
if operation == "doctor":
|
|
33
|
+
print(json.dumps({"version": 1, "providerVersion": __version__}), flush=True)
|
|
34
|
+
return 0
|
|
35
|
+
if operation != "compress":
|
|
36
|
+
fail(f"unsupported operation: {operation}", "INVALID_REQUEST")
|
|
37
|
+
return 2
|
|
38
|
+
|
|
39
|
+
content = request.get("content")
|
|
40
|
+
source_sha256 = request.get("sourceSha256")
|
|
41
|
+
max_tokens = request.get("maxTokens")
|
|
42
|
+
if not isinstance(content, str) or not content:
|
|
43
|
+
fail("content must be a non-empty string", "INVALID_REQUEST")
|
|
44
|
+
return 2
|
|
45
|
+
if not isinstance(source_sha256, str) or hashlib.sha256(content.encode()).hexdigest() != source_sha256:
|
|
46
|
+
fail("sourceSha256 does not match content", "SOURCE_HASH_MISMATCH")
|
|
47
|
+
return 2
|
|
48
|
+
if not isinstance(max_tokens, int) or max_tokens < 1:
|
|
49
|
+
fail("maxTokens must be a positive integer", "INVALID_REQUEST")
|
|
50
|
+
return 2
|
|
51
|
+
|
|
52
|
+
# UniversalCompressor is the documented local SDK entry point. Keep
|
|
53
|
+
# Kompress enabled: AEH provisions headroom-ai[all] and this contract
|
|
54
|
+
# must exercise the intended compression stack, not the fallback-only
|
|
55
|
+
# path. CCR remains disabled because AEH persists and authorizes the
|
|
56
|
+
# original fragment itself.
|
|
57
|
+
from headroom.compression import UniversalCompressor, UniversalCompressorConfig
|
|
58
|
+
|
|
59
|
+
original_tokens = max(1, len(content) // 4)
|
|
60
|
+
target_ratio = min(1.0, max_tokens / original_tokens)
|
|
61
|
+
compressor = UniversalCompressor(
|
|
62
|
+
UniversalCompressorConfig(
|
|
63
|
+
use_magika=True,
|
|
64
|
+
use_kompress=True,
|
|
65
|
+
ccr_enabled=False,
|
|
66
|
+
compression_ratio_target=target_ratio,
|
|
67
|
+
)
|
|
68
|
+
)
|
|
69
|
+
result = compressor.compress(content)
|
|
70
|
+
response: dict[str, Any] = {
|
|
71
|
+
"version": 1,
|
|
72
|
+
"content": result.compressed,
|
|
73
|
+
"originalTokens": result.tokens_before,
|
|
74
|
+
"compressedTokens": result.tokens_after,
|
|
75
|
+
"reversible": False,
|
|
76
|
+
"providerVersion": __version__,
|
|
77
|
+
"sourceSha256": source_sha256,
|
|
78
|
+
}
|
|
79
|
+
print(json.dumps(response, separators=(",", ":")), flush=True)
|
|
80
|
+
return 0
|
|
81
|
+
except Exception as error: # pragma: no cover - exercised by contract tests
|
|
82
|
+
print(f"headroom bridge failure: {error}", file=sys.stderr, flush=True)
|
|
83
|
+
fail(str(error), "SDK_RUNTIME_FAILURE")
|
|
84
|
+
return 1
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
if __name__ == "__main__":
|
|
88
|
+
raise SystemExit(main())
|
package/templates/toolchain.yaml
CHANGED
|
@@ -106,7 +106,7 @@ tools:
|
|
|
106
106
|
kind: mise
|
|
107
107
|
command: graphify
|
|
108
108
|
source: "pipx:graphifyy"
|
|
109
|
-
version:
|
|
109
|
+
version: "0.9.43"
|
|
110
110
|
dependsOn: [uv]
|
|
111
111
|
activateWhen: [code-intelligence:graphify]
|
|
112
112
|
|
|
@@ -132,7 +132,8 @@ tools:
|
|
|
132
132
|
kind: mise
|
|
133
133
|
command: engram
|
|
134
134
|
source: "npm:@engram-ai-memory/cli"
|
|
135
|
-
version:
|
|
135
|
+
version: "0.4.1"
|
|
136
|
+
dependsOn: [pnpm]
|
|
136
137
|
activateWhen: [memory:engram]
|
|
137
138
|
|
|
138
139
|
opa:
|
|
@@ -148,14 +149,14 @@ tools:
|
|
|
148
149
|
kind: mise
|
|
149
150
|
command: opengrep
|
|
150
151
|
source: "aqua:opengrep/opengrep"
|
|
151
|
-
version:
|
|
152
|
+
version: "1.22.0"
|
|
152
153
|
activateWhen: [security-tool:opengrep, validator:opengrep]
|
|
153
154
|
|
|
154
155
|
trivy:
|
|
155
156
|
kind: mise
|
|
156
157
|
command: trivy
|
|
157
158
|
source: "aqua:aquasecurity/trivy"
|
|
158
|
-
version:
|
|
159
|
+
version: "0.70.0"
|
|
159
160
|
activateWhen: [security-tool:trivy, validator:trivy]
|
|
160
161
|
container:
|
|
161
162
|
image: ghcr.io/aquasecurity/trivy:latest
|
|
@@ -172,6 +173,13 @@ tools:
|
|
|
172
173
|
command: podman
|
|
173
174
|
activateWhen: [orchestration:podman, sandbox:podman]
|
|
174
175
|
|
|
176
|
+
pnpm:
|
|
177
|
+
kind: mise
|
|
178
|
+
command: pnpm
|
|
179
|
+
source: "npm:pnpm"
|
|
180
|
+
version: "10.15.0"
|
|
181
|
+
activateWhen: [memory:engram, project:pnpm]
|
|
182
|
+
|
|
175
183
|
projectDependencies:
|
|
176
184
|
autoDetect: true
|
|
177
185
|
commands: []
|