fix: enable XML processing in container entry
This commit is contained in:
@@ -12,29 +12,30 @@
|
||||
|
||||
## Question
|
||||
|
||||
Does the publishable source snapshot open XML processing through an explicit authenticated HTTPS deployment entry without exposing local state, credentials or unfinished report claims?
|
||||
Does the publishable source snapshot open XML processing through both supported container launch paths without exposing local state, credentials or unfinished report claims?
|
||||
|
||||
## Evidence
|
||||
|
||||
- Files: `Dockerfile`, `compose.yaml`, `deploy/Caddyfile`, `deploy/.env.production.example`, `deploy/README.md`, `arr_web/app.py`, `arr_web/run.py`, `tests/test_arr_web.py`.
|
||||
- Git: initial deployment snapshot commit `a701de9f0eff7402fe1785c3b35de5652576152a` was pushed to `origin/main`; an independent `ls-remote` check is required after the documentation closeout commit as the final publication proof.
|
||||
- Deployment command inspection: Compose Web command contains `--enable-processing` and `--secure-cookies`; only Caddy maps host ports 80/443, Web and MCP use internal `expose` ports.
|
||||
- Tests: Python 3.12 full discovery ran 259 tests successfully; 2 environment-dependent tests were skipped.
|
||||
- Deployment command inspection: Dockerfile default Web CMD and Compose Web command both contain `--enable-processing`; Compose also contains `--secure-cookies`. Only Caddy maps host ports 80/443 in the documented Compose topology, while Web and MCP use internal `expose` ports.
|
||||
- Regression: `tests/test_deployment_entrypoints.py` parses the Dockerfile JSON CMD, requires `--enable-processing`, and rejects accidental enablement of monthly, company-report or legacy Agent-writeback mutations.
|
||||
- Tests: Python 3.12 full discovery ran 260 tests successfully; 2 environment-dependent artifact-tool tests were skipped.
|
||||
- Integrity: every entry in `CHECKSUMS.sha256` passed and 10 JSON contracts parsed.
|
||||
- Snapshot audit: 271 final candidate files, about 2.0 MiB, zero files over 1 MiB, zero symlinks, eight ZIP/XLSX archives inspected and zero detected secret/private-endpoint hits after documented placeholder allowlisting.
|
||||
- Configuration: Compose YAML parsed and assertions confirmed both required Web flags. Docker/Caddy executables are absent locally, so no image build or public TLS runtime result is claimed.
|
||||
|
||||
## Finding
|
||||
|
||||
The repository snapshot provides a fail-closed deployment profile that opens XML upload only when the database, guarded OSS and SuperAgent processing runtime initialize. Web traffic is protected by Caddy HTTPS plus Basic Auth, MCP traffic retains application bearer authentication, and application defaults remain closed outside this profile.
|
||||
The repository snapshot now makes direct Docker-image launches and Compose launches consistent: both request XML processing, while the source CLI remains default-closed and the page opens upload only after the database, guarded OSS, SuperAgent and HMAC runtime initialize. The documented Compose topology protects Web traffic with Caddy HTTPS plus Basic Auth, and MCP retains application bearer authentication.
|
||||
|
||||
## Impact
|
||||
|
||||
The next test should use the stable deployed domains, not the temporary ngrok endpoint. `processing_ready=true` is a deployment prerequisite, but business completion still requires SuperAgent tool rediscovery and an MCP `committed`/`already_committed` receipt with matching database facts.
|
||||
The server must rebuild/redeploy the image; a platform-level CMD override must retain `--enable-processing`. `processing_ready=true` remains the deployment prerequisite, but business completion still requires SuperAgent tool rediscovery and an MCP `committed`/`already_committed` receipt with matching database facts.
|
||||
|
||||
## Open Items
|
||||
|
||||
- Build and start the containers on the public Linux server; verify DNS, ACME, health and logs.
|
||||
- Rebuild and start the latest containers on the public Linux server; verify that `/api/health` reports both `database_ready=true` and `processing_ready=true`.
|
||||
- Rebind and republish the SuperAgent MCP configuration against the stable MCP domain.
|
||||
- Execute one no-PII XML end-to-end commit test.
|
||||
- Implement automatic post-commit monthly dispatch and the required `TOTAL PRICE` formula in separately authorized work.
|
||||
|
||||
Reference in New Issue
Block a user