| #925 |
Production Postgres on pg-nano with TLS client certs (verify-full); data migration from pg.rodmena.app
EARS SPEC:
- Every DB client (engine pool, migretti, psql in entrypoint, resilient-circuit, db tool)...
|
in-progress |
high |
2026-10-15 23:07 |
- |
|
| #924 |
Remove Vault: platform secrets from /etc/highway/secrets, tenant secrets AES-GCM in Postgres
EARS SPEC:
- The engine shall resolve platform secrets from /etc/highway/secrets (0600) and tenant s...
|
in-progress |
high |
2026-10-15 23:07 |
- |
|
| #923 |
datashard hardening before upgrade: narrow _get_or_create_table, unify storage default, fatal on missing S3 creds
EARS SPEC:
- If loading an existing datashard table fails for any reason other than not-found, then ...
|
closed |
high |
2026-10-15 23:07 |
- |
|
| #921 |
Embeddings off Ollama: router embed(), memory/semantic/apps SDK repointed, agent_memory re-embedded
EARS SPEC:
- The LLM router shall expose an embed operation backed by a hosted provider producing 76...
|
open |
high |
2026-10-15 23:07 |
- |
|
| #920 |
uv.lock + dependency bumps: migretti 0.10, bulkman 2.0.4, resilient-circuit <0.9, scriptplan 0.10, auth 3.3
EARS SPEC:
- Each repo (highway, highway-core, jumper) shall have a uv.lock used by the Docker build...
|
closed |
high |
2026-10-15 23:07 |
- |
|
| #919 |
Native psycopg C implementation; drop psycopg2-binary and psycopg[binary]
EARS SPEC:
- The images shall install psycopg with the C implementation built against libpq and no b...
|
closed |
high |
2026-10-15 23:07 |
- |
|
| #916 |
P0c: Move cancel-time container cleanup to worker; drop docker.sock from api
EARS SPEC:
- When a workflow is cancelled, a worker task shall remove its containers.
- The api cont...
|
in-progress |
high |
2026-10-15 23:07 |
- |
|
| #913 |
EPIC: Highway realignment - durable-execution core on house platforms
EARS SPEC:
- The Highway engine shall keep its durable-execution core, tools, and the MCP/agent surf...
|
open |
high |
2026-10-15 23:07 |
- |
|
| #912 |
Tool registry swallows ImportError: a broken tool module silently drops tools (126 -> 124) with only a log warning
EARS SPEC:
- When a tool module fails to import, the tool registry shall fail loudly (or expose the ...
|
closed |
high |
2026-08-22 13:39 |
- |
|
| #911 |
Token endpoint leaks caught exception text into client 500 responses (str(e) in details, f-string in raise)
EARS SPEC:
- When a token endpoint fails, the API shall return a generic error code and message to t...
|
in-progress |
high |
2026-08-22 13:33 |
- |
|
| #910 |
App SDK ctx.checkpoint() promises exactly-once replay caching and delivers none in production
EARS SPEC:
- When an app action calls ctx.checkpoint(step_name, func) and the workflow later resumes...
|
open |
high |
2026-08-22 12:04 |
- |
|
| #909 |
App-originated tool calls silently bypass rate limiting and per-workflow circuit-breaker isolation (ProxyDurableContext is not a DurableContext)
EARS SPEC:
- While an app action is executing, when it invokes a rate-limited tool, the Highway engi...
|
open |
high |
2026-08-22 12:04 |
- |
|
| #908 |
Platform tenant deactivate/reactivate return 200 but the workflow dies: internal.tenant.suspend/reactivate are never registered
EARS SPEC:
- If a workflow task references a tool name that is not present in the tool registry, the...
|
in-progress |
high |
2026-08-22 12:02 |
- |
|
| #907 |
EPIC: Tier-classify Highway (tier0-3) and extract non-essential surface out of engine/core
EARS SPEC:
Scope: classify every component, tool, API route and DB table across jumper, highway-cor...
|
open |
high |
2026-08-22 12:01 |
- |
|
| #906 |
activity_worker is forked: enterprise (1577 lines) and highway-core (1160) are parallel implementations of safety-critical worker code
EARS SPEC:
- Safety-critical activity-worker logic shall have exactly ONE implementation in the stac...
|
in-progress |
high |
2026-08-22 11:58 |
- |
|
| #854 |
EPIC: 50 source files exceed the 550-line hard cap - split without module shadowing
EARS SPEC (program-level):
- Every source file in the Highway stack shall be at most 500 lines (soft...
|
closed |
high |
2026-08-22 11:45 |
- |
|
| #853 |
8 deterministic test failures: broken assertions + workflow result attributed to switch branch instead of final task
EARS SPEC:
- Every test in tests/ shall be capable of passing against correct behaviour; an assertio...
|
open |
high |
2026-08-22 02:44 |
- |
|
| #852 |
Circuit-breaker storage split-brain: engine writes to highway_db_v2, API reads resilient_circuit_db, migration covers only one
EARS SPEC:
- The Highway engine and the /api/v1/circuit-breakers endpoint shall read and write circu...
|
open |
high |
2026-08-22 01:54 |
- |
|
| #850 |
Upgrade bulkman 2.0.1->2.0.3 and resilient-circuit 0.4.7->0.7.0 (multi-process breaker race, thread-safety, CLI rename)
EARS SPEC:
- The Highway stack shall depend on bulkman >=2.0.3,<3 and resilient-circuit >=0.7.0,<0.8...
|
closed |
high |
2026-08-22 01:44 |
- |
|
| #849 |
Golden demos: compensation lands AFTER the 5s event, inverting BRANCH_B/PHASE2B vs BRANCH_C/PHASE3 in both expected files
EARS SPEC:
- When a task with TimeoutPolicy(3s) fails by timeout and has an on_failure compensation ...
|
open |
high |
2026-08-03 22:11 |
- |
|