Assistant: codex Assistant-Model: gpt-5.6-sol Assistant-Session: 01a0233b-178d-7162-b92f-31a31ea8ca9b
5.9 KiB
SCOPE
One-liner
glas-harness is a profile-driven control-plane library and CLI that resolves
one governed execution request to a concrete rein/model/sandbox constellation,
coordinates the outer lifecycle, and returns normalized evidence. It consumes
sand-boxer; it does not provide a sandbox runtime itself.
Verified capabilities
The repository currently implements:
- strict Pydantic models for execution requests, profiles, rein descriptors,
lifecycle results, and compact evidence (
src/glas_harness/contract.py); - deterministic, fail-closed profile and rein-registry resolution, including
compatibility, duplicate, status, capability, and inline-secret checks
(
src/glas_harness/profiles.py); - one bounded outer gateway lifecycle: resolve, create sandbox, derive the
returned transport, start and dispatch one rein session, summarize, clean up,
destroy the sandbox, and report normalized evidence
(
src/glas_harness/gateway.py); - two CLI-backed rein adapters, for
rein-aharnessandrein-openweights; - transport enforcement for SSH workspaces and same-host namespace descriptors. Unsupported, incomplete, ambiguous, unavailable, or unauthorized transports fail closed without falling back to the caller checkout;
- explicit governed actor validation (
adm,agt, oratm) before sandbox creation, keeping queueworker_idvalues outside the actor field; - one invocation channel: the local
glas-harness runCLI; - a packaged, versioned profile/rein catalog and
glas-harness profilesvalidation command that reports catalog enablement separately from typed operational readiness; and - compact State Hub progress evidence that excludes prompts, model/tool output, provider bodies, and credentials.
The unit and boundary suite exercises these contracts and the Forgejo workflow installs the package, runs the suite, and validates the packaged catalog.
Operational capability status
| Surface | Current verified status |
|---|---|
| Profile/catalog resolution | Implemented and CI-validated |
| Unknown, invalid, or known-blocked profile refusal | Implemented before sandbox creation |
| Sandbox create/destroy lifecycle | Implemented; live failure paths prove teardown |
| Original-checkout isolation | Enforced by code: it is never a post-create execution fallback |
| SSH transport construction | Implemented and unit-tested; no current positive post-hardening live proof |
| Same-host bwrap execution | Fail-closed, not operational: both local profiles are declared blocked and refused before creation; the underlying proof found consumer nsenter denied and no in-sandbox rein runtime |
rein-aharness adapter |
Implemented; local selection is blocked before creation, while the remote profile remains an explicitly labeled unverified proof path |
rein-openweights adapter |
Implemented; provider credential repair was proven, but current local sandbox execution has the same unresolved owner boundary |
| CLI channel | Implemented |
| State Hub evidence | Implemented as compact progress evidence, not a complete session/tool audit service |
An enabled profile means only that catalog policy permits selection. Typed
operational readiness separately records ready, unverified, or blocked.
Known-blocked profiles refuse before sandbox creation; unverified profiles may
run only as labeled proof attempts, with the state preserved in evidence.
There is currently no committed ready profile.
In scope
- The versioned Glas execution contract and profile/rein catalogs.
- Exact profile selection and refusal; no implicit governed rein or model.
- Outer execution lifecycle and teardown coordination with sand-boxer.
- Reachability-derived command transport and workspace selection.
- Rein adapters that translate the stable outer contract to backend CLIs.
- Actor attribution and organizational reference propagation without assuming workforce authority.
- Direct-caller results and compact, value-safe execution evidence.
- Channel interfaces that translate invocations into the same execution request; only the CLI implementation exists today.
Out of scope
- Sandbox profiles, placement, provisioning, owner-mediated execution, and
teardown implementation —
sand-boxer. - A rein's internal agent loop, provider client, tool enforcement, and credential acquisition — the selected rein.
- Scheduling, claiming, retries, and task sourcing —
activity-coreor another channel owner. - Roles, duties, assignments, goals, resource envelopes, and authorization — their workforce/leadership systems.
- Model-provider authority and inference routing — providers and
llm-connect. - Secret storage or credential brokering.
- End-to-end validation and product code generation —
wise-validatorandsnuggle-inventor. - State Hub work-record authority.
Intended but not implemented
The broader vision in INTENT.md includes long-lived/resumable sessions,
gateway-owned tool catalogs and policy checks, memory and skills services,
additional chat/email/MCP channels, cron surfaces, bounded subagent delegation,
and richer session/tool audit streams. None is a current repository capability.
The present implementation is a bounded execution router over two reins, not
yet Coulomb's general-purpose agent harness service.
Active gaps
GLAS-WP-0005-T05/GLAS-IN-0002: sand-boxer-owned executable bwrap reachability, rein runtime availability, explicit egress, and credential delivery are required for a positive in-sandbox rein proof.GLAS-IN-0003: grandfather the pre-canonGLAS-0001identifiers.GLAS-IN-0004: align the documented ad hoc workplan convention with the identifier canon.
Getting oriented
- Intent and gap assessment:
INTENT.md,history/2026-08-23-scope-vs-intent-assessment.md - Contract:
docs/harness-contract.md,docs/execution-profiles.md - Architecture:
docs/adr/ADR-001-rein-harness-family.md - Live work:
workplans/,docs/intakes/residuals.md - Agent workflow:
AGENTS.md