Assistant: codex Assistant-Model: gpt-6-astra Assistant-Session: 01a07ff8-19d0-7820-b4d0-1353833cb7fc
143 lines
7.9 KiB
JSON
143 lines
7.9 KiB
JSON
{
|
|
"schema": "informed-decision.container-candidate.v1",
|
|
"observed_at": "2026-09-10T23:15:35.252989+00:00",
|
|
"base_commit": "83849b75d44cab3d01d7ea56f6c839aef8e20046",
|
|
"contract_sources": {
|
|
"approval-engine": "a0a602976eef818f36dde35f76f7f2e589bd051b",
|
|
"audit-core": "5c0ad522fb36092aa7ec2e8d72f63a5a91853b5b",
|
|
"flex-auth": "88b354377c8e26b162f1234e673072f1c06dcd89",
|
|
"railiance-apps": "eff457ef52a29afc7b9beccf38480a9955c5233e"
|
|
},
|
|
"source_task": "INFD-WP-0001-T08",
|
|
"status": "progress",
|
|
"image": {
|
|
"local_tag": "informed-decision:hfact-20260911",
|
|
"local_image_id": "sha256:c882d6c10ce61b29eed06594a0eb01abe5b1adb136a0343101f991c2305701b4",
|
|
"wheel_sha256": "00930d4fe7415c93f36ee82735abcbc69ca7cad694e2963b8f0ad8abdac6cb34",
|
|
"runtime_files": {
|
|
"container.py": "a8e7516ef6a7f110d8ed95493ae3b9492d913cc7a5650b88a519334ba544f9dd",
|
|
"presentation.py": "54375ccd8358fac41de220bccadbee09f8b7c8ebbeeafaafd381a7456331da50",
|
|
"disposition.py": "5ddd19c2444f8e6c9bb090d04045cf1227a34554e000f07b3f677325bf8089f8",
|
|
"records.py": "82f696151895c51b168144a3078d05764da3499b96917c465629ce0836fa8e33",
|
|
"audit.py": "06da36a8f3451b4abc7a46da2df66d5939524c170658b879499b2a47a1b10cd3",
|
|
"oidc.py": "35b37bae67968c2179b22af8151afe2981d5468debf4488771eaf3121b75e221",
|
|
"__main__.py": "3ba1467fa2d47fcf0bd032e8694904450775adf763a6e6f9e4888cc3ce3ed92b",
|
|
"stance.py": "62b96b76eba4ec277344172f10f6233e979dda4d079f972d9a55c4e5aed96c3c",
|
|
"policy.py": "7bf814a8332ff054bf5f1f651d8816a408138b1f197b17da0abb7f87411e8812",
|
|
"review.py": "c2d2aa1cf48d10d85b3606acf2830ab22701c1274221e5e2760d29901adfd786",
|
|
"http_transport.py": "fc9c1fd05cc89120d70bfcdb4c60fe244b81c8054d21505df8cfa9c5a229f7bc",
|
|
"approval_client.py": "56c201dda358cb4bef11a15da141bb68562cdde9e37b4a880bf1e9257ae82cb6",
|
|
"runtime.py": "6bc6a74657f526743cca6c6cdc0a86fff43d8282e0b867dc9288344636abe5eb",
|
|
"provenance.py": "de02c6bf162865ba9619d74cfd68dd0a5d7f81e6c9e427f67f848cb2c2214f83",
|
|
"memo.py": "697058863a4e6de2c143a2433eaaf5e15e5e7375dc5459af6911b146567e8b5d",
|
|
"canonicalize.py": "517bbc6b81cc839636b97863ebdefd38aa375d10f4915feb9bf21867f992f765",
|
|
"evidence.py": "5f84997f66409c7b6cec6ab57e73ad5bba2c1b2d669604adcbf36e72a824a88d",
|
|
"__init__.py": "0ffebe048ba583e7b623f60e8f449950dc5fd49afce2398381fa143eee834e19",
|
|
"approval_http.py": "203f462ff78f1409f2f924d4723197fdd502087c7f6da319f46ffffce2a9d478",
|
|
"web.py": "97f7e040237fa3b755e39d13e628181dc2a3f6a31b4331ca7284bef05f8d6038",
|
|
"store.py": "7a58b36d409cb4161b65985545e13573a5196779b4c6e95ca03ce45c6fada808",
|
|
"ui.py": "69fb7fc1794c8842f42e7f0f5a261c4cf64176053ef0a532db46ee6566621219"
|
|
},
|
|
"installed_versions": {
|
|
"informed-decision": "0.2.0",
|
|
"PyJWT": "2.13.0",
|
|
"cryptography": "50.0.1",
|
|
"cffi": "2.1.1",
|
|
"pycparser": "3.0",
|
|
"waitress": "3.0.2"
|
|
},
|
|
"requirements_lock_sha256": "539072cb7def057c170c065363d365fe7fb7cf540bef04b2a4c9fab8ee05a7db",
|
|
"all_22_runtime_files_match_source": true,
|
|
"published": false
|
|
},
|
|
"verification": {
|
|
"command": "INFD_APPROVAL_ENGINE_SOURCE=/home/worsch/approval-engine INFD_AUDIT_CORE_SOURCE=/home/worsch/audit-core INFD_FLEX_AUTH_BINARY=<compiled-flex-auth> make check",
|
|
"tests_passed": 371,
|
|
"tests_failed": 0,
|
|
"tests_skipped": 0,
|
|
"new_tests": 27,
|
|
"schema_json_valid": true,
|
|
"container_checks_passed": 11,
|
|
"container_receipt": "2026-09-11-container-smoke.json",
|
|
"container_network": "none",
|
|
"fixture_cleanup_complete": true,
|
|
"prior_browser_checks": {
|
|
"owner_commit": "83849b75d44cab3d01d7ea56f6c839aef8e20046",
|
|
"passed": 12,
|
|
"rerun_in_this_increment": false
|
|
}
|
|
},
|
|
"scan": {
|
|
"scanner": "aquasec/trivy@sha256:62b1e65e8869bc4b4c6aa4fa2b21595256c7c2f6018a9d9ad61caf87187c1969",
|
|
"created_at": "2026-09-10T23:13:55.674183643Z",
|
|
"high": 0,
|
|
"critical": 0,
|
|
"exit_code": 0,
|
|
"report": "2026-09-11-container-scan.json",
|
|
"warning": "Alpine 3.24 is not on the scanner lifecycle/EOL list; no lifecycle acceptance is inferred."
|
|
},
|
|
"cluster_schema_check": {
|
|
"apply_mode": "dry-run=server",
|
|
"candidate_objects": 8,
|
|
"exact_namespace_objects_passed": 7,
|
|
"refusal": "approval-engine namespace absent; peer ingress cannot be created there yet",
|
|
"representative_namespace_schema_check_passed": true,
|
|
"representative_change": "metadata namespace/name only for the missing peer rule",
|
|
"fixture_policy_pins": true,
|
|
"unpublished_image_reference": true,
|
|
"cluster_changes_applied": 0,
|
|
"schema_only_image_reference": "unpublished pre-shutdown-fix local image 3d2b62f; image bytes are not evaluated by API schema validation"
|
|
},
|
|
"native_metadata_observations": {
|
|
"traefik_namespace": "kube-system",
|
|
"traefik_app_label": "traefik",
|
|
"websecure_container_port": 8443,
|
|
"keycape_public_addresses": [
|
|
"92.205.62.239"
|
|
],
|
|
"storage_class": "local-path",
|
|
"storage_provisioner": "rancher.io/local-path"
|
|
},
|
|
"source_sha256": {
|
|
".dockerignore": "fa81d3c056779e8fd5fea58022e42cf9704b16e4d24d75896a2ef2f413f426e8",
|
|
".gitignore": "bde5cbd5d9797b283d92cd9c69b12981a2539f4b7fb6d191ab63dd015c4a2cc3",
|
|
"Containerfile": "a598563e9b2b4a80fd3c3ac580cf1e63ec44466a893d0068566036487aed20d2",
|
|
"Makefile": "15ffb7f2621dacd6145609119994193cd0c7962f01b4e869d4a415200f55e9fa",
|
|
"SCOPE.md": "d7e59d6906326846e4bc9ca8300215596fd316b7af9abce55dad67b229b1aa8d",
|
|
"deploy/README.md": "5705c1c317834b71087692b2209bbe33b447c5f4ffcbc7b2434cc0b1f87a165b",
|
|
"deploy/admission.example.json": "09de47289135c415927d524edf6c20f256a6f10fb467ceebccf08f221e64dfdb",
|
|
"docs/evidence/2026-09-11-container-scan.json": "e926951ef4f085542116b8bb9c68c9717688957ad2913b0c94fd141c11f4dd03",
|
|
"docs/evidence/2026-09-11-container-smoke.json": "6a71afa39cfd58b1502e300d8a9176905006b0d6bcd4f4989e200dcf371eeb38",
|
|
"docs/protected-browser-review.md": "6c9b1323e0eb28553033a9d7c3e5e0f8c2c02350f13ea5e5da1395499baf81c9",
|
|
"informed_decision/container.py": "a8e7516ef6a7f110d8ed95493ae3b9492d913cc7a5650b88a519334ba544f9dd",
|
|
"informed_decision/web.py": "97f7e040237fa3b755e39d13e628181dc2a3f6a31b4331ca7284bef05f8d6038",
|
|
"pyproject.toml": "5ce28585861413c0835699c5e14ac0ae80185fdf342dc1c765f1d9a0d1b6e211",
|
|
"requirements.lock": "539072cb7def057c170c065363d365fe7fb7cf540bef04b2a4c9fab8ee05a7db",
|
|
"tests/test_container_runtime.py": "475bf316bd9a1a014ccdbdb3267f40f42678d89849dc2e29d8345c27d1fc68e3",
|
|
"tests/test_deployment_candidate.py": "296bc1090db5e33e025ccb53d780c0523ab6368278d8cf1778f7df91af13fe50",
|
|
"tools/render_deployment.py": "51ea03afeb6c8986dfeb05bd76f4aa7fa8a22e8c6c1e522cc92dcaa6e348e377",
|
|
"tools/smoke_container.py": "1385986cbef1d673e7ea3ed57c8d50b5ca34520a298eaf70e1a9af988b210644",
|
|
"workplans/INFD-WP-0001-founding-specs-and-approver-ui-ownership.md": "4cc4a953a8e17adacc9d8fc19f1fd2cab441e8e8b47df07d533c2bf2732f25b4"
|
|
},
|
|
"remaining": [
|
|
"native policy package/caller/assignment and exact peer admission",
|
|
"AUDIT-WP-0009-T11 custody and protected receiver registration",
|
|
"image publication and approved Railiance Apps cutover",
|
|
"Approval Engine namespace/service admission and registered human binding",
|
|
"native CNI/readiness/audit receipt proof and platform backup/restore operating admission",
|
|
"existing T08 broader product acceptance"
|
|
],
|
|
"native_secret_reads": 0,
|
|
"cluster_apply": false,
|
|
"factory_attempts": 0,
|
|
"paid_model_calls": 0,
|
|
"lifecycle_finding": {
|
|
"initial_local_image": "sha256:3d2b62f6ce8914b04c4d944d30996331b3c80028a3763da53055cb4b8d71a7c3",
|
|
"initial_exit_code": 137,
|
|
"corrected_exit_code": 0,
|
|
"graceful_stop_window_seconds": 15,
|
|
"correction": "explicit PID-1 SIGTERM handler through Waitress and audit-pump shutdown"
|
|
},
|
|
"integrated_parent_commit": "bb5b607bbd3ae518f3dc101dc6402753564b84ed",
|
|
"concurrent_owner_change_preserved": "T07 premise correction; no runtime code changed"
|
|
}
|