# Acceptance Evidence Evidence captured on Codex CLI 0.150.1 and Node.js 24.19.0. Commands run against isolated homes; the developer's real `~/.codex` was not modified by installer acceptance. ## Automated suite ```text npm run check PASS npm run lint PASS npm test PASS 19 test files, 57 tests ``` Coverage includes strict schemas/classification, config precedence, DAG cycles/ownership/glob overlap/waves, bounded context/traversal/symlink/secrets, process-safe storage revisions/concurrency, Git dirty-delta and tracked-symlink detection, structured verification argv/symlink/argument policy, installer merge/idempotence/ownership restoration, doctor catalog behavior, MCP in-memory contracts, installed bundled stdio protocol, backend response-schema conversion and usage, and orchestration plan/build/repair/review paths. ## Real Codex model checks Authenticated smoke checks performed through installed Codex: - `gpt-5.6-luna` at `max`: returned `SOLUNA_LUNA_MAX_OK`. - `gpt-5.6-sol` at `high`: returned `SOLUNA_SOL_REVIEW_OK`. - Structured `CodexExecBackend`: returned validated `{ "ok": true, "role": "luna" }` and real usage `{ input: 12443, output: 42, total: 12485 }`. The local catalog also confirmed Sol supports `xhigh` and Terra supports `high`; doctor now requires the Sol L5 effort to exist. ## Full autonomous orchestration A clean, committed JavaScript fixture started with only legacy string-role authorization. The real CLI ran: ```text Sol plan → Luna Max implementation → five structured verification commands → Sol review ``` Run ID: `838b8f26-bd96-48a6-9c37-0394fd3982c5` Result: - Classification: L4. - Planner usage: 31,071 tokens. - Worker usage: 68,567 tokens. - Reviewer usage: 36,180 tokens. - Changed only planner-owned `src/auth.js` and `test/auth.test.js`. - Added valid object-role capability support, preserved legacy API behavior, and denied malformed roles. - Focused tests, full tests, syntax/lint checks, and an independent post-run `git diff --check` all passed. - Sol returned `approved: true` with no findings. - Persisted terminal state: `done`, revision 15, with plan, worker result, Git workspace evidence, verification report, review, history, and metrics. A first acceptance attempt exposed a real Codex response-schema rejection for optional properties. The backend was repaired to produce strict response schemas and strip only synthetic nulls; the successful run above validates that repair against the real service. ## Real isolated installation The built CLI was run without `--source-root`, validating the published-layout root fix. It: - installed the self-contained runtime; - installed six custom agents including a distinct Sol planner; - registered marketplace `soluna`; - registered and enabled `soluna-harness@soluna` version 0.1.0; - configured MCP to the absolute bundled runtime; - passed a second idempotent install with `changed: false`; - reported manifest, marketplace, plugin, MCP, agents, hooks, feature availability, and all model routes correctly. The isolated home intentionally had no authentication, so doctor truthfully returned `healthy: false` solely on authentication while every installation/capability component was ready. Uninstall then removed the plugin and marketplace registration, restored owned config values, deleted all unchanged hash-owned payload files, removed ownership state, and left no installed plugin. Installer unit tests separately verify that settings modified by the user after install are preserved. ## DeepSeek Harness native plugin acceptance Validated against `dsh 0.1.0-rc.7` with the installed rc.8 Cordis/tool packages, using only isolated `DSH_HOME` directories: - `dsh plugin --profile web add .` reconciled `@soluna-harness/install` into the profile bundle list. - Both linked-checkout and packed-tarball installs composed `@soluna-harness/install/dsh/plugin.js` successfully. - A real headless DSH process mounted the packed bundle without service, schema, or lifecycle errors. - A real DSH model invoked native `soluna_status`; the tool returned an array and the model emitted the exact acceptance marker `DSH_SOLUNA_STATUS_OK`. - The Soluna CLI installed, recorded ownership, reported, composed, and uninstalled the DSH profile bundle in an isolated home; independently managed dependencies are preserved. - Unit coverage validates all ten native tool registrations, the prompt section, output contracts, unsafe profile rejection, DSH-specific doctor logic, and propagation of DSH tool cancellation into planner execution. No shipped DSH preset, host sandbox, approval policy, or real profile was modified. Temporary copied acceptance credentials were removed immediately after the isolated run. ## Package acceptance `npm pack` runs a clean build and complete test suite. The validated package contains 104 release files: the CLI, unbundled library output, self-contained bundled MCP runtime, Codex manifest and local-runtime `.mcp.json`, the DSH bundle patch and native Cordis plugin, six agents, four skills, schemas, hooks, policy template, README, and MIT license. Stale `dist/src` artifacts are prevented by a clean-first build. ## Explicit boundaries - DSH v0.1 is a native Cordis tool/prompt integration but deliberately uses the hardened Codex exec backend for Sol/Luna/Terra calls; Codex CLI authentication remains required. - Native Codex mode is a cooperative public protocol because Codex does not expose its native subagent launcher to MCP. Version 0.1 requires one native implementation packet; multi-packet DAG execution uses `codex exec`. - Writes fail closed for non-Git or symlink-bearing workspaces. Dirty Git worktrees also fail by default and require an explicit reduced-guarantee policy opt-in. - Verification executes allowlisted repository build/test systems. Arguments are constrained against eval/config-root/traversal escapes, but repository scripts themselves are trusted code and run with the MCP process's OS permissions. - Hooks are asynchronous telemetry only and are not a correctness dependency. - Token costs are never fabricated. Token counts are persisted when Codex emits them; absent telemetry remains unknown.