Package and document the agent for safe unattended operation while preserving one portable binary and the same behavior in foreground, integrated-TUI, and split service/TUI modes.
Provide configuration examples with placeholders only and a command that validates configuration without contacting the grid or LLM. Define precedence, reloadable versus restart-only fields, schema versioning, and migration/error behavior.
Provide a hardened Linux systemd unit/example because headless service operation is required. Keep the binary independent of systemd and provide equivalent Windows service-wrapper/SCM guidance plus portable foreground operation; avoid OS-specific core APIs.
Use platform-appropriate config/data locations and restrictive secret-file checks where supported. Explain limitations on filesystems that cannot enforce permissions. Never put secrets on command lines, unit files, example logs, crash reports, or TUI screens.
Produce compact release builds with intentional feature selection and record binary size/dependency inventory. Audit that the agent path is native Rust with no CLR, scripting runtime, provider SDK, subprocess adapter, or undeclared native library.
Keep all code/APIs cross-platform. Any Gitea workflow additions or edits run only on ubuntu-latest; use portable compile/static checks rather than macOS/Windows Gitea jobs.
Acceptance criteria
A clean operator can follow the docs to run fake foreground, integrated TUI, split service/TUI, and Linux systemd modes without reading source.
Windows service guidance exercises the same portable service/control protocol and shutdown semantics.
Install/upgrade does not overwrite operator config, secrets, conversations, or audit journals.
Documentation includes threat model, privacy/redaction behavior, resource defaults, failure playbooks, and explicit unsupported operations.
Dependencies
Depends on stable configuration, service/control, TUI, observability, and test interfaces. It must be complete before live-grid milestone validation.
## Objective
Package and document the agent for safe unattended operation while preserving one portable binary and the same behavior in foreground, integrated-TUI, and split service/TUI modes.
## Runtime and configuration
- Document minimal quick start, exact endpoint URL/API-key contract, grid credentials, authorized UUIDs, behavior/limits, storage, fake mode, integrated/split modes, control authentication, and safe shutdown/recovery.
- Provide configuration examples with placeholders only and a command that validates configuration without contacting the grid or LLM. Define precedence, reloadable versus restart-only fields, schema versioning, and migration/error behavior.
- Provide a hardened Linux `systemd` unit/example because headless service operation is required. Keep the binary independent of systemd and provide equivalent Windows service-wrapper/SCM guidance plus portable foreground operation; avoid OS-specific core APIs.
- Use platform-appropriate config/data locations and restrictive secret-file checks where supported. Explain limitations on filesystems that cannot enforce permissions. Never put secrets on command lines, unit files, example logs, crash reports, or TUI screens.
- Document control-plane binding/TLS, firewall expectations, log rotation/retention, backup/recovery of non-secret state, health/readiness checks, upgrades/rollback, emergency pause, orphan-build recovery, and API-key/grid-password rotation.
## Build and dependency evidence
- Produce compact release builds with intentional feature selection and record binary size/dependency inventory. Audit that the agent path is native Rust with no CLR, scripting runtime, provider SDK, subprocess adapter, or undeclared native library.
- Keep all code/APIs cross-platform. Any Gitea workflow additions or edits run only on `ubuntu-latest`; use portable compile/static checks rather than macOS/Windows Gitea jobs.
## Acceptance criteria
- [ ] A clean operator can follow the docs to run fake foreground, integrated TUI, split service/TUI, and Linux systemd modes without reading source.
- [ ] Windows service guidance exercises the same portable service/control protocol and shutdown semantics.
- [ ] Install/upgrade does not overwrite operator config, secrets, conversations, or audit journals.
- [ ] Documentation includes threat model, privacy/redaction behavior, resource defaults, failure playbooks, and explicit unsupported operations.
## Dependencies
Depends on stable configuration, service/control, TUI, observability, and test interfaces. It must be complete before live-grid milestone validation.
hugo
added this to the 14 - metacrate grid agent milestone 2026-08-17 19:31:38 +00:00
Implemented and pushed as commit 00707fd. Added schema-versioned placeholder configurations, platform config/data discovery, storage environment precedence, offline --check-config and --print-paths operation, and fail-closed Unix secret permissions. Added hardened systemd packaging, state-preserving POSIX and Windows installers, equivalent Windows service/control/shutdown guidance, and a complete operations runbook covering TLS/firewalls, retention, backup/recovery, upgrades/rollback, emergency handling, secret rotation, threat/privacy/resource limits, failure playbooks, and unsupported operations. Recorded native release size/hash/dependency evidence. Verification: focused packaging tests (3/3), config tests (9/9), all-feature strict Clippy, rustdoc warnings-as-errors, formatting, and diff checks passed. The Windows Rust target check reached the existing AWS-LC native build and was blocked solely because x86_64-w64-mingw32-gcc is not installed on this host; platform-conditioned behavior and installer contracts are covered by tests. Namespace audit confirms the service remains metacrate-grid-agent and the libremetaverse facade has no metacrate references.
Implemented and pushed as commit 00707fd. Added schema-versioned placeholder configurations, platform config/data discovery, storage environment precedence, offline --check-config and --print-paths operation, and fail-closed Unix secret permissions. Added hardened systemd packaging, state-preserving POSIX and Windows installers, equivalent Windows service/control/shutdown guidance, and a complete operations runbook covering TLS/firewalls, retention, backup/recovery, upgrades/rollback, emergency handling, secret rotation, threat/privacy/resource limits, failure playbooks, and unsupported operations. Recorded native release size/hash/dependency evidence. Verification: focused packaging tests (3/3), config tests (9/9), all-feature strict Clippy, rustdoc warnings-as-errors, formatting, and diff checks passed. The Windows Rust target check reached the existing AWS-LC native build and was blocked solely because x86_64-w64-mingw32-gcc is not installed on this host; platform-conditioned behavior and installer contracts are covered by tests. Namespace audit confirms the service remains metacrate-grid-agent and the libremetaverse facade has no metacrate references.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Objective
Package and document the agent for safe unattended operation while preserving one portable binary and the same behavior in foreground, integrated-TUI, and split service/TUI modes.
Runtime and configuration
systemdunit/example because headless service operation is required. Keep the binary independent of systemd and provide equivalent Windows service-wrapper/SCM guidance plus portable foreground operation; avoid OS-specific core APIs.Build and dependency evidence
ubuntu-latest; use portable compile/static checks rather than macOS/Windows Gitea jobs.Acceptance criteria
Dependencies
Depends on stable configuration, service/control, TUI, observability, and test interfaces. It must be complete before live-grid milestone validation.
Implemented and pushed as commit
00707fd. Added schema-versioned placeholder configurations, platform config/data discovery, storage environment precedence, offline --check-config and --print-paths operation, and fail-closed Unix secret permissions. Added hardened systemd packaging, state-preserving POSIX and Windows installers, equivalent Windows service/control/shutdown guidance, and a complete operations runbook covering TLS/firewalls, retention, backup/recovery, upgrades/rollback, emergency handling, secret rotation, threat/privacy/resource limits, failure playbooks, and unsupported operations. Recorded native release size/hash/dependency evidence. Verification: focused packaging tests (3/3), config tests (9/9), all-feature strict Clippy, rustdoc warnings-as-errors, formatting, and diff checks passed. The Windows Rust target check reached the existing AWS-LC native build and was blocked solely because x86_64-w64-mingw32-gcc is not installed on this host; platform-conditioned behavior and installer contracts are covered by tests. Namespace audit confirms the service remains metacrate-grid-agent and the libremetaverse facade has no metacrate references.