Files
applecontainercompose/Validation/VALIDATION.md
T
2026-11-08 17:28:29 +00:00

37 lines
2.7 KiB
Markdown

# AppleContainerCompose validation — 8 November 2026
Source: AppleContainerCompose-Updated-Xcode (1).zip, inspected and corrected for this delivery.
## Build results
Environment: Apple silicon arm64, macOS 27.2 (26B123), Xcode 27.2 (27B52).
Dependency: Yams 5.4.0, revision 3d6871d5b4a5cd519adf233fbb576e0a2af71c17.
| Target | Debug | Release |
| --- | --- | --- |
| accompose | PASS | PASS |
| AppleContainerCompose | PASS | PASS |
All four builds used xcodebuild with CODE_SIGNING_ALLOWED=NO. DerivedData and package working copies were stored under a task-specific /private/tmp directory. Complete successful build logs are included here. The app build emits the standard “Metadata extraction skipped, no AppIntents.framework dependency found” warning; no Swift compilation errors or warnings occurred.
## Automated CLI regressions
27 cases passed for each of the Debug and Release CLI binaries (54 executions total). Tests cover both detach aliases; verbosity levels before and after the subcommand; detached return without following logs or stopping containers; simultaneous live logs from two services; parent-only and terminal-process-group Ctrl+C; graceful stop in reverse dependency order; interrupt during startup; log follower failure; and rejection of an unknown up option. The repeatable suite is Tests/cli_regression.py.
## Real runtime integration
Apple container CLI/server 1.7.1, using the existing docker.io/library/nginx:alpine image and a uniquely named test project without host mounts or published ports:
- up -d returned; inspected container state was running.
- -vvv up --detach returned; inspected container state was running.
- up -vv streamed ACCOMPOSE_LIVE while the CLI remained active.
- SIGINT to the foreground process group returned success; inspected state was stopped.
- up -d restarted that existing stopped container; inspected state was running.
- The test project's container was removed using down afterward. Pre-existing containers were not modified.
Runtime transcript: runtime-validation.log.
## Scope and limits
The ZIP contains the editable Xcode source project, example, installer, regression suite and validation evidence. Open AppleContainerCompose.xcodeproj and choose the app or accompose scheme. Build again locally; Yams package resolution may require internet access. Builds were unsigned and the GUI was compiled, not interactively exercised. This remains a subset of Compose, with the limitations listed in README.md. The regression suite uses a fake runtime; the separate runtime integration above exercises the actual lifecycle. Shutdown delegates grace period and escalation policy to container stop. Startup subprocesses finish before cancellation cleanup runs.