Export an authenticated capture and environment manifest as a pinned agentenv bundle with provenance, a replay verifier and smoke task. Followups preserve immutable input ownership, bounded discovery, caller paths and numeric values; bind bundle writes and package copying to retained filesystem owners; verify POSIX modes; retain cleanup authority; and verify framework/npm executable selection. Default MCP remains stdio. Validation: pinned Linux toolchain, typecheck/build/lint/format/docs/knip, 452 focused tests, ten product-catalog cases, real GitHub response replay in the generated non-root Docker image, and the real pinned agentenv framework smoke workflow. Platform and resource-measurement limits are recorded in the feature verification document. Co-authored-by: gensokyo-dev <gensokyo-dev@users.noreply.github.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
1.4 KiB
1.4 KiB
Implementation plan
- Extend
src/application/environment/environmentSource.tssoloadEnvironmentSourcetakes the reporting operation and retains the capture artifact's SHA-256, letting the export reuse the serve command's authentication and cross-check unchanged. - Add
environmentBundle.tsto plan the bundle from the source alone: the name rule, the Dockerfile for the registry and tarball package sources, the verifier, the smoke task, the README and the copy targets. - Add
environmentExport.tsto read each input once through the regular-file reader, refuse an occupied directory, a missing tarball or an unreadable input before writing, then write the planned files with exclusive creation and copy the authenticated bytes and the tarball byte-exact. - Register
environment-exportinsrc/cli/environmentCommands.tsbesideenvironment-serve, sharing the argument descriptions, and inCLI_COMMANDS. - Add the
agentenvscope,real-agentenv.yml, the package script andscripts/verify-agentenv-environment.mjs, wireci.ymland extend theciRequiredLanesandciChangeScopetables. - Add services, conformance and cli-boundary tests; document the command in
docs/cli.md, the bundle and lane indocs/agent-environments.mdanddocs/testing.md; record the spec.
No new dependency is introduced; the CLI inventory gains one command.