diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r2/publication-commit.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r2/publication-commit.json new file mode 100644 index 00000000..65d9f337 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r2/publication-commit.json @@ -0,0 +1,165 @@ +{ + "exit_code": 1, + "commit": "bab3dd1c9df67f344fb207904a8edb3896bf4bd1", + "base": "bab3dd1c9df67f344fb207904a8edb3896bf4bd1", + "files": [ + { + "path": ".kaizen/agents/custodian-codex/supervision.json", + "sha256": "6da87d32ad01919507beaf32248586fa2996337034ec9e39ad96bf3b975ac6bf" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/README.md", + "sha256": "865e22f76f3c5a66dfd5ee5b39e735ef99c7e40429515f465bd1b9fabe74ed1e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/check_upstream_release.py", + "sha256": "bf4e0bfe5f233d988df566fafb56c869bb809123204068460acc3d7ec0668f40" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/checker-reproduction.json", + "sha256": "196d654fb711ff9e4fbd4e89a3a79fe61f77a74208942e9c6c8be5d417699e40" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/client-public-build.yaml", + "sha256": "942d642a40bf76f11d09336fa6e90f861b5fccffa7ba6143bdcbfa8a1498bb6b" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/client.yaml", + "sha256": "52e21883f677e69c99813eca8f273cea06e598c0475e5d51959251ba05161f53" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/decision-request.json", + "sha256": "c56938c703a04a6b5c7a274c48d29e762042f6e3c2be318f605d96ba54705419" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/delivery-metadata.json", + "sha256": "883d25d0c42904b6e1c450572252664677c23bdc7e50076551db74e1be242940" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/deployment-preconditions.json", + "sha256": "940594b48dfc024ed3eb83f86f051ee539b2ad90a18aa088cfa73483618e529e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/execution-steps.json", + "sha256": "98cb80a42e22315a7e846418f5157091c2e246ed3eb86e26dc46a3d5bec69ee6" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/forgejo-auth-source-inventory.json", + "sha256": "84c005ebf6cab6d04108b05b899f941479f4cc4b98719447cebfc2d341fdd0a1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/forgejo-values.postimage.yaml", + "sha256": "210e6e450ad9fbe7e25ad7ec8ae5d4e9bf9bbc9e7f65d52ac670a66a9dd79d06" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/helm-render-validation.json", + "sha256": "0b458d9f3f4184323c890c063db7e52f715af56084b9df0512050cb466a7941c" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/issuer-start-probe.json", + "sha256": "d6599ea6bba54295937a1a6371768c8464139f00b3265cc5367f891c6b78d4d1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/native-signin-settings.json", + "sha256": "92f4be74ea1a2b05822896018b3e40ec17be379c7b27d44f7d077b937891eb0e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/net-kingdom-client.postimage.yaml", + "sha256": "3210f662cf65d54e912969ad03767053baf5c867402fc5f24b7017fb3b82d8e1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/prepublication-validation.json", + "sha256": "a85a9256bf87a7f321fd7b05ef461c7f4eb28a698a5a0d25cad705bb53d3940e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/proposal.json", + "sha256": "61eff8b488674e75510133fe118de86d895be04c033e109c3597c03ed2ecf30e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/proposal.sha256", + "sha256": "49ad6b5e7bccc88ffe3630454facb3ea49a6663cb42ad423b548d2adc4d52754" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt1.json", + "sha256": "3966e5e9f3db2160cd0ec05e1c32a3f40c80e3448b1147c0bb80d9831748492f" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt1.jsonl", + "sha256": "c36143e6ca9285b1f596df3c0e1873b767b2cfda70c2620cd63b43333e909ce2" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt2.json", + "sha256": "9e341cd83f74d64d538b0481109c477796a477a268688abc53c096f332d708e1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt2.jsonl", + "sha256": "491ebcaf534083308c9bb5ca4df3c3f0e3e52ee98f1c5c614b88aaa8ffe82172" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt3.json", + "sha256": "663cafc1ebf62d3a46c47476e24d989f1077454919e032af5a6995164d89aef5" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt3.jsonl", + "sha256": "4713adec78a038964aff5c2b2c30b7ea9adda7582e9aee9edfbef97863bae5b2" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-baseline.json", + "sha256": "c29bd2100de02383507a06340ab5a71ded1743f121d84bb4848f72bfb3a06330" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-result.json", + "sha256": "0fe021cacb6c8db0727ca8e4f31fa29960549fba3dd11871de00453667f40b0e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-build-values.yaml", + "sha256": "5239c5c635d2467d7b3f4ea90e85ac71819afcca6b07f609c56b7d22b36ca1b6" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-registration-dry-run.json", + "sha256": "4dc8aaab56534b10a7c58e32fe5f20d379645cbdd2005278a2eedfb9b1fab6b3" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-registration-inspection.json", + "sha256": "6dba568b9ffa3cc8dc38b773344d1848ed00112c171352deb55d0897fd6299ca" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public_pkce_interop_test.go", + "sha256": "8968c617d83bb041f0c2a4c251bf1efc88db45036f51c6eb55c5058bdb662aed" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/railiance-apps.patch", + "sha256": "65f1702d3450512f1b022992f0ec31953ae1e748e70d6e7d69fc2ddd64267312" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/rebuild_checker.py", + "sha256": "385a2590ecd63a59aa0189b0fc9501d2b727a4edf991c560343beff5fb106a2d" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/registration-inspection.json", + "sha256": "793f65acfc8e4f59224bc29dc48eec0fdef2b587cd16dedc4d3d06a3301ef098" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/run_public_protocol.py", + "sha256": "5d9ad425ebfafa317088ec8c2ed571d0398a3b131b0314af8658f345114b3d88" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/upstream-release-result.json", + "sha256": "e4da5c8f605a871004be87fcd4e38b7bfaf9f3ca00922b8d1485e1226101e823" + }, + { + "path": "docs/security-close-down-checklist.md", + "sha256": "5163f275b0a614de60086aa4593b6a093751ed1a1d8353a18fec545f41454d9b" + }, + { + "path": "workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md", + "sha256": "4d65cdf6daa7855fed37277cdb63ce42ac59c35adee90dc0d89437ae835cb105" + }, + { + "path": "workplans/CUST-WP-0082-netkingdom-security-hardening.md", + "sha256": "481b13f6c5c7ef3a2120ddedcfbcdeaeb8f5543a4737c08afdec097b2b5ec3d2" + } + ], + "stdout": "", + "stderr": "{\"blocked_blob_ids\": [\"18b3b902241a1b52b807ef52d2bdb0f1d41fc8b4\"], \"scanned_blobs\": 39, \"scanner_sha256\": \"88f91962aa2f93ac6ab281d553b9e125f5197bbbce38f9f2437f7299c32e5509\", \"scanner_version\": \"8.30.1\", \"scope\": \"changed-staged-blobs\", \"status\": \"blocked\"}\n" +} diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r2/publication-inputs.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r2/publication-inputs.json new file mode 100644 index 00000000..f2dffc52 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r2/publication-inputs.json @@ -0,0 +1,163 @@ +{ + "owner": "the-custodian", + "base_revision": "bab3dd1c9df67f344fb207904a8edb3896bf4bd1", + "message": "Prepare and verify the Forgejo public-PKCE build profile for scoped review", + "files": [ + { + "path": ".kaizen/agents/custodian-codex/supervision.json", + "sha256": "6da87d32ad01919507beaf32248586fa2996337034ec9e39ad96bf3b975ac6bf" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/README.md", + "sha256": "865e22f76f3c5a66dfd5ee5b39e735ef99c7e40429515f465bd1b9fabe74ed1e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/check_upstream_release.py", + "sha256": "bf4e0bfe5f233d988df566fafb56c869bb809123204068460acc3d7ec0668f40" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/checker-reproduction.json", + "sha256": "196d654fb711ff9e4fbd4e89a3a79fe61f77a74208942e9c6c8be5d417699e40" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/client-public-build.yaml", + "sha256": "942d642a40bf76f11d09336fa6e90f861b5fccffa7ba6143bdcbfa8a1498bb6b" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/client.yaml", + "sha256": "52e21883f677e69c99813eca8f273cea06e598c0475e5d51959251ba05161f53" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/decision-request.json", + "sha256": "c56938c703a04a6b5c7a274c48d29e762042f6e3c2be318f605d96ba54705419" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/delivery-metadata.json", + "sha256": "883d25d0c42904b6e1c450572252664677c23bdc7e50076551db74e1be242940" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/deployment-preconditions.json", + "sha256": "940594b48dfc024ed3eb83f86f051ee539b2ad90a18aa088cfa73483618e529e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/execution-steps.json", + "sha256": "98cb80a42e22315a7e846418f5157091c2e246ed3eb86e26dc46a3d5bec69ee6" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/forgejo-auth-source-inventory.json", + "sha256": "84c005ebf6cab6d04108b05b899f941479f4cc4b98719447cebfc2d341fdd0a1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/forgejo-values.postimage.yaml", + "sha256": "210e6e450ad9fbe7e25ad7ec8ae5d4e9bf9bbc9e7f65d52ac670a66a9dd79d06" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/helm-render-validation.json", + "sha256": "0b458d9f3f4184323c890c063db7e52f715af56084b9df0512050cb466a7941c" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/issuer-start-probe.json", + "sha256": "d6599ea6bba54295937a1a6371768c8464139f00b3265cc5367f891c6b78d4d1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/native-signin-settings.json", + "sha256": "92f4be74ea1a2b05822896018b3e40ec17be379c7b27d44f7d077b937891eb0e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/net-kingdom-client.postimage.yaml", + "sha256": "3210f662cf65d54e912969ad03767053baf5c867402fc5f24b7017fb3b82d8e1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/prepublication-validation.json", + "sha256": "a85a9256bf87a7f321fd7b05ef461c7f4eb28a698a5a0d25cad705bb53d3940e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/proposal.json", + "sha256": "61eff8b488674e75510133fe118de86d895be04c033e109c3597c03ed2ecf30e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/proposal.sha256", + "sha256": "49ad6b5e7bccc88ffe3630454facb3ea49a6663cb42ad423b548d2adc4d52754" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt1.json", + "sha256": "3966e5e9f3db2160cd0ec05e1c32a3f40c80e3448b1147c0bb80d9831748492f" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt1.jsonl", + "sha256": "c36143e6ca9285b1f596df3c0e1873b767b2cfda70c2620cd63b43333e909ce2" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt2.json", + "sha256": "9e341cd83f74d64d538b0481109c477796a477a268688abc53c096f332d708e1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt2.jsonl", + "sha256": "491ebcaf534083308c9bb5ca4df3c3f0e3e52ee98f1c5c614b88aaa8ffe82172" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt3.json", + "sha256": "663cafc1ebf62d3a46c47476e24d989f1077454919e032af5a6995164d89aef5" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt3.jsonl", + "sha256": "4713adec78a038964aff5c2b2c30b7ea9adda7582e9aee9edfbef97863bae5b2" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-baseline.json", + "sha256": "c29bd2100de02383507a06340ab5a71ded1743f121d84bb4848f72bfb3a06330" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-result.json", + "sha256": "0fe021cacb6c8db0727ca8e4f31fa29960549fba3dd11871de00453667f40b0e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-build-values.yaml", + "sha256": "5239c5c635d2467d7b3f4ea90e85ac71819afcca6b07f609c56b7d22b36ca1b6" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-registration-dry-run.json", + "sha256": "4dc8aaab56534b10a7c58e32fe5f20d379645cbdd2005278a2eedfb9b1fab6b3" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-registration-inspection.json", + "sha256": "6dba568b9ffa3cc8dc38b773344d1848ed00112c171352deb55d0897fd6299ca" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public_pkce_interop_test.go", + "sha256": "8968c617d83bb041f0c2a4c251bf1efc88db45036f51c6eb55c5058bdb662aed" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/railiance-apps.patch", + "sha256": "65f1702d3450512f1b022992f0ec31953ae1e748e70d6e7d69fc2ddd64267312" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/rebuild_checker.py", + "sha256": "385a2590ecd63a59aa0189b0fc9501d2b727a4edf991c560343beff5fb106a2d" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/registration-inspection.json", + "sha256": "793f65acfc8e4f59224bc29dc48eec0fdef2b587cd16dedc4d3d06a3301ef098" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/run_public_protocol.py", + "sha256": "5d9ad425ebfafa317088ec8c2ed571d0398a3b131b0314af8658f345114b3d88" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/upstream-release-result.json", + "sha256": "e4da5c8f605a871004be87fcd4e38b7bfaf9f3ca00922b8d1485e1226101e823" + }, + { + "path": "docs/security-close-down-checklist.md", + "sha256": "5163f275b0a614de60086aa4593b6a093751ed1a1d8353a18fec545f41454d9b" + }, + { + "path": "workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md", + "sha256": "4d65cdf6daa7855fed37277cdb63ce42ac59c35adee90dc0d89437ae835cb105" + }, + { + "path": "workplans/CUST-WP-0082-netkingdom-security-hardening.md", + "sha256": "481b13f6c5c7ef3a2120ddedcfbcdeaeb8f5543a4737c08afdec097b2b5ec3d2" + } + ] +} diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/consistency.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/consistency.json new file mode 100644 index 00000000..c4f0cc34 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/consistency.json @@ -0,0 +1,208 @@ +{ + "repo_slug": "the-custodian", + "repo_path": "/home/worsch/the-custodian", + "source_revision": "17635cb0a76e5595ec06421ab7419ae889f6d731", + "source_revision_reason": null, + "issues": [ + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager warning: workplans/: repository uses more than one workplan prefix: ['CUST-WP', 'THE-WP']", + "file_path": "workplans/", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager contradictory: workplans/ADHOC-2026-08-25-retired.md: workplan id 'CUST-WP-ADHOC-2026-08-25-RETIRED' is not accepted by the canon kind registry", + "file_path": "workplans/ADHOC-2026-08-25-retired.md", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-33", + "message": "WORK-RECORDS.md is missing or stale \u2014 regenerate via fix-consistency (CUST-WP-0061-T04 generated work-record index)", + "file_path": "WORK-RECORDS.md", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": true + }, + { + "severity": "WARN", + "check_id": "C-05", + "message": "Title drift in 'cust-wp-0010': file='Domain and Repository Goals' db='Workplan Lifecycle Documentation' (file wins)", + "file_path": "workplans/CUST-WP-0010b-domain-and-repo-goals.md", + "db_id": "def8455a-9de4-4891-a15a-5b09ca98ab1e", + "file_value": "Domain and Repository Goals", + "db_value": "Workplan Lifecycle Documentation", + "fixable": true + }, + { + "severity": "WARN", + "check_id": "C-20", + "message": "Workplan dependency target 'STATE-WP-0092' is not linked to State Hub", + "file_path": "workplans/CUST-WP-0072-fleet-flavor-and-depends-on-backfill.md", + "db_id": "", + "file_value": "STATE-WP-0092", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-40", + "message": "blocker satisfied, task still wait: 'CUST-WP-0073-T05' in workplan 'CUST-WP-0073' \u2014 decision 1591daa1-6e85-4dfd-aadd-5a9fe1ef47fa is resolved", + "file_path": "workplans/CUST-WP-0073-agent-credential-separation.md#CUST-WP-0073-T05", + "db_id": "", + "file_value": "1591daa1-6e85-4dfd-aadd-5a9fe1ef47fa", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-39", + "message": "Human wait task 'CUST-WP-0079-T06' in workplan 'CUST-WP-0079' has needs_human: true without decision_id \u2014 unrouted human gate", + "file_path": "workplans/CUST-WP-0079-deterministic-security-flow.md#CUST-WP-0079-T06", + "db_id": "", + "file_value": "needs_human: true", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-10", + "message": "Task status drift 'CUST-WP-0080-T41': file='done' db='progress' (file wins)", + "file_path": "workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md#CUST-WP-0080-T41", + "db_id": "d6f1da6c-4e5f-5bb6-bbf2-ddddd69646e8", + "file_value": "done", + "db_value": "progress", + "fixable": true + }, + { + "severity": "WARN", + "check_id": "C-22", + "message": "Task description drift 'CUST-WP-0080-T41': file content differs from DB (file wins)", + "file_path": "workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md#CUST-WP-0080-T41", + "db_id": "d6f1da6c-4e5f-5bb6-bbf2-ddddd69646e8", + "file_value": "Prepared: [exact public-PKCE build-profile proposal](../docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-prep", + "db_value": "Implementation owners: Apps RAPPS-WP-0016-T02; KeyCape KEY-WP-0038-T02; existing NetKingdom registration/delivery path. ", + "fixable": true + }, + { + "severity": "WARN", + "check_id": "C-39", + "message": "Human wait task 'CUST-WP-0080-T42' in workplan 'CUST-WP-0080' has needs_human: true without decision_id \u2014 unrouted human gate", + "file_path": "workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md#CUST-WP-0080-T42", + "db_id": "", + "file_value": "needs_human: true", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-10", + "message": "Task status drift 'CUST-WP-0080-T42': file='wait' db='todo' (file wins)", + "file_path": "workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md#CUST-WP-0080-T42", + "db_id": "bd135b74-05db-5f51-ac89-d1967fdcf36b", + "file_value": "wait", + "db_value": "todo", + "fixable": true + }, + { + "severity": "WARN", + "check_id": "C-41", + "message": "Task wait-qualifier drift 'CUST-WP-0080-T42': file={'needs_human': True, 'blocking_reason': None, 'decision_id': None, 'blocked_on': None, 'wait_until': None} db={'needs_human': False, 'blocking_reason': None, 'decision_id': None, 'blocked_on': None, 'wait_until': None} (file wins)", + "file_path": "workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md#CUST-WP-0080-T42", + "db_id": "bd135b74-05db-5f51-ac89-d1967fdcf36b", + "file_value": "{\"blocked_on\": null, \"blocking_reason\": null, \"decision_id\": null, \"needs_human\": true, \"wait_until\": null}", + "db_value": "{\"blocked_on\": null, \"blocking_reason\": null, \"decision_id\": null, \"needs_human\": false, \"wait_until\": null}", + "fixable": true + }, + { + "severity": "WARN", + "check_id": "C-22", + "message": "Task description drift 'CUST-WP-0082-T20': file content differs from DB (file wins)", + "file_path": "workplans/CUST-WP-0082-netkingdom-security-hardening.md#CUST-WP-0082-T20", + "db_id": "eef7e3d9-9cfb-5525-af82-a8cc1bba6e67", + "file_value": "Remaining security acceptance from CUST-WP-0080-T19, CUST-WP-0080-T23. The build-mode functional receipts do not close t", + "db_value": "Remaining security acceptance from CUST-WP-0080-T19, CUST-WP-0080-T23. The build-mode functional receipts do not close t", + "fixable": true + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Closed DB workstream 'cust-wp-0010b' (id=416ff571\u2026, status=finished) has no backing workplan file", + "file_path": "", + "db_id": "416ff571-18cf-5cb2-9c8b-836f68a301b3", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'interactive-the-custodian@retired-20260828' (id=370c2481\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "370c2481-6806-41eb-a917-f8874f03184f", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'adhoc-2026-05-02@retired-20260827' (id=3f54ce9c\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "3f54ce9c-1f95-42de-894f-0f81a52ba2e8", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'the-custodian-adhoc-2026-07-02@retired-20260827' (id=5c53733b\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "5c53733b-c077-4a93-be66-9c3af8f9b6fd", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-26", + "message": "Workplan id 'THE-WP-0001' uses prefix 'THE-WP' but repo canonical prefix is 'CUST-WP' \u2014 new plans must conform", + "file_path": "workplans/THE-WP-0001-federation-interface.md", + "db_id": "", + "file_value": "THE-WP-0001", + "db_value": "CUST-WP", + "fixable": false + } + ], + "fixes_applied": [ + "bindings: synced 90/90", + "C-17 cleared: pushed 1 backlogged commit(s)", + "C-33 fixed: regenerated WORK-RECORDS.md", + "C-05 fixed: workstream def8455a\u2026 title \u2192 'Domain and Repository Goals'", + "C-10 fixed: task d6f1da6c\u2026 status \u2192 'done'", + "C-22 fixed: task d6f1da6c\u2026 description updated", + "C-10 FAILED: task bd135b74\u2026 status \u2192 'wait': Client error '422 Unprocessable Entity' for url 'http://127.0.0.1:8000/tasks/bd135b74-05db-5f51-ac89-d1967fdcf36b'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/422", + "C-41 fixed: task bd135b74\u2026 wait qualifiers synced", + "C-22 fixed: task eef7e3d9\u2026 description updated", + "brief: .custodian-brief.md updated", + "push: pushed" + ], + "summary": { + "fail": 0, + "automation_error": 0, + "warn": 14, + "info": 4 + }, + "result": "warn" +} diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/consistency.stderr.txt b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/consistency.stderr.txt new file mode 100644 index 00000000..9216f804 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/consistency.stderr.txt @@ -0,0 +1,2 @@ +WARN: git commit failed for writeback: Generated-only commits rejected: staged +WARN: working-memory commit failed: Generated-only commits rejected: staged diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/final-readback.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/final-readback.json new file mode 100644 index 00000000..305c544e --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/final-readback.json @@ -0,0 +1,377 @@ +{ + "verified": true, + "published_revision": "17635cb0a76e5595ec06421ab7419ae889f6d731", + "primary_projection_exact": true, + "source_task_bindings": [ + { + "workplan_id": "dfadb19b-445e-59c6-bcd6-48e87b912c52", + "verified_tasks": 44, + "rows": [ + { + "id": "CUST-WP-0080-T01", + "hub_task_id": "c770f7e1-25eb-53ec-9a37-1f7794077ff8", + "status": "done" + }, + { + "id": "CUST-WP-0080-T02", + "hub_task_id": "5973026f-8ca9-5882-99fe-65a54bc250ac", + "status": "done" + }, + { + "id": "CUST-WP-0080-T03", + "hub_task_id": "87637402-02f1-57c1-8fbc-4141598af8e3", + "status": "progress" + }, + { + "id": "CUST-WP-0080-T04", + "hub_task_id": "82378b0f-7004-5c2f-9683-b356a1227576", + "status": "todo" + }, + { + "id": "CUST-WP-0080-T05", + "hub_task_id": "ed8b909a-23bf-5e5f-b600-e477fbae136b", + "status": "done" + }, + { + "id": "CUST-WP-0080-T06", + "hub_task_id": "6aca534c-5c7a-556f-b6b6-406433670c29", + "status": "progress" + }, + { + "id": "CUST-WP-0080-T07", + "hub_task_id": "bb236dea-30f7-5437-b01c-f14d2509e061", + "status": "done" + }, + { + "id": "CUST-WP-0080-T08", + "hub_task_id": "18b885fe-503f-5ebc-b390-808f71316264", + "status": "done" + }, + { + "id": "CUST-WP-0080-T09", + "hub_task_id": "a1f2dbe0-13d4-57a2-a2b5-c0137cd48410", + "status": "done" + }, + { + "id": "CUST-WP-0080-T10", + "hub_task_id": "1f3c78af-5686-58ea-9133-8afc2df36b8f", + "status": "done" + }, + { + "id": "CUST-WP-0080-T11", + "hub_task_id": "bffd4e10-2cf0-5835-a8d0-ae1763ca3873", + "status": "done" + }, + { + "id": "CUST-WP-0080-T12", + "hub_task_id": "bb09e414-6d79-5dcd-b8e6-b73a046a4dda", + "status": "done" + }, + { + "id": "CUST-WP-0080-T13", + "hub_task_id": "793e78f0-7782-5e48-bdc0-b65127b32ecb", + "status": "done" + }, + { + "id": "CUST-WP-0080-T14", + "hub_task_id": "7ecbd622-03a8-5b49-9621-8d21d7d15890", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T15", + "hub_task_id": "434d9c78-7789-5b78-8d9d-d87b0638b469", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T16", + "hub_task_id": "e6183073-cc8e-5c6f-8fbd-db50bb1a466c", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T17", + "hub_task_id": "4de46468-7ae2-59e3-be2b-1a32506153a5", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T18", + "hub_task_id": "fd796e9c-dd70-5c65-a6fe-eafe3911bc8f", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T19", + "hub_task_id": "4ffd2e33-d887-5686-bad1-7f32a56191a8", + "status": "done" + }, + { + "id": "CUST-WP-0080-T20", + "hub_task_id": "0d9df435-b9a2-5b89-833d-799785c969a9", + "status": "done" + }, + { + "id": "CUST-WP-0080-T21", + "hub_task_id": "fa11a2a4-4dbd-5dfb-ad29-bc7a99cc6258", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T22", + "hub_task_id": "88588db8-8c6e-5d15-a85b-2c068f4e8a2a", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T23", + "hub_task_id": "266e228b-7754-5323-b0c6-37f860592d90", + "status": "progress" + }, + { + "id": "CUST-WP-0080-T24", + "hub_task_id": "a4f06ce0-69a5-5cbb-9d78-6c5b89ba9853", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T25", + "hub_task_id": "3be1c76d-a5f3-5dea-9777-349dc97e836e", + "status": "done" + }, + { + "id": "CUST-WP-0080-T26", + "hub_task_id": "0491b6b4-a238-58ef-bf3a-505749e5655c", + "status": "done" + }, + { + "id": "CUST-WP-0080-T27", + "hub_task_id": "19540d29-c4df-5f1a-acf7-127965c9a396", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T28", + "hub_task_id": "5ac99f55-0dde-5d1c-b88c-b85f34469abc", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T29", + "hub_task_id": "3ec89fb2-fe97-50f5-a3c9-88b731b0d2ec", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T30", + "hub_task_id": "457400ad-6c44-5160-a77a-63c6ad5acabc", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T31", + "hub_task_id": "cbf32375-279a-5bf3-b867-06333a1ff2ca", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T32", + "hub_task_id": "5a0cb7f7-1cd8-50ba-8af2-a2b13ed34a18", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T33", + "hub_task_id": "4547ac4c-8893-54fe-ae6e-362682bb7920", + "status": "todo" + }, + { + "id": "CUST-WP-0080-T34", + "hub_task_id": "393b9fcc-323b-5182-92c6-44530fce7efb", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T35", + "hub_task_id": "db274192-07d6-5be7-9c1e-d63c5a9fb57f", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T36", + "hub_task_id": "586232a1-57b0-5e04-a61b-fb687bcc8999", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T37", + "hub_task_id": "d533ca34-a691-5f8e-8cc2-5f408b679538", + "status": "todo" + }, + { + "id": "CUST-WP-0080-T38", + "hub_task_id": "2350a829-bd8c-5c3b-9f39-07bfa1c3f228", + "status": "done" + }, + { + "id": "CUST-WP-0080-T39", + "hub_task_id": "da6ae9a3-9107-5ca7-adb2-c9d85b3c529c", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T40", + "hub_task_id": "8e71f6f0-9fc3-509b-8f1b-768f7d9cbd0e", + "status": "cancel" + }, + { + "id": "CUST-WP-0080-T41", + "hub_task_id": "d6f1da6c-4e5f-5bb6-bbf2-ddddd69646e8", + "status": "done" + }, + { + "id": "CUST-WP-0080-T42", + "hub_task_id": "bd135b74-05db-5f51-ac89-d1967fdcf36b", + "status": "wait" + }, + { + "id": "CUST-WP-0080-T43", + "hub_task_id": "f869f913-2349-5223-8c3e-5c76f4cebe60", + "status": "todo" + }, + { + "id": "CUST-WP-0080-T44", + "hub_task_id": "8c9c4dda-5047-5d37-9037-4f7e5eac53d8", + "status": "todo" + } + ] + }, + { + "workplan_id": "b29f9f25-b508-5c2c-98fd-2f6877f109cf", + "verified_tasks": 25, + "rows": [ + { + "id": "CUST-WP-0082-T01", + "hub_task_id": "2ac61e1a-5a01-5ff9-ae35-017efe1e987c", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T02", + "hub_task_id": "a88d7bbe-49d8-5dc0-a613-eeebb756bd0c", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T03", + "hub_task_id": "55e99c7e-69de-523a-88f1-660c3f69edb0", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T04", + "hub_task_id": "aa7112b1-e76e-520e-a59a-6aa4aa39b35d", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T05", + "hub_task_id": "8e9c5b9a-8315-5efa-9cd3-00a113c6ea81", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T06", + "hub_task_id": "a7cf387e-da06-5cca-8815-43a4ecbf8ea9", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T07", + "hub_task_id": "c555c76a-00e8-5d07-9aef-7a4e6ac7ea11", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T08", + "hub_task_id": "f1dbdb5d-30cb-5012-9fa5-e59520ba2aae", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T09", + "hub_task_id": "88c0467d-b8b8-5972-b50a-2a87b51365fb", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T10", + "hub_task_id": "5ddfe024-b823-51c9-ac4d-ec5e53c47346", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T11", + "hub_task_id": "5b3767a0-5657-5ae3-b094-70e429a26617", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T12", + "hub_task_id": "cbac0912-ac45-58d4-93db-8f49ac7750b2", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T13", + "hub_task_id": "1903466c-674f-5025-acd7-873396c6d2fe", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T14", + "hub_task_id": "38363478-e46b-54bd-972d-ce998f3b8dd0", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T15", + "hub_task_id": "564a545a-b43d-5013-8f1b-e34cd54b52c7", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T16", + "hub_task_id": "90c8fb36-9032-57e7-85da-684d18e5c0b1", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T17", + "hub_task_id": "9e35af30-ec53-58f4-8517-5a5df85b6c79", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T18", + "hub_task_id": "316d9fc2-27e3-53ce-809d-a50769fa9734", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T19", + "hub_task_id": "9e26f419-0547-596a-bd0c-66b39f2d6ba8", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T20", + "hub_task_id": "eef7e3d9-9cfb-5525-af82-a8cc1bba6e67", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T21", + "hub_task_id": "d3dd8c35-284b-5035-a1a3-e0a0dbef86ba", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T22", + "hub_task_id": "43a94f1e-e906-55ac-a837-d9ce5c495d6b", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T23", + "hub_task_id": "4fda91f5-94c1-52fc-9dbd-c3693950165b", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T24", + "hub_task_id": "2c92d61d-61ed-5813-a2e0-6e055c6cb564", + "status": "todo" + }, + { + "id": "CUST-WP-0082-T25", + "hub_task_id": "18cc3a93-f3ac-561c-84ce-8f009130c951", + "status": "todo" + } + ] + } + ], + "unrelated_worktree_and_index_preserved": 8, + "consistency_summary": { + "fail": 0, + "automation_error": 0, + "warn": 14, + "info": 4 + }, + "proposal_revision": 2, + "proposal_digest": "fcea2cd32b8ee2634d2ebeb9ef4b659b6b85f8a4878413ed96e5d06cb09892c3", + "founder_decision": "ad88edeb-7c7c-486f-a695-1a7abae5b20c", + "needs_human_prompt_verified": true, + "native_changes_executed": false, + "goal_complete": false +} diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/progress-close.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/progress-close.json new file mode 100644 index 00000000..5ad51e41 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/progress-close.json @@ -0,0 +1,14 @@ +{ + "workplan_id": "dfadb19b-445e-59c6-bcd6-48e87b912c52", + "id": "ebdfd024-852d-4562-a105-d7f141862e2f", + "topic_id": null, + "task_id": "d6f1da6c-4e5f-5bb6-bbf2-ddddd69646e8", + "decision_id": null, + "event_type": "note", + "summary": "WP80 T41 complete preparation: inspected actual missing forgejo registration/env/delivery and empty Forgejo source inventory; proved actual issuer + upstream Goth public PKCE/token/UserInfo, wrong-verifier/replay refusal with synthetic MFA/session; unchanged Forgejo11.0.3 runtime passed disposable CLI/page/PKCE redirect; local login preserved. Reproduced owner-reviewed be37738f checker; actual live/proposed registry checks and server dry-run pass with no mutation. Prepared exact temporary public-PKCE build-profile proposal CUST80-FORGEJO-PUBLIC-BUILD-20261018 r2 sha fcea2cd3, source postimages, four commands, two restarts and created-only rollback; confidential-client/full security target remains CUST-WP-0082-T20. r1 publication refusal was two actual public source hashes misclassified as keys; r2 uses typed path/hash records and passes unchanged ordinary controls. Original digest/bytes/reconstruction and refusal receipts retained; same trial, no go or scored native success fabricated. Normal publication17635cb0 and exact primary readback verify44WP80+25WP82 tasks, no consistency failures/automation errors and all8 unrelated index/worktree states preserved. T42 waits on actual founder decision ad88edeb and authorization of independent NetKingdom/Apps/KeyCape reviewers; exact UI question submitted. No new agents, native changes, credentials or authority promotion.", + "detail": null, + "author": "codex", + "session_id": null, + "created_at": "2026-10-18T17:33:24.998857Z", + "workstream_id": "dfadb19b-445e-59c6-bcd6-48e87b912c52" +} diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/projection.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/projection.json new file mode 100644 index 00000000..9675e5dd --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/projection.json @@ -0,0 +1,304 @@ +{ + "ok": true, + "status": "applied", + "repo_slug": "the-custodian", + "commit": "17635cb0a76e5595ec06421ab7419ae889f6d731", + "requests": 2, + "elapsed_ms": 11290.3, + "git": { + "upstream": "origin/main", + "behind": 0, + "ahead": 0 + }, + "identifiers": { + "schema": "repo-manager.identifier-assignment.v1", + "ok": true, + "executed": true, + "repo": "the-custodian", + "namespace": "helixforge", + "assignments": [], + "historical_invalid_identifiers": [ + { + "kind": "workplan", + "id": "CUST-WP-ADHOC-2026-08-25-RETIRED", + "source": "workplans/ADHOC-2026-08-25-retired.md" + } + ], + "historical_identity_collisions": [], + "files_changed": [] + }, + "receipt": { + "schema": "state-hub.repository-projection-reconcile.v1", + "instance_role": "primary", + "instance_label": "railiance01", + "expected_commit": "17635cb0a76e5595ec06421ab7419ae889f6d731", + "derived_commit": "17635cb0a76e5595ec06421ab7419ae889f6d731", + "outcome": { + "schema": "state-hub.projection-reset.v1", + "repo_slug": "the-custodian", + "commit": "17635cb0a76e5595ec06421ab7419ae889f6d731", + "status": "applied", + "counts": { + "created": 0, + "updated": 89, + "retired": 0, + "refused": 0, + "released": 0, + "created_tasks": 0, + "updated_tasks": 1, + "cancelled_tasks": 0, + "created_edges": 0, + "removed_edges": 1, + "unresolved_edges": 0, + "external_edges": 13 + }, + "created": [], + "updated": [ + "CUST-WP-0000", + "CUST-WP-0000b", + "CUST-WP-0000c", + "CUST-WP-0001", + "CUST-WP-0002", + "CUST-WP-0004", + "CUST-WP-0005", + "CUST-WP-0006", + "CUST-WP-0007", + "CUST-WP-0008", + "CUST-WP-0009", + "CUST-WP-0010", + "CUST-WP-0010b", + "CUST-WP-0013", + "CUST-WP-0014", + "CUST-WP-0015", + "CUST-WP-0016", + "CUST-WP-0017", + "CUST-WP-0017-LEGACY", + "CUST-WP-0018", + "CUST-WP-0019", + "CUST-WP-0020", + "CUST-WP-0021", + "CUST-WP-0022", + "CUST-WP-0023", + "CUST-WP-0024", + "CUST-WP-0025", + "CUST-WP-0026", + "CUST-WP-0027", + "CUST-WP-0028", + "CUST-WP-0029", + "CUST-WP-0030", + "CUST-WP-0031", + "CUST-WP-0032", + "CUST-WP-0033", + "CUST-WP-0034", + "CUST-WP-0035", + "CUST-WP-0036", + "CUST-WP-0037", + "CUST-WP-0039", + "CUST-WP-0040", + "CUST-WP-0041", + "CUST-WP-0043", + "CUST-WP-0044", + "CUST-WP-0045", + "CUST-WP-0046", + "CUST-WP-0047", + "CUST-WP-0048", + "CUST-WP-0049", + "CUST-WP-0050", + "CUST-WP-0051", + "CUST-WP-0052", + "CUST-WP-0053", + "CUST-WP-0053-LEGACY", + "CUST-WP-0054", + "CUST-WP-0055", + "CUST-WP-0056", + "CUST-WP-0057", + "CUST-WP-0058", + "CUST-WP-0059", + "CUST-WP-0060", + "CUST-WP-0061", + "CUST-WP-0062", + "CUST-WP-0063", + "CUST-WP-0064", + "CUST-WP-0065", + "CUST-WP-0066", + "CUST-WP-0067", + "CUST-WP-0068", + "CUST-WP-0069", + "CUST-WP-0070", + "CUST-WP-0071", + "CUST-WP-0072", + "CUST-WP-0073", + "CUST-WP-0074", + "CUST-WP-0075", + "CUST-WP-0076", + "CUST-WP-0077", + "CUST-WP-0078", + "CUST-WP-0079", + "CUST-WP-0080", + "CUST-WP-0081", + "CUST-WP-0082", + "CUST-WP-ADHOC-2026-03-29", + "CUST-WP-ADHOC-2026-05-02", + "CUST-WP-ADHOC-2026-07-02", + "CUST-WP-ADHOC-2026-08-25", + "CUST-WP-ADHOC-2026-09-06", + "THE-WP-0001" + ], + "retired": [], + "released": [], + "created_tasks": [], + "updated_tasks": [ + "CUST-WP-0080-T42" + ], + "cancelled_tasks": [], + "created_edges": [], + "removed_edges": [ + { + "id": "1d16cacb-9845-4709-9fbe-78efc42f391c", + "from_workplan_id": "dfadb19b-445e-59c6-bcd6-48e87b912c52", + "from_task_id": "d6f1da6c-4e5f-5bb6-bbf2-ddddd69646e8", + "to_workplan_id": null, + "to_task_id": "4ffd2e33-d887-5686-bad1-7f32a56191a8", + "relationship_type": "starts_after" + } + ], + "unresolved_edges": [], + "external_edges": [ + { + "workplan": "CUST-WP-0071", + "from": "CUST-WP-0071-T05", + "target": "CUST-WP-0071-T04", + "relationship_type": "starts_after", + "from_workplan_id": "2249bddb-7524-5add-bd5c-c4163a6ca0f3", + "from_task_id": "20ddd4d7-d85d-5b95-bb0a-7b0ca8af76ca", + "to_workplan_id": null, + "to_task_id": "944f98e2-7e42-5894-925b-752423f3a1cc" + }, + { + "workplan": "CUST-WP-0071", + "from": "CUST-WP-0071-T03", + "target": "CUST-WP-0071-T01", + "relationship_type": "starts_after", + "from_workplan_id": "2249bddb-7524-5add-bd5c-c4163a6ca0f3", + "from_task_id": "6dc67558-eb1e-5bb6-a667-986f884dd495", + "to_workplan_id": null, + "to_task_id": "4ae8eb8d-f8c5-5256-ae50-c323cfd73d7a" + }, + { + "workplan": "CUST-WP-0071", + "from": "CUST-WP-0071-T03", + "target": "CUST-WP-0071-T02", + "relationship_type": "starts_after", + "from_workplan_id": "2249bddb-7524-5add-bd5c-c4163a6ca0f3", + "from_task_id": "6dc67558-eb1e-5bb6-a667-986f884dd495", + "to_workplan_id": null, + "to_task_id": "82192370-2fd7-5363-88d2-3c67889d3d68" + }, + { + "workplan": "CUST-WP-0071", + "from": "CUST-WP-0071-T02", + "target": "CUST-WP-0071-T01", + "relationship_type": "starts_after", + "from_workplan_id": "2249bddb-7524-5add-bd5c-c4163a6ca0f3", + "from_task_id": "82192370-2fd7-5363-88d2-3c67889d3d68", + "to_workplan_id": null, + "to_task_id": "4ae8eb8d-f8c5-5256-ae50-c323cfd73d7a" + }, + { + "workplan": "CUST-WP-0071", + "from": "CUST-WP-0071-T02", + "target": "RAPPS-WP-0014-T03", + "relationship_type": "starts_after", + "from_workplan_id": "2249bddb-7524-5add-bd5c-c4163a6ca0f3", + "from_task_id": "82192370-2fd7-5363-88d2-3c67889d3d68", + "to_workplan_id": null, + "to_task_id": "dd069c6d-fcc1-5bac-b233-976f2f0d5cd1" + }, + { + "workplan": "CUST-WP-0071", + "from": "CUST-WP-0071-T04", + "target": "CUST-WP-0071-T03", + "relationship_type": "starts_after", + "from_workplan_id": "2249bddb-7524-5add-bd5c-c4163a6ca0f3", + "from_task_id": "944f98e2-7e42-5894-925b-752423f3a1cc", + "to_workplan_id": null, + "to_task_id": "6dc67558-eb1e-5bb6-a667-986f884dd495" + }, + { + "workplan": "CUST-WP-0073", + "from": "CUST-WP-0073-T02", + "target": "GLAS-WP-0012", + "relationship_type": "blocks", + "from_workplan_id": "a98a9f34-83b4-5c8c-8107-e05f7806d50d", + "from_task_id": "4b88b0b7-dc7e-5612-aa5d-1a08f0530c35", + "to_workplan_id": "170bf1ae-337f-5553-8d1e-03b07100e08f", + "to_task_id": null + }, + { + "workplan": "CUST-WP-0073", + "from": "CUST-WP-0073-T04", + "target": "CUST-WP-0073-T02", + "relationship_type": "starts_after", + "from_workplan_id": "a98a9f34-83b4-5c8c-8107-e05f7806d50d", + "from_task_id": "90725511-4e31-549f-b567-47feff1a9ca4", + "to_workplan_id": null, + "to_task_id": "4b88b0b7-dc7e-5612-aa5d-1a08f0530c35" + }, + { + "workplan": "CUST-WP-0079", + "from": "CUST-WP-0079-T03", + "target": "ACTIVITY-WP-0047", + "relationship_type": "blocks", + "from_workplan_id": "ab288f92-d364-5c24-9362-aee451f266c3", + "from_task_id": "1be0569c-221d-5925-a0ff-fd2af88e52b1", + "to_workplan_id": "ee97869b-dca2-54c9-aa18-0b479c244fb3", + "to_task_id": null + }, + { + "workplan": "CUST-WP-0079", + "from": "CUST-WP-0079-T04", + "target": "PNEX-WP-0006", + "relationship_type": "blocks", + "from_workplan_id": "ab288f92-d364-5c24-9362-aee451f266c3", + "from_task_id": "5dd52156-09a8-5781-b288-99ae822f59a6", + "to_workplan_id": "774c5037-a3d0-5e65-893c-d18970acd66a", + "to_task_id": null + }, + { + "workplan": "CUST-WP-0080", + "from": "CUST-WP-0080-T23", + "target": "CUST-WP-0080-T19", + "relationship_type": "starts_after", + "from_workplan_id": "dfadb19b-445e-59c6-bcd6-48e87b912c52", + "from_task_id": "266e228b-7754-5323-b0c6-37f860592d90", + "to_workplan_id": null, + "to_task_id": "4ffd2e33-d887-5686-bad1-7f32a56191a8" + }, + { + "workplan": "CUST-WP-0080", + "from": "CUST-WP-0080-T33", + "target": "CUST-WP-0080-T12", + "relationship_type": "starts_after", + "from_workplan_id": "dfadb19b-445e-59c6-bcd6-48e87b912c52", + "from_task_id": "4547ac4c-8893-54fe-ae6e-362682bb7920", + "to_workplan_id": null, + "to_task_id": "bb09e414-6d79-5dcd-b8e6-b73a046a4dda" + }, + { + "workplan": "CUST-WP-0080", + "from": "CUST-WP-0080-T04", + "target": "CUST-WP-0080-T03", + "relationship_type": "starts_after", + "from_workplan_id": "dfadb19b-445e-59c6-bcd6-48e87b912c52", + "from_task_id": "82378b0f-7004-5c2f-9683-b356a1227576", + "to_workplan_id": null, + "to_task_id": "87637402-02f1-57c1-8fbc-4141598af8e3" + } + ], + "refused": [], + "notes": [ + "Preserved bound historical row and task UUIDs: CUST-WP-ADHOC-2026-08-25-RETIRED" + ] + } + } +} diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/projection.stderr.txt b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/projection.stderr.txt new file mode 100644 index 00000000..e69de29b diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-backup/.custodian-brief.md.worktree b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-backup/.custodian-brief.md.worktree new file mode 100644 index 00000000..6aad3a57 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-backup/.custodian-brief.md.worktree @@ -0,0 +1,62 @@ + +# Custodian Brief — the-custodian + +**Domain:** infotech +**Last synced:** 2026-10-15 23:45 UTC +**State Hub:** http://127.0.0.1:8000 *(adjust if running on a remote machine)* + +## Active Workstreams + +### NetKingdom target security architecture and SEC-DSM implementation +Progress: 2/6 done | workplan_id: `dfadb19b-445e-59c6-bcd6-48e87b912c52` + +**Open tasks:** +- ► Close source defects and reconcile uncovered lifecycle gaps `87637402` +- ► Coordinate self-service Playwright identity delivery `ed8b909a` +- ► Establish the target architecture and drive the restructuring `6aca534c` +- · Verify native closure against every requirement `82378b0f` + +### Separate agent credentials and establish supervised privileged execution +Progress: 2/5 done | workplan_id: `a98a9f34-83b4-5c8c-8107-e05f7806d50d` + +**Open tasks:** +- ! Build and hand out the agent identity `4b88b0b7` + *(wait: Await GLAS-WP-0012 (glas-harness) production acceptance of the local supervised profile; then railiance-platform RBAC, railiance-enablement k3s config, railiance-infra principal mapping and ops-warden certificate issuance.)* +- ! Fleet guidance and harness guards `90725511` + *(wait: Await CUST-WP-0073-T02: the verified agent identity and execution path must exist before it can be documented; Codex/Grok read-denial guard needs glas-harness or harness-owner delivery.)* +- ! Rotate what was exposed `1b41b532` + *(wait: Deferred by founder decision 2026-09-24; reopened only by the founder on one of the three triggers below, in one attended rotation window.)* + +### Size Railiance workloads from actual demand and establish a weekly allocation review +Progress: 1/5 done | workplan_id: `2249bddb-7524-5add-bd5c-c4163a6ca0f3` + +**Open tasks:** +- ! Measure the Vergabe prototype under representative pilot use `82192370` + *(wait: Await RAPPS-WP-0014-T03 (blocked, needs_human): populated two-user/document workflow run by Bernd and the company contact, giving representative load for p95 <= 2s / zero failures.)* +- ! Review ecosystem allocations and reserve operating room `6dc67558` + *(wait: Await CUST-WP-0071-T02 representative sample; Forgejo/runner demand and zero-request workload review need owner input (railiance-cluster, railiance-forge, resource-control).)* +- ! Apply accepted sizing changes and verify their effects `944f98e2` + *(wait: Await reviewed allocation proposals and applicable workload-owner authority.)* +- ! Establish the regular weekly workload-demand and allocation assessment `20ddd4d7` + *(wait: Await the repeatable observation and accepted sizing/review procedure.)* + +### Deterministic security flow: standing authorizations, flow report, and agent re-engagement +Progress: 3/7 done | workplan_id: `ab288f92-d364-5c24-9362-aee451f266c3` + +**Open tasks:** +- ! Schedule the flow report and decision sync `1be0569c` + *(wait: Activity Core accepted the schedule in ACTIVITY-WP-0047. Await claiming rein workstation/hub acceptance, owner activation and the first unassisted fire with report/checkpoint evidence.)* +- ! Encode the standing change rule as a policy-nexus guardrail `5dd52156` + *(wait: policy-nexus owns guardrail publication; handoff written as PNEX-WP-0006.)* +- ! Stop agent-authored index and sync commits `8a3dc219` + *(wait: Local guard and repeatable shared-hook installation are implemented. Fleet generator adoption and the required full week of clean history remain unverified; repo-manager owner acceptance is needed.)* +- ! Attended window #1 `e3da807f` + *(wait: Partly done 2026-10-11: list cut from 14 to 3; U05-U07 accepted, U08 waits on KEY-WP-0040-T01. Remaining founder acts: USER-WP-0026-T03 readback, RPF-WP-0044-T08 coulombcore check, the U08 re-run, and Sol's added RPF-WP-0044-T04 issuer login.)* + +--- +## MCP Orientation (when available) + +If the state-hub MCP server is reachable, call: +`get_domain_summary("infotech")` +This provides richer cross-domain context. +If the MCP call fails, use this file as your orientation source. diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-backup/WORK-RECORDS.md.worktree b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-backup/WORK-RECORDS.md.worktree new file mode 100644 index 00000000..6dc81634 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-backup/WORK-RECORDS.md.worktree @@ -0,0 +1,536 @@ +# Work Records — the-custodian + +> Generated by `statehub fix-consistency` (CUST-WP-0061-T04, work-record +> stage 3). Do not edit by hand — edit the source file/block listed for +> each record and re-run fix-consistency to refresh this index. Archived +> workplans are omitted; closed decisions/intakes/engagements stay listed +> so recently-resolved work is still visible. [auto] + +| Kind | ID | Status | Lane | Source | +| --- | --- | --- | --- | --- | +| workplan | CUST-WP-ADHOC-2026-05-02 | done | — | workplans/ADHOC-2026-05-02.md | +| workplan | CUST-WP-ADHOC-2026-07-02 | finished | — | workplans/ADHOC-2026-07-02.md | +| workplan | CUST-WP-ADHOC-2026-08-25-RETIRED | finished | — | workplans/ADHOC-2026-08-25-retired.md | +| workplan | CUST-WP-ADHOC-2026-08-25 | finished | — | workplans/ADHOC-2026-08-25.md | +| workplan | CUST-WP-ADHOC-2026-09-06 | finished | — | workplans/ADHOC-2026-09-06.md | +| workplan | CUST-WP-0000 | finished | — | workplans/CUST-WP-0000-state-hub-v0.1-build-deploy.md | +| workplan | CUST-WP-0000b | finished | — | workplans/CUST-WP-0000b-state-hub-v0.2-decisions-dependencies.md | +| workplan | CUST-WP-0001 | done | — | workplans/CUST-WP-0001-custodian-agent-runtime.md | +| workplan | CUST-WP-0002 | finished | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| workplan | CUST-WP-0004 | finished | — | workplans/CUST-WP-0004-ep-td-tracking.md | +| workplan | CUST-WP-0005 | finished | — | workplans/CUST-WP-0005-dynamic-domains.md | +| workplan | CUST-WP-0006 | done | — | workplans/CUST-WP-0006-gems-state-hub.md | +| workplan | CUST-WP-0007 | finished | — | workplans/CUST-WP-0007-gems-migration.md | +| workplan | CUST-WP-0008 | done | — | workplans/CUST-WP-0008-consistency-engine.md | +| workplan | CUST-WP-0009 | finished | — | workplans/CUST-WP-0009-human-interventions.md | +| workplan | CUST-WP-0010 | finished | — | workplans/CUST-WP-0010-workstream-lifecycle-docs.md | +| workplan | CUST-WP-0010b | finished | — | workplans/CUST-WP-0010b-domain-and-repo-goals.md | +| workplan | CUST-WP-0013 | finished | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| workplan | CUST-WP-0015 | done | — | workplans/CUST-WP-0015-agent-inbox.md | +| workplan | CUST-WP-0016 | done | — | workplans/CUST-WP-0016-kaizen-agentic-integration.md | +| workplan | CUST-WP-0017 | done | — | workplans/CUST-WP-0017-scope-md-agent-and-coverage.md | +| workplan | CUST-WP-0018 | done | — | workplans/CUST-WP-0018-api-hardening-code-quality.md | +| workplan | CUST-WP-0019 | done | — | workplans/CUST-WP-0019-dashboard-ux-polish.md | +| workplan | CUST-WP-0020 | done | — | workplans/CUST-WP-0020-test-suite.md | +| workplan | CUST-WP-0021 | done | — | workplans/CUST-WP-0021-multi-host-repo-paths.md | +| workplan | CUST-WP-0022 | done | — | workplans/CUST-WP-0022-capability-requests.md | +| workplan | CUST-WP-0023 | done | — | workplans/CUST-WP-0023-tpsc.md | +| workplan | CUST-WP-0024 | done | — | workplans/CUST-WP-0024-repo-doi-gate.md | +| workplan | CUST-WP-0026 | done | — | workplans/CUST-WP-0026-distributed-consistency.md | +| workplan | CUST-WP-0027 | done | — | workplans/CUST-WP-0027-capability-request-dispute.md | +| workplan | CUST-WP-0029 | done | — | workplans/CUST-WP-0029-token-consumption-tracking.md | +| workplan | CUST-WP-0030 | done | — | workplans/CUST-WP-0030-dashboard-entity-list-ux.md | +| workplan | CUST-WP-0031 | done | — | workplans/CUST-WP-0031-capability-registry.md | +| workplan | CUST-WP-0032 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| workplan | CUST-WP-0033 | done | — | workplans/CUST-WP-0033-interface-change-registry.md | +| workplan | CUST-WP-0039 | done | — | workplans/CUST-WP-0039-dashboard-poll-optimization.md | +| workplan | CUST-WP-0040 | finished | — | workplans/CUST-WP-0040-state-hub-nats-activity-core-integration.md | +| workplan | CUST-WP-0041 | done | — | workplans/CUST-WP-0041-api-performance.md | +| workplan | CUST-WP-0043 | finished | — | workplans/CUST-WP-0043-state-hub-repo-extraction.md | +| workplan | CUST-WP-0044 | finished | — | workplans/CUST-WP-0044-daily-statehub-wsjf-triage.md | +| workplan | CUST-WP-0045 | finished | — | workplans/CUST-WP-0045-activity-core-daily-triage-runner.md | +| workplan | CUST-WP-0069 | finished | — | workplans/CUST-WP-0045-cutover-runbook.md | +| workplan | CUST-WP-0046 | finished | — | workplans/CUST-WP-0046-hourly-recently-on-scope-activity-core.md | +| workplan | CUST-WP-0047 | finished | — | workplans/CUST-WP-0047-ops-hub-service-inventory-now-view.md | +| workplan | CUST-WP-0048 | finished | — | workplans/CUST-WP-0048-hub-core-state-hub-import-refactor.md | +| workplan | CUST-WP-0049 | finished | — | workplans/CUST-WP-0049-interhub-bootstrap-access-lane.md | +| workplan | CUST-WP-0050 | finished | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| workplan | CUST-WP-0051 | finished | — | workplans/CUST-WP-0051-infrastructure-stabilization-metaplan.md | +| workplan | CUST-WP-0052 | finished | — | workplans/CUST-WP-0052-core-hub-fos-reset.md | +| workplan | CUST-WP-0053 | finished | — | workplans/CUST-WP-0053-coordination-hygiene-improvements.md | +| workplan | CUST-WP-0055 | finished | — | workplans/CUST-WP-0055-workplan-terminology-fleet-refactor.md | +| workplan | CUST-WP-0056 | finished | — | workplans/CUST-WP-0056-daily-todo-md-stale-review.md | +| workplan | CUST-WP-0059 | finished | — | workplans/CUST-WP-0059-forgejo-ci-publish-cutover-tail.md | +| workplan | CUST-WP-0060 | finished | — | workplans/CUST-WP-0060-work-record-canonization.md | +| workplan | CUST-WP-0061 | finished | — | workplans/CUST-WP-0061-work-record-stage3-intake-promotion-index.md | +| workplan | CUST-WP-0062 | finished | — | workplans/CUST-WP-0062-sbom-nexus-daily-catchup.md | +| workplan | CUST-WP-0063 | finished | — | workplans/CUST-WP-0063-inbox-governance-packets.md | +| workplan | CUST-WP-0064 | finished | — | workplans/CUST-WP-0064-sbom-controlled-scan-inputs.md | +| workplan | CUST-WP-0065 | finished | — | workplans/CUST-WP-0065-reclassify-repos-and-guidance-docs-to-the-new-sector-domain.md | +| workplan | CUST-WP-0066 | finished | — | workplans/CUST-WP-0066-repository-qualified-ad-hoc-identifiers.md | +| workplan | CUST-WP-0067 | finished | — | workplans/CUST-WP-0067-hub-authority-target-resolution.md | +| workplan | CUST-WP-0068 | finished | — | workplans/CUST-WP-0068-cache-only-work-record-recovery.md | +| workplan | CUST-WP-0070 | finished | — | workplans/CUST-WP-0070-publication-repo-category.md | +| workplan | CUST-WP-0071 | blocked | — | workplans/CUST-WP-0071-measured-workload-sizing-and-weekly-review.md | +| workplan | CUST-WP-0072 | finished | — | workplans/CUST-WP-0072-fleet-flavor-and-depends-on-backfill.md | +| workplan | CUST-WP-0073 | blocked | — | workplans/CUST-WP-0073-agent-credential-separation.md | +| workplan | CUST-WP-0074 | finished | — | workplans/CUST-WP-0074-qualified-wait-states.md | +| workplan | CUST-WP-0075 | finished | — | workplans/CUST-WP-0075-dependency-graph-driven-unblocking.md | +| workplan | CUST-WP-0076 | finished | — | workplans/CUST-WP-0076-provisioning-window-cadence.md | +| workplan | CUST-WP-0077 | finished | — | workplans/CUST-WP-0077-dependency-root-execution-wave.md | +| workplan | CUST-WP-0078 | finished | — | workplans/CUST-WP-0078-security-collaboration-consolidation.md | +| workplan | CUST-WP-0079 | blocked | — | workplans/CUST-WP-0079-deterministic-security-flow.md | +| workplan | CUST-WP-0080 | active | — | workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md | +| workplan | CUST-WP-0081 | finished | — | workplans/CUST-WP-0081-netkingdom-architecture-review-and-reuse.md | +| workplan | THE-WP-0001 | finished | — | workplans/THE-WP-0001-federation-interface.md | +| task | CUST-WP-ADHOC-2026-05-02-T01 | done | — | workplans/ADHOC-2026-05-02.md | +| task | CUST-WP-ADHOC-2026-07-02-T01 | done | — | workplans/ADHOC-2026-07-02.md | +| task | ADHOC-2026-08-25-T01 | done | — | workplans/ADHOC-2026-08-25-retired.md | +| task | CUST-WP-ADHOC-2026-08-25-T01 | done | — | workplans/ADHOC-2026-08-25.md | +| task | CUST-WP-ADHOC-2026-09-06-T01 | done | — | workplans/ADHOC-2026-09-06.md | +| task | CUST-WP-0001-T01 | done | — | workplans/CUST-WP-0001-custodian-agent-runtime.md | +| task | CUST-WP-0001-T02 | done | — | workplans/CUST-WP-0001-custodian-agent-runtime.md | +| task | CUST-WP-0002-T01 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T02 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T03 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T04 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T05 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T06 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T07 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T08 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T09 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T10 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T11 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T12 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T13 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T14 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0002-T15 | done | — | workplans/CUST-WP-0002-contribution-tracking-sbom.md | +| task | CUST-WP-0004-T01 | done | — | workplans/CUST-WP-0004-ep-td-tracking.md | +| task | CUST-WP-0004-T02 | done | — | workplans/CUST-WP-0004-ep-td-tracking.md | +| task | CUST-WP-0004-T03 | done | — | workplans/CUST-WP-0004-ep-td-tracking.md | +| task | CUST-WP-0004-T04 | done | — | workplans/CUST-WP-0004-ep-td-tracking.md | +| task | CUST-WP-0004-T05 | done | — | workplans/CUST-WP-0004-ep-td-tracking.md | +| task | CUST-WP-0004-T06 | done | — | workplans/CUST-WP-0004-ep-td-tracking.md | +| task | CUST-WP-0004-T07 | done | — | workplans/CUST-WP-0004-ep-td-tracking.md | +| task | CUST-WP-0004-T08 | done | — | workplans/CUST-WP-0004-ep-td-tracking.md | +| task | CUST-WP-0004-T09 | done | — | workplans/CUST-WP-0004-ep-td-tracking.md | +| task | CUST-WP-0004-T10 | done | — | workplans/CUST-WP-0004-ep-td-tracking.md | +| task | CUST-WP-0005-T01 | done | — | workplans/CUST-WP-0005-dynamic-domains.md | +| task | CUST-WP-0005-T02 | done | — | workplans/CUST-WP-0005-dynamic-domains.md | +| task | CUST-WP-0005-T03 | done | — | workplans/CUST-WP-0005-dynamic-domains.md | +| task | CUST-WP-0005-T04 | done | — | workplans/CUST-WP-0005-dynamic-domains.md | +| task | CUST-WP-0005-T05 | done | — | workplans/CUST-WP-0005-dynamic-domains.md | +| task | CUST-WP-0005-T06 | done | — | workplans/CUST-WP-0005-dynamic-domains.md | +| task | CUST-WP-0005-T07 | done | — | workplans/CUST-WP-0005-dynamic-domains.md | +| task | CUST-WP-0005-T08 | done | — | workplans/CUST-WP-0005-dynamic-domains.md | +| task | CUST-WP-0005-T09 | done | — | workplans/CUST-WP-0005-dynamic-domains.md | +| task | CUST-WP-0005-T10 | done | — | workplans/CUST-WP-0005-dynamic-domains.md | +| task | CUST-WP-0005-T11 | done | — | workplans/CUST-WP-0005-dynamic-domains.md | +| task | T01 | done | — | workplans/CUST-WP-0006-gems-state-hub.md | +| task | T02 | done | — | workplans/CUST-WP-0006-gems-state-hub.md | +| task | T03 | done | — | workplans/CUST-WP-0006-gems-state-hub.md | +| task | T04 | done | — | workplans/CUST-WP-0006-gems-state-hub.md | +| task | T05 | done | — | workplans/CUST-WP-0006-gems-state-hub.md | +| task | T01 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T02 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T03 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T04 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T05 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T06 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T07 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T08 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T09 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T10 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T11 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T12 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T13 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T14 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T15 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T16 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | T17 | done | — | workplans/CUST-WP-0007-gems-migration.md | +| task | CUST-WP-0008-T01 | done | — | workplans/CUST-WP-0008-consistency-engine.md | +| task | CUST-WP-0008-T02 | done | — | workplans/CUST-WP-0008-consistency-engine.md | +| task | CUST-WP-0008-T03 | done | — | workplans/CUST-WP-0008-consistency-engine.md | +| task | CUST-WP-0008-T04 | done | — | workplans/CUST-WP-0008-consistency-engine.md | +| task | CUST-WP-0009-T1 | done | — | workplans/CUST-WP-0009-human-interventions.md | +| task | CUST-WP-0009-T2 | done | — | workplans/CUST-WP-0009-human-interventions.md | +| task | CUST-WP-0009-T3 | done | — | workplans/CUST-WP-0009-human-interventions.md | +| task | CUST-WP-0010-T1 | done | — | workplans/CUST-WP-0010-workstream-lifecycle-docs.md | +| task | CUST-WP-0010-T2 | done | — | workplans/CUST-WP-0010-workstream-lifecycle-docs.md | +| task | CUST-WP-0010-T3 | done | — | workplans/CUST-WP-0010-workstream-lifecycle-docs.md | +| task | CUST-WP-0010b-T01 | done | — | workplans/CUST-WP-0010b-domain-and-repo-goals.md | +| task | CUST-WP-0010b-T02 | done | — | workplans/CUST-WP-0010b-domain-and-repo-goals.md | +| task | CUST-WP-0013-T01 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T02 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T03 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T04 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T05 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T06 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T07 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T08 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T09 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T10 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T11 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T12 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T13 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0013-T14 | done | — | workplans/CUST-WP-0013-sbom-infra-expansion.md | +| task | CUST-WP-0015-T01 | done | — | workplans/CUST-WP-0015-agent-inbox.md | +| task | CUST-WP-0015-T02 | done | — | workplans/CUST-WP-0015-agent-inbox.md | +| task | CUST-WP-0015-T03 | done | — | workplans/CUST-WP-0015-agent-inbox.md | +| task | CUST-WP-0015-T04 | done | — | workplans/CUST-WP-0015-agent-inbox.md | +| task | CUST-WP-0015-T05 | done | — | workplans/CUST-WP-0015-agent-inbox.md | +| task | CUST-WP-0016-T01 | done | — | workplans/CUST-WP-0016-kaizen-agentic-integration.md | +| task | CUST-WP-0016-T02 | done | — | workplans/CUST-WP-0016-kaizen-agentic-integration.md | +| task | CUST-WP-0016-T03 | done | — | workplans/CUST-WP-0016-kaizen-agentic-integration.md | +| task | CUST-WP-0016-T04 | done | — | workplans/CUST-WP-0016-kaizen-agentic-integration.md | +| task | CUST-WP-0016-T05 | done | — | workplans/CUST-WP-0016-kaizen-agentic-integration.md | +| task | CUST-WP-0017-T01 | done | — | workplans/CUST-WP-0017-scope-md-agent-and-coverage.md | +| task | CUST-WP-0017-T02 | done | — | workplans/CUST-WP-0017-scope-md-agent-and-coverage.md | +| task | CUST-WP-0017-T03 | done | — | workplans/CUST-WP-0017-scope-md-agent-and-coverage.md | +| task | CUST-WP-0017-T04 | done | — | workplans/CUST-WP-0017-scope-md-agent-and-coverage.md | +| task | CUST-WP-0017-T05 | done | — | workplans/CUST-WP-0017-scope-md-agent-and-coverage.md | +| task | CUST-WP-0017-T06 | done | — | workplans/CUST-WP-0017-scope-md-agent-and-coverage.md | +| task | CUST-WP-0018-T01 | done | — | workplans/CUST-WP-0018-api-hardening-code-quality.md | +| task | CUST-WP-0018-T02 | done | — | workplans/CUST-WP-0018-api-hardening-code-quality.md | +| task | CUST-WP-0018-T03 | done | — | workplans/CUST-WP-0018-api-hardening-code-quality.md | +| task | CUST-WP-0018-T04 | done | — | workplans/CUST-WP-0018-api-hardening-code-quality.md | +| task | CUST-WP-0018-T05 | done | — | workplans/CUST-WP-0018-api-hardening-code-quality.md | +| task | CUST-WP-0018-T06 | done | — | workplans/CUST-WP-0018-api-hardening-code-quality.md | +| task | CUST-WP-0018-T07 | done | — | workplans/CUST-WP-0018-api-hardening-code-quality.md | +| task | CUST-WP-0019-T01 | done | — | workplans/CUST-WP-0019-dashboard-ux-polish.md | +| task | CUST-WP-0019-T02 | done | — | workplans/CUST-WP-0019-dashboard-ux-polish.md | +| task | CUST-WP-0019-T03 | done | — | workplans/CUST-WP-0019-dashboard-ux-polish.md | +| task | CUST-WP-0020-T01 | done | — | workplans/CUST-WP-0020-test-suite.md | +| task | CUST-WP-0020-T02 | done | — | workplans/CUST-WP-0020-test-suite.md | +| task | CUST-WP-0020-T03 | done | — | workplans/CUST-WP-0020-test-suite.md | +| task | CUST-WP-0020-T04 | done | — | workplans/CUST-WP-0020-test-suite.md | +| task | CUST-WP-0020-T05 | done | — | workplans/CUST-WP-0020-test-suite.md | +| task | CUST-WP-0021-T01 | done | — | workplans/CUST-WP-0021-multi-host-repo-paths.md | +| task | CUST-WP-0021-T02 | done | — | workplans/CUST-WP-0021-multi-host-repo-paths.md | +| task | CUST-WP-0021-T03 | done | — | workplans/CUST-WP-0021-multi-host-repo-paths.md | +| task | CUST-WP-0021-T04 | done | — | workplans/CUST-WP-0021-multi-host-repo-paths.md | +| task | CUST-WP-0021-T05 | done | — | workplans/CUST-WP-0021-multi-host-repo-paths.md | +| task | CUST-WP-0022-T01 | done | — | workplans/CUST-WP-0022-capability-requests.md | +| task | CUST-WP-0022-T02 | done | — | workplans/CUST-WP-0022-capability-requests.md | +| task | CUST-WP-0022-T03 | done | — | workplans/CUST-WP-0022-capability-requests.md | +| task | CUST-WP-0022-T04 | done | — | workplans/CUST-WP-0022-capability-requests.md | +| task | CUST-WP-0022-T05 | done | — | workplans/CUST-WP-0022-capability-requests.md | +| task | CUST-WP-0022-T06 | done | — | workplans/CUST-WP-0022-capability-requests.md | +| task | CUST-WP-0022-T07 | done | — | workplans/CUST-WP-0022-capability-requests.md | +| task | CUST-WP-0022-T08 | done | — | workplans/CUST-WP-0022-capability-requests.md | +| task | CUST-WP-0022-T09 | done | — | workplans/CUST-WP-0022-capability-requests.md | +| task | CUST-WP-0022-T10 | done | — | workplans/CUST-WP-0022-capability-requests.md | +| task | CUST-WP-0023-T01 | done | — | workplans/CUST-WP-0023-tpsc.md | +| task | CUST-WP-0023-T02 | done | — | workplans/CUST-WP-0023-tpsc.md | +| task | CUST-WP-0023-T03 | done | — | workplans/CUST-WP-0023-tpsc.md | +| task | CUST-WP-0023-T04 | done | — | workplans/CUST-WP-0023-tpsc.md | +| task | CUST-WP-0023-T05 | done | — | workplans/CUST-WP-0023-tpsc.md | +| task | CUST-WP-0023-T06 | done | — | workplans/CUST-WP-0023-tpsc.md | +| task | CUST-WP-0023-T07 | done | — | workplans/CUST-WP-0023-tpsc.md | +| task | CUST-WP-0023-T08 | done | — | workplans/CUST-WP-0023-tpsc.md | +| task | CUST-WP-0023-T09 | done | — | workplans/CUST-WP-0023-tpsc.md | +| task | CUST-WP-0023-T10 | done | — | workplans/CUST-WP-0023-tpsc.md | +| task | CUST-WP-0024-T01 | done | — | workplans/CUST-WP-0024-repo-doi-gate.md | +| task | CUST-WP-0024-T02 | done | — | workplans/CUST-WP-0024-repo-doi-gate.md | +| task | CUST-WP-0024-T03 | done | — | workplans/CUST-WP-0024-repo-doi-gate.md | +| task | CUST-WP-0024-T04 | done | — | workplans/CUST-WP-0024-repo-doi-gate.md | +| task | CUST-WP-0024-T05 | done | — | workplans/CUST-WP-0024-repo-doi-gate.md | +| task | CUST-WP-0026-T01 | done | — | workplans/CUST-WP-0026-distributed-consistency.md | +| task | CUST-WP-0026-T02 | done | — | workplans/CUST-WP-0026-distributed-consistency.md | +| task | CUST-WP-0026-T03 | done | — | workplans/CUST-WP-0026-distributed-consistency.md | +| task | CUST-WP-0026-T04 | done | — | workplans/CUST-WP-0026-distributed-consistency.md | +| task | CUST-WP-0026-T05 | done | — | workplans/CUST-WP-0026-distributed-consistency.md | +| task | CUST-WP-0027-T01 | done | — | workplans/CUST-WP-0027-capability-request-dispute.md | +| task | CUST-WP-0027-T02 | done | — | workplans/CUST-WP-0027-capability-request-dispute.md | +| task | CUST-WP-0027-T03 | done | — | workplans/CUST-WP-0027-capability-request-dispute.md | +| task | CUST-WP-0027-T04 | done | — | workplans/CUST-WP-0027-capability-request-dispute.md | +| task | CUST-WP-0027-T05 | done | — | workplans/CUST-WP-0027-capability-request-dispute.md | +| task | CUST-WP-0029-T01 | done | — | workplans/CUST-WP-0029-token-consumption-tracking.md | +| task | CUST-WP-0029-T02 | done | — | workplans/CUST-WP-0029-token-consumption-tracking.md | +| task | CUST-WP-0029-T03 | done | — | workplans/CUST-WP-0029-token-consumption-tracking.md | +| task | CUST-WP-0029-T04 | done | — | workplans/CUST-WP-0029-token-consumption-tracking.md | +| task | CUST-WP-0029-T05 | done | — | workplans/CUST-WP-0029-token-consumption-tracking.md | +| task | CUST-WP-0029-T06 | done | — | workplans/CUST-WP-0029-token-consumption-tracking.md | +| task | CUST-WP-0029-T07 | done | — | workplans/CUST-WP-0029-token-consumption-tracking.md | +| task | CUST-WP-0029-T08 | done | — | workplans/CUST-WP-0029-token-consumption-tracking.md | +| task | T01 | done | — | workplans/CUST-WP-0030-dashboard-entity-list-ux.md | +| task | T02 | done | — | workplans/CUST-WP-0030-dashboard-entity-list-ux.md | +| task | T03 | done | — | workplans/CUST-WP-0030-dashboard-entity-list-ux.md | +| task | T04 | done | — | workplans/CUST-WP-0030-dashboard-entity-list-ux.md | +| task | T05 | done | — | workplans/CUST-WP-0030-dashboard-entity-list-ux.md | +| task | T06 | done | — | workplans/CUST-WP-0030-dashboard-entity-list-ux.md | +| task | T07 | done | — | workplans/CUST-WP-0030-dashboard-entity-list-ux.md | +| task | T08 | done | — | workplans/CUST-WP-0030-dashboard-entity-list-ux.md | +| task | T09 | done | — | workplans/CUST-WP-0030-dashboard-entity-list-ux.md | +| task | T01 | done | — | workplans/CUST-WP-0031-capability-registry.md | +| task | T02 | done | — | workplans/CUST-WP-0031-capability-registry.md | +| task | T03 | done | — | workplans/CUST-WP-0031-capability-registry.md | +| task | T04 | done | — | workplans/CUST-WP-0031-capability-registry.md | +| task | T05 | done | — | workplans/CUST-WP-0031-capability-registry.md | +| task | T06 | done | — | workplans/CUST-WP-0031-capability-registry.md | +| task | T07 | done | — | workplans/CUST-WP-0031-capability-registry.md | +| task | CUST-WP-0032-T01 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T02 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T03 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T04 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T05 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T06 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T07 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T08 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T09 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T10 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T11 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T12 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T13 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T14 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0032-T15 | done | — | workplans/CUST-WP-0032-haskell-build-machine.md | +| task | CUST-WP-0033-T01 | done | — | workplans/CUST-WP-0033-interface-change-registry.md | +| task | CUST-WP-0033-T02 | done | — | workplans/CUST-WP-0033-interface-change-registry.md | +| task | CUST-WP-0033-T03 | done | — | workplans/CUST-WP-0033-interface-change-registry.md | +| task | CUST-WP-0033-T04 | done | — | workplans/CUST-WP-0033-interface-change-registry.md | +| task | CUST-WP-0033-T05 | done | — | workplans/CUST-WP-0033-interface-change-registry.md | +| task | CUST-WP-0033-T06 | done | — | workplans/CUST-WP-0033-interface-change-registry.md | +| task | CUST-WP-0039-T1 | done | — | workplans/CUST-WP-0039-dashboard-poll-optimization.md | +| task | CUST-WP-0039-T2 | done | — | workplans/CUST-WP-0039-dashboard-poll-optimization.md | +| task | CUST-WP-0039-T3 | done | — | workplans/CUST-WP-0039-dashboard-poll-optimization.md | +| task | CUST-WP-0039-T4 | done | — | workplans/CUST-WP-0039-dashboard-poll-optimization.md | +| task | CUST-WP-0039-T5 | done | — | workplans/CUST-WP-0039-dashboard-poll-optimization.md | +| task | CUST-WP-0039-T6 | done | — | workplans/CUST-WP-0039-dashboard-poll-optimization.md | +| task | T01 | done | — | workplans/CUST-WP-0040-state-hub-nats-activity-core-integration.md | +| task | T02 | done | — | workplans/CUST-WP-0040-state-hub-nats-activity-core-integration.md | +| task | T03 | done | — | workplans/CUST-WP-0040-state-hub-nats-activity-core-integration.md | +| task | T04 | done | — | workplans/CUST-WP-0040-state-hub-nats-activity-core-integration.md | +| task | T05 | done | — | workplans/CUST-WP-0040-state-hub-nats-activity-core-integration.md | +| task | T06 | done | — | workplans/CUST-WP-0040-state-hub-nats-activity-core-integration.md | +| task | CUST-WP-0041-T1 | done | — | workplans/CUST-WP-0041-api-performance.md | +| task | CUST-WP-0041-T2 | done | — | workplans/CUST-WP-0041-api-performance.md | +| task | CUST-WP-0041-T3 | done | — | workplans/CUST-WP-0041-api-performance.md | +| task | CUST-WP-0041-T4 | done | — | workplans/CUST-WP-0041-api-performance.md | +| task | CUST-WP-0043-T01 | done | — | workplans/CUST-WP-0043-state-hub-repo-extraction.md | +| task | CUST-WP-0043-T02 | done | — | workplans/CUST-WP-0043-state-hub-repo-extraction.md | +| task | CUST-WP-0043-T03 | done | — | workplans/CUST-WP-0043-state-hub-repo-extraction.md | +| task | CUST-WP-0043-T04 | done | — | workplans/CUST-WP-0043-state-hub-repo-extraction.md | +| task | CUST-WP-0043-T05 | done | — | workplans/CUST-WP-0043-state-hub-repo-extraction.md | +| task | CUST-WP-0043-T06 | done | — | workplans/CUST-WP-0043-state-hub-repo-extraction.md | +| task | CUST-WP-0043-T07 | done | — | workplans/CUST-WP-0043-state-hub-repo-extraction.md | +| task | CUST-WP-0043-T08 | done | — | workplans/CUST-WP-0043-state-hub-repo-extraction.md | +| task | CUST-WP-0043-T09 | done | — | workplans/CUST-WP-0043-state-hub-repo-extraction.md | +| task | CUST-WP-0044-T01 | done | — | workplans/CUST-WP-0044-daily-statehub-wsjf-triage.md | +| task | CUST-WP-0044-T02 | done | — | workplans/CUST-WP-0044-daily-statehub-wsjf-triage.md | +| task | CUST-WP-0044-T03 | done | — | workplans/CUST-WP-0044-daily-statehub-wsjf-triage.md | +| task | CUST-WP-0044-T04 | done | — | workplans/CUST-WP-0044-daily-statehub-wsjf-triage.md | +| task | CUST-WP-0044-T05 | done | — | workplans/CUST-WP-0044-daily-statehub-wsjf-triage.md | +| task | CUST-WP-0044-T06 | done | — | workplans/CUST-WP-0044-daily-statehub-wsjf-triage.md | +| task | CUST-WP-0045-T01 | done | — | workplans/CUST-WP-0045-activity-core-daily-triage-runner.md | +| task | CUST-WP-0045-T02 | done | — | workplans/CUST-WP-0045-activity-core-daily-triage-runner.md | +| task | CUST-WP-0045-T03 | done | — | workplans/CUST-WP-0045-activity-core-daily-triage-runner.md | +| task | CUST-WP-0045-T04 | done | — | workplans/CUST-WP-0045-activity-core-daily-triage-runner.md | +| task | CUST-WP-0045-T05 | done | — | workplans/CUST-WP-0045-activity-core-daily-triage-runner.md | +| task | CUST-WP-0045-T06 | done | — | workplans/CUST-WP-0045-activity-core-daily-triage-runner.md | +| task | CUST-WP-0045-T07 | done | — | workplans/CUST-WP-0045-activity-core-daily-triage-runner.md | +| task | CUST-WP-0045-T08 | done | — | workplans/CUST-WP-0045-activity-core-daily-triage-runner.md | +| task | CUST-WP-0046-T01 | done | — | workplans/CUST-WP-0046-hourly-recently-on-scope-activity-core.md | +| task | CUST-WP-0046-T02 | done | — | workplans/CUST-WP-0046-hourly-recently-on-scope-activity-core.md | +| task | CUST-WP-0046-T03 | done | — | workplans/CUST-WP-0046-hourly-recently-on-scope-activity-core.md | +| task | CUST-WP-0046-T04 | done | — | workplans/CUST-WP-0046-hourly-recently-on-scope-activity-core.md | +| task | CUST-WP-0046-T05 | done | — | workplans/CUST-WP-0046-hourly-recently-on-scope-activity-core.md | +| task | CUST-WP-0046-T06 | done | — | workplans/CUST-WP-0046-hourly-recently-on-scope-activity-core.md | +| task | CUST-WP-0046-T07 | done | — | workplans/CUST-WP-0046-hourly-recently-on-scope-activity-core.md | +| task | CUST-WP-0047-T01 | done | — | workplans/CUST-WP-0047-ops-hub-service-inventory-now-view.md | +| task | CUST-WP-0047-T02 | done | — | workplans/CUST-WP-0047-ops-hub-service-inventory-now-view.md | +| task | CUST-WP-0047-T03 | done | — | workplans/CUST-WP-0047-ops-hub-service-inventory-now-view.md | +| task | CUST-WP-0047-T04 | done | — | workplans/CUST-WP-0047-ops-hub-service-inventory-now-view.md | +| task | CUST-WP-0047-T05 | cancel | — | workplans/CUST-WP-0047-ops-hub-service-inventory-now-view.md | +| task | CUST-WP-0047-T06 | done | — | workplans/CUST-WP-0047-ops-hub-service-inventory-now-view.md | +| task | CUST-WP-0047-T07 | done | — | workplans/CUST-WP-0047-ops-hub-service-inventory-now-view.md | +| task | CUST-WP-0048-T01 | done | — | workplans/CUST-WP-0048-hub-core-state-hub-import-refactor.md | +| task | CUST-WP-0048-T02 | done | — | workplans/CUST-WP-0048-hub-core-state-hub-import-refactor.md | +| task | CUST-WP-0048-T03 | done | — | workplans/CUST-WP-0048-hub-core-state-hub-import-refactor.md | +| task | CUST-WP-0048-T04 | done | — | workplans/CUST-WP-0048-hub-core-state-hub-import-refactor.md | +| task | CUST-WP-0048-T05 | done | — | workplans/CUST-WP-0048-hub-core-state-hub-import-refactor.md | +| task | CUST-WP-0048-T06 | done | — | workplans/CUST-WP-0048-hub-core-state-hub-import-refactor.md | +| task | CUST-WP-0048-T07 | done | — | workplans/CUST-WP-0048-hub-core-state-hub-import-refactor.md | +| task | CUST-WP-0048-T08 | done | — | workplans/CUST-WP-0048-hub-core-state-hub-import-refactor.md | +| task | CUST-WP-0049-T01 | done | — | workplans/CUST-WP-0049-interhub-bootstrap-access-lane.md | +| task | CUST-WP-0049-T02 | done | — | workplans/CUST-WP-0049-interhub-bootstrap-access-lane.md | +| task | CUST-WP-0049-T03 | done | — | workplans/CUST-WP-0049-interhub-bootstrap-access-lane.md | +| task | CUST-WP-0049-T04 | done | — | workplans/CUST-WP-0049-interhub-bootstrap-access-lane.md | +| task | CUST-WP-0049-T05 | done | — | workplans/CUST-WP-0049-interhub-bootstrap-access-lane.md | +| task | CUST-WP-0049-T06 | cancel | — | workplans/CUST-WP-0049-interhub-bootstrap-access-lane.md | +| task | CUST-WP-0050-T01 | done | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| task | CUST-WP-0050-T02 | done | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| task | CUST-WP-0050-T03 | cancel | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| task | CUST-WP-0050-T04 | cancel | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| task | CUST-WP-0050-T05 | cancel | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| task | CUST-WP-0050-T06 | cancel | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| task | CUST-WP-0050-T07 | cancel | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| task | CUST-WP-0050-T08 | cancel | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| task | CUST-WP-0050-T09 | cancel | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| task | CUST-WP-0050-T10 | cancel | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| task | CUST-WP-0050-T11 | done | — | workplans/CUST-WP-0050-repo-classification-registration-redesign.md | +| task | CUST-WP-0051-T01 | done | — | workplans/CUST-WP-0051-infrastructure-stabilization-metaplan.md | +| task | CUST-WP-0051-T02 | done | — | workplans/CUST-WP-0051-infrastructure-stabilization-metaplan.md | +| task | CUST-WP-0051-T03 | done | — | workplans/CUST-WP-0051-infrastructure-stabilization-metaplan.md | +| task | CUST-WP-0051-T04 | done | — | workplans/CUST-WP-0051-infrastructure-stabilization-metaplan.md | +| task | CUST-WP-0051-T05 | done | — | workplans/CUST-WP-0051-infrastructure-stabilization-metaplan.md | +| task | CUST-WP-0051-T06 | done | — | workplans/CUST-WP-0051-infrastructure-stabilization-metaplan.md | +| task | CUST-WP-0051-T07 | done | — | workplans/CUST-WP-0051-infrastructure-stabilization-metaplan.md | +| task | CUST-WP-0051-T08 | done | — | workplans/CUST-WP-0051-infrastructure-stabilization-metaplan.md | +| task | CUST-WP-0052-T01 | done | — | workplans/CUST-WP-0052-core-hub-fos-reset.md | +| task | CUST-WP-0052-T02 | done | — | workplans/CUST-WP-0052-core-hub-fos-reset.md | +| task | CUST-WP-0052-T03 | done | — | workplans/CUST-WP-0052-core-hub-fos-reset.md | +| task | CUST-WP-0052-T04 | done | — | workplans/CUST-WP-0052-core-hub-fos-reset.md | +| task | CUST-WP-0052-T05 | done | — | workplans/CUST-WP-0052-core-hub-fos-reset.md | +| task | CUST-WP-0052-T06 | done | — | workplans/CUST-WP-0052-core-hub-fos-reset.md | +| task | CUST-WP-0052-T07 | done | — | workplans/CUST-WP-0052-core-hub-fos-reset.md | +| task | CUST-WP-0053-T01 | done | — | workplans/CUST-WP-0053-coordination-hygiene-improvements.md | +| task | CUST-WP-0053-T02 | done | — | workplans/CUST-WP-0053-coordination-hygiene-improvements.md | +| task | CUST-WP-0053-T03 | done | — | workplans/CUST-WP-0053-coordination-hygiene-improvements.md | +| task | CUST-WP-0053-T04 | done | — | workplans/CUST-WP-0053-coordination-hygiene-improvements.md | +| task | CUST-WP-0053-T05 | done | — | workplans/CUST-WP-0053-coordination-hygiene-improvements.md | +| task | CUST-WP-0055-T01 | done | — | workplans/CUST-WP-0055-workplan-terminology-fleet-refactor.md | +| task | CUST-WP-0055-T02 | done | — | workplans/CUST-WP-0055-workplan-terminology-fleet-refactor.md | +| task | CUST-WP-0055-T03 | done | — | workplans/CUST-WP-0055-workplan-terminology-fleet-refactor.md | +| task | CUST-WP-0055-T04 | done | — | workplans/CUST-WP-0055-workplan-terminology-fleet-refactor.md | +| task | CUST-WP-0055-T05 | done | — | workplans/CUST-WP-0055-workplan-terminology-fleet-refactor.md | +| task | CUST-WP-0055-T06 | done | — | workplans/CUST-WP-0055-workplan-terminology-fleet-refactor.md | +| task | CUST-WP-0055-T07 | done | — | workplans/CUST-WP-0055-workplan-terminology-fleet-refactor.md | +| task | CUST-WP-0055-T08 | done | — | workplans/CUST-WP-0055-workplan-terminology-fleet-refactor.md | +| task | CUST-WP-0056-T01 | done | — | workplans/CUST-WP-0056-daily-todo-md-stale-review.md | +| task | CUST-WP-0056-T02 | done | — | workplans/CUST-WP-0056-daily-todo-md-stale-review.md | +| task | CUST-WP-0056-T03 | done | — | workplans/CUST-WP-0056-daily-todo-md-stale-review.md | +| task | CUST-WP-0059-T01 | done | — | workplans/CUST-WP-0059-forgejo-ci-publish-cutover-tail.md | +| task | CUST-WP-0059-T02 | done | — | workplans/CUST-WP-0059-forgejo-ci-publish-cutover-tail.md | +| task | CUST-WP-0059-T03 | done | — | workplans/CUST-WP-0059-forgejo-ci-publish-cutover-tail.md | +| task | CUST-WP-0059-T04 | done | — | workplans/CUST-WP-0059-forgejo-ci-publish-cutover-tail.md | +| task | CUST-WP-0059-T05 | done | — | workplans/CUST-WP-0059-forgejo-ci-publish-cutover-tail.md | +| task | CUST-WP-0059-T06 | done | — | workplans/CUST-WP-0059-forgejo-ci-publish-cutover-tail.md | +| task | CUST-WP-0060-T01 | done | — | workplans/CUST-WP-0060-work-record-canonization.md | +| task | CUST-WP-0060-T02 | done | — | workplans/CUST-WP-0060-work-record-canonization.md | +| task | CUST-WP-0060-T03 | done | — | workplans/CUST-WP-0060-work-record-canonization.md | +| task | CUST-WP-0060-T04 | done | — | workplans/CUST-WP-0060-work-record-canonization.md | +| task | CUST-WP-0060-T05 | done | — | workplans/CUST-WP-0060-work-record-canonization.md | +| task | CUST-WP-0060-T06 | done | — | workplans/CUST-WP-0060-work-record-canonization.md | +| task | CUST-WP-0060-T07 | done | — | workplans/CUST-WP-0060-work-record-canonization.md | +| task | CUST-WP-0061-T01 | done | — | workplans/CUST-WP-0061-work-record-stage3-intake-promotion-index.md | +| task | CUST-WP-0061-T02 | done | — | workplans/CUST-WP-0061-work-record-stage3-intake-promotion-index.md | +| task | CUST-WP-0061-T03 | done | — | workplans/CUST-WP-0061-work-record-stage3-intake-promotion-index.md | +| task | CUST-WP-0061-T04 | done | — | workplans/CUST-WP-0061-work-record-stage3-intake-promotion-index.md | +| task | CUST-WP-0061-T05 | done | — | workplans/CUST-WP-0061-work-record-stage3-intake-promotion-index.md | +| task | CUST-WP-0061-T06 | done | — | workplans/CUST-WP-0061-work-record-stage3-intake-promotion-index.md | +| task | CUST-WP-0062-T01 | done | — | workplans/CUST-WP-0062-sbom-nexus-daily-catchup.md | +| task | CUST-WP-0062-T02 | done | — | workplans/CUST-WP-0062-sbom-nexus-daily-catchup.md | +| task | CUST-WP-0062-T03 | done | — | workplans/CUST-WP-0062-sbom-nexus-daily-catchup.md | +| task | CUST-WP-0062-T04 | done | — | workplans/CUST-WP-0062-sbom-nexus-daily-catchup.md | +| task | CUST-WP-0062-T05 | done | — | workplans/CUST-WP-0062-sbom-nexus-daily-catchup.md | +| task | CUST-WP-0062-T06 | done | — | workplans/CUST-WP-0062-sbom-nexus-daily-catchup.md | +| task | CUST-WP-0063-T01 | done | — | workplans/CUST-WP-0063-inbox-governance-packets.md | +| task | CUST-WP-0063-T02 | done | — | workplans/CUST-WP-0063-inbox-governance-packets.md | +| task | CUST-WP-0063-T03 | done | — | workplans/CUST-WP-0063-inbox-governance-packets.md | +| task | CUST-WP-0063-T04 | done | — | workplans/CUST-WP-0063-inbox-governance-packets.md | +| task | CUST-WP-0063-T05 | done | — | workplans/CUST-WP-0063-inbox-governance-packets.md | +| task | CUST-WP-0064-T01 | done | — | workplans/CUST-WP-0064-sbom-controlled-scan-inputs.md | +| task | CUST-WP-0064-T02 | done | — | workplans/CUST-WP-0064-sbom-controlled-scan-inputs.md | +| task | CUST-WP-0064-T03 | done | — | workplans/CUST-WP-0064-sbom-controlled-scan-inputs.md | +| task | CUST-WP-0064-T04 | done | — | workplans/CUST-WP-0064-sbom-controlled-scan-inputs.md | +| task | CUST-WP-0065-T01 | done | — | workplans/CUST-WP-0065-reclassify-repos-and-guidance-docs-to-the-new-sector-domain.md | +| task | CUST-WP-0065-T02 | done | — | workplans/CUST-WP-0065-reclassify-repos-and-guidance-docs-to-the-new-sector-domain.md | +| task | CUST-WP-0065-T03 | done | — | workplans/CUST-WP-0065-reclassify-repos-and-guidance-docs-to-the-new-sector-domain.md | +| task | CUST-WP-0065-T04 | done | — | workplans/CUST-WP-0065-reclassify-repos-and-guidance-docs-to-the-new-sector-domain.md | +| task | CUST-WP-0066-T01 | done | — | workplans/CUST-WP-0066-repository-qualified-ad-hoc-identifiers.md | +| task | CUST-WP-0066-T02 | done | — | workplans/CUST-WP-0066-repository-qualified-ad-hoc-identifiers.md | +| task | CUST-WP-0066-T03 | done | — | workplans/CUST-WP-0066-repository-qualified-ad-hoc-identifiers.md | +| task | CUST-WP-0067-T01 | done | — | workplans/CUST-WP-0067-hub-authority-target-resolution.md | +| task | CUST-WP-0067-T02 | done | — | workplans/CUST-WP-0067-hub-authority-target-resolution.md | +| task | CUST-WP-0067-T03 | done | — | workplans/CUST-WP-0067-hub-authority-target-resolution.md | +| task | CUST-WP-0067-T04 | done | — | workplans/CUST-WP-0067-hub-authority-target-resolution.md | +| task | CUST-WP-0067-T05 | done | — | workplans/CUST-WP-0067-hub-authority-target-resolution.md | +| task | CUST-WP-0067-T06 | done | — | workplans/CUST-WP-0067-hub-authority-target-resolution.md | +| task | CUST-WP-0067-T07 | done | — | workplans/CUST-WP-0067-hub-authority-target-resolution.md | +| task | CUST-WP-0067-T08 | done | — | workplans/CUST-WP-0067-hub-authority-target-resolution.md | +| task | CUST-WP-0067-T09 | done | — | workplans/CUST-WP-0067-hub-authority-target-resolution.md | +| task | CUST-WP-0067-T10 | done | — | workplans/CUST-WP-0067-hub-authority-target-resolution.md | +| task | CUST-WP-0068-T01 | done | — | workplans/CUST-WP-0068-cache-only-work-record-recovery.md | +| task | CUST-WP-0068-T02 | done | — | workplans/CUST-WP-0068-cache-only-work-record-recovery.md | +| task | CUST-WP-0068-T03 | done | — | workplans/CUST-WP-0068-cache-only-work-record-recovery.md | +| task | CUST-WP-0068-T04 | done | — | workplans/CUST-WP-0068-cache-only-work-record-recovery.md | +| task | CUST-WP-0068-T05 | done | — | workplans/CUST-WP-0068-cache-only-work-record-recovery.md | +| task | CUST-WP-0068-T06 | done | — | workplans/CUST-WP-0068-cache-only-work-record-recovery.md | +| task | CUST-WP-0068-T07 | done | — | workplans/CUST-WP-0068-cache-only-work-record-recovery.md | +| task | CUST-WP-0068-T08 | done | — | workplans/CUST-WP-0068-cache-only-work-record-recovery.md | +| task | CUST-WP-0068-T09 | done | — | workplans/CUST-WP-0068-cache-only-work-record-recovery.md | +| task | CUST-WP-0070-T01 | done | — | workplans/CUST-WP-0070-publication-repo-category.md | +| task | CUST-WP-0070-T02 | done | — | workplans/CUST-WP-0070-publication-repo-category.md | +| task | CUST-WP-0070-T03 | done | — | workplans/CUST-WP-0070-publication-repo-category.md | +| task | CUST-WP-0071-T01 | done | — | workplans/CUST-WP-0071-measured-workload-sizing-and-weekly-review.md | +| task | CUST-WP-0071-T02 | wait | — | workplans/CUST-WP-0071-measured-workload-sizing-and-weekly-review.md | +| task | CUST-WP-0071-T03 | wait | — | workplans/CUST-WP-0071-measured-workload-sizing-and-weekly-review.md | +| task | CUST-WP-0071-T04 | wait | — | workplans/CUST-WP-0071-measured-workload-sizing-and-weekly-review.md | +| task | CUST-WP-0071-T05 | wait | — | workplans/CUST-WP-0071-measured-workload-sizing-and-weekly-review.md | +| task | CUST-WP-0072-T01 | done | — | workplans/CUST-WP-0072-fleet-flavor-and-depends-on-backfill.md | +| task | CUST-WP-0072-T02 | done | — | workplans/CUST-WP-0072-fleet-flavor-and-depends-on-backfill.md | +| task | CUST-WP-0072-T03 | done | — | workplans/CUST-WP-0072-fleet-flavor-and-depends-on-backfill.md | +| task | CUST-WP-0072-T04 | done | — | workplans/CUST-WP-0072-fleet-flavor-and-depends-on-backfill.md | +| task | CUST-WP-0073-T01 | done | — | workplans/CUST-WP-0073-agent-credential-separation.md | +| task | CUST-WP-0073-T02 | wait | — | workplans/CUST-WP-0073-agent-credential-separation.md | +| task | CUST-WP-0073-T03 | done | — | workplans/CUST-WP-0073-agent-credential-separation.md | +| task | CUST-WP-0073-T04 | wait | — | workplans/CUST-WP-0073-agent-credential-separation.md | +| task | CUST-WP-0073-T05 | wait | — | workplans/CUST-WP-0073-agent-credential-separation.md | +| task | CUST-WP-0074-T01 | done | — | workplans/CUST-WP-0074-qualified-wait-states.md | +| task | CUST-WP-0074-T02 | done | — | workplans/CUST-WP-0074-qualified-wait-states.md | +| task | CUST-WP-0074-T03 | done | — | workplans/CUST-WP-0074-qualified-wait-states.md | +| task | CUST-WP-0074-T04 | done | — | workplans/CUST-WP-0074-qualified-wait-states.md | +| task | CUST-WP-0074-T05 | done | — | workplans/CUST-WP-0074-qualified-wait-states.md | +| task | CUST-WP-0074-T06 | done | — | workplans/CUST-WP-0074-qualified-wait-states.md | +| task | CUST-WP-0075-T01 | done | — | workplans/CUST-WP-0075-dependency-graph-driven-unblocking.md | +| task | CUST-WP-0075-T02 | done | — | workplans/CUST-WP-0075-dependency-graph-driven-unblocking.md | +| task | CUST-WP-0075-T03 | done | — | workplans/CUST-WP-0075-dependency-graph-driven-unblocking.md | +| task | CUST-WP-0075-T04 | done | — | workplans/CUST-WP-0075-dependency-graph-driven-unblocking.md | +| task | CUST-WP-0075-T05 | done | — | workplans/CUST-WP-0075-dependency-graph-driven-unblocking.md | +| task | CUST-WP-0075-T06 | done | — | workplans/CUST-WP-0075-dependency-graph-driven-unblocking.md | +| task | CUST-WP-0076-T01 | done | — | workplans/CUST-WP-0076-provisioning-window-cadence.md | +| task | CUST-WP-0077-T01 | done | — | workplans/CUST-WP-0077-dependency-root-execution-wave.md | +| task | CUST-WP-0077-T02 | done | — | workplans/CUST-WP-0077-dependency-root-execution-wave.md | +| task | CUST-WP-0077-T03 | done | — | workplans/CUST-WP-0077-dependency-root-execution-wave.md | +| task | CUST-WP-0077-T04 | done | — | workplans/CUST-WP-0077-dependency-root-execution-wave.md | +| task | CUST-WP-0077-T05 | done | — | workplans/CUST-WP-0077-dependency-root-execution-wave.md | +| task | CUST-WP-0078-T01 | done | — | workplans/CUST-WP-0078-security-collaboration-consolidation.md | +| task | CUST-WP-0078-T02 | done | — | workplans/CUST-WP-0078-security-collaboration-consolidation.md | +| task | CUST-WP-0078-T03 | done | — | workplans/CUST-WP-0078-security-collaboration-consolidation.md | +| task | CUST-WP-0078-T04 | done | — | workplans/CUST-WP-0078-security-collaboration-consolidation.md | +| task | CUST-WP-0079-T01 | done | — | workplans/CUST-WP-0079-deterministic-security-flow.md | +| task | CUST-WP-0079-T02 | done | — | workplans/CUST-WP-0079-deterministic-security-flow.md | +| task | CUST-WP-0079-T03 | wait | — | workplans/CUST-WP-0079-deterministic-security-flow.md | +| task | CUST-WP-0079-T04 | wait | — | workplans/CUST-WP-0079-deterministic-security-flow.md | +| task | CUST-WP-0079-T05 | wait | — | workplans/CUST-WP-0079-deterministic-security-flow.md | +| task | CUST-WP-0079-T06 | wait | — | workplans/CUST-WP-0079-deterministic-security-flow.md | +| task | CUST-WP-0079-T07 | done | — | workplans/CUST-WP-0079-deterministic-security-flow.md | +| task | CUST-WP-0080-T01 | done | — | workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md | +| task | CUST-WP-0080-T02 | done | — | workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md | +| task | CUST-WP-0080-T03 | progress | — | workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md | +| task | CUST-WP-0080-T04 | todo | — | workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md | +| task | CUST-WP-0080-T05 | progress | — | workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md | +| task | CUST-WP-0080-T06 | progress | — | workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md | +| task | CUST-WP-0081-T01 | done | — | workplans/CUST-WP-0081-netkingdom-architecture-review-and-reuse.md | +| task | CUST-WP-0081-T02 | done | — | workplans/CUST-WP-0081-netkingdom-architecture-review-and-reuse.md | +| task | CUST-WP-0081-T03 | done | — | workplans/CUST-WP-0081-netkingdom-architecture-review-and-reuse.md | +| task | THE-WP-0001-T01 | done | — | workplans/THE-WP-0001-federation-interface.md | +| task | THE-WP-0001-T02 | done | — | workplans/THE-WP-0001-federation-interface.md | +| intake | CUST-IN-0001 | closed | green | intake-legacy-suggestions-migration.md | +| intake | CUST-IN-0002 | closed | green | intake-legacy-suggestions-migration.md | +| intake | CUST-IN-0003 | closed | green | intake-legacy-suggestions-migration.md | +| intake | CUST-IN-0004 | routed | green | intake-legacy-suggestions-migration.md | +| intake | CUST-IN-0005 | closed | green | intake-legacy-suggestions-migration.md | +| intake | CUST-IN-0006 | closed | green | intake-legacy-suggestions-migration.md | +| intake | CUST-IN-0007 | closed | green | intake-legacy-suggestions-migration.md | +| intake | CUST-IN-0008 | closed | blue | intake-legacy-suggestions-migration.md | +| intake | CUST-IN-0009 | closed | blue | intake-legacy-suggestions-migration.md | +| intake | CUST-IN-0010 | closed | green | intake-legacy-suggestions-migration.md | +| intake | CUST-IN-0011 | routed | red | intakes.md | +| intake | CUST-IN-0012 | closed | green | intakes.md | +| intake | CUST-IN-0013 | closed | blue | intakes.md | +| intake | CUST-IN-0014 | closed | blue | intakes.md | +| intake | CUST-IN-0015 | open | blue | intakes.md | +| intake | CUST-IN-0016 | open | green | intakes.md | +| intake | CUST-IN-0017 | open | green | intakes.md | +| intake | CUST-IN-0018 | open | green | intakes.md | diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-backup/originals.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-backup/originals.json new file mode 100644 index 00000000..5a19a7b4 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-backup/originals.json @@ -0,0 +1,10 @@ +[ + { + "path": ".custodian-brief.md", + "index": "100644 6aad3a5788fad3abd60c0f1270f160062dc0168b 0\t.custodian-brief.md" + }, + { + "path": "WORK-RECORDS.md", + "index": "100644 d535e0f2dcc3d454e041a8f1b547b5dea4493380 0\tWORK-RECORDS.md" + } +] diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-commit.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-commit.json new file mode 100644 index 00000000..ca613256 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-commit.json @@ -0,0 +1,177 @@ +{ + "exit_code": 0, + "commit": "17635cb0a76e5595ec06421ab7419ae889f6d731", + "base": "bab3dd1c9df67f344fb207904a8edb3896bf4bd1", + "files": [ + { + "path": ".kaizen/agents/custodian-codex/supervision.json", + "sha256": "ed8cbb79bb8958960c2b8b7b3155be7919ed0973f20dc3ace95ad3fffab04e70" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/README.md", + "sha256": "df1c7c579db58115721062ed741c6679fa218802ce241be841badac335595ac3" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/check_upstream_release.py", + "sha256": "bf4e0bfe5f233d988df566fafb56c869bb809123204068460acc3d7ec0668f40" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/checker-reproduction.json", + "sha256": "196d654fb711ff9e4fbd4e89a3a79fe61f77a74208942e9c6c8be5d417699e40" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/client-public-build.yaml", + "sha256": "942d642a40bf76f11d09336fa6e90f861b5fccffa7ba6143bdcbfa8a1498bb6b" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/client.yaml", + "sha256": "52e21883f677e69c99813eca8f273cea06e598c0475e5d51959251ba05161f53" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/decision-request-r2.json", + "sha256": "984191cdf4e545ad27b8620f578194e7cb3ffbeeca19de63151bb633124fc4fa" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/decision-request.json", + "sha256": "c56938c703a04a6b5c7a274c48d29e762042f6e3c2be318f605d96ba54705419" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/delivery-metadata.json", + "sha256": "883d25d0c42904b6e1c450572252664677c23bdc7e50076551db74e1be242940" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/deployment-preconditions.json", + "sha256": "940594b48dfc024ed3eb83f86f051ee539b2ad90a18aa088cfa73483618e529e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/execution-steps.json", + "sha256": "98cb80a42e22315a7e846418f5157091c2e246ed3eb86e26dc46a3d5bec69ee6" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/forgejo-auth-source-inventory.json", + "sha256": "84c005ebf6cab6d04108b05b899f941479f4cc4b98719447cebfc2d341fdd0a1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/forgejo-values.postimage.yaml", + "sha256": "210e6e450ad9fbe7e25ad7ec8ae5d4e9bf9bbc9e7f65d52ac670a66a9dd79d06" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/helm-render-validation.json", + "sha256": "0b458d9f3f4184323c890c063db7e52f715af56084b9df0512050cb466a7941c" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/issuer-start-probe.json", + "sha256": "d6599ea6bba54295937a1a6371768c8464139f00b3265cc5367f891c6b78d4d1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/native-signin-settings.json", + "sha256": "92f4be74ea1a2b05822896018b3e40ec17be379c7b27d44f7d077b937891eb0e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/net-kingdom-client.postimage.yaml", + "sha256": "3210f662cf65d54e912969ad03767053baf5c867402fc5f24b7017fb3b82d8e1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/prepublication-validation-r1.json", + "sha256": "a85a9256bf87a7f321fd7b05ef461c7f4eb28a698a5a0d25cad705bb53d3940e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/prepublication-validation.json", + "sha256": "17e3a43121d9884f9c66cb1f303bb8784481d1db0eceb638a68ebcf401d5a655" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/proposal.json", + "sha256": "fcea2cd32b8ee2634d2ebeb9ef4b659b6b85f8a4878413ed96e5d06cb09892c3" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/proposal.sha256", + "sha256": "f781a423ff9cd188eb9afa4c1cdb340d4d98d78708bf26e6d63e273152f0f4e8" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt1.json", + "sha256": "3966e5e9f3db2160cd0ec05e1c32a3f40c80e3448b1147c0bb80d9831748492f" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt1.jsonl", + "sha256": "c36143e6ca9285b1f596df3c0e1873b767b2cfda70c2620cd63b43333e909ce2" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt2.json", + "sha256": "9e341cd83f74d64d538b0481109c477796a477a268688abc53c096f332d708e1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt2.jsonl", + "sha256": "491ebcaf534083308c9bb5ca4df3c3f0e3e52ee98f1c5c614b88aaa8ffe82172" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt3.json", + "sha256": "663cafc1ebf62d3a46c47476e24d989f1077454919e032af5a6995164d89aef5" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt3.jsonl", + "sha256": "4713adec78a038964aff5c2b2c30b7ea9adda7582e9aee9edfbef97863bae5b2" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-baseline.json", + "sha256": "c29bd2100de02383507a06340ab5a71ded1743f121d84bb4848f72bfb3a06330" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-result.json", + "sha256": "0fe021cacb6c8db0727ca8e4f31fa29960549fba3dd11871de00453667f40b0e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-build-values.yaml", + "sha256": "5239c5c635d2467d7b3f4ea90e85ac71819afcca6b07f609c56b7d22b36ca1b6" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-registration-dry-run.json", + "sha256": "4dc8aaab56534b10a7c58e32fe5f20d379645cbdd2005278a2eedfb9b1fab6b3" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-registration-inspection.json", + "sha256": "6dba568b9ffa3cc8dc38b773344d1848ed00112c171352deb55d0897fd6299ca" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public_pkce_interop_test.go", + "sha256": "8968c617d83bb041f0c2a4c251bf1efc88db45036f51c6eb55c5058bdb662aed" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/railiance-apps.patch", + "sha256": "65f1702d3450512f1b022992f0ec31953ae1e748e70d6e7d69fc2ddd64267312" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/rebuild_checker.py", + "sha256": "385a2590ecd63a59aa0189b0fc9501d2b727a4edf991c560343beff5fb106a2d" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/registration-inspection.json", + "sha256": "793f65acfc8e4f59224bc29dc48eec0fdef2b587cd16dedc4d3d06a3301ef098" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/revision-history.json", + "sha256": "9c354cd8d7e0345a0fb8e26b3a4be4d41db04f0a1f3930e7198f070948fffff4" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/run_public_protocol.py", + "sha256": "5d9ad425ebfafa317088ec8c2ed571d0398a3b131b0314af8658f345114b3d88" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/upstream-release-result.json", + "sha256": "e4da5c8f605a871004be87fcd4e38b7bfaf9f3ca00922b8d1485e1226101e823" + }, + { + "path": "docs/security-close-down-checklist.md", + "sha256": "6a919377302dd00733b46692730c92dc41525b881a5a017a505c6659bc06909a" + }, + { + "path": "workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md", + "sha256": "994678a5981cc653d3a334cffed36b9b9df1cf21c65761d394f9e5601b53b695" + }, + { + "path": "workplans/CUST-WP-0082-netkingdom-security-hardening.md", + "sha256": "481b13f6c5c7ef3a2120ddedcfbcdeaeb8f5543a4737c08afdec097b2b5ec3d2" + } + ], + "stdout": "[main 17635cb] Prepare verified Forgejo public-PKCE build profile revision 2 for scoped review\n 42 files changed, 1632 insertions(+), 5 deletions(-)\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/README.md\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/check_upstream_release.py\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/checker-reproduction.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/client-public-build.yaml\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/client.yaml\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/decision-request-r2.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/decision-request.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/delivery-metadata.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/deployment-preconditions.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/execution-steps.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/forgejo-auth-source-inventory.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/forgejo-values.postimage.yaml\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/helm-render-validation.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/issuer-start-probe.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/native-signin-settings.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/net-kingdom-client.postimage.yaml\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/prepublication-validation-r1.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/prepublication-validation.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/proposal.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/proposal.sha256\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt1.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt1.jsonl\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt2.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt2.jsonl\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt3.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt3.jsonl\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-baseline.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-result.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-build-values.yaml\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-registration-dry-run.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-registration-inspection.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public_pkce_interop_test.go\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/railiance-apps.patch\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/rebuild_checker.py\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/registration-inspection.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/revision-history.json\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/run_public_protocol.py\n create mode 100644 docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/upstream-release-result.json\n", + "stderr": "{\"blocked_blob_ids\": [], \"scanned_blobs\": 42, \"scanner_sha256\": \"88f91962aa2f93ac6ab281d553b9e125f5197bbbce38f9f2437f7299c32e5509\", \"scanner_version\": \"8.30.1\", \"scope\": \"changed-staged-blobs\", \"status\": \"clean\"}\n" +} diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-inputs.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-inputs.json new file mode 100644 index 00000000..6cbc669b --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/retry-r3/publication-inputs.json @@ -0,0 +1,175 @@ +{ + "owner": "the-custodian", + "base_revision": "bab3dd1c9df67f344fb207904a8edb3896bf4bd1", + "message": "Prepare verified Forgejo public-PKCE build profile revision 2 for scoped review", + "files": [ + { + "path": ".kaizen/agents/custodian-codex/supervision.json", + "sha256": "ed8cbb79bb8958960c2b8b7b3155be7919ed0973f20dc3ace95ad3fffab04e70" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/README.md", + "sha256": "df1c7c579db58115721062ed741c6679fa218802ce241be841badac335595ac3" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/check_upstream_release.py", + "sha256": "bf4e0bfe5f233d988df566fafb56c869bb809123204068460acc3d7ec0668f40" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/checker-reproduction.json", + "sha256": "196d654fb711ff9e4fbd4e89a3a79fe61f77a74208942e9c6c8be5d417699e40" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/client-public-build.yaml", + "sha256": "942d642a40bf76f11d09336fa6e90f861b5fccffa7ba6143bdcbfa8a1498bb6b" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/client.yaml", + "sha256": "52e21883f677e69c99813eca8f273cea06e598c0475e5d51959251ba05161f53" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/decision-request-r2.json", + "sha256": "984191cdf4e545ad27b8620f578194e7cb3ffbeeca19de63151bb633124fc4fa" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/decision-request.json", + "sha256": "c56938c703a04a6b5c7a274c48d29e762042f6e3c2be318f605d96ba54705419" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/delivery-metadata.json", + "sha256": "883d25d0c42904b6e1c450572252664677c23bdc7e50076551db74e1be242940" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/deployment-preconditions.json", + "sha256": "940594b48dfc024ed3eb83f86f051ee539b2ad90a18aa088cfa73483618e529e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/execution-steps.json", + "sha256": "98cb80a42e22315a7e846418f5157091c2e246ed3eb86e26dc46a3d5bec69ee6" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/forgejo-auth-source-inventory.json", + "sha256": "84c005ebf6cab6d04108b05b899f941479f4cc4b98719447cebfc2d341fdd0a1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/forgejo-values.postimage.yaml", + "sha256": "210e6e450ad9fbe7e25ad7ec8ae5d4e9bf9bbc9e7f65d52ac670a66a9dd79d06" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/helm-render-validation.json", + "sha256": "0b458d9f3f4184323c890c063db7e52f715af56084b9df0512050cb466a7941c" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/issuer-start-probe.json", + "sha256": "d6599ea6bba54295937a1a6371768c8464139f00b3265cc5367f891c6b78d4d1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/native-signin-settings.json", + "sha256": "92f4be74ea1a2b05822896018b3e40ec17be379c7b27d44f7d077b937891eb0e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/net-kingdom-client.postimage.yaml", + "sha256": "3210f662cf65d54e912969ad03767053baf5c867402fc5f24b7017fb3b82d8e1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/prepublication-validation-r1.json", + "sha256": "a85a9256bf87a7f321fd7b05ef461c7f4eb28a698a5a0d25cad705bb53d3940e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/prepublication-validation.json", + "sha256": "17e3a43121d9884f9c66cb1f303bb8784481d1db0eceb638a68ebcf401d5a655" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/proposal.json", + "sha256": "fcea2cd32b8ee2634d2ebeb9ef4b659b6b85f8a4878413ed96e5d06cb09892c3" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/proposal.sha256", + "sha256": "f781a423ff9cd188eb9afa4c1cdb340d4d98d78708bf26e6d63e273152f0f4e8" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt1.json", + "sha256": "3966e5e9f3db2160cd0ec05e1c32a3f40c80e3448b1147c0bb80d9831748492f" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt1.jsonl", + "sha256": "c36143e6ca9285b1f596df3c0e1873b767b2cfda70c2620cd63b43333e909ce2" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt2.json", + "sha256": "9e341cd83f74d64d538b0481109c477796a477a268688abc53c096f332d708e1" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt2.jsonl", + "sha256": "491ebcaf534083308c9bb5ca4df3c3f0e3e52ee98f1c5c614b88aaa8ffe82172" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt3.json", + "sha256": "663cafc1ebf62d3a46c47476e24d989f1077454919e032af5a6995164d89aef5" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-attempt3.jsonl", + "sha256": "4713adec78a038964aff5c2b2c30b7ea9adda7582e9aee9edfbef97863bae5b2" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-baseline.json", + "sha256": "c29bd2100de02383507a06340ab5a71ded1743f121d84bb4848f72bfb3a06330" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/protocol-result.json", + "sha256": "0fe021cacb6c8db0727ca8e4f31fa29960549fba3dd11871de00453667f40b0e" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-build-values.yaml", + "sha256": "5239c5c635d2467d7b3f4ea90e85ac71819afcca6b07f609c56b7d22b36ca1b6" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-registration-dry-run.json", + "sha256": "4dc8aaab56534b10a7c58e32fe5f20d379645cbdd2005278a2eedfb9b1fab6b3" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public-registration-inspection.json", + "sha256": "6dba568b9ffa3cc8dc38b773344d1848ed00112c171352deb55d0897fd6299ca" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/public_pkce_interop_test.go", + "sha256": "8968c617d83bb041f0c2a4c251bf1efc88db45036f51c6eb55c5058bdb662aed" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/railiance-apps.patch", + "sha256": "65f1702d3450512f1b022992f0ec31953ae1e748e70d6e7d69fc2ddd64267312" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/rebuild_checker.py", + "sha256": "385a2590ecd63a59aa0189b0fc9501d2b727a4edf991c560343beff5fb106a2d" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/registration-inspection.json", + "sha256": "793f65acfc8e4f59224bc29dc48eec0fdef2b587cd16dedc4d3d06a3301ef098" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/revision-history.json", + "sha256": "9c354cd8d7e0345a0fb8e26b3a4be4d41db04f0a1f3930e7198f070948fffff4" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/run_public_protocol.py", + "sha256": "5d9ad425ebfafa317088ec8c2ed571d0398a3b131b0314af8658f345114b3d88" + }, + { + "path": "docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/upstream-release-result.json", + "sha256": "e4da5c8f605a871004be87fcd4e38b7bfaf9f3ca00922b8d1485e1226101e823" + }, + { + "path": "docs/security-close-down-checklist.md", + "sha256": "6a919377302dd00733b46692730c92dc41525b881a5a017a505c6659bc06909a" + }, + { + "path": "workplans/CUST-WP-0080-netkingdom-security-blueprint-and-gap-closure.md", + "sha256": "994678a5981cc653d3a334cffed36b9b9df1cf21c65761d394f9e5601b53b695" + }, + { + "path": "workplans/CUST-WP-0082-netkingdom-security-hardening.md", + "sha256": "481b13f6c5c7ef3a2120ddedcfbcdeaeb8f5543a4737c08afdec097b2b5ec3d2" + } + ] +} diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/scanner-diagnosis-r1.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/scanner-diagnosis-r1.json new file mode 100644 index 00000000..b03564bb --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/scanner-diagnosis-r1.json @@ -0,0 +1,23 @@ +{ + "scan_exit_code": 20, + "findings": [ + { + "RuleID": "generic-api-key", + "Description": "Detected a Generic API Key, potentially exposing access to various services and sensitive operations.", + "StartLine": 51, + "EndLine": 51, + "StartColumn": 52, + "EndColumn": 137 + }, + { + "RuleID": "generic-api-key", + "Description": "Detected a Generic API Key, potentially exposing access to various services and sensitive operations.", + "StartLine": 55, + "EndLine": 55, + "StartColumn": 48, + "EndColumn": 123 + } + ], + "raw_match_and_secret_discarded": true, + "native_secret_access": false +} diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/scanner-r2-clean.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/scanner-r2-clean.json new file mode 100644 index 00000000..377af792 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-good-case-preparation-r1/publication/scanner-r2-clean.json @@ -0,0 +1,7 @@ +{ + "exit_code": 0, + "same_pinned_default_scanner": true, + "no_rule_or_exemption_change": true, + "change": "Public source pins represented as typed path/sha256 records; identical full hashes retained", + "proposal_sha256": "fcea2cd32b8ee2634d2ebeb9ef4b659b6b85f8a4878413ed96e5d06cb09892c3" +} diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-keycape-claims-r1/owner-integration/publication-backup/.custodian-brief.md.worktree b/docs/changes/netkingdom-target-2026-10-18/forgejo-keycape-claims-r1/owner-integration/publication-backup/.custodian-brief.md.worktree new file mode 100644 index 00000000..1f9b6fae --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-keycape-claims-r1/owner-integration/publication-backup/.custodian-brief.md.worktree @@ -0,0 +1,47 @@ + +# Custodian Brief — railiance-apps + +**Domain:** financials +**Last synced:** 2026-10-17 10:13 UTC +**State Hub:** http://127.0.0.1:8000 *(adjust if running on a remote machine)* + +## Active Workstreams + +### Forgejo sign-in through NetKingdom, before the forge closes +Progress: 1/5 done | workplan_id: `f6b1d6f6-0abb-5774-87b9-bf3cfb640a3b` + +**Open tasks:** +- ! T01 — Make the local administrator a sealed break-glass `13cd3aec` + *(wait: Break-glass done (T01); needs the NetKingdom client registered with its secret in custody (KEY-WP-0038-T02).)* +- ! T02 — Add the NetKingdom authentication source `81f072aa` + *(wait: Linking and team mapping follow a working authentication source.)* +- ! T03 — Link accounts and map groups to teams `32c54737` + *(wait: Restricting local password sign-in is a founder decision once NetKingdom sign-in is proven.)* +- ! T04 — Decide on local password sign-in `728786c9` + *(wait: Waits for net-kingdom's answer to the Apps 1.3 needs-change record (the-custodian docs/changes/netkingdom-target-2026-10-17/nk48-1.3-owner-review/owner-review-railiance-apps.json: RAPPS-1.3-C1..C3) and the re-frozen 1.3 candidate.)* + +### Coulomb-social persistent personal workspace release +Progress: 3/4 done | workplan_id: `79abacf8-361e-51ab-829d-40dec8e142d1` + +**Open tasks:** +- ! T04 — Personal sign-in and content acceptance `8bc4962a` + +### Deploy and recover the first invited Vergabe company pilot +Progress: 2/3 done | workplan_id: `c7fdaa7e-cab8-5d1d-86c2-f1aad7927c57` + +**Open tasks:** +- ! Demonstrate restart, isolated restore, rollback and operating ownership `dd069c6d` + *(wait: Await populated two-user/document workflow, coherent PostgreSQL/media/issue-state off-host recovery point, isolated restored workflow, rollback evidence and support ownership. September 25 proves database restore and restart only.)* + +## Inbox Hygiene + +**Stale unread:** 2 message(s) older than 3 day(s) — triage at session start. +**Missing thread_id:** 2 unread message(s) lack supersession chains. + +--- +## MCP Orientation (when available) + +If the state-hub MCP server is reachable, call: +`get_domain_summary("financials")` +This provides richer cross-domain context. +If the MCP call fails, use this file as your orientation source. diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-keycape-claims-r1/owner-integration/publication-backup/WORK-RECORDS.md.worktree b/docs/changes/netkingdom-target-2026-10-18/forgejo-keycape-claims-r1/owner-integration/publication-backup/WORK-RECORDS.md.worktree new file mode 100644 index 00000000..89c6d25c --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-keycape-claims-r1/owner-integration/publication-backup/WORK-RECORDS.md.worktree @@ -0,0 +1,48 @@ +# Work Records — railiance-apps + +> Generated by `statehub fix-consistency` (CUST-WP-0061-T04, work-record +> stage 3). Do not edit by hand — edit the source file/block listed for +> each record and re-run fix-consistency to refresh this index. Archived +> workplans are omitted; closed decisions/intakes/engagements stay listed +> so recently-resolved work is still visible. [auto] + +| Kind | ID | Status | Lane | Source | +| --- | --- | --- | --- | --- | +| workplan | RAPPS-WP-0001 | finished | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| workplan | RAPPS-WP-0002 | finished | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| workplan | RAPPS-WP-0003 | finished | — | workplans/RAPPS-WP-0003-policy-nexus-production-binding.md | +| workplan | RAPPS-WP-0014 | blocked | — | workplans/RAPPS-WP-0014-vergabe-invited-pilot.md | +| workplan | RAPPS-WP-0015 | active | — | workplans/RAPPS-WP-0015-coulomb-personal-content-release.md | +| workplan | RAPPS-WP-0016 | active | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| workplan | RAPPS-WP-0017 | finished | — | workplans/RAPPS-WP-0017-reuse-private-reader-release.md | +| task | RAPPS-WP-0001-T01 | done | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| task | RAPPS-WP-0001-T02 | done | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| task | RAPPS-WP-0001-T03 | done | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| task | RAPPS-WP-0001-T04 | done | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| task | RAPPS-WP-0001-T05 | done | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| task | RAPPS-WP-0002-T01 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T02 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T03 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T04 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T05 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T06 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T07 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0003-T01 | done | — | workplans/RAPPS-WP-0003-policy-nexus-production-binding.md | +| task | RAPPS-WP-0003-T02 | done | — | workplans/RAPPS-WP-0003-policy-nexus-production-binding.md | +| task | RAPPS-WP-0003-T03 | done | — | workplans/RAPPS-WP-0003-policy-nexus-production-binding.md | +| task | RAPPS-WP-0003-T04 | done | — | workplans/RAPPS-WP-0003-policy-nexus-production-binding.md | +| task | RAPPS-WP-0014-T01 | done | — | workplans/RAPPS-WP-0014-vergabe-invited-pilot.md | +| task | RAPPS-WP-0014-T02 | done | — | workplans/RAPPS-WP-0014-vergabe-invited-pilot.md | +| task | RAPPS-WP-0014-T03 | wait | — | workplans/RAPPS-WP-0014-vergabe-invited-pilot.md | +| task | RAPPS-WP-0015-T01 | done | — | workplans/RAPPS-WP-0015-coulomb-personal-content-release.md | +| task | RAPPS-WP-0015-T02 | done | — | workplans/RAPPS-WP-0015-coulomb-personal-content-release.md | +| task | RAPPS-WP-0015-T03 | done | — | workplans/RAPPS-WP-0015-coulomb-personal-content-release.md | +| task | RAPPS-WP-0015-T04 | wait | — | workplans/RAPPS-WP-0015-coulomb-personal-content-release.md | +| task | RAPPS-WP-0016-T01 | done | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| task | RAPPS-WP-0016-T02 | wait | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| task | RAPPS-WP-0016-T03 | wait | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| task | RAPPS-WP-0016-T04 | wait | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| task | RAPPS-WP-0016-T05 | wait | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| task | RAPPS-WP-0017-T01 | done | — | workplans/RAPPS-WP-0017-reuse-private-reader-release.md | +| task | RAPPS-WP-0017-T02 | done | — | workplans/RAPPS-WP-0017-reuse-private-reader-release.md | +| task | RAPPS-WP-0017-T03 | done | — | workplans/RAPPS-WP-0017-reuse-private-reader-release.md | diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-keycape-claims-r1/owner-integration/publication-backup/originals.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-keycape-claims-r1/owner-integration/publication-backup/originals.json new file mode 100644 index 00000000..415362e8 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-keycape-claims-r1/owner-integration/publication-backup/originals.json @@ -0,0 +1,10 @@ +[ + { + "path": ".custodian-brief.md", + "index": "100644 1f9b6fae4362945f96aa9a2a9647be9c83d8296a 0\t.custodian-brief.md" + }, + { + "path": "WORK-RECORDS.md", + "index": "100644 89c6d25cfe29035a2e0ad71113c31b89338b0cc3 0\tWORK-RECORDS.md" + } +] diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-postgres-source-r1/owner-integration/publication-backup/.custodian-brief.md.worktree b/docs/changes/netkingdom-target-2026-10-18/forgejo-postgres-source-r1/owner-integration/publication-backup/.custodian-brief.md.worktree new file mode 100644 index 00000000..1f9b6fae --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-postgres-source-r1/owner-integration/publication-backup/.custodian-brief.md.worktree @@ -0,0 +1,47 @@ + +# Custodian Brief — railiance-apps + +**Domain:** financials +**Last synced:** 2026-10-17 10:13 UTC +**State Hub:** http://127.0.0.1:8000 *(adjust if running on a remote machine)* + +## Active Workstreams + +### Forgejo sign-in through NetKingdom, before the forge closes +Progress: 1/5 done | workplan_id: `f6b1d6f6-0abb-5774-87b9-bf3cfb640a3b` + +**Open tasks:** +- ! T01 — Make the local administrator a sealed break-glass `13cd3aec` + *(wait: Break-glass done (T01); needs the NetKingdom client registered with its secret in custody (KEY-WP-0038-T02).)* +- ! T02 — Add the NetKingdom authentication source `81f072aa` + *(wait: Linking and team mapping follow a working authentication source.)* +- ! T03 — Link accounts and map groups to teams `32c54737` + *(wait: Restricting local password sign-in is a founder decision once NetKingdom sign-in is proven.)* +- ! T04 — Decide on local password sign-in `728786c9` + *(wait: Waits for net-kingdom's answer to the Apps 1.3 needs-change record (the-custodian docs/changes/netkingdom-target-2026-10-17/nk48-1.3-owner-review/owner-review-railiance-apps.json: RAPPS-1.3-C1..C3) and the re-frozen 1.3 candidate.)* + +### Coulomb-social persistent personal workspace release +Progress: 3/4 done | workplan_id: `79abacf8-361e-51ab-829d-40dec8e142d1` + +**Open tasks:** +- ! T04 — Personal sign-in and content acceptance `8bc4962a` + +### Deploy and recover the first invited Vergabe company pilot +Progress: 2/3 done | workplan_id: `c7fdaa7e-cab8-5d1d-86c2-f1aad7927c57` + +**Open tasks:** +- ! Demonstrate restart, isolated restore, rollback and operating ownership `dd069c6d` + *(wait: Await populated two-user/document workflow, coherent PostgreSQL/media/issue-state off-host recovery point, isolated restored workflow, rollback evidence and support ownership. September 25 proves database restore and restart only.)* + +## Inbox Hygiene + +**Stale unread:** 2 message(s) older than 3 day(s) — triage at session start. +**Missing thread_id:** 2 unread message(s) lack supersession chains. + +--- +## MCP Orientation (when available) + +If the state-hub MCP server is reachable, call: +`get_domain_summary("financials")` +This provides richer cross-domain context. +If the MCP call fails, use this file as your orientation source. diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-postgres-source-r1/owner-integration/publication-backup/WORK-RECORDS.md.worktree b/docs/changes/netkingdom-target-2026-10-18/forgejo-postgres-source-r1/owner-integration/publication-backup/WORK-RECORDS.md.worktree new file mode 100644 index 00000000..89c6d25c --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-postgres-source-r1/owner-integration/publication-backup/WORK-RECORDS.md.worktree @@ -0,0 +1,48 @@ +# Work Records — railiance-apps + +> Generated by `statehub fix-consistency` (CUST-WP-0061-T04, work-record +> stage 3). Do not edit by hand — edit the source file/block listed for +> each record and re-run fix-consistency to refresh this index. Archived +> workplans are omitted; closed decisions/intakes/engagements stay listed +> so recently-resolved work is still visible. [auto] + +| Kind | ID | Status | Lane | Source | +| --- | --- | --- | --- | --- | +| workplan | RAPPS-WP-0001 | finished | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| workplan | RAPPS-WP-0002 | finished | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| workplan | RAPPS-WP-0003 | finished | — | workplans/RAPPS-WP-0003-policy-nexus-production-binding.md | +| workplan | RAPPS-WP-0014 | blocked | — | workplans/RAPPS-WP-0014-vergabe-invited-pilot.md | +| workplan | RAPPS-WP-0015 | active | — | workplans/RAPPS-WP-0015-coulomb-personal-content-release.md | +| workplan | RAPPS-WP-0016 | active | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| workplan | RAPPS-WP-0017 | finished | — | workplans/RAPPS-WP-0017-reuse-private-reader-release.md | +| task | RAPPS-WP-0001-T01 | done | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| task | RAPPS-WP-0001-T02 | done | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| task | RAPPS-WP-0001-T03 | done | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| task | RAPPS-WP-0001-T04 | done | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| task | RAPPS-WP-0001-T05 | done | — | workplans/RAPPS-WP-0001-cnpg-backup-scheduledbackup-coverage.md | +| task | RAPPS-WP-0002-T01 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T02 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T03 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T04 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T05 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T06 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0002-T07 | done | — | workplans/RAPPS-WP-0002-railiance01-activity-core-backup-automation.md | +| task | RAPPS-WP-0003-T01 | done | — | workplans/RAPPS-WP-0003-policy-nexus-production-binding.md | +| task | RAPPS-WP-0003-T02 | done | — | workplans/RAPPS-WP-0003-policy-nexus-production-binding.md | +| task | RAPPS-WP-0003-T03 | done | — | workplans/RAPPS-WP-0003-policy-nexus-production-binding.md | +| task | RAPPS-WP-0003-T04 | done | — | workplans/RAPPS-WP-0003-policy-nexus-production-binding.md | +| task | RAPPS-WP-0014-T01 | done | — | workplans/RAPPS-WP-0014-vergabe-invited-pilot.md | +| task | RAPPS-WP-0014-T02 | done | — | workplans/RAPPS-WP-0014-vergabe-invited-pilot.md | +| task | RAPPS-WP-0014-T03 | wait | — | workplans/RAPPS-WP-0014-vergabe-invited-pilot.md | +| task | RAPPS-WP-0015-T01 | done | — | workplans/RAPPS-WP-0015-coulomb-personal-content-release.md | +| task | RAPPS-WP-0015-T02 | done | — | workplans/RAPPS-WP-0015-coulomb-personal-content-release.md | +| task | RAPPS-WP-0015-T03 | done | — | workplans/RAPPS-WP-0015-coulomb-personal-content-release.md | +| task | RAPPS-WP-0015-T04 | wait | — | workplans/RAPPS-WP-0015-coulomb-personal-content-release.md | +| task | RAPPS-WP-0016-T01 | done | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| task | RAPPS-WP-0016-T02 | wait | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| task | RAPPS-WP-0016-T03 | wait | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| task | RAPPS-WP-0016-T04 | wait | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| task | RAPPS-WP-0016-T05 | wait | — | workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md | +| task | RAPPS-WP-0017-T01 | done | — | workplans/RAPPS-WP-0017-reuse-private-reader-release.md | +| task | RAPPS-WP-0017-T02 | done | — | workplans/RAPPS-WP-0017-reuse-private-reader-release.md | +| task | RAPPS-WP-0017-T03 | done | — | workplans/RAPPS-WP-0017-reuse-private-reader-release.md | diff --git a/docs/changes/netkingdom-target-2026-10-18/forgejo-postgres-source-r1/owner-integration/publication-backup/originals.json b/docs/changes/netkingdom-target-2026-10-18/forgejo-postgres-source-r1/owner-integration/publication-backup/originals.json new file mode 100644 index 00000000..415362e8 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/forgejo-postgres-source-r1/owner-integration/publication-backup/originals.json @@ -0,0 +1,10 @@ +[ + { + "path": ".custodian-brief.md", + "index": "100644 1f9b6fae4362945f96aa9a2a9647be9c83d8296a 0\t.custodian-brief.md" + }, + { + "path": "WORK-RECORDS.md", + "index": "100644 89c6d25cfe29035a2e0ad71113c31b89338b0cc3 0\tWORK-RECORDS.md" + } +] diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/full-attempt3.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/full-attempt3.json new file mode 100644 index 00000000..baa3ba2d --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/full-attempt3.json @@ -0,0 +1,223 @@ +{ + "returncode": 0, + "seconds": 29.8, + "argv": [ + "bwrap", + "--unshare-net", + "--unshare-pid", + "--die-with-parent", + "--new-session", + "--ro-bind", + "/usr", + "/usr", + "--ro-bind", + "/lib", + "/lib", + "--ro-bind", + "/lib64", + "/lib64", + "--symlink", + "usr/bin", + "/bin", + "--proc", + "/proc", + "--dev", + "/dev", + "--tmpfs", + "/tmp", + "--bind", + "/tmp/custodian-keycape-token-pair-r1", + "/work", + "--ro-bind", + "/home/worsch/go/pkg/mod", + "/modules", + "--ro-bind", + "/home/worsch/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.26.7.linux-amd64", + "/toolchain", + "--chdir", + "/work/source/src", + "--clearenv", + "--bind", + "/tmp/custodian-keycape-token-status-r1/gocache", + "/work/gocache", + "--setenv", + "PATH", + "/toolchain/bin:/usr/bin:/bin", + "--setenv", + "HOME", + "/work/home", + "--setenv", + "GOTOOLCHAIN", + "local", + "--setenv", + "GOPROXY", + "off", + "--setenv", + "GOSUMDB", + "off", + "--setenv", + "GOMODCACHE", + "/modules", + "--setenv", + "GOCACHE", + "/work/gocache", + "--setenv", + "GOMAXPROCS", + "4", + "--setenv", + "CGO_ENABLED", + "1", + "--", + "go", + "test", + "-p", + "4", + "-race", + "-json", + "-count=1", + "./..." + ], + "source_sha256_at_start": { + "src/go.mod": "sha256:ab299ad4f94feb78e217e2228a4aa161b166460aa28df0c5009451ac1a337456", + "src/Makefile": "sha256:6cdd3aa6e1cccaf4e028278acafe3e6a8d28170de89ff3462984d4f6eb56bd96", + "src/go.sum": "sha256:b10ad54277fb2bd927d3af727fc4dbb9ebe91a038a75be0469d0253ca699226d", + "src/tests/negative/negative_test.go": "sha256:757485bf1967ed95e872d4a1987b7fd985fbffccd05cf41270b9f4061431de3f", + "src/tests/conformance/external_test.go": "sha256:b26bd465e31086f957c9e374b6bee1f0f077b7481eda9daa29cf63816bb87fdb", + "src/tests/migration/scenario_c_test.go": "sha256:9722146ac224768aff85476acbd83f3d478c1e060e5a3c6f99b1786858879b80", + "src/tests/migration/fixtures_test.go": "sha256:3fbcb8f531fa206225f719a67b744b2ecb908095fbae0538432796697971e6de", + "src/tests/migration/scenario_b_test.go": "sha256:40ae7239d116f3e284c767570d39e1f32d44fc29b6fa37ea8835987027942ac0", + "src/tests/profile/profile_test.go": "sha256:e5ab4568b15f681a13c9295b17907ca3872ee33b702bb56aea749f17758d29e6", + "src/internal/domain/assurance_test.go": "sha256:87680e7afd47294dadc13092ca2bb7c47b9625c80e48a701765c00df3293d755", + "src/internal/domain/conformance_test.go": "sha256:6420ec21d4e7a97f60902e1f0debbaf20df91aeac6ab110629b82a67f4c5c9a1", + "src/internal/domain/repository.go": "sha256:28f6d8f7f3d822e73f164af5e877f252db7dc6faa97f0ebf75d76aad64078011", + "src/internal/domain/auth.go": "sha256:ae800c5b1f58408147dd28a5c87ab2603b1537500a289397e711a4cb0e132cee", + "src/internal/domain/model.go": "sha256:ce4309fc7426c66e4ebc18022d2f704c10ebbec243cc98e657d1de765ad09029", + "src/internal/domain/assurance.go": "sha256:d3a29ece7c4fa4d9daa8b5fda89cbe0dd1ffef2ee2ecae0051ee68010edb8fd7", + "src/internal/domain/mfa.go": "sha256:1b7875b08a0f280a20a14a4fa4fdb4fc84c3942795b1d1417943d32634121b87", + "src/internal/authclient/cli.go": "sha256:009c9ce900524b62483cf4955f3cbacc0dcb9027b8da77924b51b22e3fa5170c", + "src/internal/authclient/client.go": "sha256:61fb150349c5d3714450a90834c59af9a579a8a649c4149297a402cfcf6e39c5", + "src/internal/authclient/online_cli.go": "sha256:6763c1e85396726b044067e77179ee2220e397bbd3888ec8de071c2826c6c7f2", + "src/internal/authclient/verify.go": "sha256:804735be927ba7d0228ac378056730040d3ccf2ed020b4da0714085bae972f25", + "src/internal/authclient/online.go": "sha256:182ec3971ded3a7f3923aab7a23b7317de3ec0f657b8da6d9d882a43bcb0961a", + "src/internal/authclient/online_export_test.go": "sha256:5695f233e4caf581e494087cb203a74613d39a5626bbcc323b9f2d553a96b7ba", + "src/internal/authclient/client_test.go": "sha256:23642488fcff45e369d22ba0000c47e0e450c5f92560e643ab96303e2a2f43aa", + "src/internal/authclient/online_cli_test.go": "sha256:5408a183beda6a885ebae00d3fa420d3fb0d51e4aeb72965fef535d822270c4f", + "src/internal/authclient/online_test.go": "sha256:6288329ca2576f72a361256050c94f9d1995e9fbe53b2a6318da2954bcbc7c6a", + "src/internal/authclient/online_human_test.go": "sha256:e501c30b6d710a6dea89559ccf8b98de68502c2ee58d1778a56e97f1b7f3b6e0", + "src/internal/authclient/verify_test.go": "sha256:7febc6698c87eac5fd8d2520c4f77c68e82f18a2aafa448cfa4990b96fdc46fc", + "src/internal/validator/report.go": "sha256:6bc4d31f932ea9a32020cf33203978906730dfe3601350ded0206ff6c8c297a8", + "src/internal/validator/validator_test.go": "sha256:8216027a464eab4167d8e87b4d27d130854d7b9cd4cc8a1b6f1a47ff1f9a2276", + "src/internal/validator/validator.go": "sha256:3d0a8bf8ebbe54e21e162c8f7df6e4a4d69ab997a01969b74dcbd53decdf559f", + "src/internal/config/account_test.go": "sha256:c6b75097d14dd42415c836407fa2a509857cdd2b771fb7e53d4507cbad2f4b1d", + "src/internal/config/validate.go": "sha256:2b1766979b817802f43bdd0f999ac61452d86cdfafc1539a5d6be896b900a405", + "src/internal/config/optional_mfa_test.go": "sha256:03a00bc309943adbed68bdb9bf47facb6b3b50ef380fd49143b5ed54d684f63e", + "src/internal/config/config_test.go": "sha256:af8602010985a0a5a6b4b2bf779f824e7eb5141e6bc2e8d8fcf600b964955100", + "src/internal/config/token_status_test.go": "sha256:b2b2ec13215c9661d79142ea698cb8b080f6e017de050bedebf3eb8d16df2ad5", + "src/internal/config/config.go": "sha256:19cd234757f8908880d28b8b40939367dfab1322e0401e4e563d56cd3af06683", + "src/internal/errors/taxonomy.go": "sha256:7d60f30a4ff0c9a21a3942451eb0292320a6346d3d81508e414a7dfbdc3c666c", + "src/internal/errors/taxonomy_test.go": "sha256:6c0bdf1f8e90ea343d88f57f80f6c916c92428a9ac2191a518ee7b70df0eed45", + "src/internal/jose/jose.go": "sha256:a6de154cd81e34a521b8aac5dce6b45a3cfb015681ed16e2beb8f2a24c72c00d", + "src/internal/jose/jose_test.go": "sha256:cbbcbac620b27c8e93d9dc3fefc3ca4fcd20ab58c6bc8f79eb041b980aaa9a43", + "src/internal/server/policy/policy_test.go": "sha256:25644557ca532b608dff4e02b202c5c3b7c423fb31e98ad0609febf3660183a2", + "src/internal/server/policy/policy.go": "sha256:015d0b42419c501a46171d09a8f7d588dd517d4c98ad14344ff52113294e0fe7", + "src/internal/server/errors/enforcement.go": "sha256:f644546b1423992518fc4078ab561ab68fea1fcff00b734795af6652ae3dd4e2", + "src/internal/server/errors/enforcement_test.go": "sha256:b4ea0c9a3aaebd66b0b0fcc73f544c76d5a377ac0c9561ccc2638a236844374c", + "src/internal/server/telemetry/emitter.go": "sha256:e92f008b6a487a47b8ee2b98011a3a5b821838a61be9c4db4d56cda600e6fda0", + "src/internal/server/telemetry/emitter_test.go": "sha256:29fae2460deb7219eb8edc725b3701a02d2b341fee62bffb2661a520f5a7381a", + "src/internal/server/telemetry/events.go": "sha256:3f9df9822649ae2701c3bbf475c8e6d600bc60b7ccdea4d0e54193162d5b0167", + "src/internal/server/readiness/readiness_test.go": "sha256:10163e0b1d2f41f336d61782c3bfffdd1116a8459247cc933ffb40be645184c6", + "src/internal/server/readiness/readiness.go": "sha256:ffe22b99633b1aa50fc299371398ec0f3fc090c9c8a5f4957c6bfa76b001d073", + "src/internal/server/oidc/discovery_test.go": "sha256:2d0dc24d59497aa5a9aa581f8fd3d9cca300d7e0cb4962907630570d60e7e7f0", + "src/internal/server/oidc/tenant_precondition_test.go": "sha256:2f2c0d90d26da4e3a6c9145aec8c9d7121c791b6b993c2fe8893a763a30fa72f", + "src/internal/server/oidc/userinfo.go": "sha256:f9c986f7a2c79f27a9970a296e6b493014fed77af2f22ba96c4a457d049c916f", + "src/internal/server/oidc/account.go": "sha256:b0e36d8cb5f9b1bf4cee573e46b204800c0e3162a912a122b271def4712ab72a", + "src/internal/server/oidc/policy_runtime_test.go": "sha256:856146013d2aaa60836e669c297024923ed8e2856d31a89744a99baadae4a74a", + "src/internal/server/oidc/handoff_test.go": "sha256:23268b7f9f103f8a8798a168004580bc8fdb3a175161220dac26480a89f28e02", + "src/internal/server/oidc/human_tenant_test.go": "sha256:459664f90d76224958b3dd807d95d7bfcf0fce5f113498bd9886a41be19903a5", + "src/internal/server/oidc/discovery.go": "sha256:00e4c831a2b4d29aecf3597a09c943315b87c5834dbcd4912ba5d8d31ab28cd5", + "src/internal/server/oidc/jwks.go": "sha256:426d6596979ed6d097d6aaae66b6475d1c97687888c6ab1050c05cb14653ec60", + "src/internal/server/oidc/login_session.go": "sha256:efb0fcd066d81d753b7043c9c3d9e74e35cd510ca4304d21a51ba29dec833e1f", + "src/internal/server/oidc/hardening_test.go": "sha256:b41d6a987d5507d5160d970d0f2110ce681851fca1f4f7a3a9573163e8cd6f3e", + "src/internal/server/oidc/jwks_test.go": "sha256:9100e83e58ce2cc2f6d2f47804ee0ce035ca424b209597a12c4ef1a8896163aa", + "src/internal/server/oidc/account_test.go": "sha256:db1f7b8a2989b1d0deffee205ec9f4f35c7472135dcb8a10b5498893d881d763", + "src/internal/server/oidc/token_status_discovery_test.go": "sha256:27adb5797afba46ca2b1f16018721f055f82760498088b58b993730be1fa2031", + "src/internal/server/oidc/principal_type_guard_test.go": "sha256:b3fa097691f07594616e09e8775512d586a019ccdf8302bf594c1ac94f5f3f40", + "src/internal/server/oidc/token_status_http.go": "sha256:a7202d3176454f8ab42c090426e2debcb5cc2c1fc089e79746bb78e5c455af97", + "src/internal/server/oidc/native_optional_test.go": "sha256:329907bf7089d8f3ea05baad919d05677b8c3aaa201e6f233795ae9f69c003b5", + "src/internal/server/oidc/authorize_test.go": "sha256:61042d55e20a11fb6e1e9e6c054e50c0f629b702ed6d8da281d52529e5c29b0d", + "src/internal/server/oidc/session.go": "sha256:48473ebe123285ed21e7738834d9d9168dfc855d911cb9e7ce7e87b069a23a3c", + "src/internal/server/oidc/logout.go": "sha256:d4de80f8056e7a65c7a41f244dd38e447a4e04df729760a8a59cb6bb4e063893", + "src/internal/server/oidc/optional_mfa_test.go": "sha256:d758848d845c181cf1b18710e6ca24977f6b7576320dcad1f7293a5433c3b529", + "src/internal/server/oidc/token.go": "sha256:e6905bfa0474dde6122a83a6627d6b75a4c3a7730fb26106546e7a34eef8302b", + "src/internal/server/oidc/token_status.go": "sha256:d9c22a71bb2efad7ea240f2689a98f14768ce3c1519d1d8b4e78ee7af2dc70b3", + "src/internal/server/oidc/userinfo_test.go": "sha256:e88c42c7cdf50d5953c9f594f0b99b4f87f5e223ba1cb44b70d696972016da80", + "src/internal/server/oidc/signin_diagnosis_test.go": "sha256:97e80be67c480dfe8eef0683f25868a91a0fdc96472b5296b734b56274270b3e", + "src/internal/server/oidc/token_pair_test.go": "sha256:efeb929becf61d62111286ead4d3635c1a59bfd34423280084ccfec2169a2b1d", + "src/internal/server/oidc/policy_isolation_test.go": "sha256:35cb9870f5942c61c0e8c6ca875e9080bbd71c46c7b20fb18da01be88e0fa077", + "src/internal/server/oidc/token_test.go": "sha256:5721617c6e5eb79a3b5e86efa63e9278a8d81a0d7c01bf7b184255c102848e33", + "src/internal/server/oidc/audience_test.go": "sha256:1b751e1aafb5dbdcb751b42b001e32ddfaccfa3d5ba9d5af67b44148d9802ae3", + "src/internal/server/oidc/token_status_transport_test.go": "sha256:3a9945f0292125e86d0014b5245a20c0475d6c518eccff0f9b936356d8e0b347", + "src/internal/server/oidc/tenant_test.go": "sha256:8a3879789589f0c3d6e473ba56dd7d7c86ec6fbdddaafa4b13354f82d5f88713", + "src/internal/server/oidc/assurance_time_test.go": "sha256:911f65e8cea87ef867d6bf98199ed55abd29427b9f8d0838977d228e6186b08a", + "src/internal/server/oidc/signin_diagnosis.go": "sha256:b7976a1cfe1d8d1dca890cf0762cc82d08978a2e7537e45988b147ed0222042f", + "src/internal/server/oidc/authorize.go": "sha256:04f9bfb6b146ecf869161b7a0eb00b6486f424710c2c867e4f4b70af5f44ff5e", + "src/internal/server/oidc/handoff.go": "sha256:a2ffede12c9140a6c7d14632122a39ffbd0e707cd357dcc11d3ad885dc2a7fa4", + "src/internal/server/oidc/token_status_internal_test.go": "sha256:3d3ab41987c7586bd53af8b5c36ff6667b5b2a32d59789915eb9a36b7ceeba53", + "src/internal/server/oidc/token_status_test.go": "sha256:e2613d44deefcbfbd0ce1db5ce2588849fb4be9b8bed33cb538171cc29f63e90", + "src/internal/migration/lldapexport/exporter.go": "sha256:cb041827c9c0edf9da1338e966e7722e3765065582933b8c17b0d9008d44d103", + "src/internal/migration/lldapexport/exporter_test.go": "sha256:6f5cf0e43ea8aea9ceeb6d4d3ae0bfd9f3a5d18636dd49bea0c574c5253a44c2", + "src/internal/migration/tokeycloak/transformer_test.go": "sha256:5c3f5145a37079262db805f5bedaabe1d42edf2ccec1788c09c02f5b8336639b", + "src/internal/migration/tokeycloak/transformer.go": "sha256:856e26fd2075f020ef02373b5b7e9e5a1e98473b5caca95b60b7983287fc10aa", + "src/internal/migration/toldap/generator.go": "sha256:e59ba05203145f52818b3f4e34ab62126481faa9dde697f643fc1cda0638bb46", + "src/internal/migration/toldap/generator_test.go": "sha256:73b0969ce2e2cb018aa5734714c86152d1695f0099a5caf7dd96b773717fc2cc", + "src/internal/adapters/tenantengine/adapter.go": "sha256:a54ef12fafd2efc24c547d562e0a558a7ecef586394e79f7de345dc8cbbbbef3", + "src/internal/adapters/tenantengine/adapter_test.go": "sha256:b9c2db04bc187e6e6e56d4a42d4e657b9e56fef06843500fb4640477dee553e0", + "src/internal/adapters/lldap/adapter.go": "sha256:e7df7a159e9dd33a97932fd8cbde49a61091b8722796bf54ae4be887b4a3f5ef", + "src/internal/adapters/lldap/railiance_admin_test.go": "sha256:63db481bb6e592e91bf4a555e75065fbd3bd8cd408a7967a4b7786e12bef5d5f", + "src/internal/adapters/lldap/adapter_test.go": "sha256:650394ccc25d54c73c03746977a1880b1ed905634da8382da0ecf35843454081", + "src/internal/adapters/lldap/config_internal_test.go": "sha256:cbc71ce9a795b73c40b2714153eb2ee4d2e4007f7f56a7882eb862c23868cb68", + "src/internal/adapters/lldap/config.go": "sha256:33059a27418b00e1987b7ced0b21dd39c1765338bf575fe2333ce3e606e5546b", + "src/internal/adapters/privacyidea/credential_file_test.go": "sha256:9db15562c6fdf01e0806bbc478915413b17adb63c7e9ba213acfc4f9b2b2f0b6", + "src/internal/adapters/privacyidea/read_scope_test.go": "sha256:4685e1b84dad044db12708ecd231d4f91ec22ac45901ed2b5177e3be17d8cdc3", + "src/internal/adapters/privacyidea/adapter.go": "sha256:2559c68b5aa22bc5f61961e47d696b376f8bede533be03715ffc80c0d89ed904", + "src/internal/adapters/privacyidea/adapter_test.go": "sha256:6257489b9c51270da2c96f165c0efd1750b273218df51dca907d29c64c98b349", + "src/internal/adapters/privacyidea/optional_mfa_test.go": "sha256:e2e415c671d1d0e7f30a0ce22f5ec58914d8e366b12e445e13b1d645a9ca6a65", + "src/internal/adapters/privacyidea/enrollment_state_test.go": "sha256:dcf24c486629fa4835cddaa786af31ec78c05907694d4d93bce0f32876806377", + "src/internal/adapters/privacyidea/config.go": "sha256:8dd769b18c04c562714794484630acdbda81b34ab1cfaf9cc7445513207e5021", + "src/internal/adapters/authelia/verify.go": "sha256:189f9bc18b8d4319d2d88ee76a76e3b86468ebafde85ef460a4bafb7b350b4c4", + "src/internal/adapters/authelia/adapter.go": "sha256:2887bd546f43a16338547dab5ce4a90850c670ed6f6c0d610a5d08c72c7f3f45", + "src/internal/adapters/authelia/adapter_test.go": "sha256:d450b37e2b2405c189d444e50f0612e64177d6698cb4665a06ad967ae2224f93", + "src/internal/adapters/authelia/issuer_probe.go": "sha256:5846e2b514077a572611b898f449c04b096b086aeb724da055b2416994a7a7bb", + "src/internal/adapters/authelia/issuer_probe_test.go": "sha256:a85e02399f8a5c81401dbf159e8054420bff56e08c8a98e8026cad8d31fcecec", + "src/internal/adapters/authelia/config.go": "sha256:1b85ea3ffd324bced1ba108492ec780af8ba2b015d22cd51b294afaf36f2ec55", + "src/internal/adapters/authelia/verify_test.go": "sha256:f1570604d5038e49c14791f4d1aa278ad76a7e90294e82813d2c21e6a80a5511", + "src/cmd/keycape-to-keycloak/main.go": "sha256:6141d3f86bbe3df2a814a0c9995e537d32bf7b19f5549e89d40974eb3270faf7", + "src/cmd/lldap-to-ldap/main.go": "sha256:adcc9481d009cad909bd55a71d95c17ce30e29ca63e88a7c9e8101b92d4b872e", + "src/cmd/keycape/clients_test.go": "sha256:6a3982c1b2bd9b15c387ba64d4c87b37304dc6f615ed2ab22eec888f620cb1da", + "src/cmd/keycape/checkconfig.go": "sha256:2c47c9aedf3457627fdec991703e3be50e5ef554e4104cf3741f8347687279f2", + "src/cmd/keycape/main.go": "sha256:553094de91cfafb021b7607eac1263fa155fedeb32c1e99e7c71e8d86e20ffd0", + "src/cmd/keycape/checkconfig_test.go": "sha256:06955c996774109b26e4751ab20787f12718a1de96e3483a775fb19688d90e66", + "src/cmd/validator/main.go": "sha256:e53b0a7860537dfb1cec69a00cdafe7073b35802421b5977f2fece4de01b9c1f", + "src/cmd/lldap-export/main_test.go": "sha256:f105e490c717a414a5a3d1e65ceb4edcf74341ad7713b0accf8117a9b1ee02d2", + "src/cmd/lldap-export/main.go": "sha256:f019a6dbb0849d06d5c3729874293d520478ca2887929a0595b59a324097ae75" + }, + "counts_including_subtests": { + "pass": 726, + "fail": 0, + "skip": 6 + }, + "failures": [], + "skips": [ + "keycape/tests/conformance:TestIssuerAdvertisesItself", + "keycape/tests/conformance:TestProfileAuthorizationSurface", + "keycape/tests/conformance:TestPublishedKeysAreUsable", + "keycape/tests/conformance:TestExcludedGrantsAreNotAdvertised", + "keycape/tests/conformance:TestServiceTokenVerifiesAgainstPublishedKeys", + "keycape/internal/server/oidc:TestNativeOptionalEnrollmentAndOldSession" + ], + "source": "/tmp/custodian-keycape-token-pair-r1/source", + "native_acceptance": false, + "credentials_accessed": false, + "network": "private empty namespace; fixture loopback only", + "home": "new empty sandbox HOME" +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/full-attempt3.jsonl b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/full-attempt3.jsonl new file mode 100644 index 00000000..d050b373 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/full-attempt3.jsonl @@ -0,0 +1,3040 @@ +{"Time":"2026-10-18T09:57:34.511233367Z","Action":"start","Package":"keycape/cmd/keycape"} +{"Time":"2026-10-18T09:57:34.535297435Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestCheckConfigAcceptsValidConfigWithoutSecretsOrKey"} +{"Time":"2026-10-18T09:57:34.535351646Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigAcceptsValidConfigWithoutSecretsOrKey","Output":"=== RUN TestCheckConfigAcceptsValidConfigWithoutSecretsOrKey\n"} +{"Time":"2026-10-18T09:57:34.537851399Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigAcceptsValidConfigWithoutSecretsOrKey","Output":"--- PASS: TestCheckConfigAcceptsValidConfigWithoutSecretsOrKey (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.537906278Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestCheckConfigAcceptsValidConfigWithoutSecretsOrKey","Elapsed":0} +{"Time":"2026-10-18T09:57:34.538117516Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup"} +{"Time":"2026-10-18T09:57:34.538128833Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup","Output":"=== RUN TestCheckConfigRefusesWhatStopsStartup\n"} +{"Time":"2026-10-18T09:57:34.538143504Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/secret_env_not_provided"} +{"Time":"2026-10-18T09:57:34.538153684Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/secret_env_not_provided","Output":"=== RUN TestCheckConfigRefusesWhatStopsStartup/secret_env_not_provided\n"} +{"Time":"2026-10-18T09:57:34.540618475Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/secret_env_not_provided","Output":"--- PASS: TestCheckConfigRefusesWhatStopsStartup/secret_env_not_provided (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.540674282Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/secret_env_not_provided","Elapsed":0} +{"Time":"2026-10-18T09:57:34.54068688Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/policy_store_client_missing"} +{"Time":"2026-10-18T09:57:34.540691596Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/policy_store_client_missing","Output":"=== RUN TestCheckConfigRefusesWhatStopsStartup/policy_store_client_missing\n"} +{"Time":"2026-10-18T09:57:34.542842056Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/policy_store_client_missing","Output":"--- PASS: TestCheckConfigRefusesWhatStopsStartup/policy_store_client_missing (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.542891453Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/policy_store_client_missing","Elapsed":0} +{"Time":"2026-10-18T09:57:34.542902463Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/explicit_mfa_false_on_policy_client"} +{"Time":"2026-10-18T09:57:34.542908225Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/explicit_mfa_false_on_policy_client","Output":"=== RUN TestCheckConfigRefusesWhatStopsStartup/explicit_mfa_false_on_policy_client\n"} +{"Time":"2026-10-18T09:57:34.546050694Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/explicit_mfa_false_on_policy_client","Output":"--- PASS: TestCheckConfigRefusesWhatStopsStartup/explicit_mfa_false_on_policy_client (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.546101082Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/explicit_mfa_false_on_policy_client","Elapsed":0} +{"Time":"2026-10-18T09:57:34.546228703Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/duplicate_client"} +{"Time":"2026-10-18T09:57:34.546241021Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/duplicate_client","Output":"=== RUN TestCheckConfigRefusesWhatStopsStartup/duplicate_client\n"} +{"Time":"2026-10-18T09:57:34.549513804Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/duplicate_client","Output":"--- PASS: TestCheckConfigRefusesWhatStopsStartup/duplicate_client (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.549567484Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/duplicate_client","Elapsed":0} +{"Time":"2026-10-18T09:57:34.549586745Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/query_in_redirect"} +{"Time":"2026-10-18T09:57:34.549591632Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/query_in_redirect","Output":"=== RUN TestCheckConfigRefusesWhatStopsStartup/query_in_redirect\n"} +{"Time":"2026-10-18T09:57:34.552382538Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/query_in_redirect","Output":"--- PASS: TestCheckConfigRefusesWhatStopsStartup/query_in_redirect (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.552430861Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup/query_in_redirect","Elapsed":0} +{"Time":"2026-10-18T09:57:34.552454342Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup","Output":"--- PASS: TestCheckConfigRefusesWhatStopsStartup (0.01s)\n"} +{"Time":"2026-10-18T09:57:34.552607094Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestCheckConfigRefusesWhatStopsStartup","Elapsed":0.01} +{"Time":"2026-10-18T09:57:34.552773706Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestCheckConfigWithoutEnvNamesOnlyListsThem"} +{"Time":"2026-10-18T09:57:34.552781055Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigWithoutEnvNamesOnlyListsThem","Output":"=== RUN TestCheckConfigWithoutEnvNamesOnlyListsThem\n"} +{"Time":"2026-10-18T09:57:34.55458198Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestCheckConfigWithoutEnvNamesOnlyListsThem","Output":"--- PASS: TestCheckConfigWithoutEnvNamesOnlyListsThem (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.554629474Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestCheckConfigWithoutEnvNamesOnlyListsThem","Elapsed":0} +{"Time":"2026-10-18T09:57:34.554640853Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestServiceRegistrationAudienceAndScopeIsolation"} +{"Time":"2026-10-18T09:57:34.55464511Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestServiceRegistrationAudienceAndScopeIsolation","Output":"=== RUN TestServiceRegistrationAudienceAndScopeIsolation\n"} +{"Time":"2026-10-18T09:57:34.563083424Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestServiceRegistrationAudienceAndScopeIsolation","Output":"--- PASS: TestServiceRegistrationAudienceAndScopeIsolation (0.01s)\n"} +{"Time":"2026-10-18T09:57:34.563138105Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestServiceRegistrationAudienceAndScopeIsolation","Elapsed":0.01} +{"Time":"2026-10-18T09:57:34.563153515Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestServiceRegistrationTenantsAreExactPerDecision"} +{"Time":"2026-10-18T09:57:34.563160504Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestServiceRegistrationTenantsAreExactPerDecision","Output":"=== RUN TestServiceRegistrationTenantsAreExactPerDecision\n"} +{"Time":"2026-10-18T09:57:34.569746119Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestServiceRegistrationTenantsAreExactPerDecision","Output":"--- PASS: TestServiceRegistrationTenantsAreExactPerDecision (0.01s)\n"} +{"Time":"2026-10-18T09:57:34.569800412Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestServiceRegistrationTenantsAreExactPerDecision","Elapsed":0.01} +{"Time":"2026-10-18T09:57:34.569813811Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestApproverRegistrationShapeIsExact"} +{"Time":"2026-10-18T09:57:34.569837455Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestApproverRegistrationShapeIsExact","Output":"=== RUN TestApproverRegistrationShapeIsExact\n"} +{"Time":"2026-10-18T09:57:34.576978186Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestApproverRegistrationShapeIsExact","Output":"--- PASS: TestApproverRegistrationShapeIsExact (0.01s)\n"} +{"Time":"2026-10-18T09:57:34.577051Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestApproverRegistrationShapeIsExact","Elapsed":0.01} +{"Time":"2026-10-18T09:57:34.577072073Z","Action":"run","Package":"keycape/cmd/keycape","Test":"TestSittingRequesterRegistrationShapeIsExact"} +{"Time":"2026-10-18T09:57:34.577080026Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestSittingRequesterRegistrationShapeIsExact","Output":"=== RUN TestSittingRequesterRegistrationShapeIsExact\n"} +{"Time":"2026-10-18T09:57:34.58354287Z","Action":"output","Package":"keycape/cmd/keycape","Test":"TestSittingRequesterRegistrationShapeIsExact","Output":"--- PASS: TestSittingRequesterRegistrationShapeIsExact (0.01s)\n"} +{"Time":"2026-10-18T09:57:34.583595324Z","Action":"pass","Package":"keycape/cmd/keycape","Test":"TestSittingRequesterRegistrationShapeIsExact","Elapsed":0.01} +{"Time":"2026-10-18T09:57:34.583616704Z","Action":"output","Package":"keycape/cmd/keycape","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:34.826542161Z","Action":"start","Package":"keycape/cmd/keycape-to-keycloak"} +{"Time":"2026-10-18T09:57:34.826589186Z","Action":"output","Package":"keycape/cmd/keycape-to-keycloak","Output":"? \tkeycape/cmd/keycape-to-keycloak\t[no test files]\n"} +{"Time":"2026-10-18T09:57:34.826600088Z","Action":"skip","Package":"keycape/cmd/keycape-to-keycloak","Elapsed":0} +{"Time":"2026-10-18T09:57:34.826611973Z","Action":"start","Package":"keycape/cmd/lldap-export"} +{"Time":"2026-10-18T09:57:34.860911884Z","Action":"run","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword"} +{"Time":"2026-10-18T09:57:34.860964518Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword","Output":"=== RUN TestResolveBindPassword\n"} +{"Time":"2026-10-18T09:57:34.861015727Z","Action":"run","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/environment_wins"} +{"Time":"2026-10-18T09:57:34.861022742Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/environment_wins","Output":"=== RUN TestResolveBindPassword/environment_wins\n"} +{"Time":"2026-10-18T09:57:34.86156953Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/environment_wins","Output":"--- PASS: TestResolveBindPassword/environment_wins (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.861597096Z","Action":"pass","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/environment_wins","Elapsed":0} +{"Time":"2026-10-18T09:57:34.861685699Z","Action":"run","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/file,_trailing_newline_trimmed"} +{"Time":"2026-10-18T09:57:34.861706403Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/file,_trailing_newline_trimmed","Output":"=== RUN TestResolveBindPassword/file,_trailing_newline_trimmed\n"} +{"Time":"2026-10-18T09:57:34.863064916Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/file,_trailing_newline_trimmed","Output":"--- PASS: TestResolveBindPassword/file,_trailing_newline_trimmed (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.863115782Z","Action":"pass","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/file,_trailing_newline_trimmed","Elapsed":0} +{"Time":"2026-10-18T09:57:34.863135683Z","Action":"run","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/deprecated_flag_still_works"} +{"Time":"2026-10-18T09:57:34.863142131Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/deprecated_flag_still_works","Output":"=== RUN TestResolveBindPassword/deprecated_flag_still_works\n"} +{"Time":"2026-10-18T09:57:34.863375885Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/deprecated_flag_still_works","Output":"lldap-export: warning: --bind-pw exposes the password to any local user via ps; prefer KEYCAPE_LLDAP_BIND_PW or --bind-pw-file\n"} +{"Time":"2026-10-18T09:57:34.863402341Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/deprecated_flag_still_works","Output":"--- PASS: TestResolveBindPassword/deprecated_flag_still_works (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.863623111Z","Action":"pass","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/deprecated_flag_still_works","Elapsed":0} +{"Time":"2026-10-18T09:57:34.863829205Z","Action":"run","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/missing_file_is_an_error,_not_an_empty_password"} +{"Time":"2026-10-18T09:57:34.863847691Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/missing_file_is_an_error,_not_an_empty_password","Output":"=== RUN TestResolveBindPassword/missing_file_is_an_error,_not_an_empty_password\n"} +{"Time":"2026-10-18T09:57:34.864744735Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/missing_file_is_an_error,_not_an_empty_password","Output":"--- PASS: TestResolveBindPassword/missing_file_is_an_error,_not_an_empty_password (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.864775863Z","Action":"pass","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/missing_file_is_an_error,_not_an_empty_password","Elapsed":0} +{"Time":"2026-10-18T09:57:34.864784871Z","Action":"run","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/conflicting_sources_are_rejected"} +{"Time":"2026-10-18T09:57:34.864790029Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/conflicting_sources_are_rejected","Output":"=== RUN TestResolveBindPassword/conflicting_sources_are_rejected\n"} +{"Time":"2026-10-18T09:57:34.865103081Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/conflicting_sources_are_rejected","Output":"--- PASS: TestResolveBindPassword/conflicting_sources_are_rejected (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.86512988Z","Action":"pass","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/conflicting_sources_are_rejected","Elapsed":0} +{"Time":"2026-10-18T09:57:34.865142351Z","Action":"run","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/no_password_at_all_is_an_error"} +{"Time":"2026-10-18T09:57:34.865153163Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/no_password_at_all_is_an_error","Output":"=== RUN TestResolveBindPassword/no_password_at_all_is_an_error\n"} +{"Time":"2026-10-18T09:57:34.865539363Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/no_password_at_all_is_an_error","Output":"--- PASS: TestResolveBindPassword/no_password_at_all_is_an_error (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.865570048Z","Action":"pass","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword/no_password_at_all_is_an_error","Elapsed":0} +{"Time":"2026-10-18T09:57:34.865716028Z","Action":"output","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword","Output":"--- PASS: TestResolveBindPassword (0.00s)\n"} +{"Time":"2026-10-18T09:57:34.865819799Z","Action":"pass","Package":"keycape/cmd/lldap-export","Test":"TestResolveBindPassword","Elapsed":0} +{"Time":"2026-10-18T09:57:34.865842495Z","Action":"output","Package":"keycape/cmd/lldap-export","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:34.936018695Z","Action":"start","Package":"keycape/cmd/lldap-to-ldap"} +{"Time":"2026-10-18T09:57:34.936050995Z","Action":"output","Package":"keycape/cmd/lldap-to-ldap","Output":"? \tkeycape/cmd/lldap-to-ldap\t[no test files]\n"} +{"Time":"2026-10-18T09:57:34.93605921Z","Action":"skip","Package":"keycape/cmd/lldap-to-ldap","Elapsed":0} +{"Time":"2026-10-18T09:57:34.936073926Z","Action":"start","Package":"keycape/cmd/validator"} +{"Time":"2026-10-18T09:57:34.9360804Z","Action":"output","Package":"keycape/cmd/validator","Output":"? \tkeycape/cmd/validator\t[no test files]\n"} +{"Time":"2026-10-18T09:57:34.936084485Z","Action":"skip","Package":"keycape/cmd/validator","Elapsed":0} +{"Time":"2026-10-18T09:57:34.936091789Z","Action":"start","Package":"keycape/internal/adapters/authelia"} +{"Time":"2026-10-18T09:57:35.045640498Z","Action":"start","Package":"keycape/internal/adapters/lldap"} +{"Time":"2026-10-18T09:57:35.060848955Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestUserBaseDNDefaultsToLLDAPsPeopleBranch"} +{"Time":"2026-10-18T09:57:35.060911535Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestUserBaseDNDefaultsToLLDAPsPeopleBranch","Output":"=== RUN TestUserBaseDNDefaultsToLLDAPsPeopleBranch\n"} +{"Time":"2026-10-18T09:57:35.060976243Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestUserBaseDNDefaultsToLLDAPsPeopleBranch","Output":"--- PASS: TestUserBaseDNDefaultsToLLDAPsPeopleBranch (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.061122379Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestUserBaseDNDefaultsToLLDAPsPeopleBranch","Elapsed":0} +{"Time":"2026-10-18T09:57:35.061145905Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestExplicitOUOverridesDefaults"} +{"Time":"2026-10-18T09:57:35.061153588Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestExplicitOUOverridesDefaults","Output":"=== RUN TestExplicitOUOverridesDefaults\n"} +{"Time":"2026-10-18T09:57:35.061181622Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestExplicitOUOverridesDefaults","Output":"--- PASS: TestExplicitOUOverridesDefaults (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.061316836Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestExplicitOUOverridesDefaults","Elapsed":0} +{"Time":"2026-10-18T09:57:35.061331714Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestRailianceAdminGroupIsExplicitAndScoped"} +{"Time":"2026-10-18T09:57:35.06133726Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestRailianceAdminGroupIsExplicitAndScoped","Output":"=== RUN TestRailianceAdminGroupIsExplicitAndScoped\n"} +{"Time":"2026-10-18T09:57:35.061571724Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestRailianceAdminGroupIsExplicitAndScoped","Output":"--- PASS: TestRailianceAdminGroupIsExplicitAndScoped (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.061584339Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestRailianceAdminGroupIsExplicitAndScoped","Elapsed":0} +{"Time":"2026-10-18T09:57:35.061589281Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_Success"} +{"Time":"2026-10-18T09:57:35.061592942Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_Success","Output":"=== RUN TestLookupUser_Success\n"} +{"Time":"2026-10-18T09:57:35.061839699Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_Success","Output":"--- PASS: TestLookupUser_Success (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.061853387Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_Success","Elapsed":0} +{"Time":"2026-10-18T09:57:35.061933054Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_MapsExplicitTenantAdminGroup"} +{"Time":"2026-10-18T09:57:35.06194319Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_MapsExplicitTenantAdminGroup","Output":"=== RUN TestLookupUser_MapsExplicitTenantAdminGroup\n"} +{"Time":"2026-10-18T09:57:35.062145032Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_MapsExplicitTenantAdminGroup","Output":"--- PASS: TestLookupUser_MapsExplicitTenantAdminGroup (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.062159631Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_MapsExplicitTenantAdminGroup","Elapsed":0} +{"Time":"2026-10-18T09:57:35.06217927Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_IgnoresAmbiguousTenantGroups"} +{"Time":"2026-10-18T09:57:35.062183662Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_IgnoresAmbiguousTenantGroups","Output":"=== RUN TestLookupUser_IgnoresAmbiguousTenantGroups\n"} +{"Time":"2026-10-18T09:57:35.062679764Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_IgnoresAmbiguousTenantGroups","Output":"--- PASS: TestLookupUser_IgnoresAmbiguousTenantGroups (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.062707266Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_IgnoresAmbiguousTenantGroups","Elapsed":0} +{"Time":"2026-10-18T09:57:35.062715598Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_MapsEstablishedPlatformAdminGroup"} +{"Time":"2026-10-18T09:57:35.062728186Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_MapsEstablishedPlatformAdminGroup","Output":"=== RUN TestLookupUser_MapsEstablishedPlatformAdminGroup\n"} +{"Time":"2026-10-18T09:57:35.062739972Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_MapsEstablishedPlatformAdminGroup","Output":"--- PASS: TestLookupUser_MapsEstablishedPlatformAdminGroup (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.0627488Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_MapsEstablishedPlatformAdminGroup","Elapsed":0} +{"Time":"2026-10-18T09:57:35.062753344Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_DisplayName_FallsBackToSN"} +{"Time":"2026-10-18T09:57:35.062757059Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_DisplayName_FallsBackToSN","Output":"=== RUN TestLookupUser_DisplayName_FallsBackToSN\n"} +{"Time":"2026-10-18T09:57:35.063057838Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_DisplayName_FallsBackToSN","Output":"--- PASS: TestLookupUser_DisplayName_FallsBackToSN (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.06309893Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_DisplayName_FallsBackToSN","Elapsed":0} +{"Time":"2026-10-18T09:57:35.063108921Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_NotFound"} +{"Time":"2026-10-18T09:57:35.063116541Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_NotFound","Output":"=== RUN TestLookupUser_NotFound\n"} +{"Time":"2026-10-18T09:57:35.063129291Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_NotFound","Output":"--- PASS: TestLookupUser_NotFound (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.063255396Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_NotFound","Elapsed":0} +{"Time":"2026-10-18T09:57:35.063270536Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_ValidationWarningDoesNotBlockRuntimeLogin"} +{"Time":"2026-10-18T09:57:35.063275081Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_ValidationWarningDoesNotBlockRuntimeLogin","Output":"=== RUN TestLookupUser_ValidationWarningDoesNotBlockRuntimeLogin\n"} +{"Time":"2026-10-18T09:57:35.063458126Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_ValidationWarningDoesNotBlockRuntimeLogin","Output":"--- PASS: TestLookupUser_ValidationWarningDoesNotBlockRuntimeLogin (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.063563177Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestLookupUser_ValidationWarningDoesNotBlockRuntimeLogin","Elapsed":0} +{"Time":"2026-10-18T09:57:35.063582321Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestLookupGroups_Success"} +{"Time":"2026-10-18T09:57:35.063608552Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupGroups_Success","Output":"=== RUN TestLookupGroups_Success\n"} +{"Time":"2026-10-18T09:57:35.06363885Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupGroups_Success","Output":"--- PASS: TestLookupGroups_Success (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.063802546Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestLookupGroups_Success","Elapsed":0} +{"Time":"2026-10-18T09:57:35.063825711Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestLookupGroups_Empty"} +{"Time":"2026-10-18T09:57:35.063832979Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupGroups_Empty","Output":"=== RUN TestLookupGroups_Empty\n"} +{"Time":"2026-10-18T09:57:35.063934471Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLookupGroups_Empty","Output":"--- PASS: TestLookupGroups_Empty (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.063959638Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestLookupGroups_Empty","Elapsed":0} +{"Time":"2026-10-18T09:57:35.063971144Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_Success"} +{"Time":"2026-10-18T09:57:35.063975292Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_Success","Output":"=== RUN TestValidatePassword_Success\n"} +{"Time":"2026-10-18T09:57:35.064149884Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_Success","Output":"--- PASS: TestValidatePassword_Success (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.064161742Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_Success","Elapsed":0} +{"Time":"2026-10-18T09:57:35.064264304Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_WrongPassword"} +{"Time":"2026-10-18T09:57:35.064274854Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_WrongPassword","Output":"=== RUN TestValidatePassword_WrongPassword\n"} +{"Time":"2026-10-18T09:57:35.064447417Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_WrongPassword","Output":"--- PASS: TestValidatePassword_WrongPassword (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.064459374Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_WrongPassword","Elapsed":0} +{"Time":"2026-10-18T09:57:35.064466777Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_BindFailure"} +{"Time":"2026-10-18T09:57:35.064470799Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_BindFailure","Output":"=== RUN TestValidatePassword_BindFailure\n"} +{"Time":"2026-10-18T09:57:35.064649674Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_BindFailure","Output":"--- PASS: TestValidatePassword_BindFailure (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.064669512Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_BindFailure","Elapsed":0} +{"Time":"2026-10-18T09:57:35.064719116Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_UserNotFound"} +{"Time":"2026-10-18T09:57:35.064728891Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_UserNotFound","Output":"=== RUN TestValidatePassword_UserNotFound\n"} +{"Time":"2026-10-18T09:57:35.06486341Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_UserNotFound","Output":"--- PASS: TestValidatePassword_UserNotFound (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.064877657Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestValidatePassword_UserNotFound","Elapsed":0} +{"Time":"2026-10-18T09:57:35.064884483Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestLDAPAdapter_ListGroups_ReturnsAllGroupsWithMembers"} +{"Time":"2026-10-18T09:57:35.064901463Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLDAPAdapter_ListGroups_ReturnsAllGroupsWithMembers","Output":"=== RUN TestLDAPAdapter_ListGroups_ReturnsAllGroupsWithMembers\n"} +{"Time":"2026-10-18T09:57:35.065059716Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLDAPAdapter_ListGroups_ReturnsAllGroupsWithMembers","Output":"--- PASS: TestLDAPAdapter_ListGroups_ReturnsAllGroupsWithMembers (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.065071673Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestLDAPAdapter_ListGroups_ReturnsAllGroupsWithMembers","Elapsed":0} +{"Time":"2026-10-18T09:57:35.065078499Z","Action":"run","Package":"keycape/internal/adapters/lldap","Test":"TestLDAPAdapter_ListGroups_PropagatesSearchError"} +{"Time":"2026-10-18T09:57:35.065082403Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLDAPAdapter_ListGroups_PropagatesSearchError","Output":"=== RUN TestLDAPAdapter_ListGroups_PropagatesSearchError\n"} +{"Time":"2026-10-18T09:57:35.065264822Z","Action":"output","Package":"keycape/internal/adapters/lldap","Test":"TestLDAPAdapter_ListGroups_PropagatesSearchError","Output":"--- PASS: TestLDAPAdapter_ListGroups_PropagatesSearchError (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.065276761Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Test":"TestLDAPAdapter_ListGroups_PropagatesSearchError","Elapsed":0} +{"Time":"2026-10-18T09:57:35.065293885Z","Action":"output","Package":"keycape/internal/adapters/lldap","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:35.129631639Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_ContainsRequiredParams"} +{"Time":"2026-10-18T09:57:35.129689178Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_ContainsRequiredParams","Output":"=== RUN TestAuthorizeURL_ContainsRequiredParams\n"} +{"Time":"2026-10-18T09:57:35.129753309Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_ContainsRequiredParams","Output":"--- PASS: TestAuthorizeURL_ContainsRequiredParams (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.129954826Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_ContainsRequiredParams","Elapsed":0} +{"Time":"2026-10-18T09:57:35.129977622Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_UsesBaseURL"} +{"Time":"2026-10-18T09:57:35.129984881Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_UsesBaseURL","Output":"=== RUN TestAuthorizeURL_UsesBaseURL\n"} +{"Time":"2026-10-18T09:57:35.130042339Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_UsesBaseURL","Output":"--- PASS: TestAuthorizeURL_UsesBaseURL (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.13007967Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_UsesBaseURL","Elapsed":0} +{"Time":"2026-10-18T09:57:35.130095441Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_UsesBrowserBaseURLWhenConfigured"} +{"Time":"2026-10-18T09:57:35.130102331Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_UsesBrowserBaseURLWhenConfigured","Output":"=== RUN TestAuthorizeURL_UsesBrowserBaseURLWhenConfigured\n"} +{"Time":"2026-10-18T09:57:35.130329899Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_UsesBrowserBaseURLWhenConfigured","Output":"--- PASS: TestAuthorizeURL_UsesBrowserBaseURLWhenConfigured (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.130350052Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURL_UsesBrowserBaseURLWhenConfigured","Elapsed":0} +{"Time":"2026-10-18T09:57:35.130358529Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_Success_PreferredUsername"} +{"Time":"2026-10-18T09:57:35.130383876Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_Success_PreferredUsername","Output":"=== RUN TestHandleCallback_Success_PreferredUsername\n"} +{"Time":"2026-10-18T09:57:35.134902299Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_Success_PreferredUsername","Output":"--- PASS: TestHandleCallback_Success_PreferredUsername (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.135007107Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_Success_PreferredUsername","Elapsed":0} +{"Time":"2026-10-18T09:57:35.135022021Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_UsesTokenBaseURLWhenConfigured"} +{"Time":"2026-10-18T09:57:35.135025728Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_UsesTokenBaseURLWhenConfigured","Output":"=== RUN TestHandleCallback_UsesTokenBaseURLWhenConfigured\n"} +{"Time":"2026-10-18T09:57:35.138551087Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_UsesTokenBaseURLWhenConfigured","Output":"--- PASS: TestHandleCallback_UsesTokenBaseURLWhenConfigured (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.138605515Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_UsesTokenBaseURLWhenConfigured","Elapsed":0} +{"Time":"2026-10-18T09:57:35.138620412Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP"} +{"Time":"2026-10-18T09:57:35.138628167Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP","Output":"=== RUN TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP\n"} +{"Time":"2026-10-18T09:57:35.139433242Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/_https://authelia.local"} +{"Time":"2026-10-18T09:57:35.139478428Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/_https://authelia.local","Output":"=== RUN TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/_https://authelia.local\n"} +{"Time":"2026-10-18T09:57:35.144244576Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/_https://authelia.local","Output":"--- PASS: TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/_https://authelia.local (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.144298445Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/_https://authelia.local","Elapsed":0} +{"Time":"2026-10-18T09:57:35.144311682Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/http://localhost:9091_http://authelia:9091"} +{"Time":"2026-10-18T09:57:35.14431867Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/http://localhost:9091_http://authelia:9091","Output":"=== RUN TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/http://localhost:9091_http://authelia:9091\n"} +{"Time":"2026-10-18T09:57:35.147572238Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/http://localhost:9091_http://authelia:9091","Output":"--- PASS: TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/http://localhost:9091_http://authelia:9091 (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.147605079Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP/http://localhost:9091_http://authelia:9091","Elapsed":0} +{"Time":"2026-10-18T09:57:35.147823188Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP","Output":"--- PASS: TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP (0.01s)\n"} +{"Time":"2026-10-18T09:57:35.147855452Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestTokenRequestOmitsForwardedHeadersForSameOriginAndPlainHTTP","Elapsed":0.01} +{"Time":"2026-10-18T09:57:35.147872278Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestDiscoveryFetch_CarriesPublicOriginHeaders"} +{"Time":"2026-10-18T09:57:35.147882278Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestDiscoveryFetch_CarriesPublicOriginHeaders","Output":"=== RUN TestDiscoveryFetch_CarriesPublicOriginHeaders\n"} +{"Time":"2026-10-18T09:57:35.150624397Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestDiscoveryFetch_CarriesPublicOriginHeaders","Output":"--- PASS: TestDiscoveryFetch_CarriesPublicOriginHeaders (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.150660908Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestDiscoveryFetch_CarriesPublicOriginHeaders","Elapsed":0} +{"Time":"2026-10-18T09:57:35.150669609Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_Success_FallsBackToSub"} +{"Time":"2026-10-18T09:57:35.150675768Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_Success_FallsBackToSub","Output":"=== RUN TestHandleCallback_Success_FallsBackToSub\n"} +{"Time":"2026-10-18T09:57:35.153429843Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_Success_FallsBackToSub","Output":"--- PASS: TestHandleCallback_Success_FallsBackToSub (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.153495065Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_Success_FallsBackToSub","Elapsed":0} +{"Time":"2026-10-18T09:57:35.153504831Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_CallbackError_ReturnsErrAuthFailed"} +{"Time":"2026-10-18T09:57:35.153513875Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_CallbackError_ReturnsErrAuthFailed","Output":"=== RUN TestHandleCallback_CallbackError_ReturnsErrAuthFailed\n"} +{"Time":"2026-10-18T09:57:35.153526355Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_CallbackError_ReturnsErrAuthFailed","Output":"--- PASS: TestHandleCallback_CallbackError_ReturnsErrAuthFailed (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.153548014Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_CallbackError_ReturnsErrAuthFailed","Elapsed":0} +{"Time":"2026-10-18T09:57:35.153558041Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_HTTPError_ReturnsErrAuthFailed"} +{"Time":"2026-10-18T09:57:35.153564074Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_HTTPError_ReturnsErrAuthFailed","Output":"=== RUN TestHandleCallback_HTTPError_ReturnsErrAuthFailed\n"} +{"Time":"2026-10-18T09:57:35.153752787Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_HTTPError_ReturnsErrAuthFailed","Output":"--- PASS: TestHandleCallback_HTTPError_ReturnsErrAuthFailed (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.153769406Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_HTTPError_ReturnsErrAuthFailed","Elapsed":0} +{"Time":"2026-10-18T09:57:35.153776466Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_MissingUsernameClaim_ReturnsErrAuthFailed"} +{"Time":"2026-10-18T09:57:35.153782346Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_MissingUsernameClaim_ReturnsErrAuthFailed","Output":"=== RUN TestHandleCallback_MissingUsernameClaim_ReturnsErrAuthFailed\n"} +{"Time":"2026-10-18T09:57:35.158146378Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_MissingUsernameClaim_ReturnsErrAuthFailed","Output":"--- PASS: TestHandleCallback_MissingUsernameClaim_ReturnsErrAuthFailed (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.158184097Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_MissingUsernameClaim_ReturnsErrAuthFailed","Elapsed":0} +{"Time":"2026-10-18T09:57:35.15820151Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_TokenExchangeNetworkError_ReturnsErrAuthFailed"} +{"Time":"2026-10-18T09:57:35.158208741Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_TokenExchangeNetworkError_ReturnsErrAuthFailed","Output":"=== RUN TestHandleCallback_TokenExchangeNetworkError_ReturnsErrAuthFailed\n"} +{"Time":"2026-10-18T09:57:35.158383072Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_TokenExchangeNetworkError_ReturnsErrAuthFailed","Output":"--- PASS: TestHandleCallback_TokenExchangeNetworkError_ReturnsErrAuthFailed (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.158401566Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_TokenExchangeNetworkError_ReturnsErrAuthFailed","Elapsed":0} +{"Time":"2026-10-18T09:57:35.158412531Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_AuthResultContainsNoRawTokens"} +{"Time":"2026-10-18T09:57:35.158418843Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_AuthResultContainsNoRawTokens","Output":"=== RUN TestHandleCallback_AuthResultContainsNoRawTokens\n"} +{"Time":"2026-10-18T09:57:35.161356032Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_AuthResultContainsNoRawTokens","Output":"--- PASS: TestHandleCallback_AuthResultContainsNoRawTokens (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.161388133Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_AuthResultContainsNoRawTokens","Elapsed":0} +{"Time":"2026-10-18T09:57:35.161396122Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURLTranslatesFreshLoginToBoundedMaxAge"} +{"Time":"2026-10-18T09:57:35.161401893Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURLTranslatesFreshLoginToBoundedMaxAge","Output":"=== RUN TestAuthorizeURLTranslatesFreshLoginToBoundedMaxAge\n"} +{"Time":"2026-10-18T09:57:35.162835961Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURLTranslatesFreshLoginToBoundedMaxAge","Output":"--- PASS: TestAuthorizeURLTranslatesFreshLoginToBoundedMaxAge (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.162866232Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestAuthorizeURLTranslatesFreshLoginToBoundedMaxAge","Elapsed":0} +{"Time":"2026-10-18T09:57:35.162878513Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_CarriesUpstreamAuthTime"} +{"Time":"2026-10-18T09:57:35.162885655Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_CarriesUpstreamAuthTime","Output":"=== RUN TestHandleCallback_CarriesUpstreamAuthTime\n"} +{"Time":"2026-10-18T09:57:35.1711878Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_CarriesUpstreamAuthTime","Output":"--- PASS: TestHandleCallback_CarriesUpstreamAuthTime (0.01s)\n"} +{"Time":"2026-10-18T09:57:35.171236574Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestHandleCallback_CarriesUpstreamAuthTime","Elapsed":0.01} +{"Time":"2026-10-18T09:57:35.171247512Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens"} +{"Time":"2026-10-18T09:57:35.171265393Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens","Output":"=== RUN TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens\n"} +{"Time":"2026-10-18T09:57:35.171429444Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/https://authelia.local"} +{"Time":"2026-10-18T09:57:35.171440761Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/https://authelia.local","Output":"=== RUN TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/https://authelia.local\n"} +{"Time":"2026-10-18T09:57:35.17549947Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/https://authelia.local","Output":"--- PASS: TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/https://authelia.local (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.175548018Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/https://authelia.local","Elapsed":0} +{"Time":"2026-10-18T09:57:35.175556197Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/http://authelia.sso.svc.cluster.local:9091"} +{"Time":"2026-10-18T09:57:35.175561896Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/http://authelia.sso.svc.cluster.local:9091","Output":"=== RUN TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/http://authelia.sso.svc.cluster.local:9091\n"} +{"Time":"2026-10-18T09:57:35.179218017Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/http://authelia.sso.svc.cluster.local:9091","Output":"--- PASS: TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/http://authelia.sso.svc.cluster.local:9091 (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.179270849Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens/http://authelia.sso.svc.cluster.local:9091","Elapsed":0} +{"Time":"2026-10-18T09:57:35.17928442Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens","Output":"--- PASS: TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens (0.01s)\n"} +{"Time":"2026-10-18T09:57:35.179292391Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeVerifiesSignedIssuerWithoutDisclosingTokens","Elapsed":0.01} +{"Time":"2026-10-18T09:57:35.179307549Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRefusesUnboundCallbacksBeforeExchange"} +{"Time":"2026-10-18T09:57:35.179314104Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRefusesUnboundCallbacksBeforeExchange","Output":"=== RUN TestIssuerProbeRefusesUnboundCallbacksBeforeExchange\n"} +{"Time":"2026-10-18T09:57:35.183163788Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRefusesUnboundCallbacksBeforeExchange","Output":"--- PASS: TestIssuerProbeRefusesUnboundCallbacksBeforeExchange (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.183211498Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRefusesUnboundCallbacksBeforeExchange","Elapsed":0} +{"Time":"2026-10-18T09:57:35.18322075Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory"} +{"Time":"2026-10-18T09:57:35.183226693Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory","Output":"=== RUN TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory\n"} +{"Time":"2026-10-18T09:57:35.381253009Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unreviewed_issuer"} +{"Time":"2026-10-18T09:57:35.381298934Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unreviewed_issuer","Output":"=== RUN TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unreviewed_issuer\n"} +{"Time":"2026-10-18T09:57:35.385277203Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unreviewed_issuer","Output":"--- PASS: TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unreviewed_issuer (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.385330233Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unreviewed_issuer","Elapsed":0} +{"Time":"2026-10-18T09:57:35.385344706Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_audience"} +{"Time":"2026-10-18T09:57:35.385352443Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_audience","Output":"=== RUN TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_audience\n"} +{"Time":"2026-10-18T09:57:35.388633949Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_audience","Output":"--- PASS: TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_audience (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.388687909Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_audience","Elapsed":0} +{"Time":"2026-10-18T09:57:35.388698423Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/expired"} +{"Time":"2026-10-18T09:57:35.388708648Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/expired","Output":"=== RUN TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/expired\n"} +{"Time":"2026-10-18T09:57:35.391875641Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/expired","Output":"--- PASS: TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/expired (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.391927842Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/expired","Elapsed":0} +{"Time":"2026-10-18T09:57:35.391942658Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_nonce"} +{"Time":"2026-10-18T09:57:35.39194888Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_nonce","Output":"=== RUN TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_nonce\n"} +{"Time":"2026-10-18T09:57:35.395130192Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_nonce","Output":"--- PASS: TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_nonce (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.395168966Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/wrong_nonce","Elapsed":0} +{"Time":"2026-10-18T09:57:35.395177983Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/forged_signature"} +{"Time":"2026-10-18T09:57:35.395184133Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/forged_signature","Output":"=== RUN TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/forged_signature\n"} +{"Time":"2026-10-18T09:57:35.398280849Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/forged_signature","Output":"--- PASS: TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/forged_signature (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.398332455Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/forged_signature","Elapsed":0} +{"Time":"2026-10-18T09:57:35.398341688Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unavailable_keys"} +{"Time":"2026-10-18T09:57:35.398347973Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unavailable_keys","Output":"=== RUN TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unavailable_keys\n"} +{"Time":"2026-10-18T09:57:35.401264966Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unavailable_keys","Output":"--- PASS: TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unavailable_keys (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.401315958Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/unavailable_keys","Elapsed":0} +{"Time":"2026-10-18T09:57:35.401324164Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_refused"} +{"Time":"2026-10-18T09:57:35.401330007Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_refused","Output":"=== RUN TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_refused\n"} +{"Time":"2026-10-18T09:57:35.404744787Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_refused","Output":"--- PASS: TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_refused (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.404799098Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_refused","Elapsed":0} +{"Time":"2026-10-18T09:57:35.404807691Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_malformed"} +{"Time":"2026-10-18T09:57:35.40481421Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_malformed","Output":"=== RUN TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_malformed\n"} +{"Time":"2026-10-18T09:57:35.407316353Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_malformed","Output":"--- PASS: TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_malformed (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.407346516Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/provider_malformed","Elapsed":0} +{"Time":"2026-10-18T09:57:35.407355127Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/oversize"} +{"Time":"2026-10-18T09:57:35.407361105Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/oversize","Output":"=== RUN TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/oversize\n"} +{"Time":"2026-10-18T09:57:35.433497188Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/oversize","Output":"--- PASS: TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/oversize (0.03s)\n"} +{"Time":"2026-10-18T09:57:35.433576855Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory/oversize","Elapsed":0.03} +{"Time":"2026-10-18T09:57:35.433592797Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory","Output":"--- PASS: TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory (0.25s)\n"} +{"Time":"2026-10-18T09:57:35.433602861Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeRejectsTokensAndWritesOnlyFailureCategory","Elapsed":0.25} +{"Time":"2026-10-18T09:57:35.433614331Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeBoundsLifetimeAndConfiguration"} +{"Time":"2026-10-18T09:57:35.433623691Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeBoundsLifetimeAndConfiguration","Output":"=== RUN TestIssuerProbeBoundsLifetimeAndConfiguration\n"} +{"Time":"2026-10-18T09:57:35.435742511Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeBoundsLifetimeAndConfiguration","Output":"--- PASS: TestIssuerProbeBoundsLifetimeAndConfiguration (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.435799166Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeBoundsLifetimeAndConfiguration","Elapsed":0} +{"Time":"2026-10-18T09:57:35.435808499Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeErrorsDoNotPrintArguments"} +{"Time":"2026-10-18T09:57:35.43581519Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeErrorsDoNotPrintArguments","Output":"=== RUN TestIssuerProbeErrorsDoNotPrintArguments\n"} +{"Time":"2026-10-18T09:57:35.435826876Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeErrorsDoNotPrintArguments","Output":"--- PASS: TestIssuerProbeErrorsDoNotPrintArguments (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.435834072Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeErrorsDoNotPrintArguments","Elapsed":0} +{"Time":"2026-10-18T09:57:35.435842927Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeCLIReadsOnlyUpstreamAndBoundsIdleRun"} +{"Time":"2026-10-18T09:57:35.435848932Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeCLIReadsOnlyUpstreamAndBoundsIdleRun","Output":"=== RUN TestIssuerProbeCLIReadsOnlyUpstreamAndBoundsIdleRun\n"} +{"Time":"2026-10-18T09:57:35.439294843Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeCLIReadsOnlyUpstreamAndBoundsIdleRun","Output":"--- PASS: TestIssuerProbeCLIReadsOnlyUpstreamAndBoundsIdleRun (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.439351517Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestIssuerProbeCLIReadsOnlyUpstreamAndBoundsIdleRun","Elapsed":0} +{"Time":"2026-10-18T09:57:35.439363302Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenIsAcceptedWhenGenuine"} +{"Time":"2026-10-18T09:57:35.439369317Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenIsAcceptedWhenGenuine","Output":"=== RUN TestUpstreamTokenIsAcceptedWhenGenuine\n"} +{"Time":"2026-10-18T09:57:35.444261485Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenIsAcceptedWhenGenuine","Output":"--- PASS: TestUpstreamTokenIsAcceptedWhenGenuine (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.444309952Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenIsAcceptedWhenGenuine","Elapsed":0} +{"Time":"2026-10-18T09:57:35.444320007Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections"} +{"Time":"2026-10-18T09:57:35.444340891Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections","Output":"=== RUN TestUpstreamTokenRejections\n"} +{"Time":"2026-10-18T09:57:35.588068966Z","Action":"output","Package":"keycape/cmd/keycape","Output":"ok \tkeycape/cmd/keycape\t1.076s\n"} +{"Time":"2026-10-18T09:57:35.588299447Z","Action":"pass","Package":"keycape/cmd/keycape","Elapsed":1.077} +{"Time":"2026-10-18T09:57:35.5908714Z","Action":"start","Package":"keycape/internal/adapters/privacyidea"} +{"Time":"2026-10-18T09:57:35.608471095Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_ActiveTokenPresent_ReturnsTrue"} +{"Time":"2026-10-18T09:57:35.608529788Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_ActiveTokenPresent_ReturnsTrue","Output":"=== RUN TestCheckMFARequired_ActiveTokenPresent_ReturnsTrue\n"} +{"Time":"2026-10-18T09:57:35.609559305Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_ActiveTokenPresent_ReturnsTrue","Output":"--- PASS: TestCheckMFARequired_ActiveTokenPresent_ReturnsTrue (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.609583995Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_ActiveTokenPresent_ReturnsTrue","Elapsed":0} +{"Time":"2026-10-18T09:57:35.609705232Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_RequireForAll_ReturnsTrueWithoutTokenList"} +{"Time":"2026-10-18T09:57:35.609722869Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_RequireForAll_ReturnsTrueWithoutTokenList","Output":"=== RUN TestCheckMFARequired_RequireForAll_ReturnsTrueWithoutTokenList\n"} +{"Time":"2026-10-18T09:57:35.60994427Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_RequireForAll_ReturnsTrueWithoutTokenList","Output":"--- PASS: TestCheckMFARequired_RequireForAll_ReturnsTrueWithoutTokenList (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.609960167Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_RequireForAll_ReturnsTrueWithoutTokenList","Elapsed":0} +{"Time":"2026-10-18T09:57:35.610053306Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_InactiveTokenOnly_ReturnsFalse"} +{"Time":"2026-10-18T09:57:35.61006658Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_InactiveTokenOnly_ReturnsFalse","Output":"=== RUN TestCheckMFARequired_InactiveTokenOnly_ReturnsFalse\n"} +{"Time":"2026-10-18T09:57:35.61054068Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_InactiveTokenOnly_ReturnsFalse","Output":"--- PASS: TestCheckMFARequired_InactiveTokenOnly_ReturnsFalse (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.610565883Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_InactiveTokenOnly_ReturnsFalse","Elapsed":0} +{"Time":"2026-10-18T09:57:35.610607957Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestHasEnrolledFactor_RequireForAllStillListsTokens"} +{"Time":"2026-10-18T09:57:35.610618832Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestHasEnrolledFactor_RequireForAllStillListsTokens","Output":"=== RUN TestHasEnrolledFactor_RequireForAllStillListsTokens\n"} +{"Time":"2026-10-18T09:57:35.611077361Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestHasEnrolledFactor_RequireForAllStillListsTokens","Output":"--- PASS: TestHasEnrolledFactor_RequireForAllStillListsTokens (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.611111925Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestHasEnrolledFactor_RequireForAllStillListsTokens","Elapsed":0} +{"Time":"2026-10-18T09:57:35.611132105Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestHasEnrolledFactor_ActiveToken_ReturnsTrue"} +{"Time":"2026-10-18T09:57:35.611136803Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestHasEnrolledFactor_ActiveToken_ReturnsTrue","Output":"=== RUN TestHasEnrolledFactor_ActiveToken_ReturnsTrue\n"} +{"Time":"2026-10-18T09:57:35.611480937Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestHasEnrolledFactor_ActiveToken_ReturnsTrue","Output":"--- PASS: TestHasEnrolledFactor_ActiveToken_ReturnsTrue (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.611503715Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestHasEnrolledFactor_ActiveToken_ReturnsTrue","Elapsed":0} +{"Time":"2026-10-18T09:57:35.611596809Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_NoTokens_ReturnsFalse"} +{"Time":"2026-10-18T09:57:35.611611345Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_NoTokens_ReturnsFalse","Output":"=== RUN TestCheckMFARequired_NoTokens_ReturnsFalse\n"} +{"Time":"2026-10-18T09:57:35.612039439Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_NoTokens_ReturnsFalse","Output":"--- PASS: TestCheckMFARequired_NoTokens_ReturnsFalse (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.612052351Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_NoTokens_ReturnsFalse","Elapsed":0} +{"Time":"2026-10-18T09:57:35.612140794Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_HTTPError_ReturnsError"} +{"Time":"2026-10-18T09:57:35.612156683Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_HTTPError_ReturnsError","Output":"=== RUN TestCheckMFARequired_HTTPError_ReturnsError\n"} +{"Time":"2026-10-18T09:57:35.612474782Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_HTTPError_ReturnsError","Output":"--- PASS: TestCheckMFARequired_HTTPError_ReturnsError (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.612506216Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_HTTPError_ReturnsError","Elapsed":0} +{"Time":"2026-10-18T09:57:35.612514845Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_Non200Status_ReturnsError"} +{"Time":"2026-10-18T09:57:35.612520274Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_Non200Status_ReturnsError","Output":"=== RUN TestCheckMFARequired_Non200Status_ReturnsError\n"} +{"Time":"2026-10-18T09:57:35.612537993Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_Non200Status_ReturnsError","Output":"--- PASS: TestCheckMFARequired_Non200Status_ReturnsError (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.612667537Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_Non200Status_ReturnsError","Elapsed":0} +{"Time":"2026-10-18T09:57:35.612681478Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_SendsAdminToken"} +{"Time":"2026-10-18T09:57:35.612685797Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_SendsAdminToken","Output":"=== RUN TestCheckMFARequired_SendsAdminToken\n"} +{"Time":"2026-10-18T09:57:35.6131381Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_SendsAdminToken","Output":"--- PASS: TestCheckMFARequired_SendsAdminToken (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.613190643Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_SendsAdminToken","Elapsed":0} +{"Time":"2026-10-18T09:57:35.613205603Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_ValidOTP_ReturnsNil"} +{"Time":"2026-10-18T09:57:35.613230698Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_ValidOTP_ReturnsNil","Output":"=== RUN TestValidateMFAToken_ValidOTP_ReturnsNil\n"} +{"Time":"2026-10-18T09:57:35.613989391Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_ValidOTP_ReturnsNil","Output":"--- PASS: TestValidateMFAToken_ValidOTP_ReturnsNil (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.614034955Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_ValidOTP_ReturnsNil","Elapsed":0} +{"Time":"2026-10-18T09:57:35.614047354Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_InvalidOTP_ReturnsErrMFAFailed"} +{"Time":"2026-10-18T09:57:35.61405289Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_InvalidOTP_ReturnsErrMFAFailed","Output":"=== RUN TestValidateMFAToken_InvalidOTP_ReturnsErrMFAFailed\n"} +{"Time":"2026-10-18T09:57:35.614406646Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_InvalidOTP_ReturnsErrMFAFailed","Output":"--- PASS: TestValidateMFAToken_InvalidOTP_ReturnsErrMFAFailed (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.614430316Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_InvalidOTP_ReturnsErrMFAFailed","Elapsed":0} +{"Time":"2026-10-18T09:57:35.614440813Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_HTTPError_ReturnsError"} +{"Time":"2026-10-18T09:57:35.614446665Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_HTTPError_ReturnsError","Output":"=== RUN TestValidateMFAToken_HTTPError_ReturnsError\n"} +{"Time":"2026-10-18T09:57:35.614729076Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_HTTPError_ReturnsError","Output":"--- PASS: TestValidateMFAToken_HTTPError_ReturnsError (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.61475381Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_HTTPError_ReturnsError","Elapsed":0} +{"Time":"2026-10-18T09:57:35.614763937Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_Non200Status_ReturnsError"} +{"Time":"2026-10-18T09:57:35.614769527Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_Non200Status_ReturnsError","Output":"=== RUN TestValidateMFAToken_Non200Status_ReturnsError\n"} +{"Time":"2026-10-18T09:57:35.614961782Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_Non200Status_ReturnsError","Output":"--- PASS: TestValidateMFAToken_Non200Status_ReturnsError (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.615001638Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_Non200Status_ReturnsError","Elapsed":0} +{"Time":"2026-10-18T09:57:35.615020646Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_IncludesRealm"} +{"Time":"2026-10-18T09:57:35.615029041Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_IncludesRealm","Output":"=== RUN TestValidateMFAToken_IncludesRealm\n"} +{"Time":"2026-10-18T09:57:35.615258729Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_IncludesRealm","Output":"--- PASS: TestValidateMFAToken_IncludesRealm (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.615271001Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestValidateMFAToken_IncludesRealm","Elapsed":0} +{"Time":"2026-10-18T09:57:35.615277818Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_IncludesRealm"} +{"Time":"2026-10-18T09:57:35.615281813Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_IncludesRealm","Output":"=== RUN TestCheckMFARequired_IncludesRealm\n"} +{"Time":"2026-10-18T09:57:35.616261902Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_IncludesRealm","Output":"--- PASS: TestCheckMFARequired_IncludesRealm (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.616314797Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCheckMFARequired_IncludesRealm","Elapsed":0} +{"Time":"2026-10-18T09:57:35.616563971Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialFileRenewalAndFailureRecovery"} +{"Time":"2026-10-18T09:57:35.616582312Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialFileRenewalAndFailureRecovery","Output":"=== RUN TestCredentialFileRenewalAndFailureRecovery\n"} +{"Time":"2026-10-18T09:57:35.619238686Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialFileRenewalAndFailureRecovery","Output":"--- PASS: TestCredentialFileRenewalAndFailureRecovery (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.619285873Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialFileRenewalAndFailureRecovery","Elapsed":0} +{"Time":"2026-10-18T09:57:35.619499275Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues"} +{"Time":"2026-10-18T09:57:35.61952143Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues","Output":"=== RUN TestCredentialSourceErrorsNeverReachProviderOrExposeValues\n"} +{"Time":"2026-10-18T09:57:35.619848549Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/ambiguous"} +{"Time":"2026-10-18T09:57:35.619863004Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/ambiguous","Output":"=== RUN TestCredentialSourceErrorsNeverReachProviderOrExposeValues/ambiguous\n"} +{"Time":"2026-10-18T09:57:35.620218211Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/ambiguous","Output":"--- PASS: TestCredentialSourceErrorsNeverReachProviderOrExposeValues/ambiguous (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.62031509Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/ambiguous","Elapsed":0} +{"Time":"2026-10-18T09:57:35.620351475Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/empty"} +{"Time":"2026-10-18T09:57:35.62036069Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/empty","Output":"=== RUN TestCredentialSourceErrorsNeverReachProviderOrExposeValues/empty\n"} +{"Time":"2026-10-18T09:57:35.620674518Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/empty","Output":"--- PASS: TestCredentialSourceErrorsNeverReachProviderOrExposeValues/empty (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.620694374Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/empty","Elapsed":0} +{"Time":"2026-10-18T09:57:35.620723689Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/newline"} +{"Time":"2026-10-18T09:57:35.620738179Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/newline","Output":"=== RUN TestCredentialSourceErrorsNeverReachProviderOrExposeValues/newline\n"} +{"Time":"2026-10-18T09:57:35.62116679Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/newline","Output":"--- PASS: TestCredentialSourceErrorsNeverReachProviderOrExposeValues/newline (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.621189207Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/newline","Elapsed":0} +{"Time":"2026-10-18T09:57:35.621197061Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/oversized"} +{"Time":"2026-10-18T09:57:35.621201759Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/oversized","Output":"=== RUN TestCredentialSourceErrorsNeverReachProviderOrExposeValues/oversized\n"} +{"Time":"2026-10-18T09:57:35.621939126Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/oversized","Output":"--- PASS: TestCredentialSourceErrorsNeverReachProviderOrExposeValues/oversized (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.621956412Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/oversized","Elapsed":0} +{"Time":"2026-10-18T09:57:35.62199093Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/missing"} +{"Time":"2026-10-18T09:57:35.621997008Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/missing","Output":"=== RUN TestCredentialSourceErrorsNeverReachProviderOrExposeValues/missing\n"} +{"Time":"2026-10-18T09:57:35.622232006Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/missing","Output":"--- PASS: TestCredentialSourceErrorsNeverReachProviderOrExposeValues/missing (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.622246028Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/missing","Elapsed":0} +{"Time":"2026-10-18T09:57:35.622358906Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/directory"} +{"Time":"2026-10-18T09:57:35.622368906Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/directory","Output":"=== RUN TestCredentialSourceErrorsNeverReachProviderOrExposeValues/directory\n"} +{"Time":"2026-10-18T09:57:35.622609703Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/directory","Output":"--- PASS: TestCredentialSourceErrorsNeverReachProviderOrExposeValues/directory (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.622696287Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues/directory","Elapsed":0} +{"Time":"2026-10-18T09:57:35.623186843Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues","Output":"--- PASS: TestCredentialSourceErrorsNeverReachProviderOrExposeValues (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.623220306Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestCredentialSourceErrorsNeverReachProviderOrExposeValues","Elapsed":0} +{"Time":"2026-10-18T09:57:35.623231569Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestProviderFailureFlagCannotGrantAAL2"} +{"Time":"2026-10-18T09:57:35.623237159Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestProviderFailureFlagCannotGrantAAL2","Output":"=== RUN TestProviderFailureFlagCannotGrantAAL2\n"} +{"Time":"2026-10-18T09:57:35.623848222Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestProviderFailureFlagCannotGrantAAL2","Output":"--- PASS: TestProviderFailureFlagCannotGrantAAL2 (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.623895626Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestProviderFailureFlagCannotGrantAAL2","Elapsed":0} +{"Time":"2026-10-18T09:57:35.62391027Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestProductionClientDoesNotFollowProviderRedirects"} +{"Time":"2026-10-18T09:57:35.623924346Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestProductionClientDoesNotFollowProviderRedirects","Output":"=== RUN TestProductionClientDoesNotFollowProviderRedirects\n"} +{"Time":"2026-10-18T09:57:35.629906887Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestProductionClientDoesNotFollowProviderRedirects","Output":"--- PASS: TestProductionClientDoesNotFollowProviderRedirects (0.01s)\n"} +{"Time":"2026-10-18T09:57:35.629958628Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestProductionClientDoesNotFollowProviderRedirects","Elapsed":0.01} +{"Time":"2026-10-18T09:57:35.629971261Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestRejectedCredentialCanRecoverAfterMountedSymlinkRenewal"} +{"Time":"2026-10-18T09:57:35.629982867Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestRejectedCredentialCanRecoverAfterMountedSymlinkRenewal","Output":"=== RUN TestRejectedCredentialCanRecoverAfterMountedSymlinkRenewal\n"} +{"Time":"2026-10-18T09:57:35.631289168Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestRejectedCredentialCanRecoverAfterMountedSymlinkRenewal","Output":"--- PASS: TestRejectedCredentialCanRecoverAfterMountedSymlinkRenewal (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.631342614Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestRejectedCredentialCanRecoverAfterMountedSymlinkRenewal","Elapsed":0} +{"Time":"2026-10-18T09:57:35.631351054Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation"} +{"Time":"2026-10-18T09:57:35.63135485Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation","Output":"=== RUN TestEnrollmentStateRequiresPossessionConfirmation\n"} +{"Time":"2026-10-18T09:57:35.631514924Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/confirmed"} +{"Time":"2026-10-18T09:57:35.631530777Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/confirmed","Output":"=== RUN TestEnrollmentStateRequiresPossessionConfirmation/confirmed\n"} +{"Time":"2026-10-18T09:57:35.631842277Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/confirmed","Output":"--- PASS: TestEnrollmentStateRequiresPossessionConfirmation/confirmed (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.63187134Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/confirmed","Elapsed":0} +{"Time":"2026-10-18T09:57:35.631880772Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/legacy_completed"} +{"Time":"2026-10-18T09:57:35.631884253Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/legacy_completed","Output":"=== RUN TestEnrollmentStateRequiresPossessionConfirmation/legacy_completed\n"} +{"Time":"2026-10-18T09:57:35.632230452Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/legacy_completed","Output":"--- PASS: TestEnrollmentStateRequiresPossessionConfirmation/legacy_completed (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.632288343Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/legacy_completed","Elapsed":0} +{"Time":"2026-10-18T09:57:35.632299777Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/awaiting_OTP"} +{"Time":"2026-10-18T09:57:35.632303888Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/awaiting_OTP","Output":"=== RUN TestEnrollmentStateRequiresPossessionConfirmation/awaiting_OTP\n"} +{"Time":"2026-10-18T09:57:35.632585957Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/awaiting_OTP","Output":"--- PASS: TestEnrollmentStateRequiresPossessionConfirmation/awaiting_OTP (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.632602296Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/awaiting_OTP","Elapsed":0} +{"Time":"2026-10-18T09:57:35.63261217Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/awaiting_device"} +{"Time":"2026-10-18T09:57:35.632618085Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/awaiting_device","Output":"=== RUN TestEnrollmentStateRequiresPossessionConfirmation/awaiting_device\n"} +{"Time":"2026-10-18T09:57:35.633060995Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/awaiting_device","Output":"--- PASS: TestEnrollmentStateRequiresPossessionConfirmation/awaiting_device (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.633104422Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/awaiting_device","Elapsed":0} +{"Time":"2026-10-18T09:57:35.633118417Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/backend_pending"} +{"Time":"2026-10-18T09:57:35.633123412Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/backend_pending","Output":"=== RUN TestEnrollmentStateRequiresPossessionConfirmation/backend_pending\n"} +{"Time":"2026-10-18T09:57:35.633450158Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/backend_pending","Output":"--- PASS: TestEnrollmentStateRequiresPossessionConfirmation/backend_pending (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.633469771Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/backend_pending","Elapsed":0} +{"Time":"2026-10-18T09:57:35.633538581Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/missing_state"} +{"Time":"2026-10-18T09:57:35.6335474Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/missing_state","Output":"=== RUN TestEnrollmentStateRequiresPossessionConfirmation/missing_state\n"} +{"Time":"2026-10-18T09:57:35.634082926Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/missing_state","Output":"--- PASS: TestEnrollmentStateRequiresPossessionConfirmation/missing_state (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.63410362Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/missing_state","Elapsed":0} +{"Time":"2026-10-18T09:57:35.634123224Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/unknown_state"} +{"Time":"2026-10-18T09:57:35.634146281Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/unknown_state","Output":"=== RUN TestEnrollmentStateRequiresPossessionConfirmation/unknown_state\n"} +{"Time":"2026-10-18T09:57:35.634415058Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/unknown_state","Output":"--- PASS: TestEnrollmentStateRequiresPossessionConfirmation/unknown_state (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.634433201Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/unknown_state","Elapsed":0} +{"Time":"2026-10-18T09:57:35.634482318Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/broken_enrollment"} +{"Time":"2026-10-18T09:57:35.634495861Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/broken_enrollment","Output":"=== RUN TestEnrollmentStateRequiresPossessionConfirmation/broken_enrollment\n"} +{"Time":"2026-10-18T09:57:35.634956634Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/broken_enrollment","Output":"--- PASS: TestEnrollmentStateRequiresPossessionConfirmation/broken_enrollment (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.635012117Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation/broken_enrollment","Elapsed":0} +{"Time":"2026-10-18T09:57:35.635024525Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation","Output":"--- PASS: TestEnrollmentStateRequiresPossessionConfirmation (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.63516257Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentStateRequiresPossessionConfirmation","Elapsed":0} +{"Time":"2026-10-18T09:57:35.635176177Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentConfirmationChangesDecisionOnNextLookup"} +{"Time":"2026-10-18T09:57:35.6351811Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentConfirmationChangesDecisionOnNextLookup","Output":"=== RUN TestEnrollmentConfirmationChangesDecisionOnNextLookup\n"} +{"Time":"2026-10-18T09:57:35.635766716Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentConfirmationChangesDecisionOnNextLookup","Output":"--- PASS: TestEnrollmentConfirmationChangesDecisionOnNextLookup (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.635779629Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentConfirmationChangesDecisionOnNextLookup","Elapsed":0} +{"Time":"2026-10-18T09:57:35.635786527Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor"} +{"Time":"2026-10-18T09:57:35.635790549Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor","Output":"=== RUN TestPendingEnrollmentCannotHideExistingFactor\n"} +{"Time":"2026-10-18T09:57:35.635966692Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor/existing_verified_factor"} +{"Time":"2026-10-18T09:57:35.635977071Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor/existing_verified_factor","Output":"=== RUN TestPendingEnrollmentCannotHideExistingFactor/existing_verified_factor\n"} +{"Time":"2026-10-18T09:57:35.636249996Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor/existing_verified_factor","Output":"--- PASS: TestPendingEnrollmentCannotHideExistingFactor/existing_verified_factor (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.636276967Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor/existing_verified_factor","Elapsed":0} +{"Time":"2026-10-18T09:57:35.636289329Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor/unseen_page_is_uncertain"} +{"Time":"2026-10-18T09:57:35.636293748Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor/unseen_page_is_uncertain","Output":"=== RUN TestPendingEnrollmentCannotHideExistingFactor/unseen_page_is_uncertain\n"} +{"Time":"2026-10-18T09:57:35.636578458Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor/unseen_page_is_uncertain","Output":"--- PASS: TestPendingEnrollmentCannotHideExistingFactor/unseen_page_is_uncertain (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.636599523Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor/unseen_page_is_uncertain","Elapsed":0} +{"Time":"2026-10-18T09:57:35.636636881Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor","Output":"--- PASS: TestPendingEnrollmentCannotHideExistingFactor (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.636723104Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPendingEnrollmentCannotHideExistingFactor","Elapsed":0} +{"Time":"2026-10-18T09:57:35.636733871Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2"} +{"Time":"2026-10-18T09:57:35.636738749Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2","Output":"=== RUN TestPasswordPassthroughCannotGrantAAL2\n"} +{"Time":"2026-10-18T09:57:35.636893169Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/password_passthrough"} +{"Time":"2026-10-18T09:57:35.636905974Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/password_passthrough","Output":"=== RUN TestPasswordPassthroughCannotGrantAAL2/password_passthrough\n"} +{"Time":"2026-10-18T09:57:35.637225347Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/password_passthrough","Output":"--- PASS: TestPasswordPassthroughCannotGrantAAL2/password_passthrough (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.637237655Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/password_passthrough","Elapsed":0} +{"Time":"2026-10-18T09:57:35.637252507Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/static_password_token"} +{"Time":"2026-10-18T09:57:35.63725881Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/static_password_token","Output":"=== RUN TestPasswordPassthroughCannotGrantAAL2/static_password_token\n"} +{"Time":"2026-10-18T09:57:35.637511049Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/static_password_token","Output":"--- PASS: TestPasswordPassthroughCannotGrantAAL2/static_password_token (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.637522636Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/static_password_token","Elapsed":0} +{"Time":"2026-10-18T09:57:35.637536523Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/missing_serial"} +{"Time":"2026-10-18T09:57:35.637552754Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/missing_serial","Output":"=== RUN TestPasswordPassthroughCannotGrantAAL2/missing_serial\n"} +{"Time":"2026-10-18T09:57:35.637786716Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/missing_serial","Output":"--- PASS: TestPasswordPassthroughCannotGrantAAL2/missing_serial (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.637845328Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/missing_serial","Elapsed":0} +{"Time":"2026-10-18T09:57:35.637966078Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/blank_serial"} +{"Time":"2026-10-18T09:57:35.637977962Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/blank_serial","Output":"=== RUN TestPasswordPassthroughCannotGrantAAL2/blank_serial\n"} +{"Time":"2026-10-18T09:57:35.638177036Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/blank_serial","Output":"--- PASS: TestPasswordPassthroughCannotGrantAAL2/blank_serial (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.638192852Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/blank_serial","Elapsed":0} +{"Time":"2026-10-18T09:57:35.63821022Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/missing_factor_type"} +{"Time":"2026-10-18T09:57:35.638214485Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/missing_factor_type","Output":"=== RUN TestPasswordPassthroughCannotGrantAAL2/missing_factor_type\n"} +{"Time":"2026-10-18T09:57:35.638450538Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/missing_factor_type","Output":"--- PASS: TestPasswordPassthroughCannotGrantAAL2/missing_factor_type (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.638462676Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/missing_factor_type","Elapsed":0} +{"Time":"2026-10-18T09:57:35.638473713Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/unknown_factor_type"} +{"Time":"2026-10-18T09:57:35.638477816Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/unknown_factor_type","Output":"=== RUN TestPasswordPassthroughCannotGrantAAL2/unknown_factor_type\n"} +{"Time":"2026-10-18T09:57:35.638794213Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/unknown_factor_type","Output":"--- PASS: TestPasswordPassthroughCannotGrantAAL2/unknown_factor_type (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.638815079Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/unknown_factor_type","Elapsed":0} +{"Time":"2026-10-18T09:57:35.638823645Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/TOTP_confirmed"} +{"Time":"2026-10-18T09:57:35.638827748Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/TOTP_confirmed","Output":"=== RUN TestPasswordPassthroughCannotGrantAAL2/TOTP_confirmed\n"} +{"Time":"2026-10-18T09:57:35.639237086Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/TOTP_confirmed","Output":"--- PASS: TestPasswordPassthroughCannotGrantAAL2/TOTP_confirmed (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.639274976Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/TOTP_confirmed","Elapsed":0} +{"Time":"2026-10-18T09:57:35.639308539Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/HOTP_confirmed"} +{"Time":"2026-10-18T09:57:35.639317159Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/HOTP_confirmed","Output":"=== RUN TestPasswordPassthroughCannotGrantAAL2/HOTP_confirmed\n"} +{"Time":"2026-10-18T09:57:35.639531436Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/HOTP_confirmed","Output":"--- PASS: TestPasswordPassthroughCannotGrantAAL2/HOTP_confirmed (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.639548749Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2/HOTP_confirmed","Elapsed":0} +{"Time":"2026-10-18T09:57:35.639580012Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2","Output":"--- PASS: TestPasswordPassthroughCannotGrantAAL2 (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.639672772Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestPasswordPassthroughCannotGrantAAL2","Elapsed":0} +{"Time":"2026-10-18T09:57:35.639753314Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses"} +{"Time":"2026-10-18T09:57:35.639763152Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses","Output":"=== RUN TestEnrollmentLookupRejectsIndeterminateResponses\n"} +{"Time":"2026-10-18T09:57:35.639861729Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{}"} +{"Time":"2026-10-18T09:57:35.639871612Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{}","Output":"=== RUN TestEnrollmentLookupRejectsIndeterminateResponses/{}\n"} +{"Time":"2026-10-18T09:57:35.64005615Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{}","Output":"--- PASS: TestEnrollmentLookupRejectsIndeterminateResponses/{} (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.640083986Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{}","Elapsed":0} +{"Time":"2026-10-18T09:57:35.640117828Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[{}],\"count\":1}}}"} +{"Time":"2026-10-18T09:57:35.640126665Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[{}],\"count\":1}}}","Output":"=== RUN TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[{}],\"count\":1}}}\n"} +{"Time":"2026-10-18T09:57:35.640446029Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[{}],\"count\":1}}}","Output":"--- PASS: TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[{}],\"count\":1}}} (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.640478617Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[{}],\"count\":1}}}","Elapsed":0} +{"Time":"2026-10-18T09:57:35.640560836Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":false,\"value\":{\"tokens\":[],\"count\":0}}}"} +{"Time":"2026-10-18T09:57:35.640584687Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":false,\"value\":{\"tokens\":[],\"count\":0}}}","Output":"=== RUN TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":false,\"value\":{\"tokens\":[],\"count\":0}}}\n"} +{"Time":"2026-10-18T09:57:35.640936621Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":false,\"value\":{\"tokens\":[],\"count\":0}}}","Output":"--- PASS: TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":false,\"value\":{\"tokens\":[],\"count\":0}}} (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.640981248Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":false,\"value\":{\"tokens\":[],\"count\":0}}}","Elapsed":0} +{"Time":"2026-10-18T09:57:35.641003376Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"count\":0}}}"} +{"Time":"2026-10-18T09:57:35.641012835Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"count\":0}}}","Output":"=== RUN TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"count\":0}}}\n"} +{"Time":"2026-10-18T09:57:35.641325222Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"count\":0}}}","Output":"--- PASS: TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"count\":0}}} (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.641350849Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"count\":0}}}","Elapsed":0} +{"Time":"2026-10-18T09:57:35.641460604Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[]}}}"} +{"Time":"2026-10-18T09:57:35.641481569Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[]}}}","Output":"=== RUN TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[]}}}\n"} +{"Time":"2026-10-18T09:57:35.641819818Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[]}}}","Output":"--- PASS: TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[]}}} (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.64184375Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[]}}}","Elapsed":0} +{"Time":"2026-10-18T09:57:35.641863291Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":null,\"count\":0}}}"} +{"Time":"2026-10-18T09:57:35.641869143Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":null,\"count\":0}}}","Output":"=== RUN TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":null,\"count\":0}}}\n"} +{"Time":"2026-10-18T09:57:35.642196205Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":null,\"count\":0}}}","Output":"--- PASS: TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":null,\"count\":0}}} (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.642246593Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":null,\"count\":0}}}","Elapsed":0} +{"Time":"2026-10-18T09:57:35.642264465Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":1}}}"} +{"Time":"2026-10-18T09:57:35.64227112Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":1}}}","Output":"=== RUN TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":1}}}\n"} +{"Time":"2026-10-18T09:57:35.642543745Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":1}}}","Output":"--- PASS: TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":1}}} (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.642581338Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":1}}}","Elapsed":0} +{"Time":"2026-10-18T09:57:35.642603106Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":-1}}}"} +{"Time":"2026-10-18T09:57:35.642619319Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":-1}}}","Output":"=== RUN TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":-1}}}\n"} +{"Time":"2026-10-18T09:57:35.643045521Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":-1}}}","Output":"--- PASS: TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":-1}}} (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.643108814Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses/{\"result\":{\"status\":true,\"value\":{\"tokens\":[],\"count\":-1}}}","Elapsed":0} +{"Time":"2026-10-18T09:57:35.64313757Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses","Output":"--- PASS: TestEnrollmentLookupRejectsIndeterminateResponses (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.643145451Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupRejectsIndeterminateResponses","Elapsed":0} +{"Time":"2026-10-18T09:57:35.643381288Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupFiltersBeforePagination"} +{"Time":"2026-10-18T09:57:35.643408835Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupFiltersBeforePagination","Output":"=== RUN TestEnrollmentLookupFiltersBeforePagination\n"} +{"Time":"2026-10-18T09:57:35.643667489Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupFiltersBeforePagination","Output":"--- PASS: TestEnrollmentLookupFiltersBeforePagination (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.643722187Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEnrollmentLookupFiltersBeforePagination","Elapsed":0} +{"Time":"2026-10-18T09:57:35.643813911Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope"} +{"Time":"2026-10-18T09:57:35.643827635Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope","Output":"=== RUN TestEmptyFactorListRequiresLiveReaderScope\n"} +{"Time":"2026-10-18T09:57:35.644010274Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/scope_visible"} +{"Time":"2026-10-18T09:57:35.644031266Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/scope_visible","Output":"=== RUN TestEmptyFactorListRequiresLiveReaderScope/scope_visible\n"} +{"Time":"2026-10-18T09:57:35.644657876Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/scope_visible","Output":"--- PASS: TestEmptyFactorListRequiresLiveReaderScope/scope_visible (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.644744694Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/scope_visible","Elapsed":0} +{"Time":"2026-10-18T09:57:35.644762963Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/permission_withdrawn"} +{"Time":"2026-10-18T09:57:35.64477235Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/permission_withdrawn","Output":"=== RUN TestEmptyFactorListRequiresLiveReaderScope/permission_withdrawn\n"} +{"Time":"2026-10-18T09:57:35.645096641Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/permission_withdrawn","Output":"--- PASS: TestEmptyFactorListRequiresLiveReaderScope/permission_withdrawn (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.645177562Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/permission_withdrawn","Elapsed":0} +{"Time":"2026-10-18T09:57:35.645196751Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/probe_assigned_to_a_user"} +{"Time":"2026-10-18T09:57:35.645200403Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/probe_assigned_to_a_user","Output":"=== RUN TestEmptyFactorListRequiresLiveReaderScope/probe_assigned_to_a_user\n"} +{"Time":"2026-10-18T09:57:35.645925816Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/probe_assigned_to_a_user","Output":"--- PASS: TestEmptyFactorListRequiresLiveReaderScope/probe_assigned_to_a_user (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.645972778Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/probe_assigned_to_a_user","Elapsed":0} +{"Time":"2026-10-18T09:57:35.645985149Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/different_realm"} +{"Time":"2026-10-18T09:57:35.645989243Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/different_realm","Output":"=== RUN TestEmptyFactorListRequiresLiveReaderScope/different_realm\n"} +{"Time":"2026-10-18T09:57:35.646522239Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/different_realm","Output":"--- PASS: TestEmptyFactorListRequiresLiveReaderScope/different_realm (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.64656397Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope/different_realm","Elapsed":0} +{"Time":"2026-10-18T09:57:35.64660719Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope","Output":"--- PASS: TestEmptyFactorListRequiresLiveReaderScope (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.646730501Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestEmptyFactorListRequiresLiveReaderScope","Elapsed":0} +{"Time":"2026-10-18T09:57:35.646948574Z","Action":"run","Package":"keycape/internal/adapters/privacyidea","Test":"TestNoProbeConfigurationCannotMeanNoFactor"} +{"Time":"2026-10-18T09:57:35.646978151Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestNoProbeConfigurationCannotMeanNoFactor","Output":"=== RUN TestNoProbeConfigurationCannotMeanNoFactor\n"} +{"Time":"2026-10-18T09:57:35.647241175Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Test":"TestNoProbeConfigurationCannotMeanNoFactor","Output":"--- PASS: TestNoProbeConfigurationCannotMeanNoFactor (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.647262897Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Test":"TestNoProbeConfigurationCannotMeanNoFactor","Elapsed":0} +{"Time":"2026-10-18T09:57:35.647339878Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:35.655730713Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/empty_key_set"} +{"Time":"2026-10-18T09:57:35.655771345Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/empty_key_set","Output":"=== RUN TestUpstreamTokenRejections/empty_key_set\n"} +{"Time":"2026-10-18T09:57:35.656245157Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/empty_key_set","Output":"--- PASS: TestUpstreamTokenRejections/empty_key_set (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.656267691Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/empty_key_set","Elapsed":0} +{"Time":"2026-10-18T09:57:35.656356484Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/unreachable_key_set"} +{"Time":"2026-10-18T09:57:35.656369405Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/unreachable_key_set","Output":"=== RUN TestUpstreamTokenRejections/unreachable_key_set\n"} +{"Time":"2026-10-18T09:57:35.656862282Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/unreachable_key_set","Output":"--- PASS: TestUpstreamTokenRejections/unreachable_key_set (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.656895709Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/unreachable_key_set","Elapsed":0} +{"Time":"2026-10-18T09:57:35.656905492Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/forged_signature"} +{"Time":"2026-10-18T09:57:35.656912535Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/forged_signature","Output":"=== RUN TestUpstreamTokenRejections/forged_signature\n"} +{"Time":"2026-10-18T09:57:35.657865899Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/forged_signature","Output":"--- PASS: TestUpstreamTokenRejections/forged_signature (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.657916053Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/forged_signature","Elapsed":0} +{"Time":"2026-10-18T09:57:35.657925359Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/unknown_key_id"} +{"Time":"2026-10-18T09:57:35.657931446Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/unknown_key_id","Output":"=== RUN TestUpstreamTokenRejections/unknown_key_id\n"} +{"Time":"2026-10-18T09:57:35.658628506Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/unknown_key_id","Output":"--- PASS: TestUpstreamTokenRejections/unknown_key_id (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.658697768Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/unknown_key_id","Elapsed":0} +{"Time":"2026-10-18T09:57:35.663018424Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/wrong_issuer"} +{"Time":"2026-10-18T09:57:35.663066918Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/wrong_issuer","Output":"=== RUN TestUpstreamTokenRejections/wrong_issuer\n"} +{"Time":"2026-10-18T09:57:35.663080336Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/wrong_issuer","Output":"--- PASS: TestUpstreamTokenRejections/wrong_issuer (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.663085314Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/wrong_issuer","Elapsed":0} +{"Time":"2026-10-18T09:57:35.663092518Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/audience_array_without_this_client"} +{"Time":"2026-10-18T09:57:35.663097009Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/audience_array_without_this_client","Output":"=== RUN TestUpstreamTokenRejections/audience_array_without_this_client\n"} +{"Time":"2026-10-18T09:57:35.663104412Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/audience_array_without_this_client","Output":"--- PASS: TestUpstreamTokenRejections/audience_array_without_this_client (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.663114602Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/audience_array_without_this_client","Elapsed":0} +{"Time":"2026-10-18T09:57:35.66312361Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/expired"} +{"Time":"2026-10-18T09:57:35.663128055Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/expired","Output":"=== RUN TestUpstreamTokenRejections/expired\n"} +{"Time":"2026-10-18T09:57:35.66313444Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/expired","Output":"--- PASS: TestUpstreamTokenRejections/expired (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.663145855Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/expired","Elapsed":0} +{"Time":"2026-10-18T09:57:35.663161681Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/issued_in_the_future"} +{"Time":"2026-10-18T09:57:35.663165973Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/issued_in_the_future","Output":"=== RUN TestUpstreamTokenRejections/issued_in_the_future\n"} +{"Time":"2026-10-18T09:57:35.664282856Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/issued_in_the_future","Output":"--- PASS: TestUpstreamTokenRejections/issued_in_the_future (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.664329295Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/issued_in_the_future","Elapsed":0} +{"Time":"2026-10-18T09:57:35.664369809Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/not_yet_valid"} +{"Time":"2026-10-18T09:57:35.664384056Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/not_yet_valid","Output":"=== RUN TestUpstreamTokenRejections/not_yet_valid\n"} +{"Time":"2026-10-18T09:57:35.665344212Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/not_yet_valid","Output":"--- PASS: TestUpstreamTokenRejections/not_yet_valid (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.665409885Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/not_yet_valid","Elapsed":0} +{"Time":"2026-10-18T09:57:35.665423474Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/missing_expiry"} +{"Time":"2026-10-18T09:57:35.665428109Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/missing_expiry","Output":"=== RUN TestUpstreamTokenRejections/missing_expiry\n"} +{"Time":"2026-10-18T09:57:35.666239201Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/missing_expiry","Output":"--- PASS: TestUpstreamTokenRejections/missing_expiry (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.666268724Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/missing_expiry","Elapsed":0} +{"Time":"2026-10-18T09:57:35.666274062Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/audience_is_another_client"} +{"Time":"2026-10-18T09:57:35.666277299Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/audience_is_another_client","Output":"=== RUN TestUpstreamTokenRejections/audience_is_another_client\n"} +{"Time":"2026-10-18T09:57:35.667224913Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/audience_is_another_client","Output":"--- PASS: TestUpstreamTokenRejections/audience_is_another_client (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.667256509Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/audience_is_another_client","Elapsed":0} +{"Time":"2026-10-18T09:57:35.667273389Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/undersized_signing_key"} +{"Time":"2026-10-18T09:57:35.667277907Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/undersized_signing_key","Output":"=== RUN TestUpstreamTokenRejections/undersized_signing_key\n"} +{"Time":"2026-10-18T09:57:35.667837617Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/undersized_signing_key","Output":"--- PASS: TestUpstreamTokenRejections/undersized_signing_key (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.667851494Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/undersized_signing_key","Elapsed":0} +{"Time":"2026-10-18T09:57:35.667861296Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/malformed_key_set"} +{"Time":"2026-10-18T09:57:35.667865895Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/malformed_key_set","Output":"=== RUN TestUpstreamTokenRejections/malformed_key_set\n"} +{"Time":"2026-10-18T09:57:35.668378201Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/malformed_key_set","Output":"--- PASS: TestUpstreamTokenRejections/malformed_key_set (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.668392051Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections/malformed_key_set","Elapsed":0} +{"Time":"2026-10-18T09:57:35.668445668Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections","Output":"--- PASS: TestUpstreamTokenRejections (0.22s)\n"} +{"Time":"2026-10-18T09:57:35.668478842Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejections","Elapsed":0.22} +{"Time":"2026-10-18T09:57:35.668577744Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejectsNonRS256Algorithms"} +{"Time":"2026-10-18T09:57:35.668601234Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejectsNonRS256Algorithms","Output":"=== RUN TestUpstreamTokenRejectsNonRS256Algorithms\n"} +{"Time":"2026-10-18T09:57:35.679515547Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejectsNonRS256Algorithms","Output":"--- PASS: TestUpstreamTokenRejectsNonRS256Algorithms (0.01s)\n"} +{"Time":"2026-10-18T09:57:35.679568361Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamTokenRejectsNonRS256Algorithms","Elapsed":0.01} +{"Time":"2026-10-18T09:57:35.679578993Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamKeyRotationIsPickedUpWithoutRestart"} +{"Time":"2026-10-18T09:57:35.679586207Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamKeyRotationIsPickedUpWithoutRestart","Output":"=== RUN TestUpstreamKeyRotationIsPickedUpWithoutRestart\n"} +{"Time":"2026-10-18T09:57:35.776559131Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamKeyRotationIsPickedUpWithoutRestart","Output":"--- PASS: TestUpstreamKeyRotationIsPickedUpWithoutRestart (0.10s)\n"} +{"Time":"2026-10-18T09:57:35.77661235Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestUpstreamKeyRotationIsPickedUpWithoutRestart","Elapsed":0.1} +{"Time":"2026-10-18T09:57:35.776624028Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable"} +{"Time":"2026-10-18T09:57:35.77664227Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable","Output":"=== RUN TestFailureReasonsAreDistinguishable\n"} +{"Time":"2026-10-18T09:57:35.78766431Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/expired"} +{"Time":"2026-10-18T09:57:35.787704743Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/expired","Output":"=== RUN TestFailureReasonsAreDistinguishable/expired\n"} +{"Time":"2026-10-18T09:57:35.788868253Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/expired","Output":"--- PASS: TestFailureReasonsAreDistinguishable/expired (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.788905052Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/expired","Elapsed":0} +{"Time":"2026-10-18T09:57:35.789019183Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/signature"} +{"Time":"2026-10-18T09:57:35.789031781Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/signature","Output":"=== RUN TestFailureReasonsAreDistinguishable/signature\n"} +{"Time":"2026-10-18T09:57:35.789969331Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/signature","Output":"--- PASS: TestFailureReasonsAreDistinguishable/signature (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.790018664Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/signature","Elapsed":0} +{"Time":"2026-10-18T09:57:35.790229059Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/keys_unavailable"} +{"Time":"2026-10-18T09:57:35.790263893Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/keys_unavailable","Output":"=== RUN TestFailureReasonsAreDistinguishable/keys_unavailable\n"} +{"Time":"2026-10-18T09:57:35.790995575Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/keys_unavailable","Output":"--- PASS: TestFailureReasonsAreDistinguishable/keys_unavailable (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.79106792Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/keys_unavailable","Elapsed":0} +{"Time":"2026-10-18T09:57:35.791082537Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/issuer_mismatch"} +{"Time":"2026-10-18T09:57:35.791088579Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/issuer_mismatch","Output":"=== RUN TestFailureReasonsAreDistinguishable/issuer_mismatch\n"} +{"Time":"2026-10-18T09:57:35.791926552Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/issuer_mismatch","Output":"--- PASS: TestFailureReasonsAreDistinguishable/issuer_mismatch (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.791946327Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/issuer_mismatch","Elapsed":0} +{"Time":"2026-10-18T09:57:35.791988861Z","Action":"run","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/audience_mismatch"} +{"Time":"2026-10-18T09:57:35.791995723Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/audience_mismatch","Output":"=== RUN TestFailureReasonsAreDistinguishable/audience_mismatch\n"} +{"Time":"2026-10-18T09:57:35.793040471Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/audience_mismatch","Output":"--- PASS: TestFailureReasonsAreDistinguishable/audience_mismatch (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.793086567Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable/audience_mismatch","Elapsed":0} +{"Time":"2026-10-18T09:57:35.793099831Z","Action":"output","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable","Output":"--- PASS: TestFailureReasonsAreDistinguishable (0.02s)\n"} +{"Time":"2026-10-18T09:57:35.793113123Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Test":"TestFailureReasonsAreDistinguishable","Elapsed":0.02} +{"Time":"2026-10-18T09:57:35.793134629Z","Action":"output","Package":"keycape/internal/adapters/authelia","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:35.868936316Z","Action":"output","Package":"keycape/cmd/lldap-export","Output":"ok \tkeycape/cmd/lldap-export\t1.042s\n"} +{"Time":"2026-10-18T09:57:35.869005451Z","Action":"pass","Package":"keycape/cmd/lldap-export","Elapsed":1.042} +{"Time":"2026-10-18T09:57:35.870967009Z","Action":"start","Package":"keycape/internal/adapters/tenantengine"} +{"Time":"2026-10-18T09:57:35.885305574Z","Action":"run","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesReturnsRolesOnSuccess"} +{"Time":"2026-10-18T09:57:35.885381184Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesReturnsRolesOnSuccess","Output":"=== RUN TestRolesReturnsRolesOnSuccess\n"} +{"Time":"2026-10-18T09:57:35.889916139Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesReturnsRolesOnSuccess","Output":"--- PASS: TestRolesReturnsRolesOnSuccess (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.889968637Z","Action":"pass","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesReturnsRolesOnSuccess","Elapsed":0} +{"Time":"2026-10-18T09:57:35.89014093Z","Action":"run","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnNon200"} +{"Time":"2026-10-18T09:57:35.89015551Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnNon200","Output":"=== RUN TestRolesFailsOpenOnNon200\n"} +{"Time":"2026-10-18T09:57:35.893292794Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnNon200","Output":"--- PASS: TestRolesFailsOpenOnNon200 (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.893358783Z","Action":"pass","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnNon200","Elapsed":0} +{"Time":"2026-10-18T09:57:35.89336844Z","Action":"run","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnMalformedBody"} +{"Time":"2026-10-18T09:57:35.893374283Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnMalformedBody","Output":"=== RUN TestRolesFailsOpenOnMalformedBody\n"} +{"Time":"2026-10-18T09:57:35.89552475Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnMalformedBody","Output":"--- PASS: TestRolesFailsOpenOnMalformedBody (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.895571838Z","Action":"pass","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnMalformedBody","Elapsed":0} +{"Time":"2026-10-18T09:57:35.895587519Z","Action":"run","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnConnectionFailure"} +{"Time":"2026-10-18T09:57:35.895592623Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnConnectionFailure","Output":"=== RUN TestRolesFailsOpenOnConnectionFailure\n"} +{"Time":"2026-10-18T09:57:35.89648983Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnConnectionFailure","Output":"--- PASS: TestRolesFailsOpenOnConnectionFailure (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.896518054Z","Action":"pass","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnConnectionFailure","Elapsed":0} +{"Time":"2026-10-18T09:57:35.89660058Z","Action":"run","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnTimeout"} +{"Time":"2026-10-18T09:57:35.896609561Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnTimeout","Output":"=== RUN TestRolesFailsOpenOnTimeout\n"} +{"Time":"2026-10-18T09:57:35.999174507Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnTimeout","Output":"--- PASS: TestRolesFailsOpenOnTimeout (0.10s)\n"} +{"Time":"2026-10-18T09:57:35.999218213Z","Action":"pass","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnTimeout","Elapsed":0.1} +{"Time":"2026-10-18T09:57:35.999228827Z","Action":"run","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnNilClient"} +{"Time":"2026-10-18T09:57:35.999232794Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnNilClient","Output":"=== RUN TestRolesFailsOpenOnNilClient\n"} +{"Time":"2026-10-18T09:57:35.999404257Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnNilClient","Output":"--- PASS: TestRolesFailsOpenOnNilClient (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.999419875Z","Action":"pass","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnNilClient","Elapsed":0} +{"Time":"2026-10-18T09:57:35.999450831Z","Action":"run","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnEmptyBaseURL"} +{"Time":"2026-10-18T09:57:35.9994558Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnEmptyBaseURL","Output":"=== RUN TestRolesFailsOpenOnEmptyBaseURL\n"} +{"Time":"2026-10-18T09:57:35.999652538Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnEmptyBaseURL","Output":"--- PASS: TestRolesFailsOpenOnEmptyBaseURL (0.00s)\n"} +{"Time":"2026-10-18T09:57:35.999669148Z","Action":"pass","Package":"keycape/internal/adapters/tenantengine","Test":"TestRolesFailsOpenOnEmptyBaseURL","Elapsed":0} +{"Time":"2026-10-18T09:57:35.999739212Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:36.068055115Z","Action":"output","Package":"keycape/internal/adapters/lldap","Output":"ok \tkeycape/internal/adapters/lldap\t1.022s\n"} +{"Time":"2026-10-18T09:57:36.068110274Z","Action":"pass","Package":"keycape/internal/adapters/lldap","Elapsed":1.022} +{"Time":"2026-10-18T09:57:36.652157484Z","Action":"output","Package":"keycape/internal/adapters/privacyidea","Output":"ok \tkeycape/internal/adapters/privacyidea\t1.061s\n"} +{"Time":"2026-10-18T09:57:36.652218666Z","Action":"pass","Package":"keycape/internal/adapters/privacyidea","Elapsed":1.061} +{"Time":"2026-10-18T09:57:36.765678044Z","Action":"start","Package":"keycape/internal/authclient"} +{"Time":"2026-10-18T09:57:36.795079244Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestServiceExchangeAndClaimValidation"} +{"Time":"2026-10-18T09:57:36.795140254Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestServiceExchangeAndClaimValidation","Output":"=== RUN TestServiceExchangeAndClaimValidation\n"} +{"Time":"2026-10-18T09:57:36.80016303Z","Action":"output","Package":"keycape/internal/adapters/authelia","Output":"ok \tkeycape/internal/adapters/authelia\t1.864s\n"} +{"Time":"2026-10-18T09:57:36.800213328Z","Action":"pass","Package":"keycape/internal/adapters/authelia","Elapsed":1.8639999999999999} +{"Time":"2026-10-18T09:57:36.802466865Z","Action":"start","Package":"keycape/internal/config"} +{"Time":"2026-10-18T09:57:36.81947707Z","Action":"run","Package":"keycape/internal/config","Test":"TestAccountRecoveryDestinationsAreOwnerConfiguredHTTPS"} +{"Time":"2026-10-18T09:57:36.819525357Z","Action":"output","Package":"keycape/internal/config","Test":"TestAccountRecoveryDestinationsAreOwnerConfiguredHTTPS","Output":"=== RUN TestAccountRecoveryDestinationsAreOwnerConfiguredHTTPS\n"} +{"Time":"2026-10-18T09:57:36.819691356Z","Action":"output","Package":"keycape/internal/config","Test":"TestAccountRecoveryDestinationsAreOwnerConfiguredHTTPS","Output":"--- PASS: TestAccountRecoveryDestinationsAreOwnerConfiguredHTTPS (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.819709309Z","Action":"pass","Package":"keycape/internal/config","Test":"TestAccountRecoveryDestinationsAreOwnerConfiguredHTTPS","Elapsed":0} +{"Time":"2026-10-18T09:57:36.819723656Z","Action":"run","Package":"keycape/internal/config","Test":"TestLoad_ValidYAML"} +{"Time":"2026-10-18T09:57:36.819734088Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_ValidYAML","Output":"=== RUN TestLoad_ValidYAML\n"} +{"Time":"2026-10-18T09:57:36.821146181Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_ValidYAML","Output":"--- PASS: TestLoad_ValidYAML (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.821195189Z","Action":"pass","Package":"keycape/internal/config","Test":"TestLoad_ValidYAML","Elapsed":0} +{"Time":"2026-10-18T09:57:36.821206181Z","Action":"run","Package":"keycape/internal/config","Test":"TestLoad_AutheliaSplitURLs"} +{"Time":"2026-10-18T09:57:36.821210888Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_AutheliaSplitURLs","Output":"=== RUN TestLoad_AutheliaSplitURLs\n"} +{"Time":"2026-10-18T09:57:36.822955109Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_AutheliaSplitURLs","Output":"--- PASS: TestLoad_AutheliaSplitURLs (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.823013451Z","Action":"pass","Package":"keycape/internal/config","Test":"TestLoad_AutheliaSplitURLs","Elapsed":0} +{"Time":"2026-10-18T09:57:36.823034551Z","Action":"run","Package":"keycape/internal/config","Test":"TestLoad_ClientMFAAndRegistrationURL"} +{"Time":"2026-10-18T09:57:36.823038672Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_ClientMFAAndRegistrationURL","Output":"=== RUN TestLoad_ClientMFAAndRegistrationURL\n"} +{"Time":"2026-10-18T09:57:36.824725705Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_ClientMFAAndRegistrationURL","Output":"--- PASS: TestLoad_ClientMFAAndRegistrationURL (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.824775877Z","Action":"pass","Package":"keycape/internal/config","Test":"TestLoad_ClientMFAAndRegistrationURL","Elapsed":0} +{"Time":"2026-10-18T09:57:36.824799781Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_InvalidRegistrationURL"} +{"Time":"2026-10-18T09:57:36.824805417Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_InvalidRegistrationURL","Output":"=== RUN TestValidate_InvalidRegistrationURL\n"} +{"Time":"2026-10-18T09:57:36.825431548Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_InvalidRegistrationURL","Output":"--- PASS: TestValidate_InvalidRegistrationURL (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.825480547Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_InvalidRegistrationURL","Elapsed":0} +{"Time":"2026-10-18T09:57:36.82548933Z","Action":"run","Package":"keycape/internal/config","Test":"TestLoad_PrivacyIDEARequireForAll"} +{"Time":"2026-10-18T09:57:36.825493658Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_PrivacyIDEARequireForAll","Output":"=== RUN TestLoad_PrivacyIDEARequireForAll\n"} +{"Time":"2026-10-18T09:57:36.827539557Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_PrivacyIDEARequireForAll","Output":"--- PASS: TestLoad_PrivacyIDEARequireForAll (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.827587628Z","Action":"pass","Package":"keycape/internal/config","Test":"TestLoad_PrivacyIDEARequireForAll","Elapsed":0} +{"Time":"2026-10-18T09:57:36.827601406Z","Action":"run","Package":"keycape/internal/config","Test":"TestLoad_LLDAPOrganisationalUnits"} +{"Time":"2026-10-18T09:57:36.827606771Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_LLDAPOrganisationalUnits","Output":"=== RUN TestLoad_LLDAPOrganisationalUnits\n"} +{"Time":"2026-10-18T09:57:36.829282158Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_LLDAPOrganisationalUnits","Output":"--- PASS: TestLoad_LLDAPOrganisationalUnits (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.829334792Z","Action":"pass","Package":"keycape/internal/config","Test":"TestLoad_LLDAPOrganisationalUnits","Elapsed":0} +{"Time":"2026-10-18T09:57:36.829345405Z","Action":"run","Package":"keycape/internal/config","Test":"TestLoad_FileNotFound"} +{"Time":"2026-10-18T09:57:36.829351311Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_FileNotFound","Output":"=== RUN TestLoad_FileNotFound\n"} +{"Time":"2026-10-18T09:57:36.829893131Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_FileNotFound","Output":"--- PASS: TestLoad_FileNotFound (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.829931905Z","Action":"pass","Package":"keycape/internal/config","Test":"TestLoad_FileNotFound","Elapsed":0} +{"Time":"2026-10-18T09:57:36.829951003Z","Action":"run","Package":"keycape/internal/config","Test":"TestLoad_InvalidYAML"} +{"Time":"2026-10-18T09:57:36.829955611Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_InvalidYAML","Output":"=== RUN TestLoad_InvalidYAML\n"} +{"Time":"2026-10-18T09:57:36.831181353Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_InvalidYAML","Output":"--- PASS: TestLoad_InvalidYAML (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.831232039Z","Action":"pass","Package":"keycape/internal/config","Test":"TestLoad_InvalidYAML","Elapsed":0} +{"Time":"2026-10-18T09:57:36.831239767Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_ValidConfig"} +{"Time":"2026-10-18T09:57:36.831244068Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ValidConfig","Output":"=== RUN TestValidate_ValidConfig\n"} +{"Time":"2026-10-18T09:57:36.83187796Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ValidConfig","Output":"--- PASS: TestValidate_ValidConfig (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.831924984Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_ValidConfig","Elapsed":0} +{"Time":"2026-10-18T09:57:36.8320586Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_MissingIssuer"} +{"Time":"2026-10-18T09:57:36.832076102Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_MissingIssuer","Output":"=== RUN TestValidate_MissingIssuer\n"} +{"Time":"2026-10-18T09:57:36.832631899Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_MissingIssuer","Output":"--- PASS: TestValidate_MissingIssuer (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.832655073Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_MissingIssuer","Elapsed":0} +{"Time":"2026-10-18T09:57:36.832746625Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_InvalidIssuerURL"} +{"Time":"2026-10-18T09:57:36.832754921Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_InvalidIssuerURL","Output":"=== RUN TestValidate_InvalidIssuerURL\n"} +{"Time":"2026-10-18T09:57:36.833343928Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_InvalidIssuerURL","Output":"--- PASS: TestValidate_InvalidIssuerURL (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.833374685Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_InvalidIssuerURL","Elapsed":0} +{"Time":"2026-10-18T09:57:36.833389753Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_PortZero"} +{"Time":"2026-10-18T09:57:36.83339382Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_PortZero","Output":"=== RUN TestValidate_PortZero\n"} +{"Time":"2026-10-18T09:57:36.833995207Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_PortZero","Output":"--- PASS: TestValidate_PortZero (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.834030411Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_PortZero","Elapsed":0} +{"Time":"2026-10-18T09:57:36.834145534Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_PortTooHigh"} +{"Time":"2026-10-18T09:57:36.834156914Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_PortTooHigh","Output":"=== RUN TestValidate_PortTooHigh\n"} +{"Time":"2026-10-18T09:57:36.834703087Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_PortTooHigh","Output":"--- PASS: TestValidate_PortTooHigh (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.834729995Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_PortTooHigh","Elapsed":0} +{"Time":"2026-10-18T09:57:36.834739598Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_NoClients"} +{"Time":"2026-10-18T09:57:36.834744693Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_NoClients","Output":"=== RUN TestValidate_NoClients\n"} +{"Time":"2026-10-18T09:57:36.835312689Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_NoClients","Output":"--- PASS: TestValidate_NoClients (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.835342248Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_NoClients","Elapsed":0} +{"Time":"2026-10-18T09:57:36.835350102Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_ClientMissingRedirectURI"} +{"Time":"2026-10-18T09:57:36.835354656Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ClientMissingRedirectURI","Output":"=== RUN TestValidate_ClientMissingRedirectURI\n"} +{"Time":"2026-10-18T09:57:36.835945114Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ClientMissingRedirectURI","Output":"--- PASS: TestValidate_ClientMissingRedirectURI (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.835975169Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_ClientMissingRedirectURI","Elapsed":0} +{"Time":"2026-10-18T09:57:36.836002825Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_MissingPrivateKeyPEM"} +{"Time":"2026-10-18T09:57:36.836013817Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_MissingPrivateKeyPEM","Output":"=== RUN TestValidate_MissingPrivateKeyPEM\n"} +{"Time":"2026-10-18T09:57:36.836259356Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_MissingPrivateKeyPEM","Output":"--- PASS: TestValidate_MissingPrivateKeyPEM (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.836293523Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_MissingPrivateKeyPEM","Elapsed":0} +{"Time":"2026-10-18T09:57:36.836299808Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_ClientCredentialsTokenLifetime"} +{"Time":"2026-10-18T09:57:36.836304019Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ClientCredentialsTokenLifetime","Output":"=== RUN TestValidate_ClientCredentialsTokenLifetime\n"} +{"Time":"2026-10-18T09:57:36.836854648Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ClientCredentialsTokenLifetime","Output":"--- PASS: TestValidate_ClientCredentialsTokenLifetime (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.836879139Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_ClientCredentialsTokenLifetime","Elapsed":0} +{"Time":"2026-10-18T09:57:36.836958428Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_PublicClientRejectsTokenLifetime"} +{"Time":"2026-10-18T09:57:36.836968401Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_PublicClientRejectsTokenLifetime","Output":"=== RUN TestValidate_PublicClientRejectsTokenLifetime\n"} +{"Time":"2026-10-18T09:57:36.837513289Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_PublicClientRejectsTokenLifetime","Output":"--- PASS: TestValidate_PublicClientRejectsTokenLifetime (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.837549638Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_PublicClientRejectsTokenLifetime","Elapsed":0} +{"Time":"2026-10-18T09:57:36.837559548Z","Action":"run","Package":"keycape/internal/config","Test":"TestServiceClientExampleContracts"} +{"Time":"2026-10-18T09:57:36.837564471Z","Action":"output","Package":"keycape/internal/config","Test":"TestServiceClientExampleContracts","Output":"=== RUN TestServiceClientExampleContracts\n"} +{"Time":"2026-10-18T09:57:36.845009539Z","Action":"output","Package":"keycape/internal/config","Test":"TestServiceClientExampleContracts","Output":"--- PASS: TestServiceClientExampleContracts (0.01s)\n"} +{"Time":"2026-10-18T09:57:36.845077538Z","Action":"pass","Package":"keycape/internal/config","Test":"TestServiceClientExampleContracts","Elapsed":0.01} +{"Time":"2026-10-18T09:57:36.84526974Z","Action":"run","Package":"keycape/internal/config","Test":"TestDevConfigOpenBaoAdminAdmitsOperatorTunnelCallback"} +{"Time":"2026-10-18T09:57:36.845285313Z","Action":"output","Package":"keycape/internal/config","Test":"TestDevConfigOpenBaoAdminAdmitsOperatorTunnelCallback","Output":"=== RUN TestDevConfigOpenBaoAdminAdmitsOperatorTunnelCallback\n"} +{"Time":"2026-10-18T09:57:36.850082402Z","Action":"output","Package":"keycape/internal/config","Test":"TestDevConfigOpenBaoAdminAdmitsOperatorTunnelCallback","Output":"--- PASS: TestDevConfigOpenBaoAdminAdmitsOperatorTunnelCallback (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.850148381Z","Action":"pass","Package":"keycape/internal/config","Test":"TestDevConfigOpenBaoAdminAdmitsOperatorTunnelCallback","Elapsed":0} +{"Time":"2026-10-18T09:57:36.850170906Z","Action":"run","Package":"keycape/internal/config","Test":"TestLoad_FromEnvVar"} +{"Time":"2026-10-18T09:57:36.850178481Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_FromEnvVar","Output":"=== RUN TestLoad_FromEnvVar\n"} +{"Time":"2026-10-18T09:57:36.851718378Z","Action":"output","Package":"keycape/internal/config","Test":"TestLoad_FromEnvVar","Output":"--- PASS: TestLoad_FromEnvVar (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.851776972Z","Action":"pass","Package":"keycape/internal/config","Test":"TestLoad_FromEnvVar","Elapsed":0} +{"Time":"2026-10-18T09:57:36.851792103Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidateConfigAudience"} +{"Time":"2026-10-18T09:57:36.851797639Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidateConfigAudience","Output":"=== RUN TestValidateConfigAudience\n"} +{"Time":"2026-10-18T09:57:36.851823843Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidateConfigAudience","Output":"--- PASS: TestValidateConfigAudience (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.851964434Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidateConfigAudience","Elapsed":0} +{"Time":"2026-10-18T09:57:36.851983677Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine"} +{"Time":"2026-10-18T09:57:36.85198916Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine","Output":"=== RUN TestValidate_TenantEngine\n"} +{"Time":"2026-10-18T09:57:36.852092353Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/absent_is_valid"} +{"Time":"2026-10-18T09:57:36.852108178Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/absent_is_valid","Output":"=== RUN TestValidate_TenantEngine/absent_is_valid\n"} +{"Time":"2026-10-18T09:57:36.852679532Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/absent_is_valid","Output":"--- PASS: TestValidate_TenantEngine/absent_is_valid (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.852723915Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/absent_is_valid","Elapsed":0} +{"Time":"2026-10-18T09:57:36.852732752Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/http_url"} +{"Time":"2026-10-18T09:57:36.852738333Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/http_url","Output":"=== RUN TestValidate_TenantEngine/http_url\n"} +{"Time":"2026-10-18T09:57:36.85314328Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/http_url","Output":"--- PASS: TestValidate_TenantEngine/http_url (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.853214715Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/http_url","Elapsed":0} +{"Time":"2026-10-18T09:57:36.853237104Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/not_a_url"} +{"Time":"2026-10-18T09:57:36.853241974Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/not_a_url","Output":"=== RUN TestValidate_TenantEngine/not_a_url\n"} +{"Time":"2026-10-18T09:57:36.853626298Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/not_a_url","Output":"--- PASS: TestValidate_TenantEngine/not_a_url (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.85364206Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/not_a_url","Elapsed":0} +{"Time":"2026-10-18T09:57:36.853727201Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/https_url_and_timeout"} +{"Time":"2026-10-18T09:57:36.853739491Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/https_url_and_timeout","Output":"=== RUN TestValidate_TenantEngine/https_url_and_timeout\n"} +{"Time":"2026-10-18T09:57:36.854118595Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/https_url_and_timeout","Output":"--- PASS: TestValidate_TenantEngine/https_url_and_timeout (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.854131688Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/https_url_and_timeout","Elapsed":0} +{"Time":"2026-10-18T09:57:36.854237244Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/wrong_scheme"} +{"Time":"2026-10-18T09:57:36.854251437Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/wrong_scheme","Output":"=== RUN TestValidate_TenantEngine/wrong_scheme\n"} +{"Time":"2026-10-18T09:57:36.85465192Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/wrong_scheme","Output":"--- PASS: TestValidate_TenantEngine/wrong_scheme (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.854680117Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/wrong_scheme","Elapsed":0} +{"Time":"2026-10-18T09:57:36.854720938Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/unparseable_timeout"} +{"Time":"2026-10-18T09:57:36.854730235Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/unparseable_timeout","Output":"=== RUN TestValidate_TenantEngine/unparseable_timeout\n"} +{"Time":"2026-10-18T09:57:36.855242942Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/unparseable_timeout","Output":"--- PASS: TestValidate_TenantEngine/unparseable_timeout (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.855278398Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/unparseable_timeout","Elapsed":0} +{"Time":"2026-10-18T09:57:36.855289904Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/zero_timeout"} +{"Time":"2026-10-18T09:57:36.855294674Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/zero_timeout","Output":"=== RUN TestValidate_TenantEngine/zero_timeout\n"} +{"Time":"2026-10-18T09:57:36.855681334Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/zero_timeout","Output":"--- PASS: TestValidate_TenantEngine/zero_timeout (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.855698854Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/zero_timeout","Elapsed":0} +{"Time":"2026-10-18T09:57:36.855778711Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/timeout_far_too_long"} +{"Time":"2026-10-18T09:57:36.855789144Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/timeout_far_too_long","Output":"=== RUN TestValidate_TenantEngine/timeout_far_too_long\n"} +{"Time":"2026-10-18T09:57:36.856180853Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/timeout_far_too_long","Output":"--- PASS: TestValidate_TenantEngine/timeout_far_too_long (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.85619547Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/timeout_far_too_long","Elapsed":0} +{"Time":"2026-10-18T09:57:36.856286049Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/timeout_without_url"} +{"Time":"2026-10-18T09:57:36.856296094Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/timeout_without_url","Output":"=== RUN TestValidate_TenantEngine/timeout_without_url\n"} +{"Time":"2026-10-18T09:57:36.85672692Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/timeout_without_url","Output":"--- PASS: TestValidate_TenantEngine/timeout_without_url (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.856753413Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine/timeout_without_url","Elapsed":0} +{"Time":"2026-10-18T09:57:36.856847318Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine","Output":"--- PASS: TestValidate_TenantEngine (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.856944876Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_TenantEngine","Elapsed":0} +{"Time":"2026-10-18T09:57:36.857055887Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients"} +{"Time":"2026-10-18T09:57:36.857066546Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients","Output":"=== RUN TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients\n"} +{"Time":"2026-10-18T09:57:36.857274258Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/serviceSubject"} +{"Time":"2026-10-18T09:57:36.857302464Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/serviceSubject","Output":"=== RUN TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/serviceSubject\n"} +{"Time":"2026-10-18T09:57:36.85780962Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/serviceSubject","Output":"--- PASS: TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/serviceSubject (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.857862704Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/serviceSubject","Elapsed":0} +{"Time":"2026-10-18T09:57:36.858034753Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/roles"} +{"Time":"2026-10-18T09:57:36.85805268Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/roles","Output":"=== RUN TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/roles\n"} +{"Time":"2026-10-18T09:57:36.858801667Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/roles","Output":"--- PASS: TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/roles (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.858848935Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/roles","Elapsed":0} +{"Time":"2026-10-18T09:57:36.85886798Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/implicit_authorization_code_client"} +{"Time":"2026-10-18T09:57:36.858875094Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/implicit_authorization_code_client","Output":"=== RUN TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/implicit_authorization_code_client\n"} +{"Time":"2026-10-18T09:57:36.859672241Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/implicit_authorization_code_client","Output":"--- PASS: TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/implicit_authorization_code_client (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.859743224Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/implicit_authorization_code_client","Elapsed":0} +{"Time":"2026-10-18T09:57:36.85975666Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/tenant_is_allowed_on_a_browser_client"} +{"Time":"2026-10-18T09:57:36.859760267Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/tenant_is_allowed_on_a_browser_client","Output":"=== RUN TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/tenant_is_allowed_on_a_browser_client\n"} +{"Time":"2026-10-18T09:57:36.860340419Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/tenant_is_allowed_on_a_browser_client","Output":"--- PASS: TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/tenant_is_allowed_on_a_browser_client (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.860571152Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/tenant_is_allowed_on_a_browser_client","Elapsed":0} +{"Time":"2026-10-18T09:57:36.86058567Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/service_clients_unaffected"} +{"Time":"2026-10-18T09:57:36.860589818Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/service_clients_unaffected","Output":"=== RUN TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/service_clients_unaffected\n"} +{"Time":"2026-10-18T09:57:36.861116966Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/service_clients_unaffected","Output":"--- PASS: TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/service_clients_unaffected (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.861141313Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients/service_clients_unaffected","Elapsed":0} +{"Time":"2026-10-18T09:57:36.861232495Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients","Output":"--- PASS: TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.861318457Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_ServiceIdentityFieldsRejectedOnBrowserClients","Elapsed":0} +{"Time":"2026-10-18T09:57:36.861339855Z","Action":"run","Package":"keycape/internal/config","Test":"TestValidate_DuplicateClientID"} +{"Time":"2026-10-18T09:57:36.861345175Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_DuplicateClientID","Output":"=== RUN TestValidate_DuplicateClientID\n"} +{"Time":"2026-10-18T09:57:36.861809482Z","Action":"output","Package":"keycape/internal/config","Test":"TestValidate_DuplicateClientID","Output":"--- PASS: TestValidate_DuplicateClientID (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.861824225Z","Action":"pass","Package":"keycape/internal/config","Test":"TestValidate_DuplicateClientID","Elapsed":0} +{"Time":"2026-10-18T09:57:36.861903045Z","Action":"run","Package":"keycape/internal/config","Test":"TestOptionalMFALoadAndRegistration"} +{"Time":"2026-10-18T09:57:36.861913Z","Action":"output","Package":"keycape/internal/config","Test":"TestOptionalMFALoadAndRegistration","Output":"=== RUN TestOptionalMFALoadAndRegistration\n"} +{"Time":"2026-10-18T09:57:36.862710278Z","Action":"output","Package":"keycape/internal/config","Test":"TestOptionalMFALoadAndRegistration","Output":"--- PASS: TestOptionalMFALoadAndRegistration (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.862740486Z","Action":"pass","Package":"keycape/internal/config","Test":"TestOptionalMFALoadAndRegistration","Elapsed":0} +{"Time":"2026-10-18T09:57:36.862747727Z","Action":"run","Package":"keycape/internal/config","Test":"TestOptionalMFAValidation"} +{"Time":"2026-10-18T09:57:36.862752569Z","Action":"output","Package":"keycape/internal/config","Test":"TestOptionalMFAValidation","Output":"=== RUN TestOptionalMFAValidation\n"} +{"Time":"2026-10-18T09:57:36.863662036Z","Action":"output","Package":"keycape/internal/config","Test":"TestOptionalMFAValidation","Output":"--- PASS: TestOptionalMFAValidation (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.863725581Z","Action":"pass","Package":"keycape/internal/config","Test":"TestOptionalMFAValidation","Elapsed":0} +{"Time":"2026-10-18T09:57:36.863736699Z","Action":"run","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS"} +{"Time":"2026-10-18T09:57:36.863741199Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS","Output":"=== RUN TestTokenStatusConfigIsExplicitBoundedAndHTTPS\n"} +{"Time":"2026-10-18T09:57:36.863940012Z","Action":"run","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/legacy"} +{"Time":"2026-10-18T09:57:36.863963818Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/legacy","Output":"=== RUN TestTokenStatusConfigIsExplicitBoundedAndHTTPS/legacy\n"} +{"Time":"2026-10-18T09:57:36.864078417Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/legacy","Output":"--- PASS: TestTokenStatusConfigIsExplicitBoundedAndHTTPS/legacy (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.864135081Z","Action":"pass","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/legacy","Elapsed":0} +{"Time":"2026-10-18T09:57:36.864164216Z","Action":"run","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-default"} +{"Time":"2026-10-18T09:57:36.864170817Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-default","Output":"=== RUN TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-default\n"} +{"Time":"2026-10-18T09:57:36.864430055Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-default","Output":"--- PASS: TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-default (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.864470046Z","Action":"pass","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-default","Elapsed":0} +{"Time":"2026-10-18T09:57:36.864485899Z","Action":"run","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-bounded"} +{"Time":"2026-10-18T09:57:36.864492734Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-bounded","Output":"=== RUN TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-bounded\n"} +{"Time":"2026-10-18T09:57:36.864642943Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-bounded","Output":"--- PASS: TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-bounded (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.864661735Z","Action":"pass","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/enabled-bounded","Elapsed":0} +{"Time":"2026-10-18T09:57:36.864679535Z","Action":"run","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/http"} +{"Time":"2026-10-18T09:57:36.864689418Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/http","Output":"=== RUN TestTokenStatusConfigIsExplicitBoundedAndHTTPS/http\n"} +{"Time":"2026-10-18T09:57:36.864904624Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/http","Output":"--- PASS: TestTokenStatusConfigIsExplicitBoundedAndHTTPS/http (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.864927663Z","Action":"pass","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/http","Elapsed":0} +{"Time":"2026-10-18T09:57:36.864943091Z","Action":"run","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/userinfo-url"} +{"Time":"2026-10-18T09:57:36.864948033Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/userinfo-url","Output":"=== RUN TestTokenStatusConfigIsExplicitBoundedAndHTTPS/userinfo-url\n"} +{"Time":"2026-10-18T09:57:36.865199497Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/userinfo-url","Output":"--- PASS: TestTokenStatusConfigIsExplicitBoundedAndHTTPS/userinfo-url (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.865232292Z","Action":"pass","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/userinfo-url","Elapsed":0} +{"Time":"2026-10-18T09:57:36.865249389Z","Action":"run","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/query"} +{"Time":"2026-10-18T09:57:36.865255999Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/query","Output":"=== RUN TestTokenStatusConfigIsExplicitBoundedAndHTTPS/query\n"} +{"Time":"2026-10-18T09:57:36.865482646Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/query","Output":"--- PASS: TestTokenStatusConfigIsExplicitBoundedAndHTTPS/query (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.865520843Z","Action":"pass","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/query","Elapsed":0} +{"Time":"2026-10-18T09:57:36.865526966Z","Action":"run","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/too-large"} +{"Time":"2026-10-18T09:57:36.865536569Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/too-large","Output":"=== RUN TestTokenStatusConfigIsExplicitBoundedAndHTTPS/too-large\n"} +{"Time":"2026-10-18T09:57:36.865726125Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/too-large","Output":"--- PASS: TestTokenStatusConfigIsExplicitBoundedAndHTTPS/too-large (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.86574039Z","Action":"pass","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/too-large","Elapsed":0} +{"Time":"2026-10-18T09:57:36.865845188Z","Action":"run","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/negative"} +{"Time":"2026-10-18T09:57:36.865858191Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/negative","Output":"=== RUN TestTokenStatusConfigIsExplicitBoundedAndHTTPS/negative\n"} +{"Time":"2026-10-18T09:57:36.866038626Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/negative","Output":"--- PASS: TestTokenStatusConfigIsExplicitBoundedAndHTTPS/negative (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.866049799Z","Action":"pass","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/negative","Elapsed":0} +{"Time":"2026-10-18T09:57:36.866118546Z","Action":"run","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/disabled-capacity"} +{"Time":"2026-10-18T09:57:36.866126752Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/disabled-capacity","Output":"=== RUN TestTokenStatusConfigIsExplicitBoundedAndHTTPS/disabled-capacity\n"} +{"Time":"2026-10-18T09:57:36.866307845Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/disabled-capacity","Output":"--- PASS: TestTokenStatusConfigIsExplicitBoundedAndHTTPS/disabled-capacity (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.866329793Z","Action":"pass","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS/disabled-capacity","Elapsed":0} +{"Time":"2026-10-18T09:57:36.866368604Z","Action":"output","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS","Output":"--- PASS: TestTokenStatusConfigIsExplicitBoundedAndHTTPS (0.00s)\n"} +{"Time":"2026-10-18T09:57:36.866501734Z","Action":"pass","Package":"keycape/internal/config","Test":"TestTokenStatusConfigIsExplicitBoundedAndHTTPS","Elapsed":0} +{"Time":"2026-10-18T09:57:36.866513853Z","Action":"output","Package":"keycape/internal/config","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:36.981245531Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestServiceExchangeAndClaimValidation","Output":"--- PASS: TestServiceExchangeAndClaimValidation (0.19s)\n"} +{"Time":"2026-10-18T09:57:36.981308688Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestServiceExchangeAndClaimValidation","Elapsed":0.19} +{"Time":"2026-10-18T09:57:36.981320113Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestBrowserLoginPKCEAndState"} +{"Time":"2026-10-18T09:57:36.98132501Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestBrowserLoginPKCEAndState","Output":"=== RUN TestBrowserLoginPKCEAndState\n"} +{"Time":"2026-10-18T09:57:37.005845121Z","Action":"output","Package":"keycape/internal/adapters/tenantengine","Output":"ok \tkeycape/internal/adapters/tenantengine\t1.135s\n"} +{"Time":"2026-10-18T09:57:37.005921335Z","Action":"pass","Package":"keycape/internal/adapters/tenantengine","Elapsed":1.135} +{"Time":"2026-10-18T09:57:37.009375158Z","Action":"start","Package":"keycape/internal/domain"} +{"Time":"2026-10-18T09:57:37.029608108Z","Action":"run","Package":"keycape/internal/domain","Test":"TestDecideAssurance_ClientOverrideIsPerClient"} +{"Time":"2026-10-18T09:57:37.02965993Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_ClientOverrideIsPerClient","Output":"=== RUN TestDecideAssurance_ClientOverrideIsPerClient\n"} +{"Time":"2026-10-18T09:57:37.029778885Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_ClientOverrideIsPerClient","Output":"--- PASS: TestDecideAssurance_ClientOverrideIsPerClient (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.029790626Z","Action":"pass","Package":"keycape/internal/domain","Test":"TestDecideAssurance_ClientOverrideIsPerClient","Elapsed":0} +{"Time":"2026-10-18T09:57:37.029797732Z","Action":"run","Package":"keycape/internal/domain","Test":"TestDecideAssurance_ACRRaisesClientAAL1"} +{"Time":"2026-10-18T09:57:37.029802835Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_ACRRaisesClientAAL1","Output":"=== RUN TestDecideAssurance_ACRRaisesClientAAL1\n"} +{"Time":"2026-10-18T09:57:37.030007004Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_ACRRaisesClientAAL1","Output":"--- PASS: TestDecideAssurance_ACRRaisesClientAAL1 (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.030029466Z","Action":"pass","Package":"keycape/internal/domain","Test":"TestDecideAssurance_ACRRaisesClientAAL1","Elapsed":0} +{"Time":"2026-10-18T09:57:37.030042712Z","Action":"run","Package":"keycape/internal/domain","Test":"TestDecideAssurance_AAL1SessionCannotSatisfyAAL2"} +{"Time":"2026-10-18T09:57:37.030047744Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_AAL1SessionCannotSatisfyAAL2","Output":"=== RUN TestDecideAssurance_AAL1SessionCannotSatisfyAAL2\n"} +{"Time":"2026-10-18T09:57:37.030287332Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_AAL1SessionCannotSatisfyAAL2","Output":"--- PASS: TestDecideAssurance_AAL1SessionCannotSatisfyAAL2 (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.030308162Z","Action":"pass","Package":"keycape/internal/domain","Test":"TestDecideAssurance_AAL1SessionCannotSatisfyAAL2","Elapsed":0} +{"Time":"2026-10-18T09:57:37.030324474Z","Action":"run","Package":"keycape/internal/domain","Test":"TestDecideAssurance_AAL2SessionSatisfiesHighAssurance"} +{"Time":"2026-10-18T09:57:37.030330065Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_AAL2SessionSatisfiesHighAssurance","Output":"=== RUN TestDecideAssurance_AAL2SessionSatisfiesHighAssurance\n"} +{"Time":"2026-10-18T09:57:37.030531321Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_AAL2SessionSatisfiesHighAssurance","Output":"--- PASS: TestDecideAssurance_AAL2SessionSatisfiesHighAssurance (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.030553494Z","Action":"pass","Package":"keycape/internal/domain","Test":"TestDecideAssurance_AAL2SessionSatisfiesHighAssurance","Elapsed":0} +{"Time":"2026-10-18T09:57:37.03065345Z","Action":"run","Package":"keycape/internal/domain","Test":"TestDecideAssurance_MaxAgeInvalidatesSession"} +{"Time":"2026-10-18T09:57:37.030695967Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_MaxAgeInvalidatesSession","Output":"=== RUN TestDecideAssurance_MaxAgeInvalidatesSession\n"} +{"Time":"2026-10-18T09:57:37.030859386Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_MaxAgeInvalidatesSession","Output":"--- PASS: TestDecideAssurance_MaxAgeInvalidatesSession (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.030876113Z","Action":"pass","Package":"keycape/internal/domain","Test":"TestDecideAssurance_MaxAgeInvalidatesSession","Elapsed":0} +{"Time":"2026-10-18T09:57:37.03105382Z","Action":"run","Package":"keycape/internal/domain","Test":"TestDecideAssurance_PromptLoginIgnoresSession"} +{"Time":"2026-10-18T09:57:37.031101476Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_PromptLoginIgnoresSession","Output":"=== RUN TestDecideAssurance_PromptLoginIgnoresSession\n"} +{"Time":"2026-10-18T09:57:37.031227078Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_PromptLoginIgnoresSession","Output":"--- PASS: TestDecideAssurance_PromptLoginIgnoresSession (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.03123816Z","Action":"pass","Package":"keycape/internal/domain","Test":"TestDecideAssurance_PromptLoginIgnoresSession","Elapsed":0} +{"Time":"2026-10-18T09:57:37.031253985Z","Action":"run","Package":"keycape/internal/domain","Test":"TestDecideAssurance_SessionUserMismatchIgnored"} +{"Time":"2026-10-18T09:57:37.031259765Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_SessionUserMismatchIgnored","Output":"=== RUN TestDecideAssurance_SessionUserMismatchIgnored\n"} +{"Time":"2026-10-18T09:57:37.031460191Z","Action":"output","Package":"keycape/internal/domain","Test":"TestDecideAssurance_SessionUserMismatchIgnored","Output":"--- PASS: TestDecideAssurance_SessionUserMismatchIgnored (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.03148736Z","Action":"pass","Package":"keycape/internal/domain","Test":"TestDecideAssurance_SessionUserMismatchIgnored","Elapsed":0} +{"Time":"2026-10-18T09:57:37.031498045Z","Action":"run","Package":"keycape/internal/domain","Test":"TestACRRequiresAAL2"} +{"Time":"2026-10-18T09:57:37.031504358Z","Action":"output","Package":"keycape/internal/domain","Test":"TestACRRequiresAAL2","Output":"=== RUN TestACRRequiresAAL2\n"} +{"Time":"2026-10-18T09:57:37.031725533Z","Action":"output","Package":"keycape/internal/domain","Test":"TestACRRequiresAAL2","Output":"--- PASS: TestACRRequiresAAL2 (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.031745903Z","Action":"pass","Package":"keycape/internal/domain","Test":"TestACRRequiresAAL2","Elapsed":0} +{"Time":"2026-10-18T09:57:37.031762125Z","Action":"run","Package":"keycape/internal/domain","Test":"TestCanonicalModelMatchesRuntimeClient"} +{"Time":"2026-10-18T09:57:37.031767806Z","Action":"output","Package":"keycape/internal/domain","Test":"TestCanonicalModelMatchesRuntimeClient","Output":"=== RUN TestCanonicalModelMatchesRuntimeClient\n"} +{"Time":"2026-10-18T09:57:37.045100324Z","Action":"output","Package":"keycape/internal/domain","Test":"TestCanonicalModelMatchesRuntimeClient","Output":"--- PASS: TestCanonicalModelMatchesRuntimeClient (0.01s)\n"} +{"Time":"2026-10-18T09:57:37.045168728Z","Action":"pass","Package":"keycape/internal/domain","Test":"TestCanonicalModelMatchesRuntimeClient","Elapsed":0.01} +{"Time":"2026-10-18T09:57:37.045186943Z","Action":"run","Package":"keycape/internal/domain","Test":"TestCanonicalModelMatchesRuntimeDirectoryEntities"} +{"Time":"2026-10-18T09:57:37.045199522Z","Action":"output","Package":"keycape/internal/domain","Test":"TestCanonicalModelMatchesRuntimeDirectoryEntities","Output":"=== RUN TestCanonicalModelMatchesRuntimeDirectoryEntities\n"} +{"Time":"2026-10-18T09:57:37.056067365Z","Action":"output","Package":"keycape/internal/domain","Test":"TestCanonicalModelMatchesRuntimeDirectoryEntities","Output":"--- PASS: TestCanonicalModelMatchesRuntimeDirectoryEntities (0.01s)\n"} +{"Time":"2026-10-18T09:57:37.056277002Z","Action":"pass","Package":"keycape/internal/domain","Test":"TestCanonicalModelMatchesRuntimeDirectoryEntities","Elapsed":0.01} +{"Time":"2026-10-18T09:57:37.056603925Z","Action":"output","Package":"keycape/internal/domain","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:37.175455457Z","Action":"start","Package":"keycape/internal/errors"} +{"Time":"2026-10-18T09:57:37.194753121Z","Action":"run","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants"} +{"Time":"2026-10-18T09:57:37.194815665Z","Action":"output","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants","Output":"=== RUN TestErrorTypeConstants\n"} +{"Time":"2026-10-18T09:57:37.194900355Z","Action":"run","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/FeatureNotSupported"} +{"Time":"2026-10-18T09:57:37.194963502Z","Action":"output","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/FeatureNotSupported","Output":"=== RUN TestErrorTypeConstants/FeatureNotSupported\n"} +{"Time":"2026-10-18T09:57:37.195239412Z","Action":"output","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/FeatureNotSupported","Output":"--- PASS: TestErrorTypeConstants/FeatureNotSupported (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.195257672Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/FeatureNotSupported","Elapsed":0} +{"Time":"2026-10-18T09:57:37.195306582Z","Action":"run","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/KeycloakModeOnly"} +{"Time":"2026-10-18T09:57:37.195317348Z","Action":"output","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/KeycloakModeOnly","Output":"=== RUN TestErrorTypeConstants/KeycloakModeOnly\n"} +{"Time":"2026-10-18T09:57:37.195554213Z","Action":"output","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/KeycloakModeOnly","Output":"--- PASS: TestErrorTypeConstants/KeycloakModeOnly (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.195573619Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/KeycloakModeOnly","Elapsed":0} +{"Time":"2026-10-18T09:57:37.195583646Z","Action":"run","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/RejectedForSafety"} +{"Time":"2026-10-18T09:57:37.1955892Z","Action":"output","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/RejectedForSafety","Output":"=== RUN TestErrorTypeConstants/RejectedForSafety\n"} +{"Time":"2026-10-18T09:57:37.195774404Z","Action":"output","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/RejectedForSafety","Output":"--- PASS: TestErrorTypeConstants/RejectedForSafety (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.195795108Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/RejectedForSafety","Elapsed":0} +{"Time":"2026-10-18T09:57:37.195914877Z","Action":"run","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/InvalidProfileUsage"} +{"Time":"2026-10-18T09:57:37.19592962Z","Action":"output","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/InvalidProfileUsage","Output":"=== RUN TestErrorTypeConstants/InvalidProfileUsage\n"} +{"Time":"2026-10-18T09:57:37.196164997Z","Action":"output","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/InvalidProfileUsage","Output":"--- PASS: TestErrorTypeConstants/InvalidProfileUsage (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.196179317Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants/InvalidProfileUsage","Elapsed":0} +{"Time":"2026-10-18T09:57:37.196269318Z","Action":"output","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants","Output":"--- PASS: TestErrorTypeConstants (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.196288209Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestErrorTypeConstants","Elapsed":0} +{"Time":"2026-10-18T09:57:37.196361736Z","Action":"run","Package":"keycape/internal/errors","Test":"TestConstructorHelpers"} +{"Time":"2026-10-18T09:57:37.196371555Z","Action":"output","Package":"keycape/internal/errors","Test":"TestConstructorHelpers","Output":"=== RUN TestConstructorHelpers\n"} +{"Time":"2026-10-18T09:57:37.196507445Z","Action":"run","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/FeatureNotSupported"} +{"Time":"2026-10-18T09:57:37.196518645Z","Action":"output","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/FeatureNotSupported","Output":"=== RUN TestConstructorHelpers/FeatureNotSupported\n"} +{"Time":"2026-10-18T09:57:37.196702543Z","Action":"output","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/FeatureNotSupported","Output":"--- PASS: TestConstructorHelpers/FeatureNotSupported (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.196731587Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/FeatureNotSupported","Elapsed":0} +{"Time":"2026-10-18T09:57:37.196741416Z","Action":"run","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/KeycloakModeOnly"} +{"Time":"2026-10-18T09:57:37.196745519Z","Action":"output","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/KeycloakModeOnly","Output":"=== RUN TestConstructorHelpers/KeycloakModeOnly\n"} +{"Time":"2026-10-18T09:57:37.196905061Z","Action":"output","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/KeycloakModeOnly","Output":"--- PASS: TestConstructorHelpers/KeycloakModeOnly (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.196916693Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/KeycloakModeOnly","Elapsed":0} +{"Time":"2026-10-18T09:57:37.196935747Z","Action":"run","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/RejectedForSafety"} +{"Time":"2026-10-18T09:57:37.196944845Z","Action":"output","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/RejectedForSafety","Output":"=== RUN TestConstructorHelpers/RejectedForSafety\n"} +{"Time":"2026-10-18T09:57:37.197107841Z","Action":"output","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/RejectedForSafety","Output":"--- PASS: TestConstructorHelpers/RejectedForSafety (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.197119608Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/RejectedForSafety","Elapsed":0} +{"Time":"2026-10-18T09:57:37.197126308Z","Action":"run","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/InvalidProfileUsage"} +{"Time":"2026-10-18T09:57:37.197130357Z","Action":"output","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/InvalidProfileUsage","Output":"=== RUN TestConstructorHelpers/InvalidProfileUsage\n"} +{"Time":"2026-10-18T09:57:37.197364445Z","Action":"output","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/InvalidProfileUsage","Output":"--- PASS: TestConstructorHelpers/InvalidProfileUsage (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.197376654Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestConstructorHelpers/InvalidProfileUsage","Elapsed":0} +{"Time":"2026-10-18T09:57:37.197450063Z","Action":"output","Package":"keycape/internal/errors","Test":"TestConstructorHelpers","Output":"--- PASS: TestConstructorHelpers (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.197534411Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestConstructorHelpers","Elapsed":0} +{"Time":"2026-10-18T09:57:37.197545782Z","Action":"run","Package":"keycape/internal/errors","Test":"TestProfileErrorJSON"} +{"Time":"2026-10-18T09:57:37.197550002Z","Action":"output","Package":"keycape/internal/errors","Test":"TestProfileErrorJSON","Output":"=== RUN TestProfileErrorJSON\n"} +{"Time":"2026-10-18T09:57:37.198017312Z","Action":"output","Package":"keycape/internal/errors","Test":"TestProfileErrorJSON","Output":"--- PASS: TestProfileErrorJSON (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.19803228Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestProfileErrorJSON","Elapsed":0} +{"Time":"2026-10-18T09:57:37.198083976Z","Action":"run","Package":"keycape/internal/errors","Test":"TestProfileErrorOmitsFeatureWhenEmpty"} +{"Time":"2026-10-18T09:57:37.19809623Z","Action":"output","Package":"keycape/internal/errors","Test":"TestProfileErrorOmitsFeatureWhenEmpty","Output":"=== RUN TestProfileErrorOmitsFeatureWhenEmpty\n"} +{"Time":"2026-10-18T09:57:37.198244384Z","Action":"output","Package":"keycape/internal/errors","Test":"TestProfileErrorOmitsFeatureWhenEmpty","Output":"--- PASS: TestProfileErrorOmitsFeatureWhenEmpty (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.198255944Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestProfileErrorOmitsFeatureWhenEmpty","Elapsed":0} +{"Time":"2026-10-18T09:57:37.19826277Z","Action":"run","Package":"keycape/internal/errors","Test":"TestProfileErrorWrite"} +{"Time":"2026-10-18T09:57:37.198279145Z","Action":"output","Package":"keycape/internal/errors","Test":"TestProfileErrorWrite","Output":"=== RUN TestProfileErrorWrite\n"} +{"Time":"2026-10-18T09:57:37.19857896Z","Action":"output","Package":"keycape/internal/errors","Test":"TestProfileErrorWrite","Output":"--- PASS: TestProfileErrorWrite (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.198597274Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestProfileErrorWrite","Elapsed":0} +{"Time":"2026-10-18T09:57:37.198651955Z","Action":"run","Package":"keycape/internal/errors","Test":"TestProfileErrorGoError"} +{"Time":"2026-10-18T09:57:37.19866154Z","Action":"output","Package":"keycape/internal/errors","Test":"TestProfileErrorGoError","Output":"=== RUN TestProfileErrorGoError\n"} +{"Time":"2026-10-18T09:57:37.198798494Z","Action":"output","Package":"keycape/internal/errors","Test":"TestProfileErrorGoError","Output":"--- PASS: TestProfileErrorGoError (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.198809973Z","Action":"pass","Package":"keycape/internal/errors","Test":"TestProfileErrorGoError","Elapsed":0} +{"Time":"2026-10-18T09:57:37.198817845Z","Action":"output","Package":"keycape/internal/errors","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:37.261314572Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestBrowserLoginPKCEAndState","Output":"--- PASS: TestBrowserLoginPKCEAndState (0.28s)\n"} +{"Time":"2026-10-18T09:57:37.261368306Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestBrowserLoginPKCEAndState","Elapsed":0.28} +{"Time":"2026-10-18T09:57:37.261378928Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestLoginRejectsUnsafeCallbacks"} +{"Time":"2026-10-18T09:57:37.261385619Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestLoginRejectsUnsafeCallbacks","Output":"=== RUN TestLoginRejectsUnsafeCallbacks\n"} +{"Time":"2026-10-18T09:57:37.492649577Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestLoginRejectsUnsafeCallbacks","Output":"--- PASS: TestLoginRejectsUnsafeCallbacks (0.23s)\n"} +{"Time":"2026-10-18T09:57:37.492698603Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestLoginRejectsUnsafeCallbacks","Elapsed":0.23} +{"Time":"2026-10-18T09:57:37.492709442Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOutputProtection"} +{"Time":"2026-10-18T09:57:37.492715123Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOutputProtection","Output":"=== RUN TestOutputProtection\n"} +{"Time":"2026-10-18T09:57:37.493338386Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOutputProtection","Output":"--- PASS: TestOutputProtection (0.00s)\n"} +{"Time":"2026-10-18T09:57:37.493364383Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOutputProtection","Elapsed":0} +{"Time":"2026-10-18T09:57:37.493389649Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestDiscoveryAndRedirectBoundaries"} +{"Time":"2026-10-18T09:57:37.493395348Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestDiscoveryAndRedirectBoundaries","Output":"=== RUN TestDiscoveryAndRedirectBoundaries\n"} +{"Time":"2026-10-18T09:57:37.508063003Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestDiscoveryAndRedirectBoundaries","Output":"--- PASS: TestDiscoveryAndRedirectBoundaries (0.01s)\n"} +{"Time":"2026-10-18T09:57:37.508130371Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestDiscoveryAndRedirectBoundaries","Elapsed":0.01} +{"Time":"2026-10-18T09:57:37.508146061Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestNonceMismatchAndCancelledLogin"} +{"Time":"2026-10-18T09:57:37.508154483Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestNonceMismatchAndCancelledLogin","Output":"=== RUN TestNonceMismatchAndCancelledLogin\n"} +{"Time":"2026-10-18T09:57:37.554854833Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestNonceMismatchAndCancelledLogin","Output":"--- PASS: TestNonceMismatchAndCancelledLogin (0.05s)\n"} +{"Time":"2026-10-18T09:57:37.554944978Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestNonceMismatchAndCancelledLogin","Elapsed":0.05} +{"Time":"2026-10-18T09:57:37.554979289Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyRejectsForeignSignatureAndUnusableKeySet"} +{"Time":"2026-10-18T09:57:37.554987531Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyRejectsForeignSignatureAndUnusableKeySet","Output":"=== RUN TestVerifyRejectsForeignSignatureAndUnusableKeySet\n"} +{"Time":"2026-10-18T09:57:37.839546867Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyRejectsForeignSignatureAndUnusableKeySet","Output":"--- PASS: TestVerifyRejectsForeignSignatureAndUnusableKeySet (0.28s)\n"} +{"Time":"2026-10-18T09:57:37.83962171Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyRejectsForeignSignatureAndUnusableKeySet","Elapsed":0.28} +{"Time":"2026-10-18T09:57:37.839632747Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIUsesActualProducerAndPrivateObservation"} +{"Time":"2026-10-18T09:57:37.839636751Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIUsesActualProducerAndPrivateObservation","Output":"=== RUN TestOnlineCLIUsesActualProducerAndPrivateObservation\n"} +{"Time":"2026-10-18T09:57:37.870435565Z","Action":"output","Package":"keycape/internal/config","Output":"ok \tkeycape/internal/config\t1.068s\n"} +{"Time":"2026-10-18T09:57:37.870489578Z","Action":"pass","Package":"keycape/internal/config","Elapsed":1.068} +{"Time":"2026-10-18T09:57:38.061373546Z","Action":"output","Package":"keycape/internal/domain","Output":"ok \tkeycape/internal/domain\t1.052s\n"} +{"Time":"2026-10-18T09:57:38.061435549Z","Action":"pass","Package":"keycape/internal/domain","Elapsed":1.052} +{"Time":"2026-10-18T09:57:38.143138217Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIUsesActualProducerAndPrivateObservation","Output":"--- PASS: TestOnlineCLIUsesActualProducerAndPrivateObservation (0.30s)\n"} +{"Time":"2026-10-18T09:57:38.143186612Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIUsesActualProducerAndPrivateObservation","Elapsed":0.3} +{"Time":"2026-10-18T09:57:38.143198713Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput"} +{"Time":"2026-10-18T09:57:38.143203655Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput\n"} +{"Time":"2026-10-18T09:57:38.143398049Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/wrong-hash"} +{"Time":"2026-10-18T09:57:38.143418518Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/wrong-hash","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput/wrong-hash\n"} +{"Time":"2026-10-18T09:57:38.191191948Z","Action":"start","Package":"keycape/internal/jose"} +{"Time":"2026-10-18T09:57:38.202624751Z","Action":"output","Package":"keycape/internal/errors","Output":"ok \tkeycape/internal/errors\t1.027s\n"} +{"Time":"2026-10-18T09:57:38.202684364Z","Action":"pass","Package":"keycape/internal/errors","Elapsed":1.027} +{"Time":"2026-10-18T09:57:38.223059179Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/wrong-hash","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput/wrong-hash (0.08s)\n"} +{"Time":"2026-10-18T09:57:38.223124491Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/wrong-hash","Elapsed":0.08} +{"Time":"2026-10-18T09:57:38.223150317Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-flag"} +{"Time":"2026-10-18T09:57:38.2231824Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-flag","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-flag\n"} +{"Time":"2026-10-18T09:57:38.2379939Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyAcceptsGenuineTokenAndReturnsClaims"} +{"Time":"2026-10-18T09:57:38.23810621Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyAcceptsGenuineTokenAndReturnsClaims","Output":"=== RUN TestVerifyAcceptsGenuineTokenAndReturnsClaims\n"} +{"Time":"2026-10-18T09:57:38.244313976Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyAcceptsGenuineTokenAndReturnsClaims","Output":"--- PASS: TestVerifyAcceptsGenuineTokenAndReturnsClaims (0.01s)\n"} +{"Time":"2026-10-18T09:57:38.244414284Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyAcceptsGenuineTokenAndReturnsClaims","Elapsed":0.01} +{"Time":"2026-10-18T09:57:38.244432409Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyRejections"} +{"Time":"2026-10-18T09:57:38.244484222Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections","Output":"=== RUN TestVerifyRejections\n"} +{"Time":"2026-10-18T09:57:38.266248386Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-flag","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-flag (0.04s)\n"} +{"Time":"2026-10-18T09:57:38.26630065Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-flag","Elapsed":0.04} +{"Time":"2026-10-18T09:57:38.266320831Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/token-replaced"} +{"Time":"2026-10-18T09:57:38.266328351Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/token-replaced","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput/token-replaced\n"} +{"Time":"2026-10-18T09:57:38.349010515Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/token-replaced","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput/token-replaced (0.08s)\n"} +{"Time":"2026-10-18T09:57:38.349065827Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/token-replaced","Elapsed":0.08} +{"Time":"2026-10-18T09:57:38.349079362Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-admission"} +{"Time":"2026-10-18T09:57:38.349085259Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-admission","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-admission\n"} +{"Time":"2026-10-18T09:57:38.459374897Z","Action":"start","Package":"keycape/internal/migration/lldapexport"} +{"Time":"2026-10-18T09:57:38.475562701Z","Action":"run","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_UsersAndGroups"} +{"Time":"2026-10-18T09:57:38.475621204Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_UsersAndGroups","Output":"=== RUN TestExporter_Export_UsersAndGroups\n"} +{"Time":"2026-10-18T09:57:38.477415471Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_UsersAndGroups","Output":"--- PASS: TestExporter_Export_UsersAndGroups (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.477468754Z","Action":"pass","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_UsersAndGroups","Elapsed":0} +{"Time":"2026-10-18T09:57:38.477489205Z","Action":"run","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_WritesYAMLFile"} +{"Time":"2026-10-18T09:57:38.477511045Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_WritesYAMLFile","Output":"=== RUN TestExporter_Export_WritesYAMLFile\n"} +{"Time":"2026-10-18T09:57:38.479085361Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_WritesYAMLFile","Output":"--- PASS: TestExporter_Export_WritesYAMLFile (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.479145911Z","Action":"pass","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_WritesYAMLFile","Elapsed":0} +{"Time":"2026-10-18T09:57:38.479158572Z","Action":"run","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_EmitsMigrationEvent"} +{"Time":"2026-10-18T09:57:38.479164081Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_EmitsMigrationEvent","Output":"=== RUN TestExporter_Export_EmitsMigrationEvent\n"} +{"Time":"2026-10-18T09:57:38.480630989Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_EmitsMigrationEvent","Output":"--- PASS: TestExporter_Export_EmitsMigrationEvent (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.480679195Z","Action":"pass","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_EmitsMigrationEvent","Elapsed":0} +{"Time":"2026-10-18T09:57:38.480693443Z","Action":"run","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IncompatibilityReport_BadUser"} +{"Time":"2026-10-18T09:57:38.480698141Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IncompatibilityReport_BadUser","Output":"=== RUN TestExporter_Export_IncompatibilityReport_BadUser\n"} +{"Time":"2026-10-18T09:57:38.482027076Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IncompatibilityReport_BadUser","Output":"--- PASS: TestExporter_Export_IncompatibilityReport_BadUser (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.482053226Z","Action":"pass","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IncompatibilityReport_BadUser","Elapsed":0} +{"Time":"2026-10-18T09:57:38.482062207Z","Action":"run","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_BuildsMemberships"} +{"Time":"2026-10-18T09:57:38.482067275Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_BuildsMemberships","Output":"=== RUN TestExporter_Export_BuildsMemberships\n"} +{"Time":"2026-10-18T09:57:38.483800306Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_BuildsMemberships","Output":"--- PASS: TestExporter_Export_BuildsMemberships (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.483862237Z","Action":"pass","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_BuildsMemberships","Elapsed":0} +{"Time":"2026-10-18T09:57:38.483884789Z","Action":"run","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_ProfileVersion"} +{"Time":"2026-10-18T09:57:38.483894284Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_ProfileVersion","Output":"=== RUN TestExporter_Export_ProfileVersion\n"} +{"Time":"2026-10-18T09:57:38.485154607Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_ProfileVersion","Output":"--- PASS: TestExporter_Export_ProfileVersion (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.485186907Z","Action":"pass","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_ProfileVersion","Elapsed":0} +{"Time":"2026-10-18T09:57:38.48519605Z","Action":"run","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IncludesGroupWithNoMembers"} +{"Time":"2026-10-18T09:57:38.485200478Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IncludesGroupWithNoMembers","Output":"=== RUN TestExporter_Export_IncludesGroupWithNoMembers\n"} +{"Time":"2026-10-18T09:57:38.486829248Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IncludesGroupWithNoMembers","Output":"--- PASS: TestExporter_Export_IncludesGroupWithNoMembers (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.486863712Z","Action":"pass","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IncludesGroupWithNoMembers","Elapsed":0} +{"Time":"2026-10-18T09:57:38.486873424Z","Action":"run","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_GroupEnumerationFailureIsFatal"} +{"Time":"2026-10-18T09:57:38.48687777Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_GroupEnumerationFailureIsFatal","Output":"=== RUN TestExporter_Export_GroupEnumerationFailureIsFatal\n"} +{"Time":"2026-10-18T09:57:38.487345026Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_GroupEnumerationFailureIsFatal","Output":"--- PASS: TestExporter_Export_GroupEnumerationFailureIsFatal (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.487415685Z","Action":"pass","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_GroupEnumerationFailureIsFatal","Elapsed":0} +{"Time":"2026-10-18T09:57:38.487428273Z","Action":"run","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_FallbackReportsIncompleteness"} +{"Time":"2026-10-18T09:57:38.487434053Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_FallbackReportsIncompleteness","Output":"=== RUN TestExporter_Export_FallbackReportsIncompleteness\n"} +{"Time":"2026-10-18T09:57:38.488711834Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_FallbackReportsIncompleteness","Output":"--- PASS: TestExporter_Export_FallbackReportsIncompleteness (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.488742727Z","Action":"pass","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_FallbackReportsIncompleteness","Elapsed":0} +{"Time":"2026-10-18T09:57:38.488751356Z","Action":"run","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IsDeterministic"} +{"Time":"2026-10-18T09:57:38.488755955Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IsDeterministic","Output":"=== RUN TestExporter_Export_IsDeterministic\n"} +{"Time":"2026-10-18T09:57:38.49032538Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-admission","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-admission (0.14s)\n"} +{"Time":"2026-10-18T09:57:38.490394804Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-admission","Elapsed":0.14} +{"Time":"2026-10-18T09:57:38.490436806Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-token"} +{"Time":"2026-10-18T09:57:38.49044641Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-token","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-token\n"} +{"Time":"2026-10-18T09:57:38.495565105Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IsDeterministic","Output":"--- PASS: TestExporter_Export_IsDeterministic (0.01s)\n"} +{"Time":"2026-10-18T09:57:38.49561167Z","Action":"pass","Package":"keycape/internal/migration/lldapexport","Test":"TestExporter_Export_IsDeterministic","Elapsed":0.01} +{"Time":"2026-10-18T09:57:38.495622184Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:38.507349107Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyRejections/critical_extension"} +{"Time":"2026-10-18T09:57:38.507417061Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/critical_extension","Output":"=== RUN TestVerifyRejections/critical_extension\n"} +{"Time":"2026-10-18T09:57:38.507434617Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/critical_extension","Output":"--- PASS: TestVerifyRejections/critical_extension (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.507610868Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyRejections/critical_extension","Elapsed":0} +{"Time":"2026-10-18T09:57:38.507635116Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyRejections/tampered_payload"} +{"Time":"2026-10-18T09:57:38.507645837Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/tampered_payload","Output":"=== RUN TestVerifyRejections/tampered_payload\n"} +{"Time":"2026-10-18T09:57:38.508178709Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/tampered_payload","Output":"--- PASS: TestVerifyRejections/tampered_payload (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.508235319Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyRejections/tampered_payload","Elapsed":0} +{"Time":"2026-10-18T09:57:38.508413942Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyRejections/payload_not_json"} +{"Time":"2026-10-18T09:57:38.508427585Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/payload_not_json","Output":"=== RUN TestVerifyRejections/payload_not_json\n"} +{"Time":"2026-10-18T09:57:38.509084699Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/payload_not_json","Output":"--- PASS: TestVerifyRejections/payload_not_json (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.509486452Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyRejections/payload_not_json","Elapsed":0} +{"Time":"2026-10-18T09:57:38.509612532Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyRejections/empty"} +{"Time":"2026-10-18T09:57:38.509622541Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/empty","Output":"=== RUN TestVerifyRejections/empty\n"} +{"Time":"2026-10-18T09:57:38.509995891Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/empty","Output":"--- PASS: TestVerifyRejections/empty (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.510075396Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyRejections/empty","Elapsed":0} +{"Time":"2026-10-18T09:57:38.510171015Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyRejections/alg_none"} +{"Time":"2026-10-18T09:57:38.51017913Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/alg_none","Output":"=== RUN TestVerifyRejections/alg_none\n"} +{"Time":"2026-10-18T09:57:38.510434075Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/alg_none","Output":"--- PASS: TestVerifyRejections/alg_none (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.510457664Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyRejections/alg_none","Elapsed":0} +{"Time":"2026-10-18T09:57:38.510473399Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyRejections/alg_HS256"} +{"Time":"2026-10-18T09:57:38.510477791Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/alg_HS256","Output":"=== RUN TestVerifyRejections/alg_HS256\n"} +{"Time":"2026-10-18T09:57:38.510774287Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/alg_HS256","Output":"--- PASS: TestVerifyRejections/alg_HS256 (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.5107994Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyRejections/alg_HS256","Elapsed":0} +{"Time":"2026-10-18T09:57:38.510906808Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyRejections/two_segments"} +{"Time":"2026-10-18T09:57:38.510986791Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/two_segments","Output":"=== RUN TestVerifyRejections/two_segments\n"} +{"Time":"2026-10-18T09:57:38.511175808Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/two_segments","Output":"--- PASS: TestVerifyRejections/two_segments (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.511196187Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyRejections/two_segments","Elapsed":0} +{"Time":"2026-10-18T09:57:38.511219352Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyRejections/wrong_signing_key"} +{"Time":"2026-10-18T09:57:38.511226206Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/wrong_signing_key","Output":"=== RUN TestVerifyRejections/wrong_signing_key\n"} +{"Time":"2026-10-18T09:57:38.511718726Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/wrong_signing_key","Output":"--- PASS: TestVerifyRejections/wrong_signing_key (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.511754281Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyRejections/wrong_signing_key","Elapsed":0} +{"Time":"2026-10-18T09:57:38.511770792Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyRejections/unknown_key_id"} +{"Time":"2026-10-18T09:57:38.511775752Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/unknown_key_id","Output":"=== RUN TestVerifyRejections/unknown_key_id\n"} +{"Time":"2026-10-18T09:57:38.512067153Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/unknown_key_id","Output":"--- PASS: TestVerifyRejections/unknown_key_id (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.512085251Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyRejections/unknown_key_id","Elapsed":0} +{"Time":"2026-10-18T09:57:38.51209985Z","Action":"run","Package":"keycape/internal/jose","Test":"TestVerifyRejections/missing_key_id"} +{"Time":"2026-10-18T09:57:38.512104187Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/missing_key_id","Output":"=== RUN TestVerifyRejections/missing_key_id\n"} +{"Time":"2026-10-18T09:57:38.512333324Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections/missing_key_id","Output":"--- PASS: TestVerifyRejections/missing_key_id (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.512347265Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyRejections/missing_key_id","Elapsed":0} +{"Time":"2026-10-18T09:57:38.512439385Z","Action":"output","Package":"keycape/internal/jose","Test":"TestVerifyRejections","Output":"--- PASS: TestVerifyRejections (0.27s)\n"} +{"Time":"2026-10-18T09:57:38.512627383Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestVerifyRejections","Elapsed":0.27} +{"Time":"2026-10-18T09:57:38.512650485Z","Action":"run","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets"} +{"Time":"2026-10-18T09:57:38.51265595Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets","Output":"=== RUN TestParseJWKSRejectsUnusableKeySets\n"} +{"Time":"2026-10-18T09:57:38.534466397Z","Action":"run","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/undersized_modulus"} +{"Time":"2026-10-18T09:57:38.534513214Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/undersized_modulus","Output":"=== RUN TestParseJWKSRejectsUnusableKeySets/undersized_modulus\n"} +{"Time":"2026-10-18T09:57:38.53494934Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/undersized_modulus","Output":"--- PASS: TestParseJWKSRejectsUnusableKeySets/undersized_modulus (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.534993849Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/undersized_modulus","Elapsed":0} +{"Time":"2026-10-18T09:57:38.535018962Z","Action":"run","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/empty_set"} +{"Time":"2026-10-18T09:57:38.535045455Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/empty_set","Output":"=== RUN TestParseJWKSRejectsUnusableKeySets/empty_set\n"} +{"Time":"2026-10-18T09:57:38.53527115Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/empty_set","Output":"--- PASS: TestParseJWKSRejectsUnusableKeySets/empty_set (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.535294928Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/empty_set","Elapsed":0} +{"Time":"2026-10-18T09:57:38.535329978Z","Action":"run","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/no_rsa_signing_key"} +{"Time":"2026-10-18T09:57:38.535337995Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/no_rsa_signing_key","Output":"=== RUN TestParseJWKSRejectsUnusableKeySets/no_rsa_signing_key\n"} +{"Time":"2026-10-18T09:57:38.535559514Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/no_rsa_signing_key","Output":"--- PASS: TestParseJWKSRejectsUnusableKeySets/no_rsa_signing_key (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.535585862Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/no_rsa_signing_key","Elapsed":0} +{"Time":"2026-10-18T09:57:38.535619578Z","Action":"run","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/missing_key_id"} +{"Time":"2026-10-18T09:57:38.535627161Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/missing_key_id","Output":"=== RUN TestParseJWKSRejectsUnusableKeySets/missing_key_id\n"} +{"Time":"2026-10-18T09:57:38.535845415Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/missing_key_id","Output":"--- PASS: TestParseJWKSRejectsUnusableKeySets/missing_key_id (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.535892602Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/missing_key_id","Elapsed":0} +{"Time":"2026-10-18T09:57:38.535902341Z","Action":"run","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/bad_base64"} +{"Time":"2026-10-18T09:57:38.535907426Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/bad_base64","Output":"=== RUN TestParseJWKSRejectsUnusableKeySets/bad_base64\n"} +{"Time":"2026-10-18T09:57:38.536337966Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/bad_base64","Output":"--- PASS: TestParseJWKSRejectsUnusableKeySets/bad_base64 (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.536374991Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/bad_base64","Elapsed":0} +{"Time":"2026-10-18T09:57:38.536545099Z","Action":"run","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/even_exponent"} +{"Time":"2026-10-18T09:57:38.536559238Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/even_exponent","Output":"=== RUN TestParseJWKSRejectsUnusableKeySets/even_exponent\n"} +{"Time":"2026-10-18T09:57:38.536936063Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/even_exponent","Output":"--- PASS: TestParseJWKSRejectsUnusableKeySets/even_exponent (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.537038165Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/even_exponent","Elapsed":0} +{"Time":"2026-10-18T09:57:38.537145632Z","Action":"run","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/not_json"} +{"Time":"2026-10-18T09:57:38.53718722Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/not_json","Output":"=== RUN TestParseJWKSRejectsUnusableKeySets/not_json\n"} +{"Time":"2026-10-18T09:57:38.537342686Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/not_json","Output":"--- PASS: TestParseJWKSRejectsUnusableKeySets/not_json (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.53743395Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets/not_json","Elapsed":0} +{"Time":"2026-10-18T09:57:38.537549388Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets","Output":"--- PASS: TestParseJWKSRejectsUnusableKeySets (0.02s)\n"} +{"Time":"2026-10-18T09:57:38.537633634Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsUnusableKeySets","Elapsed":0.02} +{"Time":"2026-10-18T09:57:38.537844647Z","Action":"run","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsDuplicateKeyIDs"} +{"Time":"2026-10-18T09:57:38.537867208Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsDuplicateKeyIDs","Output":"=== RUN TestParseJWKSRejectsDuplicateKeyIDs\n"} +{"Time":"2026-10-18T09:57:38.538847699Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsDuplicateKeyIDs","Output":"--- PASS: TestParseJWKSRejectsDuplicateKeyIDs (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.538890783Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestParseJWKSRejectsDuplicateKeyIDs","Elapsed":0} +{"Time":"2026-10-18T09:57:38.539051219Z","Action":"run","Package":"keycape/internal/jose","Test":"TestParseJWKSIgnoresIrrelevantKeys"} +{"Time":"2026-10-18T09:57:38.539080507Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSIgnoresIrrelevantKeys","Output":"=== RUN TestParseJWKSIgnoresIrrelevantKeys\n"} +{"Time":"2026-10-18T09:57:38.539597717Z","Action":"output","Package":"keycape/internal/jose","Test":"TestParseJWKSIgnoresIrrelevantKeys","Output":"--- PASS: TestParseJWKSIgnoresIrrelevantKeys (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.539636816Z","Action":"pass","Package":"keycape/internal/jose","Test":"TestParseJWKSIgnoresIrrelevantKeys","Elapsed":0} +{"Time":"2026-10-18T09:57:38.539653354Z","Action":"output","Package":"keycape/internal/jose","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:38.540979402Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-token","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-token (0.05s)\n"} +{"Time":"2026-10-18T09:57:38.541037707Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/duplicate-token","Elapsed":0.05} +{"Time":"2026-10-18T09:57:38.541053605Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/public-token"} +{"Time":"2026-10-18T09:57:38.541059033Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/public-token","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput/public-token\n"} +{"Time":"2026-10-18T09:57:38.615214957Z","Action":"start","Package":"keycape/internal/migration/tokeycloak"} +{"Time":"2026-10-18T09:57:38.631670257Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_UsernameAndEmail"} +{"Time":"2026-10-18T09:57:38.631716795Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_UsernameAndEmail","Output":"=== RUN TestTransformer_UserMapping_UsernameAndEmail\n"} +{"Time":"2026-10-18T09:57:38.631839141Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_UsernameAndEmail","Output":"--- PASS: TestTransformer_UserMapping_UsernameAndEmail (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.631859331Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_UsernameAndEmail","Elapsed":0} +{"Time":"2026-10-18T09:57:38.631881099Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_DisplayNameSplit"} +{"Time":"2026-10-18T09:57:38.631885833Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_DisplayNameSplit","Output":"=== RUN TestTransformer_UserMapping_DisplayNameSplit\n"} +{"Time":"2026-10-18T09:57:38.632045213Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_DisplayNameSplit","Output":"--- PASS: TestTransformer_UserMapping_DisplayNameSplit (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.632067413Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_DisplayNameSplit","Elapsed":0} +{"Time":"2026-10-18T09:57:38.632184156Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_DisplayNameSingleWord"} +{"Time":"2026-10-18T09:57:38.632209503Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_DisplayNameSingleWord","Output":"=== RUN TestTransformer_UserMapping_DisplayNameSingleWord\n"} +{"Time":"2026-10-18T09:57:38.632379121Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_DisplayNameSingleWord","Output":"--- PASS: TestTransformer_UserMapping_DisplayNameSingleWord (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.632471738Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_DisplayNameSingleWord","Elapsed":0} +{"Time":"2026-10-18T09:57:38.632485696Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_GroupPaths"} +{"Time":"2026-10-18T09:57:38.632490638Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_GroupPaths","Output":"=== RUN TestTransformer_UserMapping_GroupPaths\n"} +{"Time":"2026-10-18T09:57:38.632696804Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_GroupPaths","Output":"--- PASS: TestTransformer_UserMapping_GroupPaths (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.632725398Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_UserMapping_GroupPaths","Elapsed":0} +{"Time":"2026-10-18T09:57:38.632838884Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_GroupMapping_NameAndPath"} +{"Time":"2026-10-18T09:57:38.632851643Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_GroupMapping_NameAndPath","Output":"=== RUN TestTransformer_GroupMapping_NameAndPath\n"} +{"Time":"2026-10-18T09:57:38.633009851Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_GroupMapping_NameAndPath","Output":"--- PASS: TestTransformer_GroupMapping_NameAndPath (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.633096746Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_GroupMapping_NameAndPath","Elapsed":0} +{"Time":"2026-10-18T09:57:38.633112166Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_PublicClient"} +{"Time":"2026-10-18T09:57:38.633116683Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_PublicClient","Output":"=== RUN TestTransformer_ClientMapping_PublicClient\n"} +{"Time":"2026-10-18T09:57:38.633299521Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_PublicClient","Output":"--- PASS: TestTransformer_ClientMapping_PublicClient (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.633380523Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_PublicClient","Elapsed":0} +{"Time":"2026-10-18T09:57:38.633396673Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_ConfidentialClient"} +{"Time":"2026-10-18T09:57:38.633415952Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_ConfidentialClient","Output":"=== RUN TestTransformer_ClientMapping_ConfidentialClient\n"} +{"Time":"2026-10-18T09:57:38.633605323Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_ConfidentialClient","Output":"--- PASS: TestTransformer_ClientMapping_ConfidentialClient (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.633694729Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_ConfidentialClient","Elapsed":0} +{"Time":"2026-10-18T09:57:38.633777967Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_AllowedScopesBecomesDefaultClientScopes"} +{"Time":"2026-10-18T09:57:38.633787778Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_AllowedScopesBecomesDefaultClientScopes","Output":"=== RUN TestTransformer_ClientMapping_AllowedScopesBecomesDefaultClientScopes\n"} +{"Time":"2026-10-18T09:57:38.633955418Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_AllowedScopesBecomesDefaultClientScopes","Output":"--- PASS: TestTransformer_ClientMapping_AllowedScopesBecomesDefaultClientScopes (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.634033543Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_AllowedScopesBecomesDefaultClientScopes","Elapsed":0} +{"Time":"2026-10-18T09:57:38.634117863Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_ImplicitFlowAlwaysFalse"} +{"Time":"2026-10-18T09:57:38.634127575Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_ImplicitFlowAlwaysFalse","Output":"=== RUN TestTransformer_ClientMapping_ImplicitFlowAlwaysFalse\n"} +{"Time":"2026-10-18T09:57:38.63428535Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_ImplicitFlowAlwaysFalse","Output":"--- PASS: TestTransformer_ClientMapping_ImplicitFlowAlwaysFalse (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.634319282Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ClientMapping_ImplicitFlowAlwaysFalse","Elapsed":0} +{"Time":"2026-10-18T09:57:38.634384458Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_IdentityProviders_AlwaysEmpty"} +{"Time":"2026-10-18T09:57:38.634394224Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_IdentityProviders_AlwaysEmpty","Output":"=== RUN TestTransformer_IdentityProviders_AlwaysEmpty\n"} +{"Time":"2026-10-18T09:57:38.634604119Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_IdentityProviders_AlwaysEmpty","Output":"--- PASS: TestTransformer_IdentityProviders_AlwaysEmpty (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.63461695Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_IdentityProviders_AlwaysEmpty","Elapsed":0} +{"Time":"2026-10-18T09:57:38.634624074Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ProfileVersion_RS256"} +{"Time":"2026-10-18T09:57:38.634628411Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ProfileVersion_RS256","Output":"=== RUN TestTransformer_ProfileVersion_RS256\n"} +{"Time":"2026-10-18T09:57:38.634783309Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ProfileVersion_RS256","Output":"--- PASS: TestTransformer_ProfileVersion_RS256 (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.63487166Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ProfileVersion_RS256","Elapsed":0} +{"Time":"2026-10-18T09:57:38.634911075Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_RealmMetadata"} +{"Time":"2026-10-18T09:57:38.634963736Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_RealmMetadata","Output":"=== RUN TestTransformer_RealmMetadata\n"} +{"Time":"2026-10-18T09:57:38.635106975Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_RealmMetadata","Output":"--- PASS: TestTransformer_RealmMetadata (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.635182909Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_RealmMetadata","Elapsed":0} +{"Time":"2026-10-18T09:57:38.635195443Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_EmitsMigrationEvent"} +{"Time":"2026-10-18T09:57:38.635199528Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_EmitsMigrationEvent","Output":"=== RUN TestTransformer_EmitsMigrationEvent\n"} +{"Time":"2026-10-18T09:57:38.635383678Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_EmitsMigrationEvent","Output":"--- PASS: TestTransformer_EmitsMigrationEvent (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.635403101Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_EmitsMigrationEvent","Elapsed":0} +{"Time":"2026-10-18T09:57:38.635480514Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ValidationReport_IncompatibleExport"} +{"Time":"2026-10-18T09:57:38.635596837Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ValidationReport_IncompatibleExport","Output":"=== RUN TestTransformer_ValidationReport_IncompatibleExport\n"} +{"Time":"2026-10-18T09:57:38.635609785Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ValidationReport_IncompatibleExport","Output":"--- PASS: TestTransformer_ValidationReport_IncompatibleExport (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.635620336Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ValidationReport_IncompatibleExport","Elapsed":0} +{"Time":"2026-10-18T09:57:38.635696901Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ValidationReport_CleanExport"} +{"Time":"2026-10-18T09:57:38.635711689Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ValidationReport_CleanExport","Output":"=== RUN TestTransformer_ValidationReport_CleanExport\n"} +{"Time":"2026-10-18T09:57:38.63608401Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ValidationReport_CleanExport","Output":"--- PASS: TestTransformer_ValidationReport_CleanExport (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.636119114Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransformer_ValidationReport_CleanExport","Elapsed":0} +{"Time":"2026-10-18T09:57:38.636130855Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestMapClient_FlowsFollowDeclaredGrants"} +{"Time":"2026-10-18T09:57:38.636137068Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestMapClient_FlowsFollowDeclaredGrants","Output":"=== RUN TestMapClient_FlowsFollowDeclaredGrants\n"} +{"Time":"2026-10-18T09:57:38.636152424Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestMapClient_FlowsFollowDeclaredGrants","Output":"--- PASS: TestMapClient_FlowsFollowDeclaredGrants (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.636180585Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestMapClient_FlowsFollowDeclaredGrants","Elapsed":0} +{"Time":"2026-10-18T09:57:38.636196446Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestMapClient_CarriesProfileClaimsAndLifetime"} +{"Time":"2026-10-18T09:57:38.636224517Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestMapClient_CarriesProfileClaimsAndLifetime","Output":"=== RUN TestMapClient_CarriesProfileClaimsAndLifetime\n"} +{"Time":"2026-10-18T09:57:38.636407965Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestMapClient_CarriesProfileClaimsAndLifetime","Output":"--- PASS: TestMapClient_CarriesProfileClaimsAndLifetime (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.636438525Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestMapClient_CarriesProfileClaimsAndLifetime","Elapsed":0} +{"Time":"2026-10-18T09:57:38.636447118Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransform_NeverEmitsSecretValues"} +{"Time":"2026-10-18T09:57:38.636451645Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransform_NeverEmitsSecretValues","Output":"=== RUN TestTransform_NeverEmitsSecretValues\n"} +{"Time":"2026-10-18T09:57:38.638338275Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransform_NeverEmitsSecretValues","Output":"--- PASS: TestTransform_NeverEmitsSecretValues (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.638378762Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransform_NeverEmitsSecretValues","Elapsed":0} +{"Time":"2026-10-18T09:57:38.638387302Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransform_DerivesRolesAndScopes"} +{"Time":"2026-10-18T09:57:38.638391783Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransform_DerivesRolesAndScopes","Output":"=== RUN TestTransform_DerivesRolesAndScopes\n"} +{"Time":"2026-10-18T09:57:38.638663139Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransform_DerivesRolesAndScopes","Output":"--- PASS: TestTransform_DerivesRolesAndScopes (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.638677242Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestTransform_DerivesRolesAndScopes","Elapsed":0} +{"Time":"2026-10-18T09:57:38.638780823Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestUnpreservedReport_NamesEveryLimit"} +{"Time":"2026-10-18T09:57:38.63879196Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestUnpreservedReport_NamesEveryLimit","Output":"=== RUN TestUnpreservedReport_NamesEveryLimit\n"} +{"Time":"2026-10-18T09:57:38.639156915Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestUnpreservedReport_NamesEveryLimit","Output":"--- PASS: TestUnpreservedReport_NamesEveryLimit (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.639181938Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestUnpreservedReport_NamesEveryLimit","Elapsed":0} +{"Time":"2026-10-18T09:57:38.639193263Z","Action":"run","Package":"keycape/internal/migration/tokeycloak","Test":"TestValidationReportStaysSeparateFromUnpreserved"} +{"Time":"2026-10-18T09:57:38.63919761Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestValidationReportStaysSeparateFromUnpreserved","Output":"=== RUN TestValidationReportStaysSeparateFromUnpreserved\n"} +{"Time":"2026-10-18T09:57:38.639428109Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Test":"TestValidationReportStaysSeparateFromUnpreserved","Output":"--- PASS: TestValidationReportStaysSeparateFromUnpreserved (0.00s)\n"} +{"Time":"2026-10-18T09:57:38.639442221Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Test":"TestValidationReportStaysSeparateFromUnpreserved","Elapsed":0} +{"Time":"2026-10-18T09:57:38.639532095Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:38.687424683Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/public-token","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput/public-token (0.15s)\n"} +{"Time":"2026-10-18T09:57:38.687487831Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/public-token","Elapsed":0.15} +{"Time":"2026-10-18T09:57:38.687498787Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/shared-output-parent"} +{"Time":"2026-10-18T09:57:38.687505559Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/shared-output-parent","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput/shared-output-parent\n"} +{"Time":"2026-10-18T09:57:38.803396639Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/shared-output-parent","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput/shared-output-parent (0.12s)\n"} +{"Time":"2026-10-18T09:57:38.803484178Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/shared-output-parent","Elapsed":0.12} +{"Time":"2026-10-18T09:57:38.803671115Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/git-output"} +{"Time":"2026-10-18T09:57:38.803689005Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/git-output","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput/git-output\n"} +{"Time":"2026-10-18T09:57:38.892516711Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/git-output","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput/git-output (0.09s)\n"} +{"Time":"2026-10-18T09:57:38.892566676Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/git-output","Elapsed":0.09} +{"Time":"2026-10-18T09:57:38.892695881Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/output-symlink"} +{"Time":"2026-10-18T09:57:38.892708433Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/output-symlink","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput/output-symlink\n"} +{"Time":"2026-10-18T09:57:38.96209314Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/output-symlink","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput/output-symlink (0.07s)\n"} +{"Time":"2026-10-18T09:57:38.962142194Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/output-symlink","Elapsed":0.07} +{"Time":"2026-10-18T09:57:38.962154746Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/unknown-flag"} +{"Time":"2026-10-18T09:57:38.962160995Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/unknown-flag","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput/unknown-flag\n"} +{"Time":"2026-10-18T09:57:39.224347849Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/unknown-flag","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput/unknown-flag (0.26s)\n"} +{"Time":"2026-10-18T09:57:39.224400789Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/unknown-flag","Elapsed":0.26} +{"Time":"2026-10-18T09:57:39.224626356Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/cleanup-identity-flags"} +{"Time":"2026-10-18T09:57:39.224641757Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/cleanup-identity-flags","Output":"=== RUN TestOnlineCLIRejectsChangedTokenAndUntrustedInput/cleanup-identity-flags\n"} +{"Time":"2026-10-18T09:57:39.344104551Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/cleanup-identity-flags","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput/cleanup-identity-flags (0.12s)\n"} +{"Time":"2026-10-18T09:57:39.344153975Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput/cleanup-identity-flags","Elapsed":0.12} +{"Time":"2026-10-18T09:57:39.34416549Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput","Output":"--- PASS: TestOnlineCLIRejectsChangedTokenAndUntrustedInput (1.20s)\n"} +{"Time":"2026-10-18T09:57:39.344176842Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIRejectsChangedTokenAndUntrustedInput","Elapsed":1.2} +{"Time":"2026-10-18T09:57:39.3441843Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCLIFailureDoesNotDeleteReplacedObservation"} +{"Time":"2026-10-18T09:57:39.344191342Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIFailureDoesNotDeleteReplacedObservation","Output":"=== RUN TestOnlineCLIFailureDoesNotDeleteReplacedObservation\n"} +{"Time":"2026-10-18T09:57:39.385134179Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCLIFailureDoesNotDeleteReplacedObservation","Output":"--- PASS: TestOnlineCLIFailureDoesNotDeleteReplacedObservation (0.04s)\n"} +{"Time":"2026-10-18T09:57:39.385178409Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCLIFailureDoesNotDeleteReplacedObservation","Elapsed":0.04} +{"Time":"2026-10-18T09:57:39.385191078Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineExportMatchesItsSingleProducer"} +{"Time":"2026-10-18T09:57:39.385196777Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineExportMatchesItsSingleProducer","Output":"=== RUN TestOnlineExportMatchesItsSingleProducer\n"} +{"Time":"2026-10-18T09:57:39.444837265Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineExportMatchesItsSingleProducer","Output":"--- PASS: TestOnlineExportMatchesItsSingleProducer (0.06s)\n"} +{"Time":"2026-10-18T09:57:39.444882459Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineExportMatchesItsSingleProducer","Elapsed":0.06} +{"Time":"2026-10-18T09:57:39.444908474Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineActualHumanPKCEFactsStayDistinctFromCurrentStatus"} +{"Time":"2026-10-18T09:57:39.444913289Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineActualHumanPKCEFactsStayDistinctFromCurrentStatus","Output":"=== RUN TestOnlineActualHumanPKCEFactsStayDistinctFromCurrentStatus\n"} +{"Time":"2026-10-18T09:57:39.499312249Z","Action":"output","Package":"keycape/internal/migration/lldapexport","Output":"ok \tkeycape/internal/migration/lldapexport\t1.040s\n"} +{"Time":"2026-10-18T09:57:39.499359021Z","Action":"pass","Package":"keycape/internal/migration/lldapexport","Elapsed":1.04} +{"Time":"2026-10-18T09:57:39.547186189Z","Action":"output","Package":"keycape/internal/jose","Output":"ok \tkeycape/internal/jose\t1.356s\n"} +{"Time":"2026-10-18T09:57:39.54724077Z","Action":"pass","Package":"keycape/internal/jose","Elapsed":1.3559999999999999} +{"Time":"2026-10-18T09:57:39.647318011Z","Action":"output","Package":"keycape/internal/migration/tokeycloak","Output":"ok \tkeycape/internal/migration/tokeycloak\t1.032s\n"} +{"Time":"2026-10-18T09:57:39.647425929Z","Action":"pass","Package":"keycape/internal/migration/tokeycloak","Elapsed":1.032} +{"Time":"2026-10-18T09:57:39.783683352Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineActualHumanPKCEFactsStayDistinctFromCurrentStatus","Output":"--- PASS: TestOnlineActualHumanPKCEFactsStayDistinctFromCurrentStatus (0.34s)\n"} +{"Time":"2026-10-18T09:57:39.783749277Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineActualHumanPKCEFactsStayDistinctFromCurrentStatus","Elapsed":0.34} +{"Time":"2026-10-18T09:57:39.7837609Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineActualIssuerCurrentRevocationAndFreshGrant"} +{"Time":"2026-10-18T09:57:39.78376613Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineActualIssuerCurrentRevocationAndFreshGrant","Output":"=== RUN TestOnlineActualIssuerCurrentRevocationAndFreshGrant\n"} +{"Time":"2026-10-18T09:57:39.9966565Z","Action":"start","Package":"keycape/internal/migration/toldap"} +{"Time":"2026-10-18T09:57:40.019778486Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_UserLDIF_RequiredAttributes"} +{"Time":"2026-10-18T09:57:40.019830524Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_UserLDIF_RequiredAttributes","Output":"=== RUN TestGenerator_UserLDIF_RequiredAttributes\n"} +{"Time":"2026-10-18T09:57:40.020186561Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_UserLDIF_RequiredAttributes","Output":"--- PASS: TestGenerator_UserLDIF_RequiredAttributes (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.02060251Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_UserLDIF_RequiredAttributes","Elapsed":0} +{"Time":"2026-10-18T09:57:40.020821953Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_GroupLDIF_WithMemberDNs"} +{"Time":"2026-10-18T09:57:40.020845876Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_GroupLDIF_WithMemberDNs","Output":"=== RUN TestGenerator_GroupLDIF_WithMemberDNs\n"} +{"Time":"2026-10-18T09:57:40.021417297Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_GroupLDIF_WithMemberDNs","Output":"--- PASS: TestGenerator_GroupLDIF_WithMemberDNs (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.021461861Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_GroupLDIF_WithMemberDNs","Elapsed":0} +{"Time":"2026-10-18T09:57:40.021512105Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_OpenLDAP_NoSAMAccountName"} +{"Time":"2026-10-18T09:57:40.021520752Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_OpenLDAP_NoSAMAccountName","Output":"=== RUN TestGenerator_Target_OpenLDAP_NoSAMAccountName\n"} +{"Time":"2026-10-18T09:57:40.021921907Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_OpenLDAP_NoSAMAccountName","Output":"--- PASS: TestGenerator_Target_OpenLDAP_NoSAMAccountName (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.021964693Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_OpenLDAP_NoSAMAccountName","Elapsed":0} +{"Time":"2026-10-18T09:57:40.022086895Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_389DS_HasNsUniqueIdIfAvailable"} +{"Time":"2026-10-18T09:57:40.022104912Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_389DS_HasNsUniqueIdIfAvailable","Output":"=== RUN TestGenerator_Target_389DS_HasNsUniqueIdIfAvailable\n"} +{"Time":"2026-10-18T09:57:40.022508443Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_389DS_HasNsUniqueIdIfAvailable","Output":"--- PASS: TestGenerator_Target_389DS_HasNsUniqueIdIfAvailable (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.022572627Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_389DS_HasNsUniqueIdIfAvailable","Elapsed":0} +{"Time":"2026-10-18T09:57:40.022586Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_389DS_NoNsUniqueIdWhenAbsent"} +{"Time":"2026-10-18T09:57:40.022592402Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_389DS_NoNsUniqueIdWhenAbsent","Output":"=== RUN TestGenerator_Target_389DS_NoNsUniqueIdWhenAbsent\n"} +{"Time":"2026-10-18T09:57:40.022892805Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_389DS_NoNsUniqueIdWhenAbsent","Output":"--- PASS: TestGenerator_Target_389DS_NoNsUniqueIdWhenAbsent (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.022999209Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_389DS_NoNsUniqueIdWhenAbsent","Elapsed":0} +{"Time":"2026-10-18T09:57:40.023013258Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_AD_SAMAccountNamePresent"} +{"Time":"2026-10-18T09:57:40.023019344Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_AD_SAMAccountNamePresent","Output":"=== RUN TestGenerator_Target_AD_SAMAccountNamePresent\n"} +{"Time":"2026-10-18T09:57:40.023420603Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_AD_SAMAccountNamePresent","Output":"--- PASS: TestGenerator_Target_AD_SAMAccountNamePresent (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.023460658Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_AD_SAMAccountNamePresent","Elapsed":0} +{"Time":"2026-10-18T09:57:40.023555897Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_AD_UsesCNInDN"} +{"Time":"2026-10-18T09:57:40.02357322Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_AD_UsesCNInDN","Output":"=== RUN TestGenerator_Target_AD_UsesCNInDN\n"} +{"Time":"2026-10-18T09:57:40.024392193Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_AD_UsesCNInDN","Output":"--- PASS: TestGenerator_Target_AD_UsesCNInDN (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.02443938Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_AD_UsesCNInDN","Elapsed":0} +{"Time":"2026-10-18T09:57:40.024619563Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_OpenLDAP_UsesUIDInDN"} +{"Time":"2026-10-18T09:57:40.024636579Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_OpenLDAP_UsesUIDInDN","Output":"=== RUN TestGenerator_Target_OpenLDAP_UsesUIDInDN\n"} +{"Time":"2026-10-18T09:57:40.025083301Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_OpenLDAP_UsesUIDInDN","Output":"--- PASS: TestGenerator_Target_OpenLDAP_UsesUIDInDN (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.025142481Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_Target_OpenLDAP_UsesUIDInDN","Elapsed":0} +{"Time":"2026-10-18T09:57:40.025159821Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_EmptyExport_StructuralEntriesOnly"} +{"Time":"2026-10-18T09:57:40.0251657Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_EmptyExport_StructuralEntriesOnly","Output":"=== RUN TestGenerator_EmptyExport_StructuralEntriesOnly\n"} +{"Time":"2026-10-18T09:57:40.025456782Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_EmptyExport_StructuralEntriesOnly","Output":"--- PASS: TestGenerator_EmptyExport_StructuralEntriesOnly (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.025495799Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_EmptyExport_StructuralEntriesOnly","Elapsed":0} +{"Time":"2026-10-18T09:57:40.025513004Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_EmitsMigrationEvent"} +{"Time":"2026-10-18T09:57:40.025526106Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_EmitsMigrationEvent","Output":"=== RUN TestGenerator_EmitsMigrationEvent\n"} +{"Time":"2026-10-18T09:57:40.025809943Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_EmitsMigrationEvent","Output":"--- PASS: TestGenerator_EmitsMigrationEvent (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.025871468Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_EmitsMigrationEvent","Elapsed":0} +{"Time":"2026-10-18T09:57:40.026025879Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_ValidationRunsOnOutput"} +{"Time":"2026-10-18T09:57:40.026043571Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_ValidationRunsOnOutput","Output":"=== RUN TestGenerator_ValidationRunsOnOutput\n"} +{"Time":"2026-10-18T09:57:40.026370852Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_ValidationRunsOnOutput","Output":"--- PASS: TestGenerator_ValidationRunsOnOutput (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.026487887Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_ValidationRunsOnOutput","Elapsed":0} +{"Time":"2026-10-18T09:57:40.026516923Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_ValidationFailsForInvalidData"} +{"Time":"2026-10-18T09:57:40.026523857Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_ValidationFailsForInvalidData","Output":"=== RUN TestGenerator_ValidationFailsForInvalidData\n"} +{"Time":"2026-10-18T09:57:40.027026961Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_ValidationFailsForInvalidData","Output":"--- PASS: TestGenerator_ValidationFailsForInvalidData (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.027066781Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestGenerator_ValidationFailsForInvalidData","Elapsed":0} +{"Time":"2026-10-18T09:57:40.027079063Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestMemberDNsAreRewrittenIntoTheTargetLayout"} +{"Time":"2026-10-18T09:57:40.027098558Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestMemberDNsAreRewrittenIntoTheTargetLayout","Output":"=== RUN TestMemberDNsAreRewrittenIntoTheTargetLayout\n"} +{"Time":"2026-10-18T09:57:40.027412588Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestMemberDNsAreRewrittenIntoTheTargetLayout","Output":"--- PASS: TestMemberDNsAreRewrittenIntoTheTargetLayout (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.027446033Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestMemberDNsAreRewrittenIntoTheTargetLayout","Elapsed":0} +{"Time":"2026-10-18T09:57:40.027558067Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestMemberDNRewriteFollowsTargetNamingAttribute"} +{"Time":"2026-10-18T09:57:40.027577147Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestMemberDNRewriteFollowsTargetNamingAttribute","Output":"=== RUN TestMemberDNRewriteFollowsTargetNamingAttribute\n"} +{"Time":"2026-10-18T09:57:40.02785725Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestMemberDNRewriteFollowsTargetNamingAttribute","Output":"--- PASS: TestMemberDNRewriteFollowsTargetNamingAttribute (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.027892832Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestMemberDNRewriteFollowsTargetNamingAttribute","Elapsed":0} +{"Time":"2026-10-18T09:57:40.027997288Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestEmptyGroupsGetALoadablePlaceholderMember"} +{"Time":"2026-10-18T09:57:40.028011039Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestEmptyGroupsGetALoadablePlaceholderMember","Output":"=== RUN TestEmptyGroupsGetALoadablePlaceholderMember\n"} +{"Time":"2026-10-18T09:57:40.028476899Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestEmptyGroupsGetALoadablePlaceholderMember","Output":"--- PASS: TestEmptyGroupsGetALoadablePlaceholderMember (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.028536765Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestEmptyGroupsGetALoadablePlaceholderMember","Elapsed":0} +{"Time":"2026-10-18T09:57:40.028544898Z","Action":"run","Package":"keycape/internal/migration/toldap","Test":"TestNoPlaceholderWhenEveryGroupHasMembers"} +{"Time":"2026-10-18T09:57:40.02854929Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestNoPlaceholderWhenEveryGroupHasMembers","Output":"=== RUN TestNoPlaceholderWhenEveryGroupHasMembers\n"} +{"Time":"2026-10-18T09:57:40.028863469Z","Action":"output","Package":"keycape/internal/migration/toldap","Test":"TestNoPlaceholderWhenEveryGroupHasMembers","Output":"--- PASS: TestNoPlaceholderWhenEveryGroupHasMembers (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.028896273Z","Action":"pass","Package":"keycape/internal/migration/toldap","Test":"TestNoPlaceholderWhenEveryGroupHasMembers","Elapsed":0} +{"Time":"2026-10-18T09:57:40.029001009Z","Action":"output","Package":"keycape/internal/migration/toldap","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:40.23199764Z","Action":"start","Package":"keycape/internal/server/errors"} +{"Time":"2026-10-18T09:57:40.238516502Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineActualIssuerCurrentRevocationAndFreshGrant","Output":"--- PASS: TestOnlineActualIssuerCurrentRevocationAndFreshGrant (0.45s)\n"} +{"Time":"2026-10-18T09:57:40.23859929Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineActualIssuerCurrentRevocationAndFreshGrant","Elapsed":0.45} +{"Time":"2026-10-18T09:57:40.23861177Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork"} +{"Time":"2026-10-18T09:57:40.238625936Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork","Output":"=== RUN TestOnlineIdentityMismatchRefusesBeforeNetwork\n"} +{"Time":"2026-10-18T09:57:40.238804387Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/subject"} +{"Time":"2026-10-18T09:57:40.238822872Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/subject","Output":"=== RUN TestOnlineIdentityMismatchRefusesBeforeNetwork/subject\n"} +{"Time":"2026-10-18T09:57:40.252490967Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_DynamicClientRegistration_PostConnect"} +{"Time":"2026-10-18T09:57:40.252542104Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_DynamicClientRegistration_PostConnect","Output":"=== RUN TestDefaultRegistry_DynamicClientRegistration_PostConnect\n"} +{"Time":"2026-10-18T09:57:40.25363745Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_DynamicClientRegistration_PostConnect","Output":"--- PASS: TestDefaultRegistry_DynamicClientRegistration_PostConnect (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.253678992Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_DynamicClientRegistration_PostConnect","Elapsed":0} +{"Time":"2026-10-18T09:57:40.253701004Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_DynamicClientRegistration_PathContainsRegistration"} +{"Time":"2026-10-18T09:57:40.253711887Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_DynamicClientRegistration_PathContainsRegistration","Output":"=== RUN TestDefaultRegistry_DynamicClientRegistration_PathContainsRegistration\n"} +{"Time":"2026-10-18T09:57:40.254146236Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_DynamicClientRegistration_PathContainsRegistration","Output":"--- PASS: TestDefaultRegistry_DynamicClientRegistration_PathContainsRegistration (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.254185389Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_DynamicClientRegistration_PathContainsRegistration","Elapsed":0} +{"Time":"2026-10-18T09:57:40.254215065Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_ImplicitFlow_Token"} +{"Time":"2026-10-18T09:57:40.254220187Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_ImplicitFlow_Token","Output":"=== RUN TestDefaultRegistry_ImplicitFlow_Token\n"} +{"Time":"2026-10-18T09:57:40.254771249Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_ImplicitFlow_Token","Output":"--- PASS: TestDefaultRegistry_ImplicitFlow_Token (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.254824776Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_ImplicitFlow_Token","Elapsed":0} +{"Time":"2026-10-18T09:57:40.25483868Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_ImplicitFlow_IDToken"} +{"Time":"2026-10-18T09:57:40.254849654Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_ImplicitFlow_IDToken","Output":"=== RUN TestDefaultRegistry_ImplicitFlow_IDToken\n"} +{"Time":"2026-10-18T09:57:40.255335826Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_ImplicitFlow_IDToken","Output":"--- PASS: TestDefaultRegistry_ImplicitFlow_IDToken (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.255374041Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_ImplicitFlow_IDToken","Elapsed":0} +{"Time":"2026-10-18T09:57:40.255404312Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_WildcardRedirectURI"} +{"Time":"2026-10-18T09:57:40.255409244Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_WildcardRedirectURI","Output":"=== RUN TestDefaultRegistry_WildcardRedirectURI\n"} +{"Time":"2026-10-18T09:57:40.255863479Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_WildcardRedirectURI","Output":"--- PASS: TestDefaultRegistry_WildcardRedirectURI (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.255894598Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_WildcardRedirectURI","Elapsed":0} +{"Time":"2026-10-18T09:57:40.256055411Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_IdentityBroker"} +{"Time":"2026-10-18T09:57:40.256070686Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_IdentityBroker","Output":"=== RUN TestDefaultRegistry_IdentityBroker\n"} +{"Time":"2026-10-18T09:57:40.256508907Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_IdentityBroker","Output":"--- PASS: TestDefaultRegistry_IdentityBroker (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.256601279Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_IdentityBroker","Elapsed":0} +{"Time":"2026-10-18T09:57:40.25670505Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_MissingPKCE"} +{"Time":"2026-10-18T09:57:40.256718747Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_MissingPKCE","Output":"=== RUN TestDefaultRegistry_MissingPKCE\n"} +{"Time":"2026-10-18T09:57:40.257173514Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_MissingPKCE","Output":"--- PASS: TestDefaultRegistry_MissingPKCE (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.257202622Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_MissingPKCE","Elapsed":0} +{"Time":"2026-10-18T09:57:40.257239773Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_MissingPKCE_WithCodeChallenge_PassesThrough"} +{"Time":"2026-10-18T09:57:40.257245327Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_MissingPKCE_WithCodeChallenge_PassesThrough","Output":"=== RUN TestDefaultRegistry_MissingPKCE_WithCodeChallenge_PassesThrough\n"} +{"Time":"2026-10-18T09:57:40.257552464Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_MissingPKCE_WithCodeChallenge_PassesThrough","Output":"--- PASS: TestDefaultRegistry_MissingPKCE_WithCodeChallenge_PassesThrough (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.257572167Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_MissingPKCE_WithCodeChallenge_PassesThrough","Elapsed":0} +{"Time":"2026-10-18T09:57:40.257665107Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_PKCEPlainMethod"} +{"Time":"2026-10-18T09:57:40.257674783Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_PKCEPlainMethod","Output":"=== RUN TestDefaultRegistry_PKCEPlainMethod\n"} +{"Time":"2026-10-18T09:57:40.258109771Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_PKCEPlainMethod","Output":"--- PASS: TestDefaultRegistry_PKCEPlainMethod (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.258137472Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_PKCEPlainMethod","Elapsed":0} +{"Time":"2026-10-18T09:57:40.258283975Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_UnknownGrantType"} +{"Time":"2026-10-18T09:57:40.258295292Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_UnknownGrantType","Output":"=== RUN TestDefaultRegistry_UnknownGrantType\n"} +{"Time":"2026-10-18T09:57:40.25877592Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_UnknownGrantType","Output":"--- PASS: TestDefaultRegistry_UnknownGrantType (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.258807706Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_UnknownGrantType","Elapsed":0} +{"Time":"2026-10-18T09:57:40.258857581Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_UnknownGrantType_AllowedTypes"} +{"Time":"2026-10-18T09:57:40.258865588Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_UnknownGrantType_AllowedTypes","Output":"=== RUN TestDefaultRegistry_UnknownGrantType_AllowedTypes\n"} +{"Time":"2026-10-18T09:57:40.259498136Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_UnknownGrantType_AllowedTypes","Output":"--- PASS: TestDefaultRegistry_UnknownGrantType_AllowedTypes (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.259569986Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_UnknownGrantType_AllowedTypes","Elapsed":0} +{"Time":"2026-10-18T09:57:40.259586Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_NoMatchPassesThrough"} +{"Time":"2026-10-18T09:57:40.259601258Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_NoMatchPassesThrough","Output":"=== RUN TestDefaultRegistry_NoMatchPassesThrough\n"} +{"Time":"2026-10-18T09:57:40.259672692Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_NoMatchPassesThrough","Output":"--- PASS: TestDefaultRegistry_NoMatchPassesThrough (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.25984521Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestDefaultRegistry_NoMatchPassesThrough","Elapsed":0} +{"Time":"2026-10-18T09:57:40.259870441Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestRegistry_CustomFeature"} +{"Time":"2026-10-18T09:57:40.259880747Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestRegistry_CustomFeature","Output":"=== RUN TestRegistry_CustomFeature\n"} +{"Time":"2026-10-18T09:57:40.26036778Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestRegistry_CustomFeature","Output":"--- PASS: TestRegistry_CustomFeature (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.260410892Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestRegistry_CustomFeature","Elapsed":0} +{"Time":"2026-10-18T09:57:40.26043899Z","Action":"run","Package":"keycape/internal/server/errors","Test":"TestRegistry_CustomFeature_NoMatch_PassesThrough"} +{"Time":"2026-10-18T09:57:40.260444093Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestRegistry_CustomFeature_NoMatch_PassesThrough","Output":"=== RUN TestRegistry_CustomFeature_NoMatch_PassesThrough\n"} +{"Time":"2026-10-18T09:57:40.261032323Z","Action":"output","Package":"keycape/internal/server/errors","Test":"TestRegistry_CustomFeature_NoMatch_PassesThrough","Output":"--- PASS: TestRegistry_CustomFeature_NoMatch_PassesThrough (0.00s)\n"} +{"Time":"2026-10-18T09:57:40.261084812Z","Action":"pass","Package":"keycape/internal/server/errors","Test":"TestRegistry_CustomFeature_NoMatch_PassesThrough","Elapsed":0} +{"Time":"2026-10-18T09:57:40.261101152Z","Action":"output","Package":"keycape/internal/server/errors","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:40.468143199Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/subject","Output":"--- PASS: TestOnlineIdentityMismatchRefusesBeforeNetwork/subject (0.23s)\n"} +{"Time":"2026-10-18T09:57:40.4682555Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/subject","Elapsed":0.23} +{"Time":"2026-10-18T09:57:40.468266907Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/tenant"} +{"Time":"2026-10-18T09:57:40.468273769Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/tenant","Output":"=== RUN TestOnlineIdentityMismatchRefusesBeforeNetwork/tenant\n"} +{"Time":"2026-10-18T09:57:40.596062165Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/tenant","Output":"--- PASS: TestOnlineIdentityMismatchRefusesBeforeNetwork/tenant (0.13s)\n"} +{"Time":"2026-10-18T09:57:40.596112526Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/tenant","Elapsed":0.13} +{"Time":"2026-10-18T09:57:40.596123121Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/principal"} +{"Time":"2026-10-18T09:57:40.596129073Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/principal","Output":"=== RUN TestOnlineIdentityMismatchRefusesBeforeNetwork/principal\n"} +{"Time":"2026-10-18T09:57:40.674359553Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/principal","Output":"--- PASS: TestOnlineIdentityMismatchRefusesBeforeNetwork/principal (0.08s)\n"} +{"Time":"2026-10-18T09:57:40.674412105Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/principal","Elapsed":0.08} +{"Time":"2026-10-18T09:57:40.674427002Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/audience"} +{"Time":"2026-10-18T09:57:40.674433548Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/audience","Output":"=== RUN TestOnlineIdentityMismatchRefusesBeforeNetwork/audience\n"} +{"Time":"2026-10-18T09:57:44.482378425Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/audience","Output":"--- PASS: TestOnlineIdentityMismatchRefusesBeforeNetwork/audience (0.23s)\n"} +{"Time":"2026-10-18T09:57:44.482450509Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/audience","Elapsed":0.23} +{"Time":"2026-10-18T09:57:44.482483196Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/issuer"} +{"Time":"2026-10-18T09:57:44.482515261Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/issuer","Output":"=== RUN TestOnlineIdentityMismatchRefusesBeforeNetwork/issuer\n"} +{"Time":"2026-10-18T09:57:44.594868456Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/issuer","Output":"--- PASS: TestOnlineIdentityMismatchRefusesBeforeNetwork/issuer (0.11s)\n"} +{"Time":"2026-10-18T09:57:44.594914561Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/issuer","Elapsed":0.11} +{"Time":"2026-10-18T09:57:44.594925968Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/tamper"} +{"Time":"2026-10-18T09:57:44.59493127Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/tamper","Output":"=== RUN TestOnlineIdentityMismatchRefusesBeforeNetwork/tamper\n"} +{"Time":"2026-10-18T09:57:44.614588943Z","Action":"output","Package":"keycape/internal/migration/toldap","Output":"ok \tkeycape/internal/migration/toldap\t1.036s\n"} +{"Time":"2026-10-18T09:57:44.614649719Z","Action":"pass","Package":"keycape/internal/migration/toldap","Elapsed":1.037} +{"Time":"2026-10-18T09:57:44.668743305Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/tamper","Output":"--- PASS: TestOnlineIdentityMismatchRefusesBeforeNetwork/tamper (0.07s)\n"} +{"Time":"2026-10-18T09:57:44.668836787Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/tamper","Elapsed":0.07} +{"Time":"2026-10-18T09:57:44.668867788Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/key"} +{"Time":"2026-10-18T09:57:44.668878672Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/key","Output":"=== RUN TestOnlineIdentityMismatchRefusesBeforeNetwork/key\n"} +{"Time":"2026-10-18T09:57:44.84597203Z","Action":"output","Package":"keycape/internal/server/errors","Output":"ok \tkeycape/internal/server/errors\t1.032s\n"} +{"Time":"2026-10-18T09:57:44.846030192Z","Action":"pass","Package":"keycape/internal/server/errors","Elapsed":1.033} +{"Time":"2026-10-18T09:57:45.161718274Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/key","Output":"--- PASS: TestOnlineIdentityMismatchRefusesBeforeNetwork/key (0.49s)\n"} +{"Time":"2026-10-18T09:57:45.161770168Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/key","Elapsed":0.49} +{"Time":"2026-10-18T09:57:45.161785642Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/no-jti"} +{"Time":"2026-10-18T09:57:45.161791737Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/no-jti","Output":"=== RUN TestOnlineIdentityMismatchRefusesBeforeNetwork/no-jti\n"} +{"Time":"2026-10-18T09:57:45.367477195Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/no-jti","Output":"--- PASS: TestOnlineIdentityMismatchRefusesBeforeNetwork/no-jti (0.21s)\n"} +{"Time":"2026-10-18T09:57:45.367541821Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/no-jti","Elapsed":0.21} +{"Time":"2026-10-18T09:57:45.367682319Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/ID-token"} +{"Time":"2026-10-18T09:57:45.367698965Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/ID-token","Output":"=== RUN TestOnlineIdentityMismatchRefusesBeforeNetwork/ID-token\n"} +{"Time":"2026-10-18T09:57:45.558109227Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/ID-token","Output":"--- PASS: TestOnlineIdentityMismatchRefusesBeforeNetwork/ID-token (0.19s)\n"} +{"Time":"2026-10-18T09:57:45.558330861Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/ID-token","Elapsed":0.19} +{"Time":"2026-10-18T09:57:45.558419321Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/stale"} +{"Time":"2026-10-18T09:57:45.558440935Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/stale","Output":"=== RUN TestOnlineIdentityMismatchRefusesBeforeNetwork/stale\n"} +{"Time":"2026-10-18T09:57:45.652687189Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/stale","Output":"--- PASS: TestOnlineIdentityMismatchRefusesBeforeNetwork/stale (0.09s)\n"} +{"Time":"2026-10-18T09:57:45.652736188Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork/stale","Elapsed":0.09} +{"Time":"2026-10-18T09:57:45.652750544Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork","Output":"--- PASS: TestOnlineIdentityMismatchRefusesBeforeNetwork (1.83s)\n"} +{"Time":"2026-10-18T09:57:45.652770454Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineIdentityMismatchRefusesBeforeNetwork","Elapsed":1.83} +{"Time":"2026-10-18T09:57:45.652895857Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus"} +{"Time":"2026-10-18T09:57:45.6529095Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus\n"} +{"Time":"2026-10-18T09:57:45.652918391Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-active"} +{"Time":"2026-10-18T09:57:45.652923594Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-active","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-active\n"} +{"Time":"2026-10-18T09:57:45.781847817Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-active","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-active (0.13s)\n"} +{"Time":"2026-10-18T09:57:45.781917232Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-active","Elapsed":0.13} +{"Time":"2026-10-18T09:57:45.781938512Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-active-type"} +{"Time":"2026-10-18T09:57:45.781956394Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-active-type","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-active-type\n"} +{"Time":"2026-10-18T09:57:46.016842407Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-active-type","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-active-type (0.23s)\n"} +{"Time":"2026-10-18T09:57:46.016904049Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-active-type","Elapsed":0.23} +{"Time":"2026-10-18T09:57:46.01706094Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-scope"} +{"Time":"2026-10-18T09:57:46.017076386Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-scope","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-scope\n"} +{"Time":"2026-10-18T09:57:46.235974584Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-scope","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-scope (0.22s)\n"} +{"Time":"2026-10-18T09:57:46.236031222Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/missing-scope","Elapsed":0.22} +{"Time":"2026-10-18T09:57:46.236090907Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/null-scope"} +{"Time":"2026-10-18T09:57:46.236101178Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/null-scope","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/null-scope\n"} +{"Time":"2026-10-18T09:57:46.283842394Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/null-scope","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/null-scope (0.05s)\n"} +{"Time":"2026-10-18T09:57:46.283896633Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/null-scope","Elapsed":0.05} +{"Time":"2026-10-18T09:57:46.283911664Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-client"} +{"Time":"2026-10-18T09:57:46.283919464Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-client","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-client\n"} +{"Time":"2026-10-18T09:57:46.539855152Z","Action":"start","Package":"keycape/internal/server/oidc"} +{"Time":"2026-10-18T09:57:46.546991595Z","Action":"start","Package":"keycape/internal/server/policy"} +{"Time":"2026-10-18T09:57:46.567747426Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestRecoveryStripsCredentials"} +{"Time":"2026-10-18T09:57:46.567803487Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestRecoveryStripsCredentials","Output":"=== RUN TestRecoveryStripsCredentials\n"} +{"Time":"2026-10-18T09:57:46.568654571Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestRecoveryStripsCredentials","Output":"--- PASS: TestRecoveryStripsCredentials (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.568708701Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestRecoveryStripsCredentials","Elapsed":0} +{"Time":"2026-10-18T09:57:46.568732083Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestSharedLogoutRequiresConfirmationAndFixedReturn"} +{"Time":"2026-10-18T09:57:46.568746934Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSharedLogoutRequiresConfirmationAndFixedReturn","Output":"=== RUN TestSharedLogoutRequiresConfirmationAndFixedReturn\n"} +{"Time":"2026-10-18T09:57:46.569151529Z","Action":"run","Package":"keycape/internal/server/policy","Test":"TestReviewedApplyReplayRestartRollback"} +{"Time":"2026-10-18T09:57:46.5691785Z","Action":"output","Package":"keycape/internal/server/policy","Test":"TestReviewedApplyReplayRestartRollback","Output":"=== RUN TestReviewedApplyReplayRestartRollback\n"} +{"Time":"2026-10-18T09:57:46.571520162Z","Action":"output","Package":"keycape/internal/server/policy","Test":"TestReviewedApplyReplayRestartRollback","Output":"--- PASS: TestReviewedApplyReplayRestartRollback (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.571618504Z","Action":"pass","Package":"keycape/internal/server/policy","Test":"TestReviewedApplyReplayRestartRollback","Elapsed":0} +{"Time":"2026-10-18T09:57:46.571641706Z","Action":"run","Package":"keycape/internal/server/policy","Test":"TestStaleExpiredUnsupportedAndAlteredRequests"} +{"Time":"2026-10-18T09:57:46.571665899Z","Action":"output","Package":"keycape/internal/server/policy","Test":"TestStaleExpiredUnsupportedAndAlteredRequests","Output":"=== RUN TestStaleExpiredUnsupportedAndAlteredRequests\n"} +{"Time":"2026-10-18T09:57:46.571514307Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSharedLogoutRequiresConfirmationAndFixedReturn","Output":"--- PASS: TestSharedLogoutRequiresConfirmationAndFixedReturn (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.571683735Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestSharedLogoutRequiresConfirmationAndFixedReturn","Elapsed":0} +{"Time":"2026-10-18T09:57:46.571696197Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAssuranceReportsAuthenticationTimeNotMintTime"} +{"Time":"2026-10-18T09:57:46.571702221Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAssuranceReportsAuthenticationTimeNotMintTime","Output":"=== RUN TestAssuranceReportsAuthenticationTimeNotMintTime\n"} +{"Time":"2026-10-18T09:57:46.571864983Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAssuranceReportsAuthenticationTimeNotMintTime","Output":"--- PASS: TestAssuranceReportsAuthenticationTimeNotMintTime (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.571894569Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAssuranceReportsAuthenticationTimeNotMintTime","Elapsed":0} +{"Time":"2026-10-18T09:57:46.571911918Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAssuranceFallsBackToMintTimeWhenAuthTimeIsUnset"} +{"Time":"2026-10-18T09:57:46.571918816Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAssuranceFallsBackToMintTimeWhenAuthTimeIsUnset","Output":"=== RUN TestAssuranceFallsBackToMintTimeWhenAuthTimeIsUnset\n"} +{"Time":"2026-10-18T09:57:46.572191503Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAssuranceFallsBackToMintTimeWhenAuthTimeIsUnset","Output":"--- PASS: TestAssuranceFallsBackToMintTimeWhenAuthTimeIsUnset (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.572227428Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAssuranceFallsBackToMintTimeWhenAuthTimeIsUnset","Elapsed":0} +{"Time":"2026-10-18T09:57:46.572319034Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAssuranceCarriesTheDocumentedShape"} +{"Time":"2026-10-18T09:57:46.572329097Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAssuranceCarriesTheDocumentedShape","Output":"=== RUN TestAssuranceCarriesTheDocumentedShape\n"} +{"Time":"2026-10-18T09:57:46.572630889Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAssuranceCarriesTheDocumentedShape","Output":"--- PASS: TestAssuranceCarriesTheDocumentedShape (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.572686029Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAssuranceCarriesTheDocumentedShape","Elapsed":0} +{"Time":"2026-10-18T09:57:46.572701539Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantBindsTheZoneAClientDeclares"} +{"Time":"2026-10-18T09:57:46.572706399Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantBindsTheZoneAClientDeclares","Output":"=== RUN TestHumanTenantBindsTheZoneAClientDeclares\n"} +{"Time":"2026-10-18T09:57:46.572982075Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantBindsTheZoneAClientDeclares","Output":"--- PASS: TestHumanTenantBindsTheZoneAClientDeclares (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.573000677Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantBindsTheZoneAClientDeclares","Elapsed":0} +{"Time":"2026-10-18T09:57:46.573100174Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared"} +{"Time":"2026-10-18T09:57:46.573110931Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared","Output":"=== RUN TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared\n"} +{"Time":"2026-10-18T09:57:46.573370357Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/no_client_at_all"} +{"Time":"2026-10-18T09:57:46.573399429Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/no_client_at_all","Output":"=== RUN TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/no_client_at_all\n"} +{"Time":"2026-10-18T09:57:46.573654906Z","Action":"output","Package":"keycape/internal/server/policy","Test":"TestStaleExpiredUnsupportedAndAlteredRequests","Output":"--- PASS: TestStaleExpiredUnsupportedAndAlteredRequests (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.573691317Z","Action":"pass","Package":"keycape/internal/server/policy","Test":"TestStaleExpiredUnsupportedAndAlteredRequests","Elapsed":0} +{"Time":"2026-10-18T09:57:46.573656494Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/no_client_at_all","Output":"--- PASS: TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/no_client_at_all (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.573712066Z","Action":"run","Package":"keycape/internal/server/policy","Test":"TestWriteFailureDoesNotChangeEffectivePolicyAndSingleWriter"} +{"Time":"2026-10-18T09:57:46.573714186Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/no_client_at_all","Elapsed":0} +{"Time":"2026-10-18T09:57:46.573723915Z","Action":"output","Package":"keycape/internal/server/policy","Test":"TestWriteFailureDoesNotChangeEffectivePolicyAndSingleWriter","Output":"=== RUN TestWriteFailureDoesNotChangeEffectivePolicyAndSingleWriter\n"} +{"Time":"2026-10-18T09:57:46.573737505Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/client_declares_nothing"} +{"Time":"2026-10-18T09:57:46.573746342Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/client_declares_nothing","Output":"=== RUN TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/client_declares_nothing\n"} +{"Time":"2026-10-18T09:57:46.573933494Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/client_declares_nothing","Output":"--- PASS: TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/client_declares_nothing (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.573953043Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/client_declares_nothing","Elapsed":0} +{"Time":"2026-10-18T09:57:46.57405483Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/directory_answer_wins"} +{"Time":"2026-10-18T09:57:46.574069762Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/directory_answer_wins","Output":"=== RUN TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/directory_answer_wins\n"} +{"Time":"2026-10-18T09:57:46.574479273Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/directory_answer_wins","Output":"--- PASS: TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/directory_answer_wins (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.574532565Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared/directory_answer_wins","Elapsed":0} +{"Time":"2026-10-18T09:57:46.574613801Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared","Output":"--- PASS: TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.574789791Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantKeepsDirectoryAnswerWhenNoClientTenantIsDeclared","Elapsed":0} +{"Time":"2026-10-18T09:57:46.574807699Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantRefusesToRelabelAPlacedUser"} +{"Time":"2026-10-18T09:57:46.57481815Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantRefusesToRelabelAPlacedUser","Output":"=== RUN TestHumanTenantRefusesToRelabelAPlacedUser\n"} +{"Time":"2026-10-18T09:57:46.575093842Z","Action":"output","Package":"keycape/internal/server/policy","Test":"TestWriteFailureDoesNotChangeEffectivePolicyAndSingleWriter","Output":"--- PASS: TestWriteFailureDoesNotChangeEffectivePolicyAndSingleWriter (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.575129641Z","Action":"pass","Package":"keycape/internal/server/policy","Test":"TestWriteFailureDoesNotChangeEffectivePolicyAndSingleWriter","Elapsed":0} +{"Time":"2026-10-18T09:57:46.575116765Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantRefusesToRelabelAPlacedUser","Output":"--- PASS: TestHumanTenantRefusesToRelabelAPlacedUser (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.575149516Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantRefusesToRelabelAPlacedUser","Elapsed":0} +{"Time":"2026-10-18T09:57:46.575172113Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantAcceptsAgreementBetweenClientAndDirectory"} +{"Time":"2026-10-18T09:57:46.575181897Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantAcceptsAgreementBetweenClientAndDirectory","Output":"=== RUN TestHumanTenantAcceptsAgreementBetweenClientAndDirectory\n"} +{"Time":"2026-10-18T09:57:46.575209197Z","Action":"run","Package":"keycape/internal/server/policy","Test":"TestCorruptPersistenceFailsClosed"} +{"Time":"2026-10-18T09:57:46.575224815Z","Action":"output","Package":"keycape/internal/server/policy","Test":"TestCorruptPersistenceFailsClosed","Output":"=== RUN TestCorruptPersistenceFailsClosed\n"} +{"Time":"2026-10-18T09:57:46.575482693Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantAcceptsAgreementBetweenClientAndDirectory","Output":"--- PASS: TestHumanTenantAcceptsAgreementBetweenClientAndDirectory (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.575516282Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantAcceptsAgreementBetweenClientAndDirectory","Elapsed":0} +{"Time":"2026-10-18T09:57:46.575532982Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestPrincipalTypeIsNeverSuppliedByConfiguration"} +{"Time":"2026-10-18T09:57:46.575540981Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPrincipalTypeIsNeverSuppliedByConfiguration","Output":"=== RUN TestPrincipalTypeIsNeverSuppliedByConfiguration\n"} +{"Time":"2026-10-18T09:57:46.576238935Z","Action":"output","Package":"keycape/internal/server/policy","Test":"TestCorruptPersistenceFailsClosed","Output":"--- PASS: TestCorruptPersistenceFailsClosed (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.576296321Z","Action":"pass","Package":"keycape/internal/server/policy","Test":"TestCorruptPersistenceFailsClosed","Elapsed":0} +{"Time":"2026-10-18T09:57:46.576515548Z","Action":"run","Package":"keycape/internal/server/policy","Test":"TestHTTPRequiresSignedFreshPlatformMFA"} +{"Time":"2026-10-18T09:57:46.576534701Z","Action":"output","Package":"keycape/internal/server/policy","Test":"TestHTTPRequiresSignedFreshPlatformMFA","Output":"=== RUN TestHTTPRequiresSignedFreshPlatformMFA\n"} +{"Time":"2026-10-18T09:57:46.600750281Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-client","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-client (0.32s)\n"} +{"Time":"2026-10-18T09:57:46.600861653Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-client","Elapsed":0.32} +{"Time":"2026-10-18T09:57:46.600880635Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-subject"} +{"Time":"2026-10-18T09:57:46.600888209Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-subject","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-subject\n"} +{"Time":"2026-10-18T09:57:46.692067136Z","Action":"output","Package":"keycape/internal/server/policy","Test":"TestHTTPRequiresSignedFreshPlatformMFA","Output":"--- PASS: TestHTTPRequiresSignedFreshPlatformMFA (0.12s)\n"} +{"Time":"2026-10-18T09:57:46.692125812Z","Action":"pass","Package":"keycape/internal/server/policy","Test":"TestHTTPRequiresSignedFreshPlatformMFA","Elapsed":0.12} +{"Time":"2026-10-18T09:57:46.692300079Z","Action":"output","Package":"keycape/internal/server/policy","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:46.774206468Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPrincipalTypeIsNeverSuppliedByConfiguration","Output":"--- PASS: TestPrincipalTypeIsNeverSuppliedByConfiguration (0.20s)\n"} +{"Time":"2026-10-18T09:57:46.774269291Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestPrincipalTypeIsNeverSuppliedByConfiguration","Elapsed":0.2} +{"Time":"2026-10-18T09:57:46.774284205Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusExactExpiryCapacityAndTombstones"} +{"Time":"2026-10-18T09:57:46.774291104Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusExactExpiryCapacityAndTombstones","Output":"=== RUN TestTokenStatusExactExpiryCapacityAndTombstones\n"} +{"Time":"2026-10-18T09:57:46.77552265Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusExactExpiryCapacityAndTombstones","Output":"--- PASS: TestTokenStatusExactExpiryCapacityAndTombstones (0.00s)\n"} +{"Time":"2026-10-18T09:57:46.775571027Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusExactExpiryCapacityAndTombstones","Elapsed":0} +{"Time":"2026-10-18T09:57:46.77559009Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusConcurrentIssueReadAndRevoke"} +{"Time":"2026-10-18T09:57:46.77560183Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusConcurrentIssueReadAndRevoke","Output":"=== RUN TestTokenStatusConcurrentIssueReadAndRevoke\n"} +{"Time":"2026-10-18T09:57:46.800662569Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusConcurrentIssueReadAndRevoke","Output":"--- PASS: TestTokenStatusConcurrentIssueReadAndRevoke (0.02s)\n"} +{"Time":"2026-10-18T09:57:46.800720785Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusConcurrentIssueReadAndRevoke","Elapsed":0.02} +{"Time":"2026-10-18T09:57:46.801009221Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID"} +{"Time":"2026-10-18T09:57:46.801039952Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID","Output":"=== RUN TestServiceAudienceIsStaticAndDefaultsToClientID\n"} +{"Time":"2026-10-18T09:57:46.801459478Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID/#00"} +{"Time":"2026-10-18T09:57:46.801512409Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID/#00","Output":"=== RUN TestServiceAudienceIsStaticAndDefaultsToClientID/#00\n"} +{"Time":"2026-10-18T09:57:46.891137588Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-subject","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-subject (0.29s)\n"} +{"Time":"2026-10-18T09:57:46.891207823Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-subject","Elapsed":0.29} +{"Time":"2026-10-18T09:57:46.891225587Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issuer"} +{"Time":"2026-10-18T09:57:46.891233189Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issuer","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issuer\n"} +{"Time":"2026-10-18T09:57:47.022379342Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID/#00","Output":"--- PASS: TestServiceAudienceIsStaticAndDefaultsToClientID/#00 (0.22s)\n"} +{"Time":"2026-10-18T09:57:47.022445501Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID/#00","Elapsed":0.22} +{"Time":"2026-10-18T09:57:47.022468594Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID/approval-engine"} +{"Time":"2026-10-18T09:57:47.022480605Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID/approval-engine","Output":"=== RUN TestServiceAudienceIsStaticAndDefaultsToClientID/approval-engine\n"} +{"Time":"2026-10-18T09:57:47.066966331Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issuer","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issuer (0.18s)\n"} +{"Time":"2026-10-18T09:57:47.067030371Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issuer","Elapsed":0.18} +{"Time":"2026-10-18T09:57:47.067052815Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-audience"} +{"Time":"2026-10-18T09:57:47.067060615Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-audience","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-audience\n"} +{"Time":"2026-10-18T09:57:47.120064248Z","Action":"start","Package":"keycape/internal/server/readiness"} +{"Time":"2026-10-18T09:57:47.139908277Z","Action":"run","Package":"keycape/internal/server/readiness","Test":"TestReadyWhenEveryCheckPasses"} +{"Time":"2026-10-18T09:57:47.139959963Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestReadyWhenEveryCheckPasses","Output":"=== RUN TestReadyWhenEveryCheckPasses\n"} +{"Time":"2026-10-18T09:57:47.141396489Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestReadyWhenEveryCheckPasses","Output":"--- PASS: TestReadyWhenEveryCheckPasses (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.141441909Z","Action":"pass","Package":"keycape/internal/server/readiness","Test":"TestReadyWhenEveryCheckPasses","Elapsed":0} +{"Time":"2026-10-18T09:57:47.141617512Z","Action":"run","Package":"keycape/internal/server/readiness","Test":"TestNotReadyWhenAnyCheckFails"} +{"Time":"2026-10-18T09:57:47.141635772Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestNotReadyWhenAnyCheckFails","Output":"=== RUN TestNotReadyWhenAnyCheckFails\n"} +{"Time":"2026-10-18T09:57:47.142562594Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestNotReadyWhenAnyCheckFails","Output":"--- PASS: TestNotReadyWhenAnyCheckFails (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.142659061Z","Action":"pass","Package":"keycape/internal/server/readiness","Test":"TestNotReadyWhenAnyCheckFails","Elapsed":0} +{"Time":"2026-10-18T09:57:47.142682532Z","Action":"run","Package":"keycape/internal/server/readiness","Test":"TestNilProbeIsNotReady"} +{"Time":"2026-10-18T09:57:47.142700432Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestNilProbeIsNotReady","Output":"=== RUN TestNilProbeIsNotReady\n"} +{"Time":"2026-10-18T09:57:47.143173988Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestNilProbeIsNotReady","Output":"--- PASS: TestNilProbeIsNotReady (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.143202915Z","Action":"pass","Package":"keycape/internal/server/readiness","Test":"TestNilProbeIsNotReady","Elapsed":0} +{"Time":"2026-10-18T09:57:47.143209597Z","Action":"run","Package":"keycape/internal/server/readiness","Test":"TestFailureDetailIsNotDisclosed"} +{"Time":"2026-10-18T09:57:47.14321406Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestFailureDetailIsNotDisclosed","Output":"=== RUN TestFailureDetailIsNotDisclosed\n"} +{"Time":"2026-10-18T09:57:47.143892329Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestFailureDetailIsNotDisclosed","Output":"--- PASS: TestFailureDetailIsNotDisclosed (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.143924556Z","Action":"pass","Package":"keycape/internal/server/readiness","Test":"TestFailureDetailIsNotDisclosed","Elapsed":0} +{"Time":"2026-10-18T09:57:47.143931211Z","Action":"run","Package":"keycape/internal/server/readiness","Test":"TestResultsAreCachedWithinTheTTL"} +{"Time":"2026-10-18T09:57:47.143936621Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestResultsAreCachedWithinTheTTL","Output":"=== RUN TestResultsAreCachedWithinTheTTL\n"} +{"Time":"2026-10-18T09:57:47.145398325Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestResultsAreCachedWithinTheTTL","Output":"--- PASS: TestResultsAreCachedWithinTheTTL (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.146079903Z","Action":"pass","Package":"keycape/internal/server/readiness","Test":"TestResultsAreCachedWithinTheTTL","Elapsed":0} +{"Time":"2026-10-18T09:57:47.146127442Z","Action":"run","Package":"keycape/internal/server/readiness","Test":"TestSlowProbeTimesOutRatherThanBlocking"} +{"Time":"2026-10-18T09:57:47.146138885Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestSlowProbeTimesOutRatherThanBlocking","Output":"=== RUN TestSlowProbeTimesOutRatherThanBlocking\n"} +{"Time":"2026-10-18T09:57:47.197571489Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestSlowProbeTimesOutRatherThanBlocking","Output":"--- PASS: TestSlowProbeTimesOutRatherThanBlocking (0.05s)\n"} +{"Time":"2026-10-18T09:57:47.197618054Z","Action":"pass","Package":"keycape/internal/server/readiness","Test":"TestSlowProbeTimesOutRatherThanBlocking","Elapsed":0.05} +{"Time":"2026-10-18T09:57:47.197783582Z","Action":"run","Package":"keycape/internal/server/readiness","Test":"TestChecksRunConcurrently"} +{"Time":"2026-10-18T09:57:47.197798154Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestChecksRunConcurrently","Output":"=== RUN TestChecksRunConcurrently\n"} +{"Time":"2026-10-18T09:57:47.245224464Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-audience","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-audience (0.18s)\n"} +{"Time":"2026-10-18T09:57:47.245269028Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-audience","Elapsed":0.18} +{"Time":"2026-10-18T09:57:47.24528038Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-jti"} +{"Time":"2026-10-18T09:57:47.245285809Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-jti","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-jti\n"} +{"Time":"2026-10-18T09:57:47.323566554Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-jti","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-jti (0.08s)\n"} +{"Time":"2026-10-18T09:57:47.323637727Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-jti","Elapsed":0.08} +{"Time":"2026-10-18T09:57:47.323662011Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-expiry"} +{"Time":"2026-10-18T09:57:47.323669135Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-expiry","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-expiry\n"} +{"Time":"2026-10-18T09:57:47.348915117Z","Action":"output","Package":"keycape/internal/server/readiness","Test":"TestChecksRunConcurrently","Output":"--- PASS: TestChecksRunConcurrently (0.15s)\n"} +{"Time":"2026-10-18T09:57:47.348988761Z","Action":"pass","Package":"keycape/internal/server/readiness","Test":"TestChecksRunConcurrently","Elapsed":0.15} +{"Time":"2026-10-18T09:57:47.349002801Z","Action":"output","Package":"keycape/internal/server/readiness","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:47.374737462Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID/approval-engine","Output":"--- PASS: TestServiceAudienceIsStaticAndDefaultsToClientID/approval-engine (0.35s)\n"} +{"Time":"2026-10-18T09:57:47.374786895Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID/approval-engine","Elapsed":0.35} +{"Time":"2026-10-18T09:57:47.374802188Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID","Output":"--- PASS: TestServiceAudienceIsStaticAndDefaultsToClientID (0.57s)\n"} +{"Time":"2026-10-18T09:57:47.374945723Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestServiceAudienceIsStaticAndDefaultsToClientID","Elapsed":0.57} +{"Time":"2026-10-18T09:57:47.374963072Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanResourceAudiencePreservesIDTokenAudience"} +{"Time":"2026-10-18T09:57:47.374974406Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanResourceAudiencePreservesIDTokenAudience","Output":"=== RUN TestHumanResourceAudiencePreservesIDTokenAudience\n"} +{"Time":"2026-10-18T09:57:47.515499485Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanResourceAudiencePreservesIDTokenAudience","Output":"--- PASS: TestHumanResourceAudiencePreservesIDTokenAudience (0.14s)\n"} +{"Time":"2026-10-18T09:57:47.515557619Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanResourceAudiencePreservesIDTokenAudience","Elapsed":0.14} +{"Time":"2026-10-18T09:57:47.51557Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanExcessScopeRejectedBeforeAuthentication"} +{"Time":"2026-10-18T09:57:47.515575563Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanExcessScopeRejectedBeforeAuthentication","Output":"=== RUN TestHumanExcessScopeRejectedBeforeAuthentication\n"} +{"Time":"2026-10-18T09:57:47.515899842Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanExcessScopeRejectedBeforeAuthentication","Output":"--- PASS: TestHumanExcessScopeRejectedBeforeAuthentication (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.515914152Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanExcessScopeRejectedBeforeAuthentication","Elapsed":0} +{"Time":"2026-10-18T09:57:47.515921943Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenRejectsScopeRemovedAfterAuthorization"} +{"Time":"2026-10-18T09:57:47.515926659Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenRejectsScopeRemovedAfterAuthorization","Output":"=== RUN TestTokenRejectsScopeRemovedAfterAuthorization\n"} +{"Time":"2026-10-18T09:57:47.578719236Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-expiry","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-expiry (0.25s)\n"} +{"Time":"2026-10-18T09:57:47.578805414Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-expiry","Elapsed":0.25} +{"Time":"2026-10-18T09:57:47.578826316Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issued"} +{"Time":"2026-10-18T09:57:47.578839725Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issued","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issued\n"} +{"Time":"2026-10-18T09:57:47.644463971Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenRejectsScopeRemovedAfterAuthorization","Output":"--- PASS: TestTokenRejectsScopeRemovedAfterAuthorization (0.13s)\n"} +{"Time":"2026-10-18T09:57:47.645048522Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenRejectsScopeRemovedAfterAuthorization","Elapsed":0.13} +{"Time":"2026-10-18T09:57:47.645081895Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_ValidRequest_RedirectsToAuthelia"} +{"Time":"2026-10-18T09:57:47.645106845Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_ValidRequest_RedirectsToAuthelia","Output":"=== RUN TestAuthorizeHandler_ValidRequest_RedirectsToAuthelia\n"} +{"Time":"2026-10-18T09:57:47.645421431Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_ValidRequest_RedirectsToAuthelia","Output":"--- PASS: TestAuthorizeHandler_ValidRequest_RedirectsToAuthelia (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.645439872Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_ValidRequest_RedirectsToAuthelia","Elapsed":0} +{"Time":"2026-10-18T09:57:47.645447843Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_BootstrapConsoleRedirectURI_RedirectsToAuthelia"} +{"Time":"2026-10-18T09:57:47.645453452Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_BootstrapConsoleRedirectURI_RedirectsToAuthelia","Output":"=== RUN TestAuthorizeHandler_BootstrapConsoleRedirectURI_RedirectsToAuthelia\n"} +{"Time":"2026-10-18T09:57:47.645759714Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_BootstrapConsoleRedirectURI_RedirectsToAuthelia","Output":"--- PASS: TestAuthorizeHandler_BootstrapConsoleRedirectURI_RedirectsToAuthelia (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.645774908Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_BootstrapConsoleRedirectURI_RedirectsToAuthelia","Elapsed":0} +{"Time":"2026-10-18T09:57:47.64579159Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_EmitsAuthStart"} +{"Time":"2026-10-18T09:57:47.645796558Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_EmitsAuthStart","Output":"=== RUN TestAuthorizeHandler_EmitsAuthStart\n"} +{"Time":"2026-10-18T09:57:47.646114867Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_EmitsAuthStart","Output":"--- PASS: TestAuthorizeHandler_EmitsAuthStart (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.646131026Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_EmitsAuthStart","Elapsed":0} +{"Time":"2026-10-18T09:57:47.646151152Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_MissingCodeChallenge_InvalidProfileUsage"} +{"Time":"2026-10-18T09:57:47.646156608Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_MissingCodeChallenge_InvalidProfileUsage","Output":"=== RUN TestAuthorizeHandler_MissingCodeChallenge_InvalidProfileUsage\n"} +{"Time":"2026-10-18T09:57:47.646637777Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_MissingCodeChallenge_InvalidProfileUsage","Output":"--- PASS: TestAuthorizeHandler_MissingCodeChallenge_InvalidProfileUsage (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.646655045Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_MissingCodeChallenge_InvalidProfileUsage","Elapsed":0} +{"Time":"2026-10-18T09:57:47.646667083Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_WildcardRedirectURI_RejectedForSafety"} +{"Time":"2026-10-18T09:57:47.646671664Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_WildcardRedirectURI_RejectedForSafety","Output":"=== RUN TestAuthorizeHandler_WildcardRedirectURI_RejectedForSafety\n"} +{"Time":"2026-10-18T09:57:47.646991957Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_WildcardRedirectURI_RejectedForSafety","Output":"--- PASS: TestAuthorizeHandler_WildcardRedirectURI_RejectedForSafety (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.647006456Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_WildcardRedirectURI_RejectedForSafety","Elapsed":0} +{"Time":"2026-10-18T09:57:47.647021091Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_UnknownClient_InvalidProfileUsage"} +{"Time":"2026-10-18T09:57:47.647025618Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_UnknownClient_InvalidProfileUsage","Output":"=== RUN TestAuthorizeHandler_UnknownClient_InvalidProfileUsage\n"} +{"Time":"2026-10-18T09:57:47.647327074Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_UnknownClient_InvalidProfileUsage","Output":"--- PASS: TestAuthorizeHandler_UnknownClient_InvalidProfileUsage (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.647341808Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_UnknownClient_InvalidProfileUsage","Elapsed":0} +{"Time":"2026-10-18T09:57:47.647393441Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_WrongResponseType_FeatureNotSupported"} +{"Time":"2026-10-18T09:57:47.647402052Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_WrongResponseType_FeatureNotSupported","Output":"=== RUN TestAuthorizeHandler_WrongResponseType_FeatureNotSupported\n"} +{"Time":"2026-10-18T09:57:47.647679152Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_WrongResponseType_FeatureNotSupported","Output":"--- PASS: TestAuthorizeHandler_WrongResponseType_FeatureNotSupported (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.6476944Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_WrongResponseType_FeatureNotSupported","Elapsed":0} +{"Time":"2026-10-18T09:57:47.647701831Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_MissingOpenIDScope_InvalidProfileUsage"} +{"Time":"2026-10-18T09:57:47.647706195Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_MissingOpenIDScope_InvalidProfileUsage","Output":"=== RUN TestAuthorizeHandler_MissingOpenIDScope_InvalidProfileUsage\n"} +{"Time":"2026-10-18T09:57:47.648045893Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_MissingOpenIDScope_InvalidProfileUsage","Output":"--- PASS: TestAuthorizeHandler_MissingOpenIDScope_InvalidProfileUsage (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.648058815Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_MissingOpenIDScope_InvalidProfileUsage","Elapsed":0} +{"Time":"2026-10-18T09:57:47.64809437Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_PlainCodeChallengeMethod_RejectedForSafety"} +{"Time":"2026-10-18T09:57:47.648102485Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_PlainCodeChallengeMethod_RejectedForSafety","Output":"=== RUN TestAuthorizeHandler_PlainCodeChallengeMethod_RejectedForSafety\n"} +{"Time":"2026-10-18T09:57:47.648591842Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_PlainCodeChallengeMethod_RejectedForSafety","Output":"--- PASS: TestAuthorizeHandler_PlainCodeChallengeMethod_RejectedForSafety (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.648628615Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_PlainCodeChallengeMethod_RejectedForSafety","Elapsed":0} +{"Time":"2026-10-18T09:57:47.648637379Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_UnknownRedirectURI_InvalidProfileUsage"} +{"Time":"2026-10-18T09:57:47.648641888Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_UnknownRedirectURI_InvalidProfileUsage","Output":"=== RUN TestAuthorizeHandler_UnknownRedirectURI_InvalidProfileUsage\n"} +{"Time":"2026-10-18T09:57:47.648935264Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_UnknownRedirectURI_InvalidProfileUsage","Output":"--- PASS: TestAuthorizeHandler_UnknownRedirectURI_InvalidProfileUsage (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.648950449Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_UnknownRedirectURI_InvalidProfileUsage","Elapsed":0} +{"Time":"2026-10-18T09:57:47.648985283Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_Success_RedirectsWithCode"} +{"Time":"2026-10-18T09:57:47.648991369Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_Success_RedirectsWithCode","Output":"=== RUN TestAuthorizeCallback_Success_RedirectsWithCode\n"} +{"Time":"2026-10-18T09:57:47.650476267Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_Success_RedirectsWithCode","Output":"--- PASS: TestAuthorizeCallback_Success_RedirectsWithCode (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.650497638Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_Success_RedirectsWithCode","Elapsed":0} +{"Time":"2026-10-18T09:57:47.65050477Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFAFailed_AuthFailure"} +{"Time":"2026-10-18T09:57:47.650509099Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFAFailed_AuthFailure","Output":"=== RUN TestAuthorizeCallback_MFAFailed_AuthFailure\n"} +{"Time":"2026-10-18T09:57:47.650832033Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFAFailed_AuthFailure","Output":"--- PASS: TestAuthorizeCallback_MFAFailed_AuthFailure (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.650849031Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFAFailed_AuthFailure","Elapsed":0} +{"Time":"2026-10-18T09:57:47.650856497Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFARequired_RendersChallengeWithoutToken"} +{"Time":"2026-10-18T09:57:47.650860961Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFARequired_RendersChallengeWithoutToken","Output":"=== RUN TestAuthorizeCallback_MFARequired_RendersChallengeWithoutToken\n"} +{"Time":"2026-10-18T09:57:47.651826175Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFARequired_RendersChallengeWithoutToken","Output":"--- PASS: TestAuthorizeCallback_MFARequired_RendersChallengeWithoutToken (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.651880684Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFARequired_RendersChallengeWithoutToken","Elapsed":0} +{"Time":"2026-10-18T09:57:47.651892416Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_ValidToken_RedirectsWithCode"} +{"Time":"2026-10-18T09:57:47.651912028Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_ValidToken_RedirectsWithCode","Output":"=== RUN TestAuthorizeCallback_MFASubmission_ValidToken_RedirectsWithCode\n"} +{"Time":"2026-10-18T09:57:47.652172402Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_ValidToken_RedirectsWithCode","Output":"--- PASS: TestAuthorizeCallback_MFASubmission_ValidToken_RedirectsWithCode (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.652191149Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_ValidToken_RedirectsWithCode","Elapsed":0} +{"Time":"2026-10-18T09:57:47.6521983Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_FreshEvenWithStalePriorLoginCookie"} +{"Time":"2026-10-18T09:57:47.652202881Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_FreshEvenWithStalePriorLoginCookie","Output":"=== RUN TestAuthorizeCallback_MFASubmission_FreshEvenWithStalePriorLoginCookie\n"} +{"Time":"2026-10-18T09:57:47.652590099Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_FreshEvenWithStalePriorLoginCookie","Output":"--- PASS: TestAuthorizeCallback_MFASubmission_FreshEvenWithStalePriorLoginCookie (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.652616592Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_FreshEvenWithStalePriorLoginCookie","Elapsed":0} +{"Time":"2026-10-18T09:57:47.652622562Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFANotRequired_SessionRecordsMFAVerifiedFalse"} +{"Time":"2026-10-18T09:57:47.652626872Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFANotRequired_SessionRecordsMFAVerifiedFalse","Output":"=== RUN TestAuthorizeCallback_MFANotRequired_SessionRecordsMFAVerifiedFalse\n"} +{"Time":"2026-10-18T09:57:47.65300042Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFANotRequired_SessionRecordsMFAVerifiedFalse","Output":"--- PASS: TestAuthorizeCallback_MFANotRequired_SessionRecordsMFAVerifiedFalse (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.65301565Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFANotRequired_SessionRecordsMFAVerifiedFalse","Elapsed":0} +{"Time":"2026-10-18T09:57:47.653031223Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ClientPolicyCanDisableEnrolledMFA"} +{"Time":"2026-10-18T09:57:47.653035786Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ClientPolicyCanDisableEnrolledMFA","Output":"=== RUN TestAuthorizeCallback_ClientPolicyCanDisableEnrolledMFA\n"} +{"Time":"2026-10-18T09:57:47.653349848Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ClientPolicyCanDisableEnrolledMFA","Output":"--- PASS: TestAuthorizeCallback_ClientPolicyCanDisableEnrolledMFA (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.653364663Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ClientPolicyCanDisableEnrolledMFA","Elapsed":0} +{"Time":"2026-10-18T09:57:47.653379226Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ACRStepUpOverridesClientAAL1"} +{"Time":"2026-10-18T09:57:47.6533846Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ACRStepUpOverridesClientAAL1","Output":"=== RUN TestAuthorizeCallback_ACRStepUpOverridesClientAAL1\n"} +{"Time":"2026-10-18T09:57:47.65387724Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ACRStepUpOverridesClientAAL1","Output":"--- PASS: TestAuthorizeCallback_ACRStepUpOverridesClientAAL1 (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.65391082Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ACRStepUpOverridesClientAAL1","Elapsed":0} +{"Time":"2026-10-18T09:57:47.653917429Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_InvalidToken_AuthFailure"} +{"Time":"2026-10-18T09:57:47.653921902Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_InvalidToken_AuthFailure","Output":"=== RUN TestAuthorizeCallback_MFASubmission_InvalidToken_AuthFailure\n"} +{"Time":"2026-10-18T09:57:47.654199011Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_InvalidToken_AuthFailure","Output":"--- PASS: TestAuthorizeCallback_MFASubmission_InvalidToken_AuthFailure (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.654374811Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_MFASubmission_InvalidToken_AuthFailure","Elapsed":0} +{"Time":"2026-10-18T09:57:47.654388256Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_AuthProviderFailed_AuthFailure"} +{"Time":"2026-10-18T09:57:47.654394018Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_AuthProviderFailed_AuthFailure","Output":"=== RUN TestAuthorizeCallback_AuthProviderFailed_AuthFailure\n"} +{"Time":"2026-10-18T09:57:47.654638456Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_AuthProviderFailed_AuthFailure","Output":"--- PASS: TestAuthorizeCallback_AuthProviderFailed_AuthFailure (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.65467283Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_AuthProviderFailed_AuthFailure","Elapsed":0} +{"Time":"2026-10-18T09:57:47.65484516Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_EmitsAuthSuccess"} +{"Time":"2026-10-18T09:57:47.654866729Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_EmitsAuthSuccess","Output":"=== RUN TestAuthorizeCallback_EmitsAuthSuccess\n"} +{"Time":"2026-10-18T09:57:47.655208591Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_EmitsAuthSuccess","Output":"--- PASS: TestAuthorizeCallback_EmitsAuthSuccess (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.655238402Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_EmitsAuthSuccess","Elapsed":0} +{"Time":"2026-10-18T09:57:47.655332488Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_ServeHTTP_DispatchesToCallback"} +{"Time":"2026-10-18T09:57:47.655343498Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_ServeHTTP_DispatchesToCallback","Output":"=== RUN TestAuthorizeHandler_ServeHTTP_DispatchesToCallback\n"} +{"Time":"2026-10-18T09:57:47.655652285Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_ServeHTTP_DispatchesToCallback","Output":"--- PASS: TestAuthorizeHandler_ServeHTTP_DispatchesToCallback (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.655678201Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeHandler_ServeHTTP_DispatchesToCallback","Elapsed":0} +{"Time":"2026-10-18T09:57:47.655761709Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestFreshLoginRequirementsReachProvider"} +{"Time":"2026-10-18T09:57:47.655773089Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestFreshLoginRequirementsReachProvider","Output":"=== RUN TestFreshLoginRequirementsReachProvider\n"} +{"Time":"2026-10-18T09:57:47.65626269Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestFreshLoginRequirementsReachProvider","Output":"--- PASS: TestFreshLoginRequirementsReachProvider (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.656282906Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestFreshLoginRequirementsReachProvider","Elapsed":0} +{"Time":"2026-10-18T09:57:47.656306018Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness"} +{"Time":"2026-10-18T09:57:47.656311726Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness","Output":"=== RUN TestCallbackEnforcesUpstreamFreshness\n"} +{"Time":"2026-10-18T09:57:47.656496669Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_after_request"} +{"Time":"2026-10-18T09:57:47.656567761Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_after_request","Output":"=== RUN TestCallbackEnforcesUpstreamFreshness/prompt_login_after_request\n"} +{"Time":"2026-10-18T09:57:47.65707325Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_after_request","Output":"--- PASS: TestCallbackEnforcesUpstreamFreshness/prompt_login_after_request (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.657109968Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_after_request","Elapsed":0} +{"Time":"2026-10-18T09:57:47.657199266Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_same_second_as_request"} +{"Time":"2026-10-18T09:57:47.657208833Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_same_second_as_request","Output":"=== RUN TestCallbackEnforcesUpstreamFreshness/prompt_login_same_second_as_request\n"} +{"Time":"2026-10-18T09:57:47.657582121Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_same_second_as_request","Output":"--- PASS: TestCallbackEnforcesUpstreamFreshness/prompt_login_same_second_as_request (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.657617225Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_same_second_as_request","Elapsed":0} +{"Time":"2026-10-18T09:57:47.657627811Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_reused_session"} +{"Time":"2026-10-18T09:57:47.657636134Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_reused_session","Output":"=== RUN TestCallbackEnforcesUpstreamFreshness/prompt_login_reused_session\n"} +{"Time":"2026-10-18T09:57:47.657929122Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_reused_session","Output":"--- PASS: TestCallbackEnforcesUpstreamFreshness/prompt_login_reused_session (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.657951277Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_reused_session","Elapsed":0} +{"Time":"2026-10-18T09:57:47.65805567Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_without_auth_time"} +{"Time":"2026-10-18T09:57:47.658065003Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_without_auth_time","Output":"=== RUN TestCallbackEnforcesUpstreamFreshness/prompt_login_without_auth_time\n"} +{"Time":"2026-10-18T09:57:47.65838342Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_without_auth_time","Output":"--- PASS: TestCallbackEnforcesUpstreamFreshness/prompt_login_without_auth_time (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.658462618Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/prompt_login_without_auth_time","Elapsed":0} +{"Time":"2026-10-18T09:57:47.658474332Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_zero_is_prompt_login"} +{"Time":"2026-10-18T09:57:47.658492078Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_zero_is_prompt_login","Output":"=== RUN TestCallbackEnforcesUpstreamFreshness/max_age_zero_is_prompt_login\n"} +{"Time":"2026-10-18T09:57:47.658722748Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_zero_is_prompt_login","Output":"--- PASS: TestCallbackEnforcesUpstreamFreshness/max_age_zero_is_prompt_login (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.658741125Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_zero_is_prompt_login","Elapsed":0} +{"Time":"2026-10-18T09:57:47.658816996Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_satisfied"} +{"Time":"2026-10-18T09:57:47.658830107Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_satisfied","Output":"=== RUN TestCallbackEnforcesUpstreamFreshness/max_age_satisfied\n"} +{"Time":"2026-10-18T09:57:47.659107415Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_satisfied","Output":"--- PASS: TestCallbackEnforcesUpstreamFreshness/max_age_satisfied (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.659331838Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_satisfied","Elapsed":0} +{"Time":"2026-10-18T09:57:47.659353976Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_exceeded"} +{"Time":"2026-10-18T09:57:47.659358755Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_exceeded","Output":"=== RUN TestCallbackEnforcesUpstreamFreshness/max_age_exceeded\n"} +{"Time":"2026-10-18T09:57:47.659743744Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_exceeded","Output":"--- PASS: TestCallbackEnforcesUpstreamFreshness/max_age_exceeded (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.65976323Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/max_age_exceeded","Elapsed":0} +{"Time":"2026-10-18T09:57:47.659796386Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/no_freshness_requested"} +{"Time":"2026-10-18T09:57:47.6598014Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/no_freshness_requested","Output":"=== RUN TestCallbackEnforcesUpstreamFreshness/no_freshness_requested\n"} +{"Time":"2026-10-18T09:57:47.66012117Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/no_freshness_requested","Output":"--- PASS: TestCallbackEnforcesUpstreamFreshness/no_freshness_requested (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.660143343Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness/no_freshness_requested","Elapsed":0} +{"Time":"2026-10-18T09:57:47.660184308Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness","Output":"--- PASS: TestCallbackEnforcesUpstreamFreshness (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.660343364Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCallbackEnforcesUpstreamFreshness","Elapsed":0} +{"Time":"2026-10-18T09:57:47.660407548Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ResponseCode"} +{"Time":"2026-10-18T09:57:47.660431363Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ResponseCode","Output":"=== RUN TestDiscoveryHandler_ResponseCode\n"} +{"Time":"2026-10-18T09:57:47.661161354Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ResponseCode","Output":"--- PASS: TestDiscoveryHandler_ResponseCode (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.661182374Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ResponseCode","Elapsed":0} +{"Time":"2026-10-18T09:57:47.66127187Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ContentType"} +{"Time":"2026-10-18T09:57:47.661281284Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ContentType","Output":"=== RUN TestDiscoveryHandler_ContentType\n"} +{"Time":"2026-10-18T09:57:47.661568997Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ContentType","Output":"--- PASS: TestDiscoveryHandler_ContentType (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.661581558Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ContentType","Elapsed":0} +{"Time":"2026-10-18T09:57:47.661658872Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_CacheControl"} +{"Time":"2026-10-18T09:57:47.661668007Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_CacheControl","Output":"=== RUN TestDiscoveryHandler_CacheControl\n"} +{"Time":"2026-10-18T09:57:47.661946324Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_CacheControl","Output":"--- PASS: TestDiscoveryHandler_CacheControl (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.662069607Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_CacheControl","Elapsed":0} +{"Time":"2026-10-18T09:57:47.662091934Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Issuer"} +{"Time":"2026-10-18T09:57:47.662097019Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Issuer","Output":"=== RUN TestDiscoveryHandler_Issuer\n"} +{"Time":"2026-10-18T09:57:47.662647334Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Issuer","Output":"--- PASS: TestDiscoveryHandler_Issuer (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.662663006Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Issuer","Elapsed":0} +{"Time":"2026-10-18T09:57:47.662735162Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Endpoints"} +{"Time":"2026-10-18T09:57:47.662744351Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Endpoints","Output":"=== RUN TestDiscoveryHandler_Endpoints\n"} +{"Time":"2026-10-18T09:57:47.663311914Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Endpoints","Output":"--- PASS: TestDiscoveryHandler_Endpoints (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.663326504Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Endpoints","Elapsed":0} +{"Time":"2026-10-18T09:57:47.663399742Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_EndSessionAdvertisedWhenConfigured"} +{"Time":"2026-10-18T09:57:47.66340921Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_EndSessionAdvertisedWhenConfigured","Output":"=== RUN TestDiscoveryHandler_EndSessionAdvertisedWhenConfigured\n"} +{"Time":"2026-10-18T09:57:47.664037108Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_EndSessionAdvertisedWhenConfigured","Output":"--- PASS: TestDiscoveryHandler_EndSessionAdvertisedWhenConfigured (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.664060057Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_EndSessionAdvertisedWhenConfigured","Elapsed":0} +{"Time":"2026-10-18T09:57:47.664068822Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_EndSessionOmittedWhenEmpty"} +{"Time":"2026-10-18T09:57:47.664084656Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_EndSessionOmittedWhenEmpty","Output":"=== RUN TestDiscoveryHandler_EndSessionOmittedWhenEmpty\n"} +{"Time":"2026-10-18T09:57:47.664669948Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_EndSessionOmittedWhenEmpty","Output":"--- PASS: TestDiscoveryHandler_EndSessionOmittedWhenEmpty (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.664703068Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_EndSessionOmittedWhenEmpty","Elapsed":0} +{"Time":"2026-10-18T09:57:47.664722122Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_UserinfoOmittedWhenEmpty"} +{"Time":"2026-10-18T09:57:47.664728245Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_UserinfoOmittedWhenEmpty","Output":"=== RUN TestDiscoveryHandler_UserinfoOmittedWhenEmpty\n"} +{"Time":"2026-10-18T09:57:47.665389795Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_UserinfoOmittedWhenEmpty","Output":"--- PASS: TestDiscoveryHandler_UserinfoOmittedWhenEmpty (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.665740332Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_UserinfoOmittedWhenEmpty","Elapsed":0} +{"Time":"2026-10-18T09:57:47.665753884Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_NoRegistrationEndpoint"} +{"Time":"2026-10-18T09:57:47.66575778Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_NoRegistrationEndpoint","Output":"=== RUN TestDiscoveryHandler_NoRegistrationEndpoint\n"} +{"Time":"2026-10-18T09:57:47.666298725Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_NoRegistrationEndpoint","Output":"--- PASS: TestDiscoveryHandler_NoRegistrationEndpoint (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.66631758Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_NoRegistrationEndpoint","Elapsed":0} +{"Time":"2026-10-18T09:57:47.666396535Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ResponseTypes"} +{"Time":"2026-10-18T09:57:47.666406138Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ResponseTypes","Output":"=== RUN TestDiscoveryHandler_ResponseTypes\n"} +{"Time":"2026-10-18T09:57:47.666971511Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ResponseTypes","Output":"--- PASS: TestDiscoveryHandler_ResponseTypes (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.666993387Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ResponseTypes","Elapsed":0} +{"Time":"2026-10-18T09:57:47.667002359Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_GrantTypes"} +{"Time":"2026-10-18T09:57:47.66701143Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_GrantTypes","Output":"=== RUN TestDiscoveryHandler_GrantTypes\n"} +{"Time":"2026-10-18T09:57:47.667619409Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_GrantTypes","Output":"--- PASS: TestDiscoveryHandler_GrantTypes (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.667637831Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_GrantTypes","Elapsed":0} +{"Time":"2026-10-18T09:57:47.667827606Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_CodeChallengeMethod"} +{"Time":"2026-10-18T09:57:47.667844937Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_CodeChallengeMethod","Output":"=== RUN TestDiscoveryHandler_CodeChallengeMethod\n"} +{"Time":"2026-10-18T09:57:47.668402954Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_CodeChallengeMethod","Output":"--- PASS: TestDiscoveryHandler_CodeChallengeMethod (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.668457066Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_CodeChallengeMethod","Elapsed":0} +{"Time":"2026-10-18T09:57:47.668474488Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_SigningAlg"} +{"Time":"2026-10-18T09:57:47.66848254Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_SigningAlg","Output":"=== RUN TestDiscoveryHandler_SigningAlg\n"} +{"Time":"2026-10-18T09:57:47.669049581Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_SigningAlg","Output":"--- PASS: TestDiscoveryHandler_SigningAlg (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.669067778Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_SigningAlg","Elapsed":0} +{"Time":"2026-10-18T09:57:47.669090627Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Scopes"} +{"Time":"2026-10-18T09:57:47.669100781Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Scopes","Output":"=== RUN TestDiscoveryHandler_Scopes\n"} +{"Time":"2026-10-18T09:57:47.669979918Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Scopes","Output":"--- PASS: TestDiscoveryHandler_Scopes (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.670018954Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Scopes","Elapsed":0} +{"Time":"2026-10-18T09:57:47.670026348Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_TokenEndpointAuthMethods"} +{"Time":"2026-10-18T09:57:47.670030766Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_TokenEndpointAuthMethods","Output":"=== RUN TestDiscoveryHandler_TokenEndpointAuthMethods\n"} +{"Time":"2026-10-18T09:57:47.670969543Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_TokenEndpointAuthMethods","Output":"--- PASS: TestDiscoveryHandler_TokenEndpointAuthMethods (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.67101068Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_TokenEndpointAuthMethods","Elapsed":0} +{"Time":"2026-10-18T09:57:47.671032105Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Claims"} +{"Time":"2026-10-18T09:57:47.67104307Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Claims","Output":"=== RUN TestDiscoveryHandler_Claims\n"} +{"Time":"2026-10-18T09:57:47.671706081Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Claims","Output":"--- PASS: TestDiscoveryHandler_Claims (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.671758958Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_Claims","Elapsed":0} +{"Time":"2026-10-18T09:57:47.671780726Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryAdvertisesEveryCoreProfileClaim"} +{"Time":"2026-10-18T09:57:47.671792619Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryAdvertisesEveryCoreProfileClaim","Output":"=== RUN TestDiscoveryAdvertisesEveryCoreProfileClaim\n"} +{"Time":"2026-10-18T09:57:47.672420463Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryAdvertisesEveryCoreProfileClaim","Output":"--- PASS: TestDiscoveryAdvertisesEveryCoreProfileClaim (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.672465216Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryAdvertisesEveryCoreProfileClaim","Elapsed":0} +{"Time":"2026-10-18T09:57:47.67253729Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryScopesIncludeConfiguredResourceScopes"} +{"Time":"2026-10-18T09:57:47.672549933Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryScopesIncludeConfiguredResourceScopes","Output":"=== RUN TestDiscoveryScopesIncludeConfiguredResourceScopes\n"} +{"Time":"2026-10-18T09:57:47.673114376Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryScopesIncludeConfiguredResourceScopes","Output":"--- PASS: TestDiscoveryScopesIncludeConfiguredResourceScopes (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.673127514Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryScopesIncludeConfiguredResourceScopes","Elapsed":0} +{"Time":"2026-10-18T09:57:47.673194143Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryScopesFallBackToBaseline"} +{"Time":"2026-10-18T09:57:47.673204341Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryScopesFallBackToBaseline","Output":"=== RUN TestDiscoveryScopesFallBackToBaseline\n"} +{"Time":"2026-10-18T09:57:47.673742392Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryScopesFallBackToBaseline","Output":"--- PASS: TestDiscoveryScopesFallBackToBaseline (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.673993821Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryScopesFallBackToBaseline","Elapsed":0} +{"Time":"2026-10-18T09:57:47.674035381Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_SubjectTypes"} +{"Time":"2026-10-18T09:57:47.67405173Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_SubjectTypes","Output":"=== RUN TestDiscoveryHandler_SubjectTypes\n"} +{"Time":"2026-10-18T09:57:47.674601663Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_SubjectTypes","Output":"--- PASS: TestDiscoveryHandler_SubjectTypes (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.674632782Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_SubjectTypes","Elapsed":0} +{"Time":"2026-10-18T09:57:47.674641384Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_RequestParameterNotSupported"} +{"Time":"2026-10-18T09:57:47.674645325Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_RequestParameterNotSupported","Output":"=== RUN TestDiscoveryHandler_RequestParameterNotSupported\n"} +{"Time":"2026-10-18T09:57:47.675194638Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_RequestParameterNotSupported","Output":"--- PASS: TestDiscoveryHandler_RequestParameterNotSupported (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.675209119Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_RequestParameterNotSupported","Elapsed":0} +{"Time":"2026-10-18T09:57:47.675223313Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ClaimsParameterNotSupported"} +{"Time":"2026-10-18T09:57:47.675227298Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ClaimsParameterNotSupported","Output":"=== RUN TestDiscoveryHandler_ClaimsParameterNotSupported\n"} +{"Time":"2026-10-18T09:57:47.675807558Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ClaimsParameterNotSupported","Output":"--- PASS: TestDiscoveryHandler_ClaimsParameterNotSupported (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.675828271Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDiscoveryHandler_ClaimsParameterNotSupported","Elapsed":0} +{"Time":"2026-10-18T09:57:47.675835647Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHandoff_PromptCreate_EligibleClientRedirectsToAllowList"} +{"Time":"2026-10-18T09:57:47.675839398Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_PromptCreate_EligibleClientRedirectsToAllowList","Output":"=== RUN TestHandoff_PromptCreate_EligibleClientRedirectsToAllowList\n"} +{"Time":"2026-10-18T09:57:47.676711492Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_PromptCreate_EligibleClientRedirectsToAllowList","Output":"--- PASS: TestHandoff_PromptCreate_EligibleClientRedirectsToAllowList (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.676755496Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHandoff_PromptCreate_EligibleClientRedirectsToAllowList","Elapsed":0} +{"Time":"2026-10-18T09:57:47.676761962Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHandoff_PromptCreate_IneligibleClientRejected"} +{"Time":"2026-10-18T09:57:47.676774667Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_PromptCreate_IneligibleClientRejected","Output":"=== RUN TestHandoff_PromptCreate_IneligibleClientRejected\n"} +{"Time":"2026-10-18T09:57:47.677033958Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_PromptCreate_IneligibleClientRejected","Output":"--- PASS: TestHandoff_PromptCreate_IneligibleClientRejected (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.677047403Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHandoff_PromptCreate_IneligibleClientRejected","Elapsed":0} +{"Time":"2026-10-18T09:57:47.67712863Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHandoff_ReturnRestartsAuthorizeWithoutToken"} +{"Time":"2026-10-18T09:57:47.67714028Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_ReturnRestartsAuthorizeWithoutToken","Output":"=== RUN TestHandoff_ReturnRestartsAuthorizeWithoutToken\n"} +{"Time":"2026-10-18T09:57:47.677856656Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_ReturnRestartsAuthorizeWithoutToken","Output":"--- PASS: TestHandoff_ReturnRestartsAuthorizeWithoutToken (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.677873563Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHandoff_ReturnRestartsAuthorizeWithoutToken","Elapsed":0} +{"Time":"2026-10-18T09:57:47.677882301Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHandoff_ReplayRejected"} +{"Time":"2026-10-18T09:57:47.677886494Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_ReplayRejected","Output":"=== RUN TestHandoff_ReplayRejected\n"} +{"Time":"2026-10-18T09:57:47.678762456Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_ReplayRejected","Output":"--- PASS: TestHandoff_ReplayRejected (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.678779183Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHandoff_ReplayRejected","Elapsed":0} +{"Time":"2026-10-18T09:57:47.678794431Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHandoff_TamperedEnvelopeRejected"} +{"Time":"2026-10-18T09:57:47.678798435Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_TamperedEnvelopeRejected","Output":"=== RUN TestHandoff_TamperedEnvelopeRejected\n"} +{"Time":"2026-10-18T09:57:47.679502312Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_TamperedEnvelopeRejected","Output":"--- PASS: TestHandoff_TamperedEnvelopeRejected (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.679522583Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHandoff_TamperedEnvelopeRejected","Elapsed":0} +{"Time":"2026-10-18T09:57:47.679527561Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHandoff_UnknownUserOffersSignupWithoutToken"} +{"Time":"2026-10-18T09:57:47.679531195Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_UnknownUserOffersSignupWithoutToken","Output":"=== RUN TestHandoff_UnknownUserOffersSignupWithoutToken\n"} +{"Time":"2026-10-18T09:57:47.680142176Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_UnknownUserOffersSignupWithoutToken","Output":"--- PASS: TestHandoff_UnknownUserOffersSignupWithoutToken (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.680158002Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHandoff_UnknownUserOffersSignupWithoutToken","Elapsed":0} +{"Time":"2026-10-18T09:57:47.680168218Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHandoff_UnknownUserIneligibleHasNoSignupLink"} +{"Time":"2026-10-18T09:57:47.680186081Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_UnknownUserIneligibleHasNoSignupLink","Output":"=== RUN TestHandoff_UnknownUserIneligibleHasNoSignupLink\n"} +{"Time":"2026-10-18T09:57:47.680452884Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHandoff_UnknownUserIneligibleHasNoSignupLink","Output":"--- PASS: TestHandoff_UnknownUserIneligibleHasNoSignupLink (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.68047989Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHandoff_UnknownUserIneligibleHasNoSignupLink","Elapsed":0} +{"Time":"2026-10-18T09:57:47.680496852Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ExpiredStateRejected"} +{"Time":"2026-10-18T09:57:47.680506708Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ExpiredStateRejected","Output":"=== RUN TestAuthorizeCallback_ExpiredStateRejected\n"} +{"Time":"2026-10-18T09:57:47.680705267Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ExpiredStateRejected","Output":"--- PASS: TestAuthorizeCallback_ExpiredStateRejected (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.680718902Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ExpiredStateRejected","Elapsed":0} +{"Time":"2026-10-18T09:57:47.680729145Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ReplayAfterSuccessRejected"} +{"Time":"2026-10-18T09:57:47.680732914Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ReplayAfterSuccessRejected","Output":"=== RUN TestAuthorizeCallback_ReplayAfterSuccessRejected\n"} +{"Time":"2026-10-18T09:57:47.681072702Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ReplayAfterSuccessRejected","Output":"--- PASS: TestAuthorizeCallback_ReplayAfterSuccessRejected (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.681085931Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestAuthorizeCallback_ReplayAfterSuccessRejected","Elapsed":0} +{"Time":"2026-10-18T09:57:47.681098708Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission"} +{"Time":"2026-10-18T09:57:47.681103568Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission","Output":"=== RUN TestCodeExchangeRejectsRedirectURIMismatchAndOmission\n"} +{"Time":"2026-10-18T09:57:47.681443113Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/trailing"} +{"Time":"2026-10-18T09:57:47.68146406Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/trailing","Output":"=== RUN TestCodeExchangeRejectsRedirectURIMismatchAndOmission/trailing\n"} +{"Time":"2026-10-18T09:57:47.697693999Z","Action":"output","Package":"keycape/internal/server/policy","Output":"ok \tkeycape/internal/server/policy\t1.151s\n"} +{"Time":"2026-10-18T09:57:47.69775198Z","Action":"pass","Package":"keycape/internal/server/policy","Elapsed":1.151} +{"Time":"2026-10-18T09:57:47.700220623Z","Action":"start","Package":"keycape/internal/server/telemetry"} +{"Time":"2026-10-18T09:57:47.721322915Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestNoopEmitter_DoesNotPanic"} +{"Time":"2026-10-18T09:57:47.721388931Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestNoopEmitter_DoesNotPanic","Output":"=== RUN TestNoopEmitter_DoesNotPanic\n"} +{"Time":"2026-10-18T09:57:47.721459923Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestNoopEmitter_DoesNotPanic","Output":"--- PASS: TestNoopEmitter_DoesNotPanic (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.721631279Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestNoopEmitter_DoesNotPanic","Elapsed":0} +{"Time":"2026-10-18T09:57:47.721655472Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestNoopEmitter_ImplementsInterface"} +{"Time":"2026-10-18T09:57:47.721661604Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestNoopEmitter_ImplementsInterface","Output":"=== RUN TestNoopEmitter_ImplementsInterface\n"} +{"Time":"2026-10-18T09:57:47.721862206Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestNoopEmitter_ImplementsInterface","Output":"--- PASS: TestNoopEmitter_ImplementsInterface (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.721892658Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestNoopEmitter_ImplementsInterface","Elapsed":0} +{"Time":"2026-10-18T09:57:47.721906734Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_WritesJSON"} +{"Time":"2026-10-18T09:57:47.721912667Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_WritesJSON","Output":"=== RUN TestLogEmitter_WritesJSON\n"} +{"Time":"2026-10-18T09:57:47.722342005Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_WritesJSON","Output":"--- PASS: TestLogEmitter_WritesJSON (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.722365378Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_WritesJSON","Elapsed":0} +{"Time":"2026-10-18T09:57:47.72237472Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_ContainsEventFields"} +{"Time":"2026-10-18T09:57:47.722387362Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_ContainsEventFields","Output":"=== RUN TestLogEmitter_ContainsEventFields\n"} +{"Time":"2026-10-18T09:57:47.722720279Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_ContainsEventFields","Output":"--- PASS: TestLogEmitter_ContainsEventFields (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.722739422Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_ContainsEventFields","Elapsed":0} +{"Time":"2026-10-18T09:57:47.722757195Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_EventTypeValue"} +{"Time":"2026-10-18T09:57:47.722765329Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_EventTypeValue","Output":"=== RUN TestLogEmitter_EventTypeValue\n"} +{"Time":"2026-10-18T09:57:47.723154279Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_EventTypeValue","Output":"--- PASS: TestLogEmitter_EventTypeValue (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.723192485Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_EventTypeValue","Elapsed":0} +{"Time":"2026-10-18T09:57:47.723215867Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_ImplementsInterface"} +{"Time":"2026-10-18T09:57:47.723226696Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_ImplementsInterface","Output":"=== RUN TestLogEmitter_ImplementsInterface\n"} +{"Time":"2026-10-18T09:57:47.723387122Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_ImplementsInterface","Output":"--- PASS: TestLogEmitter_ImplementsInterface (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.723402749Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestLogEmitter_ImplementsInterface","Elapsed":0} +{"Time":"2026-10-18T09:57:47.723426302Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_FansOut"} +{"Time":"2026-10-18T09:57:47.723436879Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_FansOut","Output":"=== RUN TestMultiEmitter_FansOut\n"} +{"Time":"2026-10-18T09:57:47.723655999Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_FansOut","Output":"--- PASS: TestMultiEmitter_FansOut (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.723691644Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_FansOut","Elapsed":0} +{"Time":"2026-10-18T09:57:47.723705359Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_EmptyIsNoop"} +{"Time":"2026-10-18T09:57:47.723709777Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_EmptyIsNoop","Output":"=== RUN TestMultiEmitter_EmptyIsNoop\n"} +{"Time":"2026-10-18T09:57:47.723940092Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_EmptyIsNoop","Output":"--- PASS: TestMultiEmitter_EmptyIsNoop (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.723957576Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_EmptyIsNoop","Elapsed":0} +{"Time":"2026-10-18T09:57:47.723964429Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_ImplementsInterface"} +{"Time":"2026-10-18T09:57:47.72397213Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_ImplementsInterface","Output":"=== RUN TestMultiEmitter_ImplementsInterface\n"} +{"Time":"2026-10-18T09:57:47.724171564Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_ImplementsInterface","Output":"--- PASS: TestMultiEmitter_ImplementsInterface (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.72419087Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestMultiEmitter_ImplementsInterface","Elapsed":0} +{"Time":"2026-10-18T09:57:47.724205731Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestWithEmitter_RoundTrip"} +{"Time":"2026-10-18T09:57:47.724210402Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestWithEmitter_RoundTrip","Output":"=== RUN TestWithEmitter_RoundTrip\n"} +{"Time":"2026-10-18T09:57:47.724458817Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestWithEmitter_RoundTrip","Output":"--- PASS: TestWithEmitter_RoundTrip (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.724483497Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestWithEmitter_RoundTrip","Elapsed":0} +{"Time":"2026-10-18T09:57:47.72448879Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestEmitterFromContext_FallsBackToNoop"} +{"Time":"2026-10-18T09:57:47.724492632Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestEmitterFromContext_FallsBackToNoop","Output":"=== RUN TestEmitterFromContext_FallsBackToNoop\n"} +{"Time":"2026-10-18T09:57:47.724682261Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestEmitterFromContext_FallsBackToNoop","Output":"--- PASS: TestEmitterFromContext_FallsBackToNoop (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.72470374Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestEmitterFromContext_FallsBackToNoop","Elapsed":0} +{"Time":"2026-10-18T09:57:47.724719835Z","Action":"run","Package":"keycape/internal/server/telemetry","Test":"TestEventTypeConstants"} +{"Time":"2026-10-18T09:57:47.724726445Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestEventTypeConstants","Output":"=== RUN TestEventTypeConstants\n"} +{"Time":"2026-10-18T09:57:47.724887322Z","Action":"output","Package":"keycape/internal/server/telemetry","Test":"TestEventTypeConstants","Output":"--- PASS: TestEventTypeConstants (0.00s)\n"} +{"Time":"2026-10-18T09:57:47.724900857Z","Action":"pass","Package":"keycape/internal/server/telemetry","Test":"TestEventTypeConstants","Elapsed":0} +{"Time":"2026-10-18T09:57:47.724980858Z","Action":"output","Package":"keycape/internal/server/telemetry","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:47.733221861Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issued","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issued (0.15s)\n"} +{"Time":"2026-10-18T09:57:47.733279138Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-issued","Elapsed":0.15} +{"Time":"2026-10-18T09:57:47.733287984Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-scope"} +{"Time":"2026-10-18T09:57:47.733292962Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-scope","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-scope\n"} +{"Time":"2026-10-18T09:57:47.762202024Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/trailing","Output":"--- PASS: TestCodeExchangeRejectsRedirectURIMismatchAndOmission/trailing (0.08s)\n"} +{"Time":"2026-10-18T09:57:47.762257272Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/trailing","Elapsed":0.08} +{"Time":"2026-10-18T09:57:47.762269202Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/omitted"} +{"Time":"2026-10-18T09:57:47.762274793Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/omitted","Output":"=== RUN TestCodeExchangeRejectsRedirectURIMismatchAndOmission/omitted\n"} +{"Time":"2026-10-18T09:57:47.818304951Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/omitted","Output":"--- PASS: TestCodeExchangeRejectsRedirectURIMismatchAndOmission/omitted (0.06s)\n"} +{"Time":"2026-10-18T09:57:47.818354419Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/omitted","Elapsed":0.06} +{"Time":"2026-10-18T09:57:47.81843562Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/different"} +{"Time":"2026-10-18T09:57:47.818445385Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/different","Output":"=== RUN TestCodeExchangeRejectsRedirectURIMismatchAndOmission/different\n"} +{"Time":"2026-10-18T09:57:47.880149Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/different","Output":"--- PASS: TestCodeExchangeRejectsRedirectURIMismatchAndOmission/different (0.06s)\n"} +{"Time":"2026-10-18T09:57:47.880210381Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/different","Elapsed":0.06} +{"Time":"2026-10-18T09:57:47.880227243Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/prefix"} +{"Time":"2026-10-18T09:57:47.880235088Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/prefix","Output":"=== RUN TestCodeExchangeRejectsRedirectURIMismatchAndOmission/prefix\n"} +{"Time":"2026-10-18T09:57:47.892145976Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-scope","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-scope (0.16s)\n"} +{"Time":"2026-10-18T09:57:47.892208709Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-scope","Elapsed":0.16} +{"Time":"2026-10-18T09:57:47.892224074Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-token-type"} +{"Time":"2026-10-18T09:57:47.892229412Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-token-type","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-token-type\n"} +{"Time":"2026-10-18T09:57:47.980892404Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-token-type","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-token-type (0.09s)\n"} +{"Time":"2026-10-18T09:57:47.980942306Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-token-type","Elapsed":0.09} +{"Time":"2026-10-18T09:57:47.980987708Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unknown-field"} +{"Time":"2026-10-18T09:57:47.980994381Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unknown-field","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unknown-field\n"} +{"Time":"2026-10-18T09:57:48.045921673Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unknown-field","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unknown-field (0.06s)\n"} +{"Time":"2026-10-18T09:57:48.045976417Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unknown-field","Elapsed":0.06} +{"Time":"2026-10-18T09:57:48.046000357Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/duplicate-active"} +{"Time":"2026-10-18T09:57:48.046013649Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/duplicate-active","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/duplicate-active\n"} +{"Time":"2026-10-18T09:57:48.114938543Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/duplicate-active","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/duplicate-active (0.07s)\n"} +{"Time":"2026-10-18T09:57:48.114983719Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/duplicate-active","Elapsed":0.07} +{"Time":"2026-10-18T09:57:48.11499289Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/trailing-json"} +{"Time":"2026-10-18T09:57:48.114998228Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/trailing-json","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/trailing-json\n"} +{"Time":"2026-10-18T09:57:48.183017374Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/trailing-json","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/trailing-json (0.07s)\n"} +{"Time":"2026-10-18T09:57:48.183069079Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/trailing-json","Elapsed":0.07} +{"Time":"2026-10-18T09:57:48.183083462Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/redirect"} +{"Time":"2026-10-18T09:57:48.183090369Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/redirect","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/redirect\n"} +{"Time":"2026-10-18T09:57:48.352721899Z","Action":"output","Package":"keycape/internal/server/readiness","Output":"ok \tkeycape/internal/server/readiness\t1.233s\n"} +{"Time":"2026-10-18T09:57:48.352776408Z","Action":"pass","Package":"keycape/internal/server/readiness","Elapsed":1.233} +{"Time":"2026-10-18T09:57:48.355319651Z","Action":"start","Package":"keycape/internal/validator"} +{"Time":"2026-10-18T09:57:48.37270846Z","Action":"run","Package":"keycape/internal/validator","Test":"TestValidDNStructure_Pass"} +{"Time":"2026-10-18T09:57:48.372761688Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidDNStructure_Pass","Output":"=== RUN TestValidDNStructure_Pass\n"} +{"Time":"2026-10-18T09:57:48.37303978Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidDNStructure_Pass","Output":"--- PASS: TestValidDNStructure_Pass (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.373148402Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestValidDNStructure_Pass","Elapsed":0} +{"Time":"2026-10-18T09:57:48.373162198Z","Action":"run","Package":"keycape/internal/validator","Test":"TestValidDNStructure_EmptyID"} +{"Time":"2026-10-18T09:57:48.373166599Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidDNStructure_EmptyID","Output":"=== RUN TestValidDNStructure_EmptyID\n"} +{"Time":"2026-10-18T09:57:48.373443284Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidDNStructure_EmptyID","Output":"--- PASS: TestValidDNStructure_EmptyID (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.373461364Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestValidDNStructure_EmptyID","Elapsed":0} +{"Time":"2026-10-18T09:57:48.373568687Z","Action":"run","Package":"keycape/internal/validator","Test":"TestValidDNStructure_InvalidUsername"} +{"Time":"2026-10-18T09:57:48.373794912Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidDNStructure_InvalidUsername","Output":"=== RUN TestValidDNStructure_InvalidUsername\n"} +{"Time":"2026-10-18T09:57:48.373840746Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidDNStructure_InvalidUsername","Output":"--- PASS: TestValidDNStructure_InvalidUsername (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.373923191Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestValidDNStructure_InvalidUsername","Elapsed":0} +{"Time":"2026-10-18T09:57:48.373960027Z","Action":"run","Package":"keycape/internal/validator","Test":"TestValidDNStructure_InvalidGroupName"} +{"Time":"2026-10-18T09:57:48.373966321Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidDNStructure_InvalidGroupName","Output":"=== RUN TestValidDNStructure_InvalidGroupName\n"} +{"Time":"2026-10-18T09:57:48.374244915Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidDNStructure_InvalidGroupName","Output":"--- PASS: TestValidDNStructure_InvalidGroupName (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.374267233Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestValidDNStructure_InvalidGroupName","Elapsed":0} +{"Time":"2026-10-18T09:57:48.374317515Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_Pass"} +{"Time":"2026-10-18T09:57:48.374326776Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_Pass","Output":"=== RUN TestRequiredAttributesPresent_Pass\n"} +{"Time":"2026-10-18T09:57:48.374556263Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_Pass","Output":"--- PASS: TestRequiredAttributesPresent_Pass (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.374612012Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_Pass","Elapsed":0} +{"Time":"2026-10-18T09:57:48.374673219Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_MissingUsername"} +{"Time":"2026-10-18T09:57:48.374682795Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_MissingUsername","Output":"=== RUN TestRequiredAttributesPresent_MissingUsername\n"} +{"Time":"2026-10-18T09:57:48.375022096Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_MissingUsername","Output":"--- PASS: TestRequiredAttributesPresent_MissingUsername (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.37505372Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_MissingUsername","Elapsed":0} +{"Time":"2026-10-18T09:57:48.37509618Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_MissingDisplayName"} +{"Time":"2026-10-18T09:57:48.375108398Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_MissingDisplayName","Output":"=== RUN TestRequiredAttributesPresent_MissingDisplayName\n"} +{"Time":"2026-10-18T09:57:48.375252764Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_MissingDisplayName","Output":"--- PASS: TestRequiredAttributesPresent_MissingDisplayName (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.375302995Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRequiredAttributesPresent_MissingDisplayName","Elapsed":0} +{"Time":"2026-10-18T09:57:48.375368692Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes"} +{"Time":"2026-10-18T09:57:48.375383859Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes","Output":"=== RUN TestRawAttributes_AcceptsLegitimateAttributes\n"} +{"Time":"2026-10-18T09:57:48.375497578Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/no_attributes"} +{"Time":"2026-10-18T09:57:48.375507191Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/no_attributes","Output":"=== RUN TestRawAttributes_AcceptsLegitimateAttributes/no_attributes\n"} +{"Time":"2026-10-18T09:57:48.375683602Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/no_attributes","Output":"--- PASS: TestRawAttributes_AcceptsLegitimateAttributes/no_attributes (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.375724552Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/no_attributes","Elapsed":0} +{"Time":"2026-10-18T09:57:48.375783601Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/simple_descriptor"} +{"Time":"2026-10-18T09:57:48.375794917Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/simple_descriptor","Output":"=== RUN TestRawAttributes_AcceptsLegitimateAttributes/simple_descriptor\n"} +{"Time":"2026-10-18T09:57:48.375948878Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/simple_descriptor","Output":"--- PASS: TestRawAttributes_AcceptsLegitimateAttributes/simple_descriptor (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.375978148Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/simple_descriptor","Elapsed":0} +{"Time":"2026-10-18T09:57:48.376143331Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/hyphenated_and_digits"} +{"Time":"2026-10-18T09:57:48.376158994Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/hyphenated_and_digits","Output":"=== RUN TestRawAttributes_AcceptsLegitimateAttributes/hyphenated_and_digits\n"} +{"Time":"2026-10-18T09:57:48.376172096Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/hyphenated_and_digits","Output":"--- PASS: TestRawAttributes_AcceptsLegitimateAttributes/hyphenated_and_digits (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.376189066Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/hyphenated_and_digits","Elapsed":0} +{"Time":"2026-10-18T09:57:48.376316613Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/numeric_oid"} +{"Time":"2026-10-18T09:57:48.376387894Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/numeric_oid","Output":"=== RUN TestRawAttributes_AcceptsLegitimateAttributes/numeric_oid\n"} +{"Time":"2026-10-18T09:57:48.37658812Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/numeric_oid","Output":"--- PASS: TestRawAttributes_AcceptsLegitimateAttributes/numeric_oid (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.376606885Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/numeric_oid","Elapsed":0} +{"Time":"2026-10-18T09:57:48.376717648Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/distinct_attributes"} +{"Time":"2026-10-18T09:57:48.376731562Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/distinct_attributes","Output":"=== RUN TestRawAttributes_AcceptsLegitimateAttributes/distinct_attributes\n"} +{"Time":"2026-10-18T09:57:48.376966621Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/distinct_attributes","Output":"--- PASS: TestRawAttributes_AcceptsLegitimateAttributes/distinct_attributes (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.377114215Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes/distinct_attributes","Elapsed":0} +{"Time":"2026-10-18T09:57:48.377143648Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes","Output":"--- PASS: TestRawAttributes_AcceptsLegitimateAttributes (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.377623972Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_AcceptsLegitimateAttributes","Elapsed":0} +{"Time":"2026-10-18T09:57:48.377651844Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors"} +{"Time":"2026-10-18T09:57:48.377662124Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors\n"} +{"Time":"2026-10-18T09:57:48.377670708Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/blank"} +{"Time":"2026-10-18T09:57:48.377674937Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/blank","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors/blank\n"} +{"Time":"2026-10-18T09:57:48.377930442Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/blank","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors/blank (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.378064627Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/blank","Elapsed":0} +{"Time":"2026-10-18T09:57:48.378177244Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_hyphen"} +{"Time":"2026-10-18T09:57:48.378185819Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_hyphen","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors/leading_hyphen\n"} +{"Time":"2026-10-18T09:57:48.378493794Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_hyphen","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors/leading_hyphen (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.378515147Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_hyphen","Elapsed":0} +{"Time":"2026-10-18T09:57:48.378574471Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/underscore"} +{"Time":"2026-10-18T09:57:48.378609079Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/underscore","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors/underscore\n"} +{"Time":"2026-10-18T09:57:48.378861175Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/underscore","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors/underscore (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.378964765Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/underscore","Elapsed":0} +{"Time":"2026-10-18T09:57:48.37906968Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/space_inside"} +{"Time":"2026-10-18T09:57:48.379078229Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/space_inside","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors/space_inside\n"} +{"Time":"2026-10-18T09:57:48.37925476Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/space_inside","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors/space_inside (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.379429202Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/space_inside","Elapsed":0} +{"Time":"2026-10-18T09:57:48.379455966Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/single_arc_oid"} +{"Time":"2026-10-18T09:57:48.37946226Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/single_arc_oid","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors/single_arc_oid\n"} +{"Time":"2026-10-18T09:57:48.379744947Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/single_arc_oid","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors/single_arc_oid (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.379765587Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/single_arc_oid","Elapsed":0} +{"Time":"2026-10-18T09:57:48.379916058Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/empty_oid_arc"} +{"Time":"2026-10-18T09:57:48.379927041Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/empty_oid_arc","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors/empty_oid_arc\n"} +{"Time":"2026-10-18T09:57:48.380179645Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/empty_oid_arc","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors/empty_oid_arc (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.380306983Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/empty_oid_arc","Elapsed":0} +{"Time":"2026-10-18T09:57:48.380425262Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_zero_oid"} +{"Time":"2026-10-18T09:57:48.380450086Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_zero_oid","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors/leading_zero_oid\n"} +{"Time":"2026-10-18T09:57:48.380732326Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_zero_oid","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors/leading_zero_oid (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.38081478Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_zero_oid","Elapsed":0} +{"Time":"2026-10-18T09:57:48.380920922Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/whitespace_only"} +{"Time":"2026-10-18T09:57:48.380929651Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/whitespace_only","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors/whitespace_only\n"} +{"Time":"2026-10-18T09:57:48.381117886Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/whitespace_only","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors/whitespace_only (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.381195786Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/whitespace_only","Elapsed":0} +{"Time":"2026-10-18T09:57:48.381300882Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_digit"} +{"Time":"2026-10-18T09:57:48.381309755Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_digit","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors/leading_digit\n"} +{"Time":"2026-10-18T09:57:48.381540898Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_digit","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors/leading_digit (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.381561196Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/leading_digit","Elapsed":0} +{"Time":"2026-10-18T09:57:48.381641635Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/transfer_option"} +{"Time":"2026-10-18T09:57:48.381652509Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/transfer_option","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors/transfer_option\n"} +{"Time":"2026-10-18T09:57:48.381870925Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/transfer_option","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors/transfer_option (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.38195438Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/transfer_option","Elapsed":0} +{"Time":"2026-10-18T09:57:48.382089179Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/non_numeric_oid_arc"} +{"Time":"2026-10-18T09:57:48.382102741Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/non_numeric_oid_arc","Output":"=== RUN TestRawAttributes_RejectsMalformedDescriptors/non_numeric_oid_arc\n"} +{"Time":"2026-10-18T09:57:48.382276458Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/non_numeric_oid_arc","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors/non_numeric_oid_arc (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.382290281Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors/non_numeric_oid_arc","Elapsed":0} +{"Time":"2026-10-18T09:57:48.382393718Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors","Output":"--- PASS: TestRawAttributes_RejectsMalformedDescriptors (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.382481726Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsMalformedDescriptors","Elapsed":0} +{"Time":"2026-10-18T09:57:48.382495153Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings"} +{"Time":"2026-10-18T09:57:48.382512051Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings","Output":"=== RUN TestRawAttributes_RejectsCanonicalMappings\n"} +{"Time":"2026-10-18T09:57:48.382674957Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/uid"} +{"Time":"2026-10-18T09:57:48.382684596Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/uid","Output":"=== RUN TestRawAttributes_RejectsCanonicalMappings/uid\n"} +{"Time":"2026-10-18T09:57:48.38287027Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/uid","Output":"--- PASS: TestRawAttributes_RejectsCanonicalMappings/uid (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.382944672Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/uid","Elapsed":0} +{"Time":"2026-10-18T09:57:48.382955573Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/cn"} +{"Time":"2026-10-18T09:57:48.382959189Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/cn","Output":"=== RUN TestRawAttributes_RejectsCanonicalMappings/cn\n"} +{"Time":"2026-10-18T09:57:48.383176568Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/cn","Output":"--- PASS: TestRawAttributes_RejectsCanonicalMappings/cn (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.383198958Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/cn","Elapsed":0} +{"Time":"2026-10-18T09:57:48.383273639Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/mail"} +{"Time":"2026-10-18T09:57:48.383284045Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/mail","Output":"=== RUN TestRawAttributes_RejectsCanonicalMappings/mail\n"} +{"Time":"2026-10-18T09:57:48.383503029Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/mail","Output":"--- PASS: TestRawAttributes_RejectsCanonicalMappings/mail (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.383525914Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/mail","Elapsed":0} +{"Time":"2026-10-18T09:57:48.383597493Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/UID"} +{"Time":"2026-10-18T09:57:48.383605906Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/UID","Output":"=== RUN TestRawAttributes_RejectsCanonicalMappings/UID\n"} +{"Time":"2026-10-18T09:57:48.383796134Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/UID","Output":"--- PASS: TestRawAttributes_RejectsCanonicalMappings/UID (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.383916064Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/UID","Elapsed":0} +{"Time":"2026-10-18T09:57:48.383927335Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/Mail"} +{"Time":"2026-10-18T09:57:48.383930942Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/Mail","Output":"=== RUN TestRawAttributes_RejectsCanonicalMappings/Mail\n"} +{"Time":"2026-10-18T09:57:48.384157303Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/Mail","Output":"--- PASS: TestRawAttributes_RejectsCanonicalMappings/Mail (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.384177213Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/Mail","Elapsed":0} +{"Time":"2026-10-18T09:57:48.384205491Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/cN"} +{"Time":"2026-10-18T09:57:48.38421137Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/cN","Output":"=== RUN TestRawAttributes_RejectsCanonicalMappings/cN\n"} +{"Time":"2026-10-18T09:57:48.384423369Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/cN","Output":"--- PASS: TestRawAttributes_RejectsCanonicalMappings/cN (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.384534097Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings/cN","Elapsed":0} +{"Time":"2026-10-18T09:57:48.384699441Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings","Output":"--- PASS: TestRawAttributes_RejectsCanonicalMappings (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.38471854Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCanonicalMappings","Elapsed":0} +{"Time":"2026-10-18T09:57:48.384729225Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCaseOnlyDuplicates"} +{"Time":"2026-10-18T09:57:48.384734933Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCaseOnlyDuplicates","Output":"=== RUN TestRawAttributes_RejectsCaseOnlyDuplicates\n"} +{"Time":"2026-10-18T09:57:48.384958314Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCaseOnlyDuplicates","Output":"--- PASS: TestRawAttributes_RejectsCaseOnlyDuplicates (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.384979712Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_RejectsCaseOnlyDuplicates","Elapsed":0} +{"Time":"2026-10-18T09:57:48.384991001Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_MessageNamesUserAndAttribute"} +{"Time":"2026-10-18T09:57:48.38499505Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_MessageNamesUserAndAttribute","Output":"=== RUN TestRawAttributes_MessageNamesUserAndAttribute\n"} +{"Time":"2026-10-18T09:57:48.385233196Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_MessageNamesUserAndAttribute","Output":"--- PASS: TestRawAttributes_MessageNamesUserAndAttribute (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.385249093Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_MessageNamesUserAndAttribute","Elapsed":0} +{"Time":"2026-10-18T09:57:48.385321556Z","Action":"run","Package":"keycape/internal/validator","Test":"TestValidGroupMemberships_Pass"} +{"Time":"2026-10-18T09:57:48.385332989Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidGroupMemberships_Pass","Output":"=== RUN TestValidGroupMemberships_Pass\n"} +{"Time":"2026-10-18T09:57:48.385511405Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidGroupMemberships_Pass","Output":"--- PASS: TestValidGroupMemberships_Pass (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.385531441Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestValidGroupMemberships_Pass","Elapsed":0} +{"Time":"2026-10-18T09:57:48.385606014Z","Action":"run","Package":"keycape/internal/validator","Test":"TestValidGroupMemberships_BlankMember"} +{"Time":"2026-10-18T09:57:48.385614472Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidGroupMemberships_BlankMember","Output":"=== RUN TestValidGroupMemberships_BlankMember\n"} +{"Time":"2026-10-18T09:57:48.385821292Z","Action":"output","Package":"keycape/internal/validator","Test":"TestValidGroupMemberships_BlankMember","Output":"--- PASS: TestValidGroupMemberships_BlankMember (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.385839957Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestValidGroupMemberships_BlankMember","Elapsed":0} +{"Time":"2026-10-18T09:57:48.385876802Z","Action":"run","Package":"keycape/internal/validator","Test":"TestReferencedUsersExist_Pass"} +{"Time":"2026-10-18T09:57:48.385884088Z","Action":"output","Package":"keycape/internal/validator","Test":"TestReferencedUsersExist_Pass","Output":"=== RUN TestReferencedUsersExist_Pass\n"} +{"Time":"2026-10-18T09:57:48.386101818Z","Action":"output","Package":"keycape/internal/validator","Test":"TestReferencedUsersExist_Pass","Output":"--- PASS: TestReferencedUsersExist_Pass (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.386115786Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestReferencedUsersExist_Pass","Elapsed":0} +{"Time":"2026-10-18T09:57:48.386147481Z","Action":"run","Package":"keycape/internal/validator","Test":"TestReferencedUsersExist_UnknownUser"} +{"Time":"2026-10-18T09:57:48.386155236Z","Action":"output","Package":"keycape/internal/validator","Test":"TestReferencedUsersExist_UnknownUser","Output":"=== RUN TestReferencedUsersExist_UnknownUser\n"} +{"Time":"2026-10-18T09:57:48.386377899Z","Action":"output","Package":"keycape/internal/validator","Test":"TestReferencedUsersExist_UnknownUser","Output":"--- PASS: TestReferencedUsersExist_UnknownUser (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.386391055Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestReferencedUsersExist_UnknownUser","Elapsed":0} +{"Time":"2026-10-18T09:57:48.386403968Z","Action":"run","Package":"keycape/internal/validator","Test":"TestNoCyclicGroups_Pass"} +{"Time":"2026-10-18T09:57:48.386414942Z","Action":"output","Package":"keycape/internal/validator","Test":"TestNoCyclicGroups_Pass","Output":"=== RUN TestNoCyclicGroups_Pass\n"} +{"Time":"2026-10-18T09:57:48.38662897Z","Action":"output","Package":"keycape/internal/validator","Test":"TestNoCyclicGroups_Pass","Output":"--- PASS: TestNoCyclicGroups_Pass (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.386649899Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestNoCyclicGroups_Pass","Elapsed":0} +{"Time":"2026-10-18T09:57:48.386657726Z","Action":"run","Package":"keycape/internal/validator","Test":"TestNoCyclicGroups_GroupInMembers"} +{"Time":"2026-10-18T09:57:48.386663155Z","Action":"output","Package":"keycape/internal/validator","Test":"TestNoCyclicGroups_GroupInMembers","Output":"=== RUN TestNoCyclicGroups_GroupInMembers\n"} +{"Time":"2026-10-18T09:57:48.386856827Z","Action":"output","Package":"keycape/internal/validator","Test":"TestNoCyclicGroups_GroupInMembers","Output":"--- PASS: TestNoCyclicGroups_GroupInMembers (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.38687671Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestNoCyclicGroups_GroupInMembers","Elapsed":0} +{"Time":"2026-10-18T09:57:48.388470692Z","Action":"run","Package":"keycape/internal/validator","Test":"TestUsernamesUnique_Pass"} +{"Time":"2026-10-18T09:57:48.38856127Z","Action":"output","Package":"keycape/internal/validator","Test":"TestUsernamesUnique_Pass","Output":"=== RUN TestUsernamesUnique_Pass\n"} +{"Time":"2026-10-18T09:57:48.388585914Z","Action":"output","Package":"keycape/internal/validator","Test":"TestUsernamesUnique_Pass","Output":"--- PASS: TestUsernamesUnique_Pass (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.388593291Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestUsernamesUnique_Pass","Elapsed":0} +{"Time":"2026-10-18T09:57:48.38860128Z","Action":"run","Package":"keycape/internal/validator","Test":"TestUsernamesUnique_Duplicate"} +{"Time":"2026-10-18T09:57:48.388606925Z","Action":"output","Package":"keycape/internal/validator","Test":"TestUsernamesUnique_Duplicate","Output":"=== RUN TestUsernamesUnique_Duplicate\n"} +{"Time":"2026-10-18T09:57:48.388614346Z","Action":"output","Package":"keycape/internal/validator","Test":"TestUsernamesUnique_Duplicate","Output":"--- PASS: TestUsernamesUnique_Duplicate (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.388621154Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestUsernamesUnique_Duplicate","Elapsed":0} +{"Time":"2026-10-18T09:57:48.388628061Z","Action":"run","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_Pass"} +{"Time":"2026-10-18T09:57:48.388651533Z","Action":"output","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_Pass","Output":"=== RUN TestEmailFormatValid_Pass\n"} +{"Time":"2026-10-18T09:57:48.38866386Z","Action":"output","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_Pass","Output":"--- PASS: TestEmailFormatValid_Pass (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.388670289Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_Pass","Elapsed":0} +{"Time":"2026-10-18T09:57:48.388676393Z","Action":"run","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_InvalidEmail"} +{"Time":"2026-10-18T09:57:48.388682083Z","Action":"output","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_InvalidEmail","Output":"=== RUN TestEmailFormatValid_InvalidEmail\n"} +{"Time":"2026-10-18T09:57:48.388689225Z","Action":"output","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_InvalidEmail","Output":"--- PASS: TestEmailFormatValid_InvalidEmail (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.388695429Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_InvalidEmail","Elapsed":0} +{"Time":"2026-10-18T09:57:48.388701434Z","Action":"run","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_EmptyEmailSkipped"} +{"Time":"2026-10-18T09:57:48.388706737Z","Action":"output","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_EmptyEmailSkipped","Output":"=== RUN TestEmailFormatValid_EmptyEmailSkipped\n"} +{"Time":"2026-10-18T09:57:48.388716024Z","Action":"output","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_EmptyEmailSkipped","Output":"--- PASS: TestEmailFormatValid_EmptyEmailSkipped (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.388722823Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestEmailFormatValid_EmptyEmailSkipped","Elapsed":0} +{"Time":"2026-10-18T09:57:48.388728928Z","Action":"run","Package":"keycape/internal/validator","Test":"TestReportPassed_AllGood"} +{"Time":"2026-10-18T09:57:48.388734275Z","Action":"output","Package":"keycape/internal/validator","Test":"TestReportPassed_AllGood","Output":"=== RUN TestReportPassed_AllGood\n"} +{"Time":"2026-10-18T09:57:48.388741092Z","Action":"output","Package":"keycape/internal/validator","Test":"TestReportPassed_AllGood","Output":"--- PASS: TestReportPassed_AllGood (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.388747233Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestReportPassed_AllGood","Elapsed":0} +{"Time":"2026-10-18T09:57:48.388753031Z","Action":"run","Package":"keycape/internal/validator","Test":"TestReportFailed_OneRuleFails"} +{"Time":"2026-10-18T09:57:48.388760551Z","Action":"output","Package":"keycape/internal/validator","Test":"TestReportFailed_OneRuleFails","Output":"=== RUN TestReportFailed_OneRuleFails\n"} +{"Time":"2026-10-18T09:57:48.388774005Z","Action":"output","Package":"keycape/internal/validator","Test":"TestReportFailed_OneRuleFails","Output":"--- PASS: TestReportFailed_OneRuleFails (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.388782175Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestReportFailed_OneRuleFails","Elapsed":0} +{"Time":"2026-10-18T09:57:48.388791436Z","Action":"run","Package":"keycape/internal/validator","Test":"TestModeRecordedInReport"} +{"Time":"2026-10-18T09:57:48.38879708Z","Action":"output","Package":"keycape/internal/validator","Test":"TestModeRecordedInReport","Output":"=== RUN TestModeRecordedInReport\n"} +{"Time":"2026-10-18T09:57:48.389130808Z","Action":"output","Package":"keycape/internal/validator","Test":"TestModeRecordedInReport","Output":"--- PASS: TestModeRecordedInReport (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.389169582Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestModeRecordedInReport","Elapsed":0} +{"Time":"2026-10-18T09:57:48.389180205Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_IgnoresToolingAnnotations"} +{"Time":"2026-10-18T09:57:48.389204227Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_IgnoresToolingAnnotations","Output":"=== RUN TestRawAttributes_IgnoresToolingAnnotations\n"} +{"Time":"2026-10-18T09:57:48.389504039Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_IgnoresToolingAnnotations","Output":"--- PASS: TestRawAttributes_IgnoresToolingAnnotations (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.389544887Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_IgnoresToolingAnnotations","Elapsed":0} +{"Time":"2026-10-18T09:57:48.389562363Z","Action":"run","Package":"keycape/internal/validator","Test":"TestRawAttributes_ExemptionDoesNotWeakenTheRule"} +{"Time":"2026-10-18T09:57:48.389568846Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_ExemptionDoesNotWeakenTheRule","Output":"=== RUN TestRawAttributes_ExemptionDoesNotWeakenTheRule\n"} +{"Time":"2026-10-18T09:57:48.389856715Z","Action":"output","Package":"keycape/internal/validator","Test":"TestRawAttributes_ExemptionDoesNotWeakenTheRule","Output":"--- PASS: TestRawAttributes_ExemptionDoesNotWeakenTheRule (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.389891666Z","Action":"pass","Package":"keycape/internal/validator","Test":"TestRawAttributes_ExemptionDoesNotWeakenTheRule","Elapsed":0} +{"Time":"2026-10-18T09:57:48.389902938Z","Action":"output","Package":"keycape/internal/validator","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:48.413445969Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/prefix","Output":"--- PASS: TestCodeExchangeRejectsRedirectURIMismatchAndOmission/prefix (0.53s)\n"} +{"Time":"2026-10-18T09:57:48.413530064Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission/prefix","Elapsed":0.53} +{"Time":"2026-10-18T09:57:48.413538982Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission","Output":"--- PASS: TestCodeExchangeRejectsRedirectURIMismatchAndOmission (0.73s)\n"} +{"Time":"2026-10-18T09:57:48.413666727Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsRedirectURIMismatchAndOmission","Elapsed":0.73} +{"Time":"2026-10-18T09:57:48.413681353Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsServiceOnlyClient"} +{"Time":"2026-10-18T09:57:48.413685618Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsServiceOnlyClient","Output":"=== RUN TestCodeExchangeRejectsServiceOnlyClient\n"} +{"Time":"2026-10-18T09:57:48.471359281Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsServiceOnlyClient","Output":"--- PASS: TestCodeExchangeRejectsServiceOnlyClient (0.06s)\n"} +{"Time":"2026-10-18T09:57:48.471524531Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeRejectsServiceOnlyClient","Elapsed":0.06} +{"Time":"2026-10-18T09:57:48.47153803Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeAllowsImplicitAuthorizationCodeClient"} +{"Time":"2026-10-18T09:57:48.471542737Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeAllowsImplicitAuthorizationCodeClient","Output":"=== RUN TestCodeExchangeAllowsImplicitAuthorizationCodeClient\n"} +{"Time":"2026-10-18T09:57:48.580598448Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/redirect","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/redirect (0.40s)\n"} +{"Time":"2026-10-18T09:57:48.580686538Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/redirect","Elapsed":0.4} +{"Time":"2026-10-18T09:57:48.580695338Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unavailable"} +{"Time":"2026-10-18T09:57:48.580713391Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unavailable","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unavailable\n"} +{"Time":"2026-10-18T09:57:48.69125552Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeAllowsImplicitAuthorizationCodeClient","Output":"--- PASS: TestCodeExchangeAllowsImplicitAuthorizationCodeClient (0.22s)\n"} +{"Time":"2026-10-18T09:57:48.6913069Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestCodeExchangeAllowsImplicitAuthorizationCodeClient","Elapsed":0.22} +{"Time":"2026-10-18T09:57:48.691315557Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret"} +{"Time":"2026-10-18T09:57:48.691320345Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret","Output":"=== RUN TestConfidentialCodeClientRequiresItsSecret\n"} +{"Time":"2026-10-18T09:57:48.691452782Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/no_credentials"} +{"Time":"2026-10-18T09:57:48.691468959Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/no_credentials","Output":"=== RUN TestConfidentialCodeClientRequiresItsSecret/no_credentials\n"} +{"Time":"2026-10-18T09:57:48.712264941Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unavailable","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unavailable (0.13s)\n"} +{"Time":"2026-10-18T09:57:48.712310243Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/unavailable","Elapsed":0.13} +{"Time":"2026-10-18T09:57:48.712473068Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/oversize"} +{"Time":"2026-10-18T09:57:48.712489614Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/oversize","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/oversize\n"} +{"Time":"2026-10-18T09:57:48.728221567Z","Action":"output","Package":"keycape/internal/server/telemetry","Output":"ok \tkeycape/internal/server/telemetry\t1.028s\n"} +{"Time":"2026-10-18T09:57:48.728281965Z","Action":"pass","Package":"keycape/internal/server/telemetry","Elapsed":1.028} +{"Time":"2026-10-18T09:57:48.729998389Z","Action":"start","Package":"keycape/tests/conformance"} +{"Time":"2026-10-18T09:57:48.750135976Z","Action":"run","Package":"keycape/tests/conformance","Test":"TestIssuerAdvertisesItself"} +{"Time":"2026-10-18T09:57:48.750190296Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestIssuerAdvertisesItself","Output":"=== RUN TestIssuerAdvertisesItself\n"} +{"Time":"2026-10-18T09:57:48.750535489Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestIssuerAdvertisesItself","Output":" external_test.go:101: KEYCAPE_TEST_ISSUER is not set; this suite targets a running issuer\n"} +{"Time":"2026-10-18T09:57:48.750571982Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestIssuerAdvertisesItself","Output":"--- SKIP: TestIssuerAdvertisesItself (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.750700279Z","Action":"skip","Package":"keycape/tests/conformance","Test":"TestIssuerAdvertisesItself","Elapsed":0} +{"Time":"2026-10-18T09:57:48.750720171Z","Action":"run","Package":"keycape/tests/conformance","Test":"TestProfileAuthorizationSurface"} +{"Time":"2026-10-18T09:57:48.750727006Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestProfileAuthorizationSurface","Output":"=== RUN TestProfileAuthorizationSurface\n"} +{"Time":"2026-10-18T09:57:48.751003331Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestProfileAuthorizationSurface","Output":" external_test.go:111: KEYCAPE_TEST_ISSUER is not set; this suite targets a running issuer\n"} +{"Time":"2026-10-18T09:57:48.751051645Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestProfileAuthorizationSurface","Output":"--- SKIP: TestProfileAuthorizationSurface (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.751102286Z","Action":"skip","Package":"keycape/tests/conformance","Test":"TestProfileAuthorizationSurface","Elapsed":0} +{"Time":"2026-10-18T09:57:48.751249934Z","Action":"run","Package":"keycape/tests/conformance","Test":"TestPublishedKeysAreUsable"} +{"Time":"2026-10-18T09:57:48.751264975Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestPublishedKeysAreUsable","Output":"=== RUN TestPublishedKeysAreUsable\n"} +{"Time":"2026-10-18T09:57:48.751477358Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestPublishedKeysAreUsable","Output":" external_test.go:145: KEYCAPE_TEST_ISSUER is not set; this suite targets a running issuer\n"} +{"Time":"2026-10-18T09:57:48.75152478Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestPublishedKeysAreUsable","Output":"--- SKIP: TestPublishedKeysAreUsable (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.751659732Z","Action":"skip","Package":"keycape/tests/conformance","Test":"TestPublishedKeysAreUsable","Elapsed":0} +{"Time":"2026-10-18T09:57:48.751688037Z","Action":"run","Package":"keycape/tests/conformance","Test":"TestExcludedGrantsAreNotAdvertised"} +{"Time":"2026-10-18T09:57:48.751693204Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestExcludedGrantsAreNotAdvertised","Output":"=== RUN TestExcludedGrantsAreNotAdvertised\n"} +{"Time":"2026-10-18T09:57:48.751944701Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestExcludedGrantsAreNotAdvertised","Output":" external_test.go:162: KEYCAPE_TEST_ISSUER is not set; this suite targets a running issuer\n"} +{"Time":"2026-10-18T09:57:48.75202609Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestExcludedGrantsAreNotAdvertised","Output":"--- SKIP: TestExcludedGrantsAreNotAdvertised (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.752050049Z","Action":"skip","Package":"keycape/tests/conformance","Test":"TestExcludedGrantsAreNotAdvertised","Elapsed":0} +{"Time":"2026-10-18T09:57:48.752175993Z","Action":"run","Package":"keycape/tests/conformance","Test":"TestServiceTokenVerifiesAgainstPublishedKeys"} +{"Time":"2026-10-18T09:57:48.752189393Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestServiceTokenVerifiesAgainstPublishedKeys","Output":"=== RUN TestServiceTokenVerifiesAgainstPublishedKeys\n"} +{"Time":"2026-10-18T09:57:48.752519353Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestServiceTokenVerifiesAgainstPublishedKeys","Output":" external_test.go:177: KEYCAPE_TEST_CLIENT_ID/SECRET not set; skipping token exchange\n"} +{"Time":"2026-10-18T09:57:48.752558434Z","Action":"output","Package":"keycape/tests/conformance","Test":"TestServiceTokenVerifiesAgainstPublishedKeys","Output":"--- SKIP: TestServiceTokenVerifiesAgainstPublishedKeys (0.00s)\n"} +{"Time":"2026-10-18T09:57:48.752563547Z","Action":"skip","Package":"keycape/tests/conformance","Test":"TestServiceTokenVerifiesAgainstPublishedKeys","Elapsed":0} +{"Time":"2026-10-18T09:57:48.752570815Z","Action":"output","Package":"keycape/tests/conformance","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:48.7993384Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/oversize","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/oversize (0.09s)\n"} +{"Time":"2026-10-18T09:57:48.799398897Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/oversize","Elapsed":0.09} +{"Time":"2026-10-18T09:57:48.799412161Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/cached"} +{"Time":"2026-10-18T09:57:48.799429781Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/cached","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/cached\n"} +{"Time":"2026-10-18T09:57:48.835730179Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/no_credentials","Output":"--- PASS: TestConfidentialCodeClientRequiresItsSecret/no_credentials (0.14s)\n"} +{"Time":"2026-10-18T09:57:48.835783624Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/no_credentials","Elapsed":0.14} +{"Time":"2026-10-18T09:57:48.835795798Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/wrong_secret"} +{"Time":"2026-10-18T09:57:48.835800748Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/wrong_secret","Output":"=== RUN TestConfidentialCodeClientRequiresItsSecret/wrong_secret\n"} +{"Time":"2026-10-18T09:57:48.878155215Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/cached","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/cached (0.08s)\n"} +{"Time":"2026-10-18T09:57:48.878214097Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/cached","Elapsed":0.08} +{"Time":"2026-10-18T09:57:48.878236794Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-content-type"} +{"Time":"2026-10-18T09:57:48.878247182Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-content-type","Output":"=== RUN TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-content-type\n"} +{"Time":"2026-10-18T09:57:49.15461858Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-content-type","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-content-type (0.28s)\n"} +{"Time":"2026-10-18T09:57:49.154683125Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus/wrong-content-type","Elapsed":0.28} +{"Time":"2026-10-18T09:57:49.154697959Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus","Output":"--- PASS: TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus (3.50s)\n"} +{"Time":"2026-10-18T09:57:49.154857717Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRefusesAmbiguousOrMismatchedCurrentStatus","Elapsed":3.5} +{"Time":"2026-10-18T09:57:49.1549734Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCleanupRequiresNegativeReadbackAndPreservesScope"} +{"Time":"2026-10-18T09:57:49.154982994Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCleanupRequiresNegativeReadbackAndPreservesScope","Output":"=== RUN TestOnlineCleanupRequiresNegativeReadbackAndPreservesScope\n"} +{"Time":"2026-10-18T09:57:49.156103575Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/wrong_secret","Output":"--- PASS: TestConfidentialCodeClientRequiresItsSecret/wrong_secret (0.32s)\n"} +{"Time":"2026-10-18T09:57:49.156146497Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/wrong_secret","Elapsed":0.32} +{"Time":"2026-10-18T09:57:49.156157796Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/other_client_identity"} +{"Time":"2026-10-18T09:57:49.156164586Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/other_client_identity","Output":"=== RUN TestConfidentialCodeClientRequiresItsSecret/other_client_identity\n"} +{"Time":"2026-10-18T09:57:49.253225306Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCleanupRequiresNegativeReadbackAndPreservesScope","Output":"--- PASS: TestOnlineCleanupRequiresNegativeReadbackAndPreservesScope (0.10s)\n"} +{"Time":"2026-10-18T09:57:49.253275595Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCleanupRequiresNegativeReadbackAndPreservesScope","Elapsed":0.1} +{"Time":"2026-10-18T09:57:49.253285271Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles"} +{"Time":"2026-10-18T09:57:49.25329042Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles","Output":"=== RUN TestOnlineReloadsCredentialsKeysAndTrustFiles\n"} +{"Time":"2026-10-18T09:57:49.253444143Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret"} +{"Time":"2026-10-18T09:57:49.253459382Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret","Output":"=== RUN TestOnlineReloadsCredentialsKeysAndTrustFiles/secret\n"} +{"Time":"2026-10-18T09:57:49.258774197Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/other_client_identity","Output":"--- PASS: TestConfidentialCodeClientRequiresItsSecret/other_client_identity (0.10s)\n"} +{"Time":"2026-10-18T09:57:49.258828688Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/other_client_identity","Elapsed":0.1} +{"Time":"2026-10-18T09:57:49.258840005Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/correct_secret"} +{"Time":"2026-10-18T09:57:49.258844964Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/correct_secret","Output":"=== RUN TestConfidentialCodeClientRequiresItsSecret/correct_secret\n"} +{"Time":"2026-10-18T09:57:49.39410086Z","Action":"output","Package":"keycape/internal/validator","Output":"ok \tkeycape/internal/validator\t1.039s\n"} +{"Time":"2026-10-18T09:57:49.394154585Z","Action":"pass","Package":"keycape/internal/validator","Elapsed":1.039} +{"Time":"2026-10-18T09:57:49.395767682Z","Action":"start","Package":"keycape/tests/migration"} +{"Time":"2026-10-18T09:57:49.410185901Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/correct_secret","Output":"--- PASS: TestConfidentialCodeClientRequiresItsSecret/correct_secret (0.15s)\n"} +{"Time":"2026-10-18T09:57:49.410249788Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret/correct_secret","Elapsed":0.15} +{"Time":"2026-10-18T09:57:49.410367734Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret","Output":"--- PASS: TestConfidentialCodeClientRequiresItsSecret (0.72s)\n"} +{"Time":"2026-10-18T09:57:49.410386427Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestConfidentialCodeClientRequiresItsSecret","Elapsed":0.72} +{"Time":"2026-10-18T09:57:49.410495463Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestPublicClientSecretIsIgnoredAndEmptyConfidentialSecretIsRejected"} +{"Time":"2026-10-18T09:57:49.41050852Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPublicClientSecretIsIgnoredAndEmptyConfidentialSecretIsRejected","Output":"=== RUN TestPublicClientSecretIsIgnoredAndEmptyConfidentialSecretIsRejected\n"} +{"Time":"2026-10-18T09:57:49.417992754Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioBRealmPreservesClients"} +{"Time":"2026-10-18T09:57:49.418044694Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBRealmPreservesClients","Output":"=== RUN TestScenarioBRealmPreservesClients\n"} +{"Time":"2026-10-18T09:57:49.418386718Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBRealmPreservesClients","Output":"--- PASS: TestScenarioBRealmPreservesClients (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.418410641Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioBRealmPreservesClients","Elapsed":0} +{"Time":"2026-10-18T09:57:49.418535467Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioBNoImplicitFlow"} +{"Time":"2026-10-18T09:57:49.418556125Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBNoImplicitFlow","Output":"=== RUN TestScenarioBNoImplicitFlow\n"} +{"Time":"2026-10-18T09:57:49.418804253Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBNoImplicitFlow","Output":"--- PASS: TestScenarioBNoImplicitFlow (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.41882456Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioBNoImplicitFlow","Elapsed":0} +{"Time":"2026-10-18T09:57:49.418871999Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioBNoIdentityBrokers"} +{"Time":"2026-10-18T09:57:49.418883623Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBNoIdentityBrokers","Output":"=== RUN TestScenarioBNoIdentityBrokers\n"} +{"Time":"2026-10-18T09:57:49.419134239Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBNoIdentityBrokers","Output":"--- PASS: TestScenarioBNoIdentityBrokers (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.419158441Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioBNoIdentityBrokers","Elapsed":0} +{"Time":"2026-10-18T09:57:49.419267289Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioBUsersPreserved"} +{"Time":"2026-10-18T09:57:49.419282735Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBUsersPreserved","Output":"=== RUN TestScenarioBUsersPreserved\n"} +{"Time":"2026-10-18T09:57:49.419529645Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBUsersPreserved","Output":"--- PASS: TestScenarioBUsersPreserved (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.419549537Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioBUsersPreserved","Elapsed":0} +{"Time":"2026-10-18T09:57:49.419748768Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioBGroupsPreserved"} +{"Time":"2026-10-18T09:57:49.419770328Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBGroupsPreserved","Output":"=== RUN TestScenarioBGroupsPreserved\n"} +{"Time":"2026-10-18T09:57:49.419985248Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBGroupsPreserved","Output":"--- PASS: TestScenarioBGroupsPreserved (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.420007132Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioBGroupsPreserved","Elapsed":0} +{"Time":"2026-10-18T09:57:49.420120609Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioBSigningAlgorithmPreserved"} +{"Time":"2026-10-18T09:57:49.4201428Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBSigningAlgorithmPreserved","Output":"=== RUN TestScenarioBSigningAlgorithmPreserved\n"} +{"Time":"2026-10-18T09:57:49.420433249Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBSigningAlgorithmPreserved","Output":"--- PASS: TestScenarioBSigningAlgorithmPreserved (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.420470707Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioBSigningAlgorithmPreserved","Elapsed":0} +{"Time":"2026-10-18T09:57:49.420483601Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioBValidationReport"} +{"Time":"2026-10-18T09:57:49.420490779Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBValidationReport","Output":"=== RUN TestScenarioBValidationReport\n"} +{"Time":"2026-10-18T09:57:49.420719985Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBValidationReport","Output":"--- PASS: TestScenarioBValidationReport (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.420759265Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioBValidationReport","Elapsed":0} +{"Time":"2026-10-18T09:57:49.420775586Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioBPublicClientMapping"} +{"Time":"2026-10-18T09:57:49.420782682Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBPublicClientMapping","Output":"=== RUN TestScenarioBPublicClientMapping\n"} +{"Time":"2026-10-18T09:57:49.421184419Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioBPublicClientMapping","Output":"--- PASS: TestScenarioBPublicClientMapping (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.421210001Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioBPublicClientMapping","Elapsed":0} +{"Time":"2026-10-18T09:57:49.421386703Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioCLDIFRoundTrip"} +{"Time":"2026-10-18T09:57:49.421402988Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCLDIFRoundTrip","Output":"=== RUN TestScenarioCLDIFRoundTrip\n"} +{"Time":"2026-10-18T09:57:49.421712947Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCLDIFRoundTrip","Output":"--- PASS: TestScenarioCLDIFRoundTrip (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.421733182Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioCLDIFRoundTrip","Elapsed":0} +{"Time":"2026-10-18T09:57:49.42188606Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioCTargetDifferences"} +{"Time":"2026-10-18T09:57:49.421900307Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCTargetDifferences","Output":"=== RUN TestScenarioCTargetDifferences\n"} +{"Time":"2026-10-18T09:57:49.422283775Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCTargetDifferences","Output":"--- PASS: TestScenarioCTargetDifferences (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.422309068Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioCTargetDifferences","Elapsed":0} +{"Time":"2026-10-18T09:57:49.422418709Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioCMFANotMigrated"} +{"Time":"2026-10-18T09:57:49.422437762Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCMFANotMigrated","Output":"=== RUN TestScenarioCMFANotMigrated\n"} +{"Time":"2026-10-18T09:57:49.422736585Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCMFANotMigrated","Output":"--- PASS: TestScenarioCMFANotMigrated (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.422755278Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioCMFANotMigrated","Elapsed":0} +{"Time":"2026-10-18T09:57:49.42292234Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioCStructuralEntries"} +{"Time":"2026-10-18T09:57:49.422938517Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCStructuralEntries","Output":"=== RUN TestScenarioCStructuralEntries\n"} +{"Time":"2026-10-18T09:57:49.423252047Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCStructuralEntries","Output":"--- PASS: TestScenarioCStructuralEntries (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.423311777Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioCStructuralEntries","Elapsed":0} +{"Time":"2026-10-18T09:57:49.423355168Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioCUserPreservation"} +{"Time":"2026-10-18T09:57:49.423366791Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCUserPreservation","Output":"=== RUN TestScenarioCUserPreservation\n"} +{"Time":"2026-10-18T09:57:49.423728645Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCUserPreservation","Output":"--- PASS: TestScenarioCUserPreservation (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.423774083Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioCUserPreservation","Elapsed":0} +{"Time":"2026-10-18T09:57:49.423825751Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioCGroupMembersPreserved"} +{"Time":"2026-10-18T09:57:49.423841261Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCGroupMembersPreserved","Output":"=== RUN TestScenarioCGroupMembersPreserved\n"} +{"Time":"2026-10-18T09:57:49.424146468Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCGroupMembersPreserved","Output":"--- PASS: TestScenarioCGroupMembersPreserved (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.424168181Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioCGroupMembersPreserved","Elapsed":0} +{"Time":"2026-10-18T09:57:49.424294811Z","Action":"run","Package":"keycape/tests/migration","Test":"TestScenarioCOrthogonality"} +{"Time":"2026-10-18T09:57:49.424313891Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCOrthogonality","Output":"=== RUN TestScenarioCOrthogonality\n"} +{"Time":"2026-10-18T09:57:49.42509321Z","Action":"output","Package":"keycape/tests/migration","Test":"TestScenarioCOrthogonality","Output":"--- PASS: TestScenarioCOrthogonality (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.425158567Z","Action":"pass","Package":"keycape/tests/migration","Test":"TestScenarioCOrthogonality","Elapsed":0} +{"Time":"2026-10-18T09:57:49.425338506Z","Action":"output","Package":"keycape/tests/migration","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:49.462811602Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret","Output":"--- PASS: TestOnlineReloadsCredentialsKeysAndTrustFiles/secret (0.21s)\n"} +{"Time":"2026-10-18T09:57:49.462908619Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret","Elapsed":0.21} +{"Time":"2026-10-18T09:57:49.462932163Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/keys"} +{"Time":"2026-10-18T09:57:49.462946491Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/keys","Output":"=== RUN TestOnlineReloadsCredentialsKeysAndTrustFiles/keys\n"} +{"Time":"2026-10-18T09:57:49.638101005Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/keys","Output":"--- PASS: TestOnlineReloadsCredentialsKeysAndTrustFiles/keys (0.18s)\n"} +{"Time":"2026-10-18T09:57:49.638161817Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/keys","Elapsed":0.18} +{"Time":"2026-10-18T09:57:49.638181745Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/ca"} +{"Time":"2026-10-18T09:57:49.638189049Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/ca","Output":"=== RUN TestOnlineReloadsCredentialsKeysAndTrustFiles/ca\n"} +{"Time":"2026-10-18T09:57:49.66228496Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPublicClientSecretIsIgnoredAndEmptyConfidentialSecretIsRejected","Output":"--- PASS: TestPublicClientSecretIsIgnoredAndEmptyConfidentialSecretIsRejected (0.25s)\n"} +{"Time":"2026-10-18T09:57:49.662336737Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestPublicClientSecretIsIgnoredAndEmptyConfidentialSecretIsRejected","Elapsed":0.25} +{"Time":"2026-10-18T09:57:49.662346557Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestConcurrentCodeExchangeSucceedsExactlyOnce"} +{"Time":"2026-10-18T09:57:49.662352094Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConcurrentCodeExchangeSucceedsExactlyOnce","Output":"=== RUN TestConcurrentCodeExchangeSucceedsExactlyOnce\n"} +{"Time":"2026-10-18T09:57:49.757182162Z","Action":"output","Package":"keycape/tests/conformance","Output":"ok \tkeycape/tests/conformance\t1.027s\n"} +{"Time":"2026-10-18T09:57:49.757242704Z","Action":"pass","Package":"keycape/tests/conformance","Elapsed":1.027} +{"Time":"2026-10-18T09:57:49.760428029Z","Action":"start","Package":"keycape/tests/negative"} +{"Time":"2026-10-18T09:57:49.772321589Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestConcurrentCodeExchangeSucceedsExactlyOnce","Output":"--- PASS: TestConcurrentCodeExchangeSucceedsExactlyOnce (0.11s)\n"} +{"Time":"2026-10-18T09:57:49.77244692Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestConcurrentCodeExchangeSucceedsExactlyOnce","Elapsed":0.11} +{"Time":"2026-10-18T09:57:49.77246399Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestFailedExchangeConsumesTheCode"} +{"Time":"2026-10-18T09:57:49.772470725Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestFailedExchangeConsumesTheCode","Output":"=== RUN TestFailedExchangeConsumesTheCode\n"} +{"Time":"2026-10-18T09:57:49.780670586Z","Action":"run","Package":"keycape/tests/negative","Test":"TestNegative_DynamicClientRegistration"} +{"Time":"2026-10-18T09:57:49.780720108Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_DynamicClientRegistration","Output":"=== RUN TestNegative_DynamicClientRegistration\n"} +{"Time":"2026-10-18T09:57:49.786119522Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_DynamicClientRegistration","Output":"--- PASS: TestNegative_DynamicClientRegistration (0.01s)\n"} +{"Time":"2026-10-18T09:57:49.786182454Z","Action":"pass","Package":"keycape/tests/negative","Test":"TestNegative_DynamicClientRegistration","Elapsed":0.01} +{"Time":"2026-10-18T09:57:49.786201471Z","Action":"run","Package":"keycape/tests/negative","Test":"TestNegative_ImplicitFlow"} +{"Time":"2026-10-18T09:57:49.78620763Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_ImplicitFlow","Output":"=== RUN TestNegative_ImplicitFlow\n"} +{"Time":"2026-10-18T09:57:49.787849549Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/ca","Output":"--- PASS: TestOnlineReloadsCredentialsKeysAndTrustFiles/ca (0.15s)\n"} +{"Time":"2026-10-18T09:57:49.787908783Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/ca","Elapsed":0.15} +{"Time":"2026-10-18T09:57:49.787921407Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-world-readable"} +{"Time":"2026-10-18T09:57:49.787926862Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-world-readable","Output":"=== RUN TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-world-readable\n"} +{"Time":"2026-10-18T09:57:49.789276729Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_ImplicitFlow","Output":"--- PASS: TestNegative_ImplicitFlow (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.789325891Z","Action":"pass","Package":"keycape/tests/negative","Test":"TestNegative_ImplicitFlow","Elapsed":0} +{"Time":"2026-10-18T09:57:49.789343511Z","Action":"run","Package":"keycape/tests/negative","Test":"TestNegative_WildcardRedirectURI"} +{"Time":"2026-10-18T09:57:49.789348488Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_WildcardRedirectURI","Output":"=== RUN TestNegative_WildcardRedirectURI\n"} +{"Time":"2026-10-18T09:57:49.79185144Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_WildcardRedirectURI","Output":"--- PASS: TestNegative_WildcardRedirectURI (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.791902333Z","Action":"pass","Package":"keycape/tests/negative","Test":"TestNegative_WildcardRedirectURI","Elapsed":0} +{"Time":"2026-10-18T09:57:49.792011742Z","Action":"run","Package":"keycape/tests/negative","Test":"TestNegative_IdentityBroker"} +{"Time":"2026-10-18T09:57:49.79204488Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_IdentityBroker","Output":"=== RUN TestNegative_IdentityBroker\n"} +{"Time":"2026-10-18T09:57:49.794866736Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_IdentityBroker","Output":"--- PASS: TestNegative_IdentityBroker (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.79491221Z","Action":"pass","Package":"keycape/tests/negative","Test":"TestNegative_IdentityBroker","Elapsed":0} +{"Time":"2026-10-18T09:57:49.794921669Z","Action":"run","Package":"keycape/tests/negative","Test":"TestNegative_MissingPKCE"} +{"Time":"2026-10-18T09:57:49.794925862Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_MissingPKCE","Output":"=== RUN TestNegative_MissingPKCE\n"} +{"Time":"2026-10-18T09:57:49.797348716Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_MissingPKCE","Output":"--- PASS: TestNegative_MissingPKCE (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.797392143Z","Action":"pass","Package":"keycape/tests/negative","Test":"TestNegative_MissingPKCE","Elapsed":0} +{"Time":"2026-10-18T09:57:49.797481801Z","Action":"run","Package":"keycape/tests/negative","Test":"TestNegative_PKCEPlainMethod"} +{"Time":"2026-10-18T09:57:49.797490701Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_PKCEPlainMethod","Output":"=== RUN TestNegative_PKCEPlainMethod\n"} +{"Time":"2026-10-18T09:57:49.799891228Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_PKCEPlainMethod","Output":"--- PASS: TestNegative_PKCEPlainMethod (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.79993855Z","Action":"pass","Package":"keycape/tests/negative","Test":"TestNegative_PKCEPlainMethod","Elapsed":0} +{"Time":"2026-10-18T09:57:49.799946558Z","Action":"run","Package":"keycape/tests/negative","Test":"TestNegative_UnknownGrantType"} +{"Time":"2026-10-18T09:57:49.799950264Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_UnknownGrantType","Output":"=== RUN TestNegative_UnknownGrantType\n"} +{"Time":"2026-10-18T09:57:49.802505226Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_UnknownGrantType","Output":"--- PASS: TestNegative_UnknownGrantType (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.802566354Z","Action":"pass","Package":"keycape/tests/negative","Test":"TestNegative_UnknownGrantType","Elapsed":0} +{"Time":"2026-10-18T09:57:49.802588735Z","Action":"run","Package":"keycape/tests/negative","Test":"TestNegative_ValidRequest_PassesThrough"} +{"Time":"2026-10-18T09:57:49.802595724Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_ValidRequest_PassesThrough","Output":"=== RUN TestNegative_ValidRequest_PassesThrough\n"} +{"Time":"2026-10-18T09:57:49.805063745Z","Action":"output","Package":"keycape/tests/negative","Test":"TestNegative_ValidRequest_PassesThrough","Output":"--- PASS: TestNegative_ValidRequest_PassesThrough (0.00s)\n"} +{"Time":"2026-10-18T09:57:49.805110165Z","Action":"pass","Package":"keycape/tests/negative","Test":"TestNegative_ValidRequest_PassesThrough","Elapsed":0} +{"Time":"2026-10-18T09:57:49.805119291Z","Action":"output","Package":"keycape/tests/negative","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:49.954072151Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestFailedExchangeConsumesTheCode","Output":"--- PASS: TestFailedExchangeConsumesTheCode (0.18s)\n"} +{"Time":"2026-10-18T09:57:49.954139158Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestFailedExchangeConsumesTheCode","Elapsed":0.18} +{"Time":"2026-10-18T09:57:49.954158851Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes"} +{"Time":"2026-10-18T09:57:49.954163721Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes","Output":"=== RUN TestUserinfoRejectsUnverifiedTokenShapes\n"} +{"Time":"2026-10-18T09:57:49.954176435Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/accepts_a_well-formed_access_token"} +{"Time":"2026-10-18T09:57:49.954208149Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/accepts_a_well-formed_access_token","Output":"=== RUN TestUserinfoRejectsUnverifiedTokenShapes/accepts_a_well-formed_access_token\n"} +{"Time":"2026-10-18T09:57:50.031006825Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-world-readable","Output":"--- PASS: TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-world-readable (0.24s)\n"} +{"Time":"2026-10-18T09:57:50.03106633Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-world-readable","Elapsed":0.24} +{"Time":"2026-10-18T09:57:50.031075509Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/public-writable"} +{"Time":"2026-10-18T09:57:50.031080775Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/public-writable","Output":"=== RUN TestOnlineReloadsCredentialsKeysAndTrustFiles/public-writable\n"} +{"Time":"2026-10-18T09:57:50.164301244Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/accepts_a_well-formed_access_token","Output":"--- PASS: TestUserinfoRejectsUnverifiedTokenShapes/accepts_a_well-formed_access_token (0.21s)\n"} +{"Time":"2026-10-18T09:57:50.164409406Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/accepts_a_well-formed_access_token","Elapsed":0.21} +{"Time":"2026-10-18T09:57:50.164518812Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/foreign_issuer"} +{"Time":"2026-10-18T09:57:50.164530012Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/foreign_issuer","Output":"=== RUN TestUserinfoRejectsUnverifiedTokenShapes/foreign_issuer\n"} +{"Time":"2026-10-18T09:57:50.210977516Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/public-writable","Output":"--- PASS: TestOnlineReloadsCredentialsKeysAndTrustFiles/public-writable (0.18s)\n"} +{"Time":"2026-10-18T09:57:50.2110373Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/public-writable","Elapsed":0.18} +{"Time":"2026-10-18T09:57:50.211052332Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-fifo"} +{"Time":"2026-10-18T09:57:50.211065299Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-fifo","Output":"=== RUN TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-fifo\n"} +{"Time":"2026-10-18T09:57:50.312889513Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/foreign_issuer","Output":"--- PASS: TestUserinfoRejectsUnverifiedTokenShapes/foreign_issuer (0.15s)\n"} +{"Time":"2026-10-18T09:57:50.312938847Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/foreign_issuer","Elapsed":0.15} +{"Time":"2026-10-18T09:57:50.312947657Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/missing_issuer"} +{"Time":"2026-10-18T09:57:50.312952733Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/missing_issuer","Output":"=== RUN TestUserinfoRejectsUnverifiedTokenShapes/missing_issuer\n"} +{"Time":"2026-10-18T09:57:50.410686427Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/missing_issuer","Output":"--- PASS: TestUserinfoRejectsUnverifiedTokenShapes/missing_issuer (0.10s)\n"} +{"Time":"2026-10-18T09:57:50.410755012Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/missing_issuer","Elapsed":0.1} +{"Time":"2026-10-18T09:57:50.410769935Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/id_token_presented_as_access_token"} +{"Time":"2026-10-18T09:57:50.410775562Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/id_token_presented_as_access_token","Output":"=== RUN TestUserinfoRejectsUnverifiedTokenShapes/id_token_presented_as_access_token\n"} +{"Time":"2026-10-18T09:57:50.428998592Z","Action":"output","Package":"keycape/tests/migration","Output":"ok \tkeycape/tests/migration\t1.033s\n"} +{"Time":"2026-10-18T09:57:50.429148071Z","Action":"pass","Package":"keycape/tests/migration","Elapsed":1.033} +{"Time":"2026-10-18T09:57:50.438196006Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-fifo","Output":"--- PASS: TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-fifo (0.23s)\n"} +{"Time":"2026-10-18T09:57:50.438260136Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles/secret-fifo","Elapsed":0.23} +{"Time":"2026-10-18T09:57:50.43839758Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles","Output":"--- PASS: TestOnlineReloadsCredentialsKeysAndTrustFiles (1.18s)\n"} +{"Time":"2026-10-18T09:57:50.438505658Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineReloadsCredentialsKeysAndTrustFiles","Elapsed":1.18} +{"Time":"2026-10-18T09:57:50.43852665Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus"} +{"Time":"2026-10-18T09:57:50.438533702Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus","Output":"=== RUN TestOnlineRechecksExpiryClockAndKeyAfterStatus\n"} +{"Time":"2026-10-18T09:57:50.438675119Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/expiry"} +{"Time":"2026-10-18T09:57:50.438686914Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/expiry","Output":"=== RUN TestOnlineRechecksExpiryClockAndKeyAfterStatus/expiry\n"} +{"Time":"2026-10-18T09:57:50.500584304Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/id_token_presented_as_access_token","Output":"--- PASS: TestUserinfoRejectsUnverifiedTokenShapes/id_token_presented_as_access_token (0.09s)\n"} +{"Time":"2026-10-18T09:57:50.500647551Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes/id_token_presented_as_access_token","Elapsed":0.09} +{"Time":"2026-10-18T09:57:50.500679499Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes","Output":"--- PASS: TestUserinfoRejectsUnverifiedTokenShapes (0.55s)\n"} +{"Time":"2026-10-18T09:57:50.500690419Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsUnverifiedTokenShapes","Elapsed":0.55} +{"Time":"2026-10-18T09:57:50.500712322Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsNonRS256Algorithms"} +{"Time":"2026-10-18T09:57:50.500724531Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsNonRS256Algorithms","Output":"=== RUN TestUserinfoRejectsNonRS256Algorithms\n"} +{"Time":"2026-10-18T09:57:50.526816392Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/expiry","Output":"--- PASS: TestOnlineRechecksExpiryClockAndKeyAfterStatus/expiry (0.09s)\n"} +{"Time":"2026-10-18T09:57:50.52688091Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/expiry","Elapsed":0.09} +{"Time":"2026-10-18T09:57:50.526917583Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/clock-backwards"} +{"Time":"2026-10-18T09:57:50.526930469Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/clock-backwards","Output":"=== RUN TestOnlineRechecksExpiryClockAndKeyAfterStatus/clock-backwards\n"} +{"Time":"2026-10-18T09:57:50.784399713Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/clock-backwards","Output":"--- PASS: TestOnlineRechecksExpiryClockAndKeyAfterStatus/clock-backwards (0.26s)\n"} +{"Time":"2026-10-18T09:57:50.784465954Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/clock-backwards","Elapsed":0.26} +{"Time":"2026-10-18T09:57:50.784476658Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/withdrawn-key"} +{"Time":"2026-10-18T09:57:50.784481797Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/withdrawn-key","Output":"=== RUN TestOnlineRechecksExpiryClockAndKeyAfterStatus/withdrawn-key\n"} +{"Time":"2026-10-18T09:57:50.810936497Z","Action":"output","Package":"keycape/tests/negative","Output":"ok \tkeycape/tests/negative\t1.050s\n"} +{"Time":"2026-10-18T09:57:50.810996652Z","Action":"pass","Package":"keycape/tests/negative","Elapsed":1.051} +{"Time":"2026-10-18T09:57:50.871179799Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsNonRS256Algorithms","Output":"--- PASS: TestUserinfoRejectsNonRS256Algorithms (0.37s)\n"} +{"Time":"2026-10-18T09:57:50.871228024Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoRejectsNonRS256Algorithms","Elapsed":0.37} +{"Time":"2026-10-18T09:57:50.871250963Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_ResponseCode"} +{"Time":"2026-10-18T09:57:50.871261333Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_ResponseCode","Output":"=== RUN TestJWKSHandler_ResponseCode\n"} +{"Time":"2026-10-18T09:57:50.87117482Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/withdrawn-key","Output":"--- PASS: TestOnlineRechecksExpiryClockAndKeyAfterStatus/withdrawn-key (0.09s)\n"} +{"Time":"2026-10-18T09:57:50.871300017Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus/withdrawn-key","Elapsed":0.09} +{"Time":"2026-10-18T09:57:50.871310928Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus","Output":"--- PASS: TestOnlineRechecksExpiryClockAndKeyAfterStatus (0.43s)\n"} +{"Time":"2026-10-18T09:57:50.871319504Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineRechecksExpiryClockAndKeyAfterStatus","Elapsed":0.43} +{"Time":"2026-10-18T09:57:50.871326988Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineCancellationAndAmbientProxyDoNotLeakInputs"} +{"Time":"2026-10-18T09:57:50.871333156Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCancellationAndAmbientProxyDoNotLeakInputs","Output":"=== RUN TestOnlineCancellationAndAmbientProxyDoNotLeakInputs\n"} +{"Time":"2026-10-18T09:57:51.085993352Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineCancellationAndAmbientProxyDoNotLeakInputs","Output":"--- PASS: TestOnlineCancellationAndAmbientProxyDoNotLeakInputs (0.22s)\n"} +{"Time":"2026-10-18T09:57:51.086054507Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineCancellationAndAmbientProxyDoNotLeakInputs","Elapsed":0.22} +{"Time":"2026-10-18T09:57:51.086072262Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineMalformedAdmissionAndNegativeStatus"} +{"Time":"2026-10-18T09:57:51.086096825Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineMalformedAdmissionAndNegativeStatus","Output":"=== RUN TestOnlineMalformedAdmissionAndNegativeStatus\n"} +{"Time":"2026-10-18T09:57:51.105535501Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_ResponseCode","Output":"--- PASS: TestJWKSHandler_ResponseCode (0.23s)\n"} +{"Time":"2026-10-18T09:57:51.105595988Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_ResponseCode","Elapsed":0.23} +{"Time":"2026-10-18T09:57:51.105611174Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_ContentType"} +{"Time":"2026-10-18T09:57:51.105618613Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_ContentType","Output":"=== RUN TestJWKSHandler_ContentType\n"} +{"Time":"2026-10-18T09:57:51.235101218Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_ContentType","Output":"--- PASS: TestJWKSHandler_ContentType (0.13s)\n"} +{"Time":"2026-10-18T09:57:51.235149641Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_ContentType","Elapsed":0.13} +{"Time":"2026-10-18T09:57:51.235238127Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_StructureValid"} +{"Time":"2026-10-18T09:57:51.235249949Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_StructureValid","Output":"=== RUN TestJWKSHandler_StructureValid\n"} +{"Time":"2026-10-18T09:57:51.268941799Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineMalformedAdmissionAndNegativeStatus","Output":"--- PASS: TestOnlineMalformedAdmissionAndNegativeStatus (0.18s)\n"} +{"Time":"2026-10-18T09:57:51.269002458Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineMalformedAdmissionAndNegativeStatus","Elapsed":0.18} +{"Time":"2026-10-18T09:57:51.26901272Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestOnlineUsesSharedTypedJOSEVerifier"} +{"Time":"2026-10-18T09:57:51.269018942Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineUsesSharedTypedJOSEVerifier","Output":"=== RUN TestOnlineUsesSharedTypedJOSEVerifier\n"} +{"Time":"2026-10-18T09:57:51.536758996Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_StructureValid","Output":"--- PASS: TestJWKSHandler_StructureValid (0.30s)\n"} +{"Time":"2026-10-18T09:57:51.53682098Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_StructureValid","Elapsed":0.3} +{"Time":"2026-10-18T09:57:51.536834064Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_CorrectAlgorithmFields"} +{"Time":"2026-10-18T09:57:51.536840584Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_CorrectAlgorithmFields","Output":"=== RUN TestJWKSHandler_CorrectAlgorithmFields\n"} +{"Time":"2026-10-18T09:57:51.608533584Z","Action":"start","Package":"keycape/tests/profile"} +{"Time":"2026-10-18T09:57:51.631136508Z","Action":"run","Package":"keycape/tests/profile","Test":"TestDiscovery"} +{"Time":"2026-10-18T09:57:51.631193749Z","Action":"output","Package":"keycape/tests/profile","Test":"TestDiscovery","Output":"=== RUN TestDiscovery\n"} +{"Time":"2026-10-18T09:57:51.668714422Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestOnlineUsesSharedTypedJOSEVerifier","Output":"--- PASS: TestOnlineUsesSharedTypedJOSEVerifier (0.40s)\n"} +{"Time":"2026-10-18T09:57:51.668763422Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestOnlineUsesSharedTypedJOSEVerifier","Elapsed":0.4} +{"Time":"2026-10-18T09:57:51.66886391Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientPassesOnCorrectRegistration"} +{"Time":"2026-10-18T09:57:51.668875425Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientPassesOnCorrectRegistration","Output":"=== RUN TestVerifyClientPassesOnCorrectRegistration\n"} +{"Time":"2026-10-18T09:57:51.704332098Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_CorrectAlgorithmFields","Output":"--- PASS: TestJWKSHandler_CorrectAlgorithmFields (0.17s)\n"} +{"Time":"2026-10-18T09:57:51.70443916Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_CorrectAlgorithmFields","Elapsed":0.17} +{"Time":"2026-10-18T09:57:51.704471009Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_MultipleKeys"} +{"Time":"2026-10-18T09:57:51.704483813Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_MultipleKeys","Output":"=== RUN TestJWKSHandler_MultipleKeys\n"} +{"Time":"2026-10-18T09:57:51.736346488Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientPassesOnCorrectRegistration","Output":"--- PASS: TestVerifyClientPassesOnCorrectRegistration (0.07s)\n"} +{"Time":"2026-10-18T09:57:51.736437391Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientPassesOnCorrectRegistration","Elapsed":0.07} +{"Time":"2026-10-18T09:57:51.736458617Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientNeverPrintsSecretsOrTokens"} +{"Time":"2026-10-18T09:57:51.736471223Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientNeverPrintsSecretsOrTokens","Output":"=== RUN TestVerifyClientNeverPrintsSecretsOrTokens\n"} +{"Time":"2026-10-18T09:57:51.739232192Z","Action":"output","Package":"keycape/tests/profile","Test":"TestDiscovery","Output":"--- PASS: TestDiscovery (0.11s)\n"} +{"Time":"2026-10-18T09:57:51.739284429Z","Action":"pass","Package":"keycape/tests/profile","Test":"TestDiscovery","Elapsed":0.11} +{"Time":"2026-10-18T09:57:51.739297206Z","Action":"run","Package":"keycape/tests/profile","Test":"TestJWKS"} +{"Time":"2026-10-18T09:57:51.739302617Z","Action":"output","Package":"keycape/tests/profile","Test":"TestJWKS","Output":"=== RUN TestJWKS\n"} +{"Time":"2026-10-18T09:57:51.918218669Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientNeverPrintsSecretsOrTokens","Output":"--- PASS: TestVerifyClientNeverPrintsSecretsOrTokens (0.18s)\n"} +{"Time":"2026-10-18T09:57:51.918287912Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientNeverPrintsSecretsOrTokens","Elapsed":0.18} +{"Time":"2026-10-18T09:57:51.918300203Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientFailsWhenExcessScopeIsGranted"} +{"Time":"2026-10-18T09:57:51.918307913Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientFailsWhenExcessScopeIsGranted","Output":"=== RUN TestVerifyClientFailsWhenExcessScopeIsGranted\n"} +{"Time":"2026-10-18T09:57:52.094403567Z","Action":"output","Package":"keycape/tests/profile","Test":"TestJWKS","Output":"--- PASS: TestJWKS (0.35s)\n"} +{"Time":"2026-10-18T09:57:52.094470069Z","Action":"pass","Package":"keycape/tests/profile","Test":"TestJWKS","Elapsed":0.35} +{"Time":"2026-10-18T09:57:52.09460321Z","Action":"run","Package":"keycape/tests/profile","Test":"TestAuthorize_Redirect"} +{"Time":"2026-10-18T09:57:52.094618738Z","Action":"output","Package":"keycape/tests/profile","Test":"TestAuthorize_Redirect","Output":"=== RUN TestAuthorize_Redirect\n"} +{"Time":"2026-10-18T09:57:52.121233214Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientFailsWhenExcessScopeIsGranted","Output":"--- PASS: TestVerifyClientFailsWhenExcessScopeIsGranted (0.20s)\n"} +{"Time":"2026-10-18T09:57:52.121281375Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientFailsWhenExcessScopeIsGranted","Elapsed":0.2} +{"Time":"2026-10-18T09:57:52.121292827Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientRejectsUnrotatedAndAcceptedPredecessor"} +{"Time":"2026-10-18T09:57:52.121298941Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientRejectsUnrotatedAndAcceptedPredecessor","Output":"=== RUN TestVerifyClientRejectsUnrotatedAndAcceptedPredecessor\n"} +{"Time":"2026-10-18T09:57:52.154808558Z","Action":"output","Package":"keycape/tests/profile","Test":"TestAuthorize_Redirect","Output":"--- PASS: TestAuthorize_Redirect (0.06s)\n"} +{"Time":"2026-10-18T09:57:52.154869289Z","Action":"pass","Package":"keycape/tests/profile","Test":"TestAuthorize_Redirect","Elapsed":0.06} +{"Time":"2026-10-18T09:57:52.154880308Z","Action":"run","Package":"keycape/tests/profile","Test":"TestAuthorize_InvalidClient"} +{"Time":"2026-10-18T09:57:52.154885728Z","Action":"output","Package":"keycape/tests/profile","Test":"TestAuthorize_InvalidClient","Output":"=== RUN TestAuthorize_InvalidClient\n"} +{"Time":"2026-10-18T09:57:52.357694596Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientRejectsUnrotatedAndAcceptedPredecessor","Output":"--- PASS: TestVerifyClientRejectsUnrotatedAndAcceptedPredecessor (0.24s)\n"} +{"Time":"2026-10-18T09:57:52.357739709Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientRejectsUnrotatedAndAcceptedPredecessor","Elapsed":0.24} +{"Time":"2026-10-18T09:57:52.357759142Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientRequiresCompleteArguments"} +{"Time":"2026-10-18T09:57:52.357764579Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientRequiresCompleteArguments","Output":"=== RUN TestVerifyClientRequiresCompleteArguments\n"} +{"Time":"2026-10-18T09:57:52.358038054Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientRequiresCompleteArguments","Output":"--- PASS: TestVerifyClientRequiresCompleteArguments (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.358054222Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientRequiresCompleteArguments","Elapsed":0} +{"Time":"2026-10-18T09:57:52.358155874Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestNoExcessScopeCatchesUnrequestedGrants"} +{"Time":"2026-10-18T09:57:52.358169535Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestNoExcessScopeCatchesUnrequestedGrants","Output":"=== RUN TestNoExcessScopeCatchesUnrequestedGrants\n"} +{"Time":"2026-10-18T09:57:52.358381864Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestNoExcessScopeCatchesUnrequestedGrants","Output":"--- PASS: TestNoExcessScopeCatchesUnrequestedGrants (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.358396264Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestNoExcessScopeCatchesUnrequestedGrants","Elapsed":0} +{"Time":"2026-10-18T09:57:52.358526185Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestHasAllRolesNamesWhatIsMissing"} +{"Time":"2026-10-18T09:57:52.358537646Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestHasAllRolesNamesWhatIsMissing","Output":"=== RUN TestHasAllRolesNamesWhatIsMissing\n"} +{"Time":"2026-10-18T09:57:52.358711895Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestHasAllRolesNamesWhatIsMissing","Output":"--- PASS: TestHasAllRolesNamesWhatIsMissing (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.358826568Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestHasAllRolesNamesWhatIsMissing","Elapsed":0} +{"Time":"2026-10-18T09:57:52.358921483Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals"} +{"Time":"2026-10-18T09:57:52.358932953Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals","Output":"=== RUN TestVerifyClientDoesNotConfuseFailuresWithRefusals\n"} +{"Time":"2026-10-18T09:57:52.359093117Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/transport"} +{"Time":"2026-10-18T09:57:52.359113722Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/transport","Output":"=== RUN TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/transport\n"} +{"Time":"2026-10-18T09:57:52.366316134Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_MultipleKeys","Output":"--- PASS: TestJWKSHandler_MultipleKeys (0.66s)\n"} +{"Time":"2026-10-18T09:57:52.36640701Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_MultipleKeys","Elapsed":0.66} +{"Time":"2026-10-18T09:57:52.366420653Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_Valid"} +{"Time":"2026-10-18T09:57:52.366426262Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_Valid","Output":"=== RUN TestLoadPublicKeyFromPEM_Valid\n"} +{"Time":"2026-10-18T09:57:52.436966154Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_Valid","Output":"--- PASS: TestLoadPublicKeyFromPEM_Valid (0.07s)\n"} +{"Time":"2026-10-18T09:57:52.437029212Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_Valid","Elapsed":0.07} +{"Time":"2026-10-18T09:57:52.437047643Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_InvalidPEM"} +{"Time":"2026-10-18T09:57:52.437054334Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_InvalidPEM","Output":"=== RUN TestLoadPublicKeyFromPEM_InvalidPEM\n"} +{"Time":"2026-10-18T09:57:52.437221808Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_InvalidPEM","Output":"--- PASS: TestLoadPublicKeyFromPEM_InvalidPEM (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.437242647Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_InvalidPEM","Elapsed":0} +{"Time":"2026-10-18T09:57:52.437253575Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_PrivateKeyRejected"} +{"Time":"2026-10-18T09:57:52.437260329Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_PrivateKeyRejected","Output":"=== RUN TestLoadPublicKeyFromPEM_PrivateKeyRejected\n"} +{"Time":"2026-10-18T09:57:52.648939931Z","Action":"output","Package":"keycape/tests/profile","Test":"TestAuthorize_InvalidClient","Output":"--- PASS: TestAuthorize_InvalidClient (0.49s)\n"} +{"Time":"2026-10-18T09:57:52.648989282Z","Action":"pass","Package":"keycape/tests/profile","Test":"TestAuthorize_InvalidClient","Elapsed":0.49} +{"Time":"2026-10-18T09:57:52.649001104Z","Action":"run","Package":"keycape/tests/profile","Test":"TestAuthorize_WildcardRedirectURI"} +{"Time":"2026-10-18T09:57:52.649006469Z","Action":"output","Package":"keycape/tests/profile","Test":"TestAuthorize_WildcardRedirectURI","Output":"=== RUN TestAuthorize_WildcardRedirectURI\n"} +{"Time":"2026-10-18T09:57:52.664955575Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_PrivateKeyRejected","Output":"--- PASS: TestLoadPublicKeyFromPEM_PrivateKeyRejected (0.23s)\n"} +{"Time":"2026-10-18T09:57:52.665011572Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestLoadPublicKeyFromPEM_PrivateKeyRejected","Elapsed":0.23} +{"Time":"2026-10-18T09:57:52.665025251Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_NEncoding"} +{"Time":"2026-10-18T09:57:52.665031049Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_NEncoding","Output":"=== RUN TestJWKSHandler_NEncoding\n"} +{"Time":"2026-10-18T09:57:52.786901062Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_NEncoding","Output":"--- PASS: TestJWKSHandler_NEncoding (0.12s)\n"} +{"Time":"2026-10-18T09:57:52.786980792Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestJWKSHandler_NEncoding","Elapsed":0.12} +{"Time":"2026-10-18T09:57:52.787008421Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestNativeOptionalEnrollmentAndOldSession"} +{"Time":"2026-10-18T09:57:52.787041018Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestNativeOptionalEnrollmentAndOldSession","Output":"=== RUN TestNativeOptionalEnrollmentAndOldSession\n"} +{"Time":"2026-10-18T09:57:52.787148044Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestNativeOptionalEnrollmentAndOldSession","Output":" native_optional_test.go:27: requires disposable installed-provider fixture\n"} +{"Time":"2026-10-18T09:57:52.787251616Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestNativeOptionalEnrollmentAndOldSession","Output":"--- SKIP: TestNativeOptionalEnrollmentAndOldSession (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.78738565Z","Action":"skip","Package":"keycape/internal/server/oidc","Test":"TestNativeOptionalEnrollmentAndOldSession","Elapsed":0} +{"Time":"2026-10-18T09:57:52.787407273Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment"} +{"Time":"2026-10-18T09:57:52.787415064Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment","Output":"=== RUN TestOptionalMFAFollowsEnrollment\n"} +{"Time":"2026-10-18T09:57:52.787606734Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/unenrolled_despite_global_requirement"} +{"Time":"2026-10-18T09:57:52.787630052Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/unenrolled_despite_global_requirement","Output":"=== RUN TestOptionalMFAFollowsEnrollment/unenrolled_despite_global_requirement\n"} +{"Time":"2026-10-18T09:57:52.788008704Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/unenrolled_despite_global_requirement","Output":"--- PASS: TestOptionalMFAFollowsEnrollment/unenrolled_despite_global_requirement (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.78804013Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/unenrolled_despite_global_requirement","Elapsed":0} +{"Time":"2026-10-18T09:57:52.788054521Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/enrolled"} +{"Time":"2026-10-18T09:57:52.788061113Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/enrolled","Output":"=== RUN TestOptionalMFAFollowsEnrollment/enrolled\n"} +{"Time":"2026-10-18T09:57:52.788527362Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/enrolled","Output":"--- PASS: TestOptionalMFAFollowsEnrollment/enrolled (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.788566759Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/enrolled","Elapsed":0} +{"Time":"2026-10-18T09:57:52.788579121Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/lookup_unavailable"} +{"Time":"2026-10-18T09:57:52.788586056Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/lookup_unavailable","Output":"=== RUN TestOptionalMFAFollowsEnrollment/lookup_unavailable\n"} +{"Time":"2026-10-18T09:57:52.788812538Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/lookup_unavailable","Output":"--- PASS: TestOptionalMFAFollowsEnrollment/lookup_unavailable (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.788841781Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/lookup_unavailable","Elapsed":0} +{"Time":"2026-10-18T09:57:52.78886491Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/explicit_step_up"} +{"Time":"2026-10-18T09:57:52.788870609Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/explicit_step_up","Output":"=== RUN TestOptionalMFAFollowsEnrollment/explicit_step_up\n"} +{"Time":"2026-10-18T09:57:52.789251065Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/explicit_step_up","Output":"--- PASS: TestOptionalMFAFollowsEnrollment/explicit_step_up (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.789279785Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment/explicit_step_up","Elapsed":0} +{"Time":"2026-10-18T09:57:52.789298261Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment","Output":"--- PASS: TestOptionalMFAFollowsEnrollment (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.789489875Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestOptionalMFAFollowsEnrollment","Elapsed":0} +{"Time":"2026-10-18T09:57:52.789514925Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestPolicy_CoulombSocialPasswordOnlyWhenNoStrongerRule"} +{"Time":"2026-10-18T09:57:52.78952102Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_CoulombSocialPasswordOnlyWhenNoStrongerRule","Output":"=== RUN TestPolicy_CoulombSocialPasswordOnlyWhenNoStrongerRule\n"} +{"Time":"2026-10-18T09:57:52.789823982Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_CoulombSocialPasswordOnlyWhenNoStrongerRule","Output":"--- PASS: TestPolicy_CoulombSocialPasswordOnlyWhenNoStrongerRule (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.789845885Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestPolicy_CoulombSocialPasswordOnlyWhenNoStrongerRule","Elapsed":0} +{"Time":"2026-10-18T09:57:52.78993291Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestPolicy_ProfileActionStepUpForcesMFA"} +{"Time":"2026-10-18T09:57:52.789945931Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_ProfileActionStepUpForcesMFA","Output":"=== RUN TestPolicy_ProfileActionStepUpForcesMFA\n"} +{"Time":"2026-10-18T09:57:52.790531325Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_ProfileActionStepUpForcesMFA","Output":"--- PASS: TestPolicy_ProfileActionStepUpForcesMFA (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.79059239Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestPolicy_ProfileActionStepUpForcesMFA","Elapsed":0} +{"Time":"2026-10-18T09:57:52.790609811Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestPolicy_OpenBaoKeepsMandatoryMFA"} +{"Time":"2026-10-18T09:57:52.79061808Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_OpenBaoKeepsMandatoryMFA","Output":"=== RUN TestPolicy_OpenBaoKeepsMandatoryMFA\n"} +{"Time":"2026-10-18T09:57:52.791654231Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_OpenBaoKeepsMandatoryMFA","Output":"--- PASS: TestPolicy_OpenBaoKeepsMandatoryMFA (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.791832461Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestPolicy_OpenBaoKeepsMandatoryMFA","Elapsed":0} +{"Time":"2026-10-18T09:57:52.791890406Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestPolicy_LowAssuranceClientDoesNotSuppressHighAssurance"} +{"Time":"2026-10-18T09:57:52.791901335Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_LowAssuranceClientDoesNotSuppressHighAssurance","Output":"=== RUN TestPolicy_LowAssuranceClientDoesNotSuppressHighAssurance\n"} +{"Time":"2026-10-18T09:57:52.792876702Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_LowAssuranceClientDoesNotSuppressHighAssurance","Output":"--- PASS: TestPolicy_LowAssuranceClientDoesNotSuppressHighAssurance (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.7929427Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestPolicy_LowAssuranceClientDoesNotSuppressHighAssurance","Elapsed":0} +{"Time":"2026-10-18T09:57:52.792954846Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestPolicy_NoFactorEnrollmentHandoffDoesNotBypass"} +{"Time":"2026-10-18T09:57:52.792986451Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_NoFactorEnrollmentHandoffDoesNotBypass","Output":"=== RUN TestPolicy_NoFactorEnrollmentHandoffDoesNotBypass\n"} +{"Time":"2026-10-18T09:57:52.793397169Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_NoFactorEnrollmentHandoffDoesNotBypass","Output":"--- PASS: TestPolicy_NoFactorEnrollmentHandoffDoesNotBypass (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.793421534Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestPolicy_NoFactorEnrollmentHandoffDoesNotBypass","Elapsed":0} +{"Time":"2026-10-18T09:57:52.793438711Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestPolicy_ExactRedirectStillEnforced"} +{"Time":"2026-10-18T09:57:52.793453202Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_ExactRedirectStillEnforced","Output":"=== RUN TestPolicy_ExactRedirectStillEnforced\n"} +{"Time":"2026-10-18T09:57:52.793768824Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestPolicy_ExactRedirectStillEnforced","Output":"--- PASS: TestPolicy_ExactRedirectStillEnforced (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.793807454Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestPolicy_ExactRedirectStillEnforced","Elapsed":0} +{"Time":"2026-10-18T09:57:52.793824316Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestLogout_ClearsSessionSoHighAssuranceRequiresMFAAgain"} +{"Time":"2026-10-18T09:57:52.793831142Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestLogout_ClearsSessionSoHighAssuranceRequiresMFAAgain","Output":"=== RUN TestLogout_ClearsSessionSoHighAssuranceRequiresMFAAgain\n"} +{"Time":"2026-10-18T09:57:52.794424078Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestLogout_ClearsSessionSoHighAssuranceRequiresMFAAgain","Output":"--- PASS: TestLogout_ClearsSessionSoHighAssuranceRequiresMFAAgain (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.794458523Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestLogout_ClearsSessionSoHighAssuranceRequiresMFAAgain","Elapsed":0} +{"Time":"2026-10-18T09:57:52.794467838Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestLogout_RejectsUnregisteredPostLogoutRedirect"} +{"Time":"2026-10-18T09:57:52.794481058Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestLogout_RejectsUnregisteredPostLogoutRedirect","Output":"=== RUN TestLogout_RejectsUnregisteredPostLogoutRedirect\n"} +{"Time":"2026-10-18T09:57:52.794770283Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestLogout_RejectsUnregisteredPostLogoutRedirect","Output":"--- PASS: TestLogout_RejectsUnregisteredPostLogoutRedirect (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.794800139Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestLogout_RejectsUnregisteredPostLogoutRedirect","Elapsed":0} +{"Time":"2026-10-18T09:57:52.794812385Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestRuntimePolicyEnrollmentOldSessionAndStepUp"} +{"Time":"2026-10-18T09:57:52.794818688Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestRuntimePolicyEnrollmentOldSessionAndStepUp","Output":"=== RUN TestRuntimePolicyEnrollmentOldSessionAndStepUp\n"} +{"Time":"2026-10-18T09:57:52.79690942Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestRuntimePolicyEnrollmentOldSessionAndStepUp","Output":"--- PASS: TestRuntimePolicyEnrollmentOldSessionAndStepUp (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.796968564Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestRuntimePolicyEnrollmentOldSessionAndStepUp","Elapsed":0} +{"Time":"2026-10-18T09:57:52.796984398Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_FlagOff_RedirectUnchanged"} +{"Time":"2026-10-18T09:57:52.796990593Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_FlagOff_RedirectUnchanged","Output":"=== RUN TestSignInDiagnosis_FlagOff_RedirectUnchanged\n"} +{"Time":"2026-10-18T09:57:52.797350661Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_FlagOff_RedirectUnchanged","Output":"--- PASS: TestSignInDiagnosis_FlagOff_RedirectUnchanged (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.797373412Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_FlagOff_RedirectUnchanged","Elapsed":0} +{"Time":"2026-10-18T09:57:52.797390869Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_FlagOn_ShowsFieldsAndContinue"} +{"Time":"2026-10-18T09:57:52.797403403Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_FlagOn_ShowsFieldsAndContinue","Output":"=== RUN TestSignInDiagnosis_FlagOn_ShowsFieldsAndContinue\n"} +{"Time":"2026-10-18T09:57:52.798458473Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_FlagOn_ShowsFieldsAndContinue","Output":"--- PASS: TestSignInDiagnosis_FlagOn_ShowsFieldsAndContinue (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.798509709Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_FlagOn_ShowsFieldsAndContinue","Elapsed":0} +{"Time":"2026-10-18T09:57:52.798529908Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_AAL2WhenThisRequestVerifiedOTP"} +{"Time":"2026-10-18T09:57:52.798536373Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_AAL2WhenThisRequestVerifiedOTP","Output":"=== RUN TestSignInDiagnosis_AAL2WhenThisRequestVerifiedOTP\n"} +{"Time":"2026-10-18T09:57:52.799506115Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_AAL2WhenThisRequestVerifiedOTP","Output":"--- PASS: TestSignInDiagnosis_AAL2WhenThisRequestVerifiedOTP (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.799554501Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_AAL2WhenThisRequestVerifiedOTP","Elapsed":0} +{"Time":"2026-10-18T09:57:52.799566927Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_ReusedAAL2SessionIsAAL1ForThisRequest"} +{"Time":"2026-10-18T09:57:52.799573338Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_ReusedAAL2SessionIsAAL1ForThisRequest","Output":"=== RUN TestSignInDiagnosis_ReusedAAL2SessionIsAAL1ForThisRequest\n"} +{"Time":"2026-10-18T09:57:52.800537528Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_ReusedAAL2SessionIsAAL1ForThisRequest","Output":"--- PASS: TestSignInDiagnosis_ReusedAAL2SessionIsAAL1ForThisRequest (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.800590739Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_ReusedAAL2SessionIsAAL1ForThisRequest","Elapsed":0} +{"Time":"2026-10-18T09:57:52.800599855Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_AuthLogLineHasFieldsAndNoSecrets"} +{"Time":"2026-10-18T09:57:52.800605365Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_AuthLogLineHasFieldsAndNoSecrets","Output":"=== RUN TestSignInDiagnosis_AuthLogLineHasFieldsAndNoSecrets\n"} +{"Time":"2026-10-18T09:57:52.801429855Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_AuthLogLineHasFieldsAndNoSecrets","Output":"--- PASS: TestSignInDiagnosis_AuthLogLineHasFieldsAndNoSecrets (0.00s)\n"} +{"Time":"2026-10-18T09:57:52.801468782Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestSignInDiagnosis_AuthLogLineHasFieldsAndNoSecrets","Elapsed":0} +{"Time":"2026-10-18T09:57:52.801477222Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestRegistrationBoundTenantRequiresStaticRegistration"} +{"Time":"2026-10-18T09:57:52.801482984Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestRegistrationBoundTenantRequiresStaticRegistration","Output":"=== RUN TestRegistrationBoundTenantRequiresStaticRegistration\n"} +{"Time":"2026-10-18T09:57:52.803098073Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/transport","Output":"--- PASS: TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/transport (0.44s)\n"} +{"Time":"2026-10-18T09:57:52.803133501Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/transport","Elapsed":0.44} +{"Time":"2026-10-18T09:57:52.803145026Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/server"} +{"Time":"2026-10-18T09:57:52.803150138Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/server","Output":"=== RUN TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/server\n"} +{"Time":"2026-10-18T09:57:52.867807591Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/server","Output":"--- PASS: TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/server (0.06s)\n"} +{"Time":"2026-10-18T09:57:52.86785926Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/server","Elapsed":0.06} +{"Time":"2026-10-18T09:57:52.867876456Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/invalid_token"} +{"Time":"2026-10-18T09:57:52.867889125Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/invalid_token","Output":"=== RUN TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/invalid_token\n"} +{"Time":"2026-10-18T09:57:52.878689762Z","Action":"output","Package":"keycape/tests/profile","Test":"TestAuthorize_WildcardRedirectURI","Output":"--- PASS: TestAuthorize_WildcardRedirectURI (0.23s)\n"} +{"Time":"2026-10-18T09:57:52.87876217Z","Action":"pass","Package":"keycape/tests/profile","Test":"TestAuthorize_WildcardRedirectURI","Elapsed":0.23} +{"Time":"2026-10-18T09:57:52.878827049Z","Action":"run","Package":"keycape/tests/profile","Test":"TestAuthorize_MissingPKCE"} +{"Time":"2026-10-18T09:57:52.878842144Z","Action":"output","Package":"keycape/tests/profile","Test":"TestAuthorize_MissingPKCE","Output":"=== RUN TestAuthorize_MissingPKCE\n"} +{"Time":"2026-10-18T09:57:52.964653378Z","Action":"output","Package":"keycape/tests/profile","Test":"TestAuthorize_MissingPKCE","Output":"--- PASS: TestAuthorize_MissingPKCE (0.09s)\n"} +{"Time":"2026-10-18T09:57:52.964711828Z","Action":"pass","Package":"keycape/tests/profile","Test":"TestAuthorize_MissingPKCE","Elapsed":0.09} +{"Time":"2026-10-18T09:57:52.9647387Z","Action":"run","Package":"keycape/tests/profile","Test":"TestHealthz"} +{"Time":"2026-10-18T09:57:52.964747681Z","Action":"output","Package":"keycape/tests/profile","Test":"TestHealthz","Output":"=== RUN TestHealthz\n"} +{"Time":"2026-10-18T09:57:53.003915259Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestRegistrationBoundTenantRequiresStaticRegistration","Output":"--- PASS: TestRegistrationBoundTenantRequiresStaticRegistration (0.20s)\n"} +{"Time":"2026-10-18T09:57:53.003982645Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestRegistrationBoundTenantRequiresStaticRegistration","Elapsed":0.2} +{"Time":"2026-10-18T09:57:53.004000598Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance"} +{"Time":"2026-10-18T09:57:53.004008245Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance","Output":"=== RUN TestIssuedTokensCarryTenantProvenance\n"} +{"Time":"2026-10-18T09:57:53.004199086Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_registration-supplied"} +{"Time":"2026-10-18T09:57:53.004214668Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_registration-supplied","Output":"=== RUN TestIssuedTokensCarryTenantProvenance/human,_registration-supplied\n"} +{"Time":"2026-10-18T09:57:53.06976386Z","Action":"output","Package":"keycape/tests/profile","Test":"TestHealthz","Output":"--- PASS: TestHealthz (0.10s)\n"} +{"Time":"2026-10-18T09:57:53.069903182Z","Action":"pass","Package":"keycape/tests/profile","Test":"TestHealthz","Elapsed":0.1} +{"Time":"2026-10-18T09:57:53.070021572Z","Action":"run","Package":"keycape/tests/profile","Test":"TestCompleteTokenFlow"} +{"Time":"2026-10-18T09:57:53.070051555Z","Action":"output","Package":"keycape/tests/profile","Test":"TestCompleteTokenFlow","Output":"=== RUN TestCompleteTokenFlow\n"} +{"Time":"2026-10-18T09:57:53.127392602Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/invalid_token","Output":"--- PASS: TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/invalid_token (0.26s)\n"} +{"Time":"2026-10-18T09:57:53.127457968Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/invalid_token","Elapsed":0.26} +{"Time":"2026-10-18T09:57:53.12748612Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/unrelated_refusal"} +{"Time":"2026-10-18T09:57:53.127496345Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/unrelated_refusal","Output":"=== RUN TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/unrelated_refusal\n"} +{"Time":"2026-10-18T09:57:53.137644366Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_registration-supplied","Output":"--- PASS: TestIssuedTokensCarryTenantProvenance/human,_registration-supplied (0.13s)\n"} +{"Time":"2026-10-18T09:57:53.137692437Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_registration-supplied","Elapsed":0.13} +{"Time":"2026-10-18T09:57:53.137710084Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_directory-asserted"} +{"Time":"2026-10-18T09:57:53.137720661Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_directory-asserted","Output":"=== RUN TestIssuedTokensCarryTenantProvenance/human,_directory-asserted\n"} +{"Time":"2026-10-18T09:57:53.237820912Z","Action":"output","Package":"keycape/tests/profile","Test":"TestCompleteTokenFlow","Output":"--- PASS: TestCompleteTokenFlow (0.17s)\n"} +{"Time":"2026-10-18T09:57:53.237875367Z","Action":"pass","Package":"keycape/tests/profile","Test":"TestCompleteTokenFlow","Elapsed":0.17} +{"Time":"2026-10-18T09:57:53.237891616Z","Action":"output","Package":"keycape/tests/profile","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:53.439582622Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_directory-asserted","Output":"--- PASS: TestIssuedTokensCarryTenantProvenance/human,_directory-asserted (0.30s)\n"} +{"Time":"2026-10-18T09:57:53.439637582Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_directory-asserted","Elapsed":0.3} +{"Time":"2026-10-18T09:57:53.43964999Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_nobody_asserted"} +{"Time":"2026-10-18T09:57:53.439659684Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_nobody_asserted","Output":"=== RUN TestIssuedTokensCarryTenantProvenance/human,_nobody_asserted\n"} +{"Time":"2026-10-18T09:57:53.455366243Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/unrelated_refusal","Output":"--- PASS: TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/unrelated_refusal (0.33s)\n"} +{"Time":"2026-10-18T09:57:53.455435568Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/unrelated_refusal","Elapsed":0.33} +{"Time":"2026-10-18T09:57:53.455450528Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/malformed_refusal"} +{"Time":"2026-10-18T09:57:53.455456993Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/malformed_refusal","Output":"=== RUN TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/malformed_refusal\n"} +{"Time":"2026-10-18T09:57:53.623663771Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/malformed_refusal","Output":"--- PASS: TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/malformed_refusal (0.17s)\n"} +{"Time":"2026-10-18T09:57:53.623710381Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/scope/malformed_refusal","Elapsed":0.17} +{"Time":"2026-10-18T09:57:53.623726134Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/transport"} +{"Time":"2026-10-18T09:57:53.623733871Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/transport","Output":"=== RUN TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/transport\n"} +{"Time":"2026-10-18T09:57:53.709540018Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_nobody_asserted","Output":"--- PASS: TestIssuedTokensCarryTenantProvenance/human,_nobody_asserted (0.27s)\n"} +{"Time":"2026-10-18T09:57:53.709596394Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/human,_nobody_asserted","Elapsed":0.27} +{"Time":"2026-10-18T09:57:53.709612598Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/service_is_always_registration-supplied"} +{"Time":"2026-10-18T09:57:53.709617864Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/service_is_always_registration-supplied","Output":"=== RUN TestIssuedTokensCarryTenantProvenance/service_is_always_registration-supplied\n"} +{"Time":"2026-10-18T09:57:53.801488869Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/service_is_always_registration-supplied","Output":"--- PASS: TestIssuedTokensCarryTenantProvenance/service_is_always_registration-supplied (0.09s)\n"} +{"Time":"2026-10-18T09:57:53.80154318Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance/service_is_always_registration-supplied","Elapsed":0.09} +{"Time":"2026-10-18T09:57:53.801656707Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance","Output":"--- PASS: TestIssuedTokensCarryTenantProvenance (0.80s)\n"} +{"Time":"2026-10-18T09:57:53.801770848Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestIssuedTokensCarryTenantProvenance","Elapsed":0.8} +{"Time":"2026-10-18T09:57:53.801779152Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestServiceTenantIsBoundToRegistrationAndIgnoresRequestParameters"} +{"Time":"2026-10-18T09:57:53.801784067Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestServiceTenantIsBoundToRegistrationAndIgnoresRequestParameters","Output":"=== RUN TestServiceTenantIsBoundToRegistrationAndIgnoresRequestParameters\n"} +{"Time":"2026-10-18T09:57:53.895021347Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/transport","Output":"--- PASS: TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/transport (0.27s)\n"} +{"Time":"2026-10-18T09:57:53.895102024Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/transport","Elapsed":0.27} +{"Time":"2026-10-18T09:57:53.895121222Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/server"} +{"Time":"2026-10-18T09:57:53.895126578Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/server","Output":"=== RUN TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/server\n"} +{"Time":"2026-10-18T09:57:54.009659309Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestServiceTenantIsBoundToRegistrationAndIgnoresRequestParameters","Output":"--- PASS: TestServiceTenantIsBoundToRegistrationAndIgnoresRequestParameters (0.21s)\n"} +{"Time":"2026-10-18T09:57:54.009728697Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestServiceTenantIsBoundToRegistrationAndIgnoresRequestParameters","Elapsed":0.21} +{"Time":"2026-10-18T09:57:54.009754892Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestServiceTenantsAreDistinctPerRegistration"} +{"Time":"2026-10-18T09:57:54.009768806Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestServiceTenantsAreDistinctPerRegistration","Output":"=== RUN TestServiceTenantsAreDistinctPerRegistration\n"} +{"Time":"2026-10-18T09:57:54.037657652Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/server","Output":"--- PASS: TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/server (0.14s)\n"} +{"Time":"2026-10-18T09:57:54.037710646Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/server","Elapsed":0.14} +{"Time":"2026-10-18T09:57:54.037723658Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/invalid_token"} +{"Time":"2026-10-18T09:57:54.037734451Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/invalid_token","Output":"=== RUN TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/invalid_token\n"} +{"Time":"2026-10-18T09:57:54.145698223Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/invalid_token","Output":"--- PASS: TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/invalid_token (0.11s)\n"} +{"Time":"2026-10-18T09:57:54.145743869Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/invalid_token","Elapsed":0.11} +{"Time":"2026-10-18T09:57:54.145769189Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/unrelated_refusal"} +{"Time":"2026-10-18T09:57:54.145774509Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/unrelated_refusal","Output":"=== RUN TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/unrelated_refusal\n"} +{"Time":"2026-10-18T09:57:54.186343491Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestServiceTenantsAreDistinctPerRegistration","Output":"--- PASS: TestServiceTenantsAreDistinctPerRegistration (0.18s)\n"} +{"Time":"2026-10-18T09:57:54.186394357Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestServiceTenantsAreDistinctPerRegistration","Elapsed":0.18} +{"Time":"2026-10-18T09:57:54.186405295Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault"} +{"Time":"2026-10-18T09:57:54.186425097Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault","Output":"=== RUN TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault\n"} +{"Time":"2026-10-18T09:57:54.186605045Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/directory"} +{"Time":"2026-10-18T09:57:54.186625054Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/directory","Output":"=== RUN TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/directory\n"} +{"Time":"2026-10-18T09:57:54.245775949Z","Action":"output","Package":"keycape/tests/profile","Output":"ok \tkeycape/tests/profile\t2.637s\n"} +{"Time":"2026-10-18T09:57:54.245833966Z","Action":"pass","Package":"keycape/tests/profile","Elapsed":2.637} +{"Time":"2026-10-18T09:57:54.329832868Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/directory","Output":"--- PASS: TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/directory (0.14s)\n"} +{"Time":"2026-10-18T09:57:54.329906395Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/directory","Elapsed":0.14} +{"Time":"2026-10-18T09:57:54.329924086Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/default"} +{"Time":"2026-10-18T09:57:54.329938541Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/default","Output":"=== RUN TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/default\n"} +{"Time":"2026-10-18T09:57:54.410352928Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/unrelated_refusal","Output":"--- PASS: TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/unrelated_refusal (0.26s)\n"} +{"Time":"2026-10-18T09:57:54.410405688Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/unrelated_refusal","Elapsed":0.26} +{"Time":"2026-10-18T09:57:54.410418006Z","Action":"run","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/malformed_refusal"} +{"Time":"2026-10-18T09:57:54.410423651Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/malformed_refusal","Output":"=== RUN TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/malformed_refusal\n"} +{"Time":"2026-10-18T09:57:54.522527743Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/malformed_refusal","Output":"--- PASS: TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/malformed_refusal (0.11s)\n"} +{"Time":"2026-10-18T09:57:54.52257613Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals/predecessor/malformed_refusal","Elapsed":0.11} +{"Time":"2026-10-18T09:57:54.522588907Z","Action":"output","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals","Output":"--- PASS: TestVerifyClientDoesNotConfuseFailuresWithRefusals (2.16s)\n"} +{"Time":"2026-10-18T09:57:54.522731389Z","Action":"pass","Package":"keycape/internal/authclient","Test":"TestVerifyClientDoesNotConfuseFailuresWithRefusals","Elapsed":2.16} +{"Time":"2026-10-18T09:57:54.522747223Z","Action":"output","Package":"keycape/internal/authclient","Output":"PASS\n"} +{"Time":"2026-10-18T09:57:54.628439164Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/default","Output":"--- PASS: TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/default (0.30s)\n"} +{"Time":"2026-10-18T09:57:54.62876474Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault/default","Elapsed":0.3} +{"Time":"2026-10-18T09:57:54.628790782Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault","Output":"--- PASS: TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault (0.44s)\n"} +{"Time":"2026-10-18T09:57:54.628975461Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestHumanTenantClaimUsesDirectoryValueThenPlatformDefault","Elapsed":0.44} +{"Time":"2026-10-18T09:57:54.62900786Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestApprovalClientIssuesExactPlatformTenantAndRejectsAliases"} +{"Time":"2026-10-18T09:57:54.629020097Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestApprovalClientIssuesExactPlatformTenantAndRejectsAliases","Output":"=== RUN TestApprovalClientIssuesExactPlatformTenantAndRejectsAliases\n"} +{"Time":"2026-10-18T09:57:54.729670597Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestApprovalClientIssuesExactPlatformTenantAndRejectsAliases","Output":"--- PASS: TestApprovalClientIssuesExactPlatformTenantAndRejectsAliases (0.10s)\n"} +{"Time":"2026-10-18T09:57:54.729720435Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestApprovalClientIssuesExactPlatformTenantAndRejectsAliases","Elapsed":0.1} +{"Time":"2026-10-18T09:57:54.729732635Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUnrelatedServiceClientKeepsCoulombTenant"} +{"Time":"2026-10-18T09:57:54.729743402Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUnrelatedServiceClientKeepsCoulombTenant","Output":"=== RUN TestUnrelatedServiceClientKeepsCoulombTenant\n"} +{"Time":"2026-10-18T09:57:54.863964212Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUnrelatedServiceClientKeepsCoulombTenant","Output":"--- PASS: TestUnrelatedServiceClientKeepsCoulombTenant (0.13s)\n"} +{"Time":"2026-10-18T09:57:54.864015782Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUnrelatedServiceClientKeepsCoulombTenant","Elapsed":0.13} +{"Time":"2026-10-18T09:57:54.864027207Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestOnlineHumanIDTokenBindsExactAccessGrant"} +{"Time":"2026-10-18T09:57:54.864032518Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOnlineHumanIDTokenBindsExactAccessGrant","Output":"=== RUN TestOnlineHumanIDTokenBindsExactAccessGrant\n"} +{"Time":"2026-10-18T09:57:54.940731546Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestOnlineHumanIDTokenBindsExactAccessGrant","Output":"--- PASS: TestOnlineHumanIDTokenBindsExactAccessGrant (0.08s)\n"} +{"Time":"2026-10-18T09:57:54.940785532Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestOnlineHumanIDTokenBindsExactAccessGrant","Elapsed":0.08} +{"Time":"2026-10-18T09:57:54.940799139Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestDisabledOnlineProfileKeepsLegacyIDToken"} +{"Time":"2026-10-18T09:57:54.940805523Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDisabledOnlineProfileKeepsLegacyIDToken","Output":"=== RUN TestDisabledOnlineProfileKeepsLegacyIDToken\n"} +{"Time":"2026-10-18T09:57:55.096558939Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestDisabledOnlineProfileKeepsLegacyIDToken","Output":"--- PASS: TestDisabledOnlineProfileKeepsLegacyIDToken (0.16s)\n"} +{"Time":"2026-10-18T09:57:55.096606262Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestDisabledOnlineProfileKeepsLegacyIDToken","Elapsed":0.16} +{"Time":"2026-10-18T09:57:55.096614621Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusDiscoveryOnlyAdvertisesEnabledProfile"} +{"Time":"2026-10-18T09:57:55.096619598Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusDiscoveryOnlyAdvertisesEnabledProfile","Output":"=== RUN TestTokenStatusDiscoveryOnlyAdvertisesEnabledProfile\n"} +{"Time":"2026-10-18T09:57:55.097272314Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusDiscoveryOnlyAdvertisesEnabledProfile","Output":"--- PASS: TestTokenStatusDiscoveryOnlyAdvertisesEnabledProfile (0.00s)\n"} +{"Time":"2026-10-18T09:57:55.097313848Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusDiscoveryOnlyAdvertisesEnabledProfile","Elapsed":0} +{"Time":"2026-10-18T09:57:55.097324209Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusActualIssueRevokeAndFreshGrant"} +{"Time":"2026-10-18T09:57:55.097333316Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusActualIssueRevokeAndFreshGrant","Output":"=== RUN TestTokenStatusActualIssueRevokeAndFreshGrant\n"} +{"Time":"2026-10-18T09:57:55.328706017Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusActualIssueRevokeAndFreshGrant","Output":"--- PASS: TestTokenStatusActualIssueRevokeAndFreshGrant (0.23s)\n"} +{"Time":"2026-10-18T09:57:55.328752546Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusActualIssueRevokeAndFreshGrant","Elapsed":0.23} +{"Time":"2026-10-18T09:57:55.328769039Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusNoCrossClientOrIDTokenAuthority"} +{"Time":"2026-10-18T09:57:55.328774368Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusNoCrossClientOrIDTokenAuthority","Output":"=== RUN TestTokenStatusNoCrossClientOrIDTokenAuthority\n"} +{"Time":"2026-10-18T09:57:55.530965462Z","Action":"output","Package":"keycape/internal/authclient","Output":"ok \tkeycape/internal/authclient\t15.184s\n"} +{"Time":"2026-10-18T09:57:55.531012082Z","Action":"pass","Package":"keycape/internal/authclient","Elapsed":15.184} +{"Time":"2026-10-18T09:57:55.656415787Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusNoCrossClientOrIDTokenAuthority","Output":"--- PASS: TestTokenStatusNoCrossClientOrIDTokenAuthority (0.33s)\n"} +{"Time":"2026-10-18T09:57:55.656474787Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusNoCrossClientOrIDTokenAuthority","Elapsed":0.33} +{"Time":"2026-10-18T09:57:55.656486014Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusCapacityFailsIssuanceWithoutEvictingLiveToken"} +{"Time":"2026-10-18T09:57:55.656491848Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusCapacityFailsIssuanceWithoutEvictingLiveToken","Output":"=== RUN TestTokenStatusCapacityFailsIssuanceWithoutEvictingLiveToken\n"} +{"Time":"2026-10-18T09:57:55.847098458Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusCapacityFailsIssuanceWithoutEvictingLiveToken","Output":"--- PASS: TestTokenStatusCapacityFailsIssuanceWithoutEvictingLiveToken (0.19s)\n"} +{"Time":"2026-10-18T09:57:55.847144942Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusCapacityFailsIssuanceWithoutEvictingLiveToken","Elapsed":0.19} +{"Time":"2026-10-18T09:57:55.847153662Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRestartAndUnavailableStoreRefuse"} +{"Time":"2026-10-18T09:57:55.847158784Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRestartAndUnavailableStoreRefuse","Output":"=== RUN TestTokenStatusRestartAndUnavailableStoreRefuse\n"} +{"Time":"2026-10-18T09:57:55.925327273Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRestartAndUnavailableStoreRefuse","Output":"--- PASS: TestTokenStatusRestartAndUnavailableStoreRefuse (0.08s)\n"} +{"Time":"2026-10-18T09:57:55.925395118Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRestartAndUnavailableStoreRefuse","Elapsed":0.08} +{"Time":"2026-10-18T09:57:55.925426093Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition"} +{"Time":"2026-10-18T09:57:55.925435813Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition","Output":"=== RUN TestTokenStatusRegistrationDriftAndDirectoryDisposition\n"} +{"Time":"2026-10-18T09:57:55.925449078Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/removed"} +{"Time":"2026-10-18T09:57:55.925453794Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/removed","Output":"=== RUN TestTokenStatusRegistrationDriftAndDirectoryDisposition/removed\n"} +{"Time":"2026-10-18T09:57:56.101082281Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/removed","Output":"--- PASS: TestTokenStatusRegistrationDriftAndDirectoryDisposition/removed (0.18s)\n"} +{"Time":"2026-10-18T09:57:56.101134212Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/removed","Elapsed":0.18} +{"Time":"2026-10-18T09:57:56.101146331Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/audience"} +{"Time":"2026-10-18T09:57:56.101151967Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/audience","Output":"=== RUN TestTokenStatusRegistrationDriftAndDirectoryDisposition/audience\n"} +{"Time":"2026-10-18T09:57:56.148786245Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/audience","Output":"--- PASS: TestTokenStatusRegistrationDriftAndDirectoryDisposition/audience (0.05s)\n"} +{"Time":"2026-10-18T09:57:56.1488362Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/audience","Elapsed":0.05} +{"Time":"2026-10-18T09:57:56.148846507Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/secret"} +{"Time":"2026-10-18T09:57:56.148852891Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/secret","Output":"=== RUN TestTokenStatusRegistrationDriftAndDirectoryDisposition/secret\n"} +{"Time":"2026-10-18T09:57:56.295883225Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/secret","Output":"--- PASS: TestTokenStatusRegistrationDriftAndDirectoryDisposition/secret (0.15s)\n"} +{"Time":"2026-10-18T09:57:56.295932234Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/secret","Elapsed":0.15} +{"Time":"2026-10-18T09:57:56.295942378Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/scopes"} +{"Time":"2026-10-18T09:57:56.295947121Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/scopes","Output":"=== RUN TestTokenStatusRegistrationDriftAndDirectoryDisposition/scopes\n"} +{"Time":"2026-10-18T09:57:56.333222604Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/scopes","Output":"--- PASS: TestTokenStatusRegistrationDriftAndDirectoryDisposition/scopes (0.04s)\n"} +{"Time":"2026-10-18T09:57:56.333271143Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/scopes","Elapsed":0.04} +{"Time":"2026-10-18T09:57:56.333281865Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/lifetime"} +{"Time":"2026-10-18T09:57:56.333304128Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/lifetime","Output":"=== RUN TestTokenStatusRegistrationDriftAndDirectoryDisposition/lifetime\n"} +{"Time":"2026-10-18T09:57:56.377282724Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/lifetime","Output":"--- PASS: TestTokenStatusRegistrationDriftAndDirectoryDisposition/lifetime (0.04s)\n"} +{"Time":"2026-10-18T09:57:56.377343924Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/lifetime","Elapsed":0.04} +{"Time":"2026-10-18T09:57:56.377356999Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/suspended"} +{"Time":"2026-10-18T09:57:56.377362085Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/suspended","Output":"=== RUN TestTokenStatusRegistrationDriftAndDirectoryDisposition/suspended\n"} +{"Time":"2026-10-18T09:57:56.467887633Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/suspended","Output":"--- PASS: TestTokenStatusRegistrationDriftAndDirectoryDisposition/suspended (0.09s)\n"} +{"Time":"2026-10-18T09:57:56.467945875Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/suspended","Elapsed":0.09} +{"Time":"2026-10-18T09:57:56.467960465Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/disabled"} +{"Time":"2026-10-18T09:57:56.467968175Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/disabled","Output":"=== RUN TestTokenStatusRegistrationDriftAndDirectoryDisposition/disabled\n"} +{"Time":"2026-10-18T09:57:56.593459611Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/disabled","Output":"--- PASS: TestTokenStatusRegistrationDriftAndDirectoryDisposition/disabled (0.13s)\n"} +{"Time":"2026-10-18T09:57:56.593547033Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/disabled","Elapsed":0.13} +{"Time":"2026-10-18T09:57:56.593564986Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/user-removed"} +{"Time":"2026-10-18T09:57:56.593570883Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/user-removed","Output":"=== RUN TestTokenStatusRegistrationDriftAndDirectoryDisposition/user-removed\n"} +{"Time":"2026-10-18T09:57:56.715414423Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/user-removed","Output":"--- PASS: TestTokenStatusRegistrationDriftAndDirectoryDisposition/user-removed (0.12s)\n"} +{"Time":"2026-10-18T09:57:56.71547088Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition/user-removed","Elapsed":0.12} +{"Time":"2026-10-18T09:57:56.715480493Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition","Output":"--- PASS: TestTokenStatusRegistrationDriftAndDirectoryDisposition (0.79s)\n"} +{"Time":"2026-10-18T09:57:56.715574112Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRegistrationDriftAndDirectoryDisposition","Elapsed":0.79} +{"Time":"2026-10-18T09:57:56.715591786Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusPublicClientMayRevokeButNotIntrospect"} +{"Time":"2026-10-18T09:57:56.715597106Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusPublicClientMayRevokeButNotIntrospect","Output":"=== RUN TestTokenStatusPublicClientMayRevokeButNotIntrospect\n"} +{"Time":"2026-10-18T09:57:56.854284914Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusPublicClientMayRevokeButNotIntrospect","Output":"--- PASS: TestTokenStatusPublicClientMayRevokeButNotIntrospect (0.14s)\n"} +{"Time":"2026-10-18T09:57:56.854329847Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusPublicClientMayRevokeButNotIntrospect","Elapsed":0.14} +{"Time":"2026-10-18T09:57:56.854341155Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusServiceGrantIsCurrentAndDistinct"} +{"Time":"2026-10-18T09:57:56.854345988Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusServiceGrantIsCurrentAndDistinct","Output":"=== RUN TestTokenStatusServiceGrantIsCurrentAndDistinct\n"} +{"Time":"2026-10-18T09:57:56.903865829Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusServiceGrantIsCurrentAndDistinct","Output":"--- PASS: TestTokenStatusServiceGrantIsCurrentAndDistinct (0.05s)\n"} +{"Time":"2026-10-18T09:57:56.90391858Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusServiceGrantIsCurrentAndDistinct","Elapsed":0.05} +{"Time":"2026-10-18T09:57:56.903928905Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests"} +{"Time":"2026-10-18T09:57:56.903934081Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests","Output":"=== RUN TestTokenStatusRejectsMalformedOrUnauthenticatedRequests\n"} +{"Time":"2026-10-18T09:57:56.904041206Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/get"} +{"Time":"2026-10-18T09:57:56.904054606Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/get","Output":"=== RUN TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/get\n"} +{"Time":"2026-10-18T09:57:57.062244942Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/get","Output":"--- PASS: TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/get (0.16s)\n"} +{"Time":"2026-10-18T09:57:57.062300867Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/get","Elapsed":0.16} +{"Time":"2026-10-18T09:57:57.062310118Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/query"} +{"Time":"2026-10-18T09:57:57.06231561Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/query","Output":"=== RUN TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/query\n"} +{"Time":"2026-10-18T09:57:57.356204607Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/query","Output":"--- PASS: TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/query (0.29s)\n"} +{"Time":"2026-10-18T09:57:57.356256005Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/query","Elapsed":0.29} +{"Time":"2026-10-18T09:57:57.356266321Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/json"} +{"Time":"2026-10-18T09:57:57.35627119Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/json","Output":"=== RUN TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/json\n"} +{"Time":"2026-10-18T09:57:57.427963081Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/json","Output":"--- PASS: TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/json (0.07s)\n"} +{"Time":"2026-10-18T09:57:57.428047158Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/json","Elapsed":0.07} +{"Time":"2026-10-18T09:57:57.428061143Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-token"} +{"Time":"2026-10-18T09:57:57.42806769Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-token","Output":"=== RUN TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-token\n"} +{"Time":"2026-10-18T09:57:57.50288086Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-token","Output":"--- PASS: TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-token (0.07s)\n"} +{"Time":"2026-10-18T09:57:57.502937488Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-token","Elapsed":0.07} +{"Time":"2026-10-18T09:57:57.5029628Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/oversize"} +{"Time":"2026-10-18T09:57:57.502971979Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/oversize","Output":"=== RUN TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/oversize\n"} +{"Time":"2026-10-18T09:57:57.669122064Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/oversize","Output":"--- PASS: TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/oversize (0.17s)\n"} +{"Time":"2026-10-18T09:57:57.669188539Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/oversize","Elapsed":0.17} +{"Time":"2026-10-18T09:57:57.669198188Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/wrong-secret"} +{"Time":"2026-10-18T09:57:57.669204554Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/wrong-secret","Output":"=== RUN TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/wrong-secret\n"} +{"Time":"2026-10-18T09:57:57.886406082Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/wrong-secret","Output":"--- PASS: TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/wrong-secret (0.22s)\n"} +{"Time":"2026-10-18T09:57:57.886457805Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/wrong-secret","Elapsed":0.22} +{"Time":"2026-10-18T09:57:57.886470186Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/missing-auth"} +{"Time":"2026-10-18T09:57:57.886476534Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/missing-auth","Output":"=== RUN TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/missing-auth\n"} +{"Time":"2026-10-18T09:57:58.067316996Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/missing-auth","Output":"--- PASS: TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/missing-auth (0.18s)\n"} +{"Time":"2026-10-18T09:57:58.067371055Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/missing-auth","Elapsed":0.18} +{"Time":"2026-10-18T09:57:58.067385626Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-auth"} +{"Time":"2026-10-18T09:57:58.067408115Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-auth","Output":"=== RUN TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-auth\n"} +{"Time":"2026-10-18T09:57:58.379334713Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-auth","Output":"--- PASS: TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-auth (0.31s)\n"} +{"Time":"2026-10-18T09:57:58.379521812Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/duplicate-auth","Elapsed":0.31} +{"Time":"2026-10-18T09:57:58.379537773Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/body-secret"} +{"Time":"2026-10-18T09:57:58.379545997Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/body-secret","Output":"=== RUN TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/body-secret\n"} +{"Time":"2026-10-18T09:57:58.750091515Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/body-secret","Output":"--- PASS: TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/body-secret (0.37s)\n"} +{"Time":"2026-10-18T09:57:58.750144582Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/body-secret","Elapsed":0.37} +{"Time":"2026-10-18T09:57:58.750319941Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/mismatched-client"} +{"Time":"2026-10-18T09:57:58.750342412Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/mismatched-client","Output":"=== RUN TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/mismatched-client\n"} +{"Time":"2026-10-18T09:57:58.873173379Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/mismatched-client","Output":"--- PASS: TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/mismatched-client (0.12s)\n"} +{"Time":"2026-10-18T09:57:58.87322172Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests/mismatched-client","Elapsed":0.12} +{"Time":"2026-10-18T09:57:58.873234137Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests","Output":"--- PASS: TestTokenStatusRejectsMalformedOrUnauthenticatedRequests (1.97s)\n"} +{"Time":"2026-10-18T09:57:58.873248177Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRejectsMalformedOrUnauthenticatedRequests","Elapsed":1.97} +{"Time":"2026-10-18T09:57:58.873359224Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRevocationDuringDirectoryLookupRefuses"} +{"Time":"2026-10-18T09:57:58.873371335Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRevocationDuringDirectoryLookupRefuses","Output":"=== RUN TestTokenStatusRevocationDuringDirectoryLookupRefuses\n"} +{"Time":"2026-10-18T09:57:58.941753903Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRevocationDuringDirectoryLookupRefuses","Output":"--- PASS: TestTokenStatusRevocationDuringDirectoryLookupRefuses (0.07s)\n"} +{"Time":"2026-10-18T09:57:58.941828196Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRevocationDuringDirectoryLookupRefuses","Elapsed":0.07} +{"Time":"2026-10-18T09:57:58.941840901Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusActualHTTPSFlowAndAuthenticationEncoding"} +{"Time":"2026-10-18T09:57:58.941861127Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusActualHTTPSFlowAndAuthenticationEncoding","Output":"=== RUN TestTokenStatusActualHTTPSFlowAndAuthenticationEncoding\n"} +{"Time":"2026-10-18T09:57:59.079073045Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusActualHTTPSFlowAndAuthenticationEncoding","Output":"--- PASS: TestTokenStatusActualHTTPSFlowAndAuthenticationEncoding (0.14s)\n"} +{"Time":"2026-10-18T09:57:59.079138059Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusActualHTTPSFlowAndAuthenticationEncoding","Elapsed":0.14} +{"Time":"2026-10-18T09:57:59.079160584Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRevocationDuringUserInfoLookupRefuses"} +{"Time":"2026-10-18T09:57:59.079173281Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRevocationDuringUserInfoLookupRefuses","Output":"=== RUN TestTokenStatusRevocationDuringUserInfoLookupRefuses\n"} +{"Time":"2026-10-18T09:57:59.330332021Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRevocationDuringUserInfoLookupRefuses","Output":"--- PASS: TestTokenStatusRevocationDuringUserInfoLookupRefuses (0.25s)\n"} +{"Time":"2026-10-18T09:57:59.330385809Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusRevocationDuringUserInfoLookupRefuses","Elapsed":0.25} +{"Time":"2026-10-18T09:57:59.330492871Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusLegacyGrantHasNoStatusClaim"} +{"Time":"2026-10-18T09:57:59.330502817Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusLegacyGrantHasNoStatusClaim","Output":"=== RUN TestTokenStatusLegacyGrantHasNoStatusClaim\n"} +{"Time":"2026-10-18T09:57:59.556162764Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusLegacyGrantHasNoStatusClaim","Output":"--- PASS: TestTokenStatusLegacyGrantHasNoStatusClaim (0.23s)\n"} +{"Time":"2026-10-18T09:57:59.556224848Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenStatusLegacyGrantHasNoStatusClaim","Elapsed":0.23} +{"Time":"2026-10-18T09:57:59.556330038Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ValidExchange_ReturnsJWT"} +{"Time":"2026-10-18T09:57:59.556391057Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ValidExchange_ReturnsJWT","Output":"=== RUN TestTokenHandler_ValidExchange_ReturnsJWT\n"} +{"Time":"2026-10-18T09:57:59.695005749Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ValidExchange_ReturnsJWT","Output":"--- PASS: TestTokenHandler_ValidExchange_ReturnsJWT (0.14s)\n"} +{"Time":"2026-10-18T09:57:59.695058888Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ValidExchange_ReturnsJWT","Elapsed":0.14} +{"Time":"2026-10-18T09:57:59.695070917Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_SuspendedUserCannotExchangeCode"} +{"Time":"2026-10-18T09:57:59.695083415Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_SuspendedUserCannotExchangeCode","Output":"=== RUN TestTokenHandler_SuspendedUserCannotExchangeCode\n"} +{"Time":"2026-10-18T09:57:59.82766198Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_SuspendedUserCannotExchangeCode","Output":"--- PASS: TestTokenHandler_SuspendedUserCannotExchangeCode (0.13s)\n"} +{"Time":"2026-10-18T09:57:59.827717526Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_SuspendedUserCannotExchangeCode","Elapsed":0.13} +{"Time":"2026-10-18T09:57:59.827728636Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_WrongGrantType_FeatureNotSupported"} +{"Time":"2026-10-18T09:57:59.827734335Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_WrongGrantType_FeatureNotSupported","Output":"=== RUN TestTokenHandler_WrongGrantType_FeatureNotSupported\n"} +{"Time":"2026-10-18T09:58:00.144332555Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_WrongGrantType_FeatureNotSupported","Output":"--- PASS: TestTokenHandler_WrongGrantType_FeatureNotSupported (0.32s)\n"} +{"Time":"2026-10-18T09:58:00.144433098Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_WrongGrantType_FeatureNotSupported","Elapsed":0.32} +{"Time":"2026-10-18T09:58:00.144442863Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_ReturnsScopedServiceToken"} +{"Time":"2026-10-18T09:58:00.144446759Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_ReturnsScopedServiceToken","Output":"=== RUN TestTokenHandler_ClientCredentials_ReturnsScopedServiceToken\n"} +{"Time":"2026-10-18T09:58:00.171133055Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_ReturnsScopedServiceToken","Output":"--- PASS: TestTokenHandler_ClientCredentials_ReturnsScopedServiceToken (0.03s)\n"} +{"Time":"2026-10-18T09:58:00.171179043Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_ReturnsScopedServiceToken","Elapsed":0.03} +{"Time":"2026-10-18T09:58:00.171189061Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_UsesPerClientLifetime"} +{"Time":"2026-10-18T09:58:00.171193651Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_UsesPerClientLifetime","Output":"=== RUN TestTokenHandler_ClientCredentials_UsesPerClientLifetime\n"} +{"Time":"2026-10-18T09:58:00.210339052Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_UsesPerClientLifetime","Output":"--- PASS: TestTokenHandler_ClientCredentials_UsesPerClientLifetime (0.04s)\n"} +{"Time":"2026-10-18T09:58:00.210389593Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_UsesPerClientLifetime","Elapsed":0.04} +{"Time":"2026-10-18T09:58:00.210401866Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_RejectsWrongSecret"} +{"Time":"2026-10-18T09:58:00.210408187Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_RejectsWrongSecret","Output":"=== RUN TestTokenHandler_ClientCredentials_RejectsWrongSecret\n"} +{"Time":"2026-10-18T09:58:00.347488576Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_RejectsWrongSecret","Output":"--- PASS: TestTokenHandler_ClientCredentials_RejectsWrongSecret (0.14s)\n"} +{"Time":"2026-10-18T09:58:00.347536232Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_RejectsWrongSecret","Elapsed":0.14} +{"Time":"2026-10-18T09:58:00.347545186Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_RejectsExcessScope"} +{"Time":"2026-10-18T09:58:00.347550542Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_RejectsExcessScope","Output":"=== RUN TestTokenHandler_ClientCredentials_RejectsExcessScope\n"} +{"Time":"2026-10-18T09:58:00.440528383Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_RejectsExcessScope","Output":"--- PASS: TestTokenHandler_ClientCredentials_RejectsExcessScope (0.09s)\n"} +{"Time":"2026-10-18T09:58:00.440617762Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ClientCredentials_RejectsExcessScope","Elapsed":0.09} +{"Time":"2026-10-18T09:58:00.440631937Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_PKCEMismatch_InvalidProfileUsage"} +{"Time":"2026-10-18T09:58:00.440652397Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_PKCEMismatch_InvalidProfileUsage","Output":"=== RUN TestTokenHandler_PKCEMismatch_InvalidProfileUsage\n"} +{"Time":"2026-10-18T09:58:00.545680663Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_PKCEMismatch_InvalidProfileUsage","Output":"--- PASS: TestTokenHandler_PKCEMismatch_InvalidProfileUsage (0.10s)\n"} +{"Time":"2026-10-18T09:58:00.545737363Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_PKCEMismatch_InvalidProfileUsage","Elapsed":0.1} +{"Time":"2026-10-18T09:58:00.545746164Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_CodeNotFound_InvalidProfileUsage"} +{"Time":"2026-10-18T09:58:00.545750961Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_CodeNotFound_InvalidProfileUsage","Output":"=== RUN TestTokenHandler_CodeNotFound_InvalidProfileUsage\n"} +{"Time":"2026-10-18T09:58:00.618157717Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_CodeNotFound_InvalidProfileUsage","Output":"--- PASS: TestTokenHandler_CodeNotFound_InvalidProfileUsage (0.07s)\n"} +{"Time":"2026-10-18T09:58:00.618224003Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_CodeNotFound_InvalidProfileUsage","Elapsed":0.07} +{"Time":"2026-10-18T09:58:00.618239855Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_JWTClaims_CorrectSubAndIssuer"} +{"Time":"2026-10-18T09:58:00.61824569Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_JWTClaims_CorrectSubAndIssuer","Output":"=== RUN TestTokenHandler_JWTClaims_CorrectSubAndIssuer\n"} +{"Time":"2026-10-18T09:58:01.024245535Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_JWTClaims_CorrectSubAndIssuer","Output":"--- PASS: TestTokenHandler_JWTClaims_CorrectSubAndIssuer (0.41s)\n"} +{"Time":"2026-10-18T09:58:01.024297699Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_JWTClaims_CorrectSubAndIssuer","Elapsed":0.41} +{"Time":"2026-10-18T09:58:01.024306942Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ScopeFiltering_ProfileScope"} +{"Time":"2026-10-18T09:58:01.024312389Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ScopeFiltering_ProfileScope","Output":"=== RUN TestTokenHandler_ScopeFiltering_ProfileScope\n"} +{"Time":"2026-10-18T09:58:01.121908561Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ScopeFiltering_ProfileScope","Output":"--- PASS: TestTokenHandler_ScopeFiltering_ProfileScope (0.10s)\n"} +{"Time":"2026-10-18T09:58:01.121955469Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ScopeFiltering_ProfileScope","Elapsed":0.1} +{"Time":"2026-10-18T09:58:01.121963368Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ScopeFiltering_AllScopes"} +{"Time":"2026-10-18T09:58:01.121967841Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ScopeFiltering_AllScopes","Output":"=== RUN TestTokenHandler_ScopeFiltering_AllScopes\n"} +{"Time":"2026-10-18T09:58:01.245400335Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ScopeFiltering_AllScopes","Output":"--- PASS: TestTokenHandler_ScopeFiltering_AllScopes (0.12s)\n"} +{"Time":"2026-10-18T09:58:01.24550645Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_ScopeFiltering_AllScopes","Elapsed":0.12} +{"Time":"2026-10-18T09:58:01.245531518Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TokenIssuedTelemetry"} +{"Time":"2026-10-18T09:58:01.245545287Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TokenIssuedTelemetry","Output":"=== RUN TestTokenHandler_TokenIssuedTelemetry\n"} +{"Time":"2026-10-18T09:58:01.309285157Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TokenIssuedTelemetry","Output":"--- PASS: TestTokenHandler_TokenIssuedTelemetry (0.06s)\n"} +{"Time":"2026-10-18T09:58:01.309338053Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TokenIssuedTelemetry","Elapsed":0.06} +{"Time":"2026-10-18T09:58:01.309354635Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_CodeDeletedAfterUse"} +{"Time":"2026-10-18T09:58:01.309359306Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_CodeDeletedAfterUse","Output":"=== RUN TestTokenHandler_CodeDeletedAfterUse\n"} +{"Time":"2026-10-18T09:58:01.466793249Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_CodeDeletedAfterUse","Output":"--- PASS: TestTokenHandler_CodeDeletedAfterUse (0.16s)\n"} +{"Time":"2026-10-18T09:58:01.466842195Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_CodeDeletedAfterUse","Elapsed":0.16} +{"Time":"2026-10-18T09:58:01.466854548Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_PresentWhenTenantEngineReachable"} +{"Time":"2026-10-18T09:58:01.466865955Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_PresentWhenTenantEngineReachable","Output":"=== RUN TestTokenHandler_TenantRoles_PresentWhenTenantEngineReachable\n"} +{"Time":"2026-10-18T09:58:01.717380731Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_PresentWhenTenantEngineReachable","Output":"--- PASS: TestTokenHandler_TenantRoles_PresentWhenTenantEngineReachable (0.25s)\n"} +{"Time":"2026-10-18T09:58:01.717460633Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_PresentWhenTenantEngineReachable","Elapsed":0.25} +{"Time":"2026-10-18T09:58:01.717472112Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_OmittedButIssuanceSucceedsWhenUnreachable"} +{"Time":"2026-10-18T09:58:01.717476927Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_OmittedButIssuanceSucceedsWhenUnreachable","Output":"=== RUN TestTokenHandler_TenantRoles_OmittedButIssuanceSucceedsWhenUnreachable\n"} +{"Time":"2026-10-18T09:58:01.893396374Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_OmittedButIssuanceSucceedsWhenUnreachable","Output":"--- PASS: TestTokenHandler_TenantRoles_OmittedButIssuanceSucceedsWhenUnreachable (0.18s)\n"} +{"Time":"2026-10-18T09:58:01.893447682Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_OmittedButIssuanceSucceedsWhenUnreachable","Elapsed":0.18} +{"Time":"2026-10-18T09:58:01.89346046Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_OmittedWhenTenantEngineNotConfigured"} +{"Time":"2026-10-18T09:58:01.893466655Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_OmittedWhenTenantEngineNotConfigured","Output":"=== RUN TestTokenHandler_TenantRoles_OmittedWhenTenantEngineNotConfigured\n"} +{"Time":"2026-10-18T09:58:02.378951838Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_OmittedWhenTenantEngineNotConfigured","Output":"--- PASS: TestTokenHandler_TenantRoles_OmittedWhenTenantEngineNotConfigured (0.49s)\n"} +{"Time":"2026-10-18T09:58:02.379001713Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestTokenHandler_TenantRoles_OmittedWhenTenantEngineNotConfigured","Elapsed":0.49} +{"Time":"2026-10-18T09:58:02.37901522Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_ValidToken_ReturnsClaims"} +{"Time":"2026-10-18T09:58:02.37902137Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_ValidToken_ReturnsClaims","Output":"=== RUN TestUserinfoHandler_ValidToken_ReturnsClaims\n"} +{"Time":"2026-10-18T09:58:02.443985388Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_ValidToken_ReturnsClaims","Output":"--- PASS: TestUserinfoHandler_ValidToken_ReturnsClaims (0.06s)\n"} +{"Time":"2026-10-18T09:58:02.444045687Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_ValidToken_ReturnsClaims","Elapsed":0.06} +{"Time":"2026-10-18T09:58:02.444060637Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_CanonicalSubjectResolvesViaPreferredUsername"} +{"Time":"2026-10-18T09:58:02.444069249Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_CanonicalSubjectResolvesViaPreferredUsername","Output":"=== RUN TestUserinfoHandler_CanonicalSubjectResolvesViaPreferredUsername\n"} +{"Time":"2026-10-18T09:58:02.475460089Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_CanonicalSubjectResolvesViaPreferredUsername","Output":"--- PASS: TestUserinfoHandler_CanonicalSubjectResolvesViaPreferredUsername (0.03s)\n"} +{"Time":"2026-10-18T09:58:02.475513336Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_CanonicalSubjectResolvesViaPreferredUsername","Elapsed":0.03} +{"Time":"2026-10-18T09:58:02.475527691Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_SuspendedUserInvalidatesToken"} +{"Time":"2026-10-18T09:58:02.475534139Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_SuspendedUserInvalidatesToken","Output":"=== RUN TestUserinfoHandler_SuspendedUserInvalidatesToken\n"} +{"Time":"2026-10-18T09:58:02.563926658Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_SuspendedUserInvalidatesToken","Output":"--- PASS: TestUserinfoHandler_SuspendedUserInvalidatesToken (0.09s)\n"} +{"Time":"2026-10-18T09:58:02.563986253Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_SuspendedUserInvalidatesToken","Elapsed":0.09} +{"Time":"2026-10-18T09:58:02.563997489Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_MissingAuthorization_Returns401"} +{"Time":"2026-10-18T09:58:02.564003729Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_MissingAuthorization_Returns401","Output":"=== RUN TestUserinfoHandler_MissingAuthorization_Returns401\n"} +{"Time":"2026-10-18T09:58:02.645010755Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_MissingAuthorization_Returns401","Output":"--- PASS: TestUserinfoHandler_MissingAuthorization_Returns401 (0.08s)\n"} +{"Time":"2026-10-18T09:58:02.645059205Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_MissingAuthorization_Returns401","Elapsed":0.08} +{"Time":"2026-10-18T09:58:02.64506934Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_ExpiredToken_Returns401"} +{"Time":"2026-10-18T09:58:02.645075291Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_ExpiredToken_Returns401","Output":"=== RUN TestUserinfoHandler_ExpiredToken_Returns401\n"} +{"Time":"2026-10-18T09:58:02.783621492Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_ExpiredToken_Returns401","Output":"--- PASS: TestUserinfoHandler_ExpiredToken_Returns401 (0.14s)\n"} +{"Time":"2026-10-18T09:58:02.783692611Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_ExpiredToken_Returns401","Elapsed":0.14} +{"Time":"2026-10-18T09:58:02.783726966Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_InvalidSignature_Returns401"} +{"Time":"2026-10-18T09:58:02.783738436Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_InvalidSignature_Returns401","Output":"=== RUN TestUserinfoHandler_InvalidSignature_Returns401\n"} +{"Time":"2026-10-18T09:58:03.249703435Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_InvalidSignature_Returns401","Output":"--- PASS: TestUserinfoHandler_InvalidSignature_Returns401 (0.47s)\n"} +{"Time":"2026-10-18T09:58:03.249753805Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_InvalidSignature_Returns401","Elapsed":0.47} +{"Time":"2026-10-18T09:58:03.249762615Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithEmailScope_EmailPresent"} +{"Time":"2026-10-18T09:58:03.24977358Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithEmailScope_EmailPresent","Output":"=== RUN TestUserinfoHandler_WithEmailScope_EmailPresent\n"} +{"Time":"2026-10-18T09:58:03.30963015Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithEmailScope_EmailPresent","Output":"--- PASS: TestUserinfoHandler_WithEmailScope_EmailPresent (0.06s)\n"} +{"Time":"2026-10-18T09:58:03.309679114Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithEmailScope_EmailPresent","Elapsed":0.06} +{"Time":"2026-10-18T09:58:03.309691585Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithoutEmailScope_EmailAbsent"} +{"Time":"2026-10-18T09:58:03.309697536Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithoutEmailScope_EmailAbsent","Output":"=== RUN TestUserinfoHandler_WithoutEmailScope_EmailAbsent\n"} +{"Time":"2026-10-18T09:58:03.439998171Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithoutEmailScope_EmailAbsent","Output":"--- PASS: TestUserinfoHandler_WithoutEmailScope_EmailAbsent (0.13s)\n"} +{"Time":"2026-10-18T09:58:03.440093303Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithoutEmailScope_EmailAbsent","Elapsed":0.13} +{"Time":"2026-10-18T09:58:03.440112988Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithProfileScope_UsernamePresent"} +{"Time":"2026-10-18T09:58:03.440121996Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithProfileScope_UsernamePresent","Output":"=== RUN TestUserinfoHandler_WithProfileScope_UsernamePresent\n"} +{"Time":"2026-10-18T09:58:03.569141315Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithProfileScope_UsernamePresent","Output":"--- PASS: TestUserinfoHandler_WithProfileScope_UsernamePresent (0.13s)\n"} +{"Time":"2026-10-18T09:58:03.569188908Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_WithProfileScope_UsernamePresent","Elapsed":0.13} +{"Time":"2026-10-18T09:58:03.569197899Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_EmitsTelemetry"} +{"Time":"2026-10-18T09:58:03.569203174Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_EmitsTelemetry","Output":"=== RUN TestUserinfoHandler_EmitsTelemetry\n"} +{"Time":"2026-10-18T09:58:03.733755189Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_EmitsTelemetry","Output":"--- PASS: TestUserinfoHandler_EmitsTelemetry (0.16s)\n"} +{"Time":"2026-10-18T09:58:03.733802764Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_EmitsTelemetry","Elapsed":0.16} +{"Time":"2026-10-18T09:58:03.733814504Z","Action":"run","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_UserNotFound_Returns401"} +{"Time":"2026-10-18T09:58:03.733819959Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_UserNotFound_Returns401","Output":"=== RUN TestUserinfoHandler_UserNotFound_Returns401\n"} +{"Time":"2026-10-18T09:58:03.882473401Z","Action":"output","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_UserNotFound_Returns401","Output":"--- PASS: TestUserinfoHandler_UserNotFound_Returns401 (0.15s)\n"} +{"Time":"2026-10-18T09:58:03.882543185Z","Action":"pass","Package":"keycape/internal/server/oidc","Test":"TestUserinfoHandler_UserNotFound_Returns401","Elapsed":0.15} +{"Time":"2026-10-18T09:58:03.882556306Z","Action":"output","Package":"keycape/internal/server/oidc","Output":"PASS\n"} +{"Time":"2026-10-18T09:58:04.890619084Z","Action":"output","Package":"keycape/internal/server/oidc","Output":"ok \tkeycape/internal/server/oidc\t18.351s\n"} +{"Time":"2026-10-18T09:58:04.890682079Z","Action":"pass","Package":"keycape/internal/server/oidc","Elapsed":18.351} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/application.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/application.json new file mode 100644 index 00000000..c7ad33c2 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/application.json @@ -0,0 +1,9 @@ +{ + "status": "source-applied", + "owner": "key-cape", + "files": 19, + "existing_task_blocks_preserved": 3, + "new_source_only_task": "KEY-WP-0042-T04", + "all_other_tracked_files_and_index_preserved": true, + "native_admission": false +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/consistency.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/consistency.json new file mode 100644 index 00000000..dfb7f818 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/consistency.json @@ -0,0 +1,133 @@ +{ + "repo_slug": "key-cape", + "repo_path": "/home/worsch/key-cape", + "source_revision": "08c083bae9ff35fbaf028c36d72a95b57d2541b7", + "source_revision_reason": null, + "issues": [ + { + "severity": "WARN", + "check_id": "C-24", + "message": "Repo classification advisory: capability_tag 'security' is not a recommended family tag (allowed, check for synonym)", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-33", + "message": "WORK-RECORDS.md is missing or stale \u2014 regenerate via fix-consistency (CUST-WP-0061-T04 generated work-record index)", + "file_path": "WORK-RECORDS.md", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": true + }, + { + "severity": "WARN", + "check_id": "C-20", + "message": "Workplan dependency target 'USER-WP-0020' is not linked to State Hub", + "file_path": "workplans/KEY-WP-0007-user-engine-portal-oidc-client.md", + "db_id": "", + "file_value": "USER-WP-0020", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-20", + "message": "Workplan dependency target 'NK-WP-0025' is not linked to State Hub", + "file_path": "workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md", + "db_id": "", + "file_value": "NK-WP-0025", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-20", + "message": "Workplan dependency target 'NK-WP-0030' is not linked to State Hub", + "file_path": "workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md", + "db_id": "", + "file_value": "NK-WP-0030", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-20", + "message": "Workplan dependency target 'RAILIANCE-WP-0027' is not linked to State Hub", + "file_path": "workplans/KEY-WP-0010-openbao-operator-loopback-callback.md", + "db_id": "", + "file_value": "RAILIANCE-WP-0027", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-23", + "message": "Lifecycle drift in 'key-wp-0042': workplan status 'proposed' has an active task \u2014 report only (ADR-007: do not auto-promote proposed)", + "file_path": "workplans/KEY-WP-0042-online-access-token-status.md", + "db_id": "e2eecd1c-45c7-5a7c-bd1c-d31c845e3d38", + "file_value": "proposed", + "db_value": "proposed", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-11", + "message": "Derived task 'KEY-WP-0042-T04' is absent from this projection", + "file_path": "workplans/KEY-WP-0042-online-access-token-status.md#KEY-WP-0042-T04", + "db_id": "4c71c9f7-8e14-5fec-8491-d7a7995f97e2", + "file_value": "", + "db_value": "", + "fixable": true + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'keycape-implementation@retired-20260826' (id=2c9caad8\u2026, status=archived) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "2c9caad8-2ced-492d-9d63-376387b4b9b0", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-28", + "message": "2 unread inbox message(s) older than 3 day(s): the-custodian:23172cb2, the-custodian:51e9eace", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-28", + "message": "3 unread message(s) lack thread_id for supersession tracking: the-custodian:52b0031d, the-custodian:23172cb2, the-custodian:51e9eace", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + } + ], + "fixes_applied": [ + "bindings: synced 45/45", + "C-17 cleared: pushed 1 backlogged commit(s)", + "C-33 fixed: regenerated WORK-RECORDS.md", + "C-11 fixed: task 'KEY-WP-0042-T04' \u2192 4c71c9f7\u2026", + "brief: .custodian-brief.md updated", + "push: pushed" + ], + "summary": { + "fail": 0, + "automation_error": 0, + "warn": 10, + "info": 1 + }, + "result": "warn" +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/consistency.stderr.txt b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/consistency.stderr.txt new file mode 100644 index 00000000..3345563f --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/consistency.stderr.txt @@ -0,0 +1 @@ +WARN: git commit failed for writeback: Generated-only commits rejected: staged diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/projection.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/projection.json new file mode 100644 index 00000000..24304060 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/projection.json @@ -0,0 +1,200 @@ +{ + "ok": true, + "status": "applied", + "repo_slug": "key-cape", + "commit": "08c083bae9ff35fbaf028c36d72a95b57d2541b7", + "requests": 2, + "elapsed_ms": 7899.5, + "git": { + "upstream": "origin/main", + "behind": 0, + "ahead": 0 + }, + "identifiers": { + "schema": "repo-manager.identifier-assignment.v1", + "ok": true, + "executed": true, + "repo": "key-cape", + "namespace": "helixforge", + "assignments": [], + "historical_invalid_identifiers": [], + "historical_identity_collisions": [], + "files_changed": [] + }, + "receipt": { + "schema": "state-hub.repository-projection-reconcile.v1", + "instance_role": "primary", + "instance_label": "railiance01", + "expected_commit": "08c083bae9ff35fbaf028c36d72a95b57d2541b7", + "derived_commit": "08c083bae9ff35fbaf028c36d72a95b57d2541b7", + "outcome": { + "schema": "state-hub.projection-reset.v1", + "repo_slug": "key-cape", + "commit": "08c083bae9ff35fbaf028c36d72a95b57d2541b7", + "status": "applied", + "counts": { + "created": 0, + "updated": 45, + "retired": 0, + "refused": 0, + "released": 0, + "created_tasks": 0, + "updated_tasks": 1, + "cancelled_tasks": 0, + "created_edges": 0, + "removed_edges": 0, + "unresolved_edges": 1, + "external_edges": 8 + }, + "created": [], + "updated": [ + "ADHOC-2026-09-05", + "ADHOC-2026-09-07", + "ADHOC-2026-09-27", + "KEY-WP-0001", + "KEY-WP-0002", + "KEY-WP-0003", + "KEY-WP-0004", + "KEY-WP-0005", + "KEY-WP-0006", + "KEY-WP-0007", + "KEY-WP-0008", + "KEY-WP-0009", + "KEY-WP-0010", + "KEY-WP-0011", + "KEY-WP-0012", + "KEY-WP-0013", + "KEY-WP-0014", + "KEY-WP-0015", + "KEY-WP-0016", + "KEY-WP-0017", + "KEY-WP-0018", + "KEY-WP-0019", + "KEY-WP-0020", + "KEY-WP-0021", + "KEY-WP-0022", + "KEY-WP-0023", + "KEY-WP-0024", + "KEY-WP-0025", + "KEY-WP-0026", + "KEY-WP-0027", + "KEY-WP-0028", + "KEY-WP-0029", + "KEY-WP-0030", + "KEY-WP-0031", + "KEY-WP-0032", + "KEY-WP-0033", + "KEY-WP-0034", + "KEY-WP-0035", + "KEY-WP-0036", + "KEY-WP-0037", + "KEY-WP-0038", + "KEY-WP-0039", + "KEY-WP-0040", + "KEY-WP-0041", + "KEY-WP-0042" + ], + "retired": [], + "released": [], + "created_tasks": [], + "updated_tasks": [ + "KEY-WP-0042-T04" + ], + "cancelled_tasks": [], + "created_edges": [], + "removed_edges": [], + "unresolved_edges": [ + { + "workplan": "KEY-WP-0010", + "from": "KEY-WP-0010", + "target": "RAILIANCE-WP-0027", + "reason": "missing" + } + ], + "external_edges": [ + { + "workplan": "KEY-WP-0038", + "from": "KEY-WP-0038-T03", + "target": "KEY-WP-0038-T02", + "relationship_type": "starts_after", + "from_workplan_id": "098e3e2c-a138-560e-b2d3-3a15eb49d8a9", + "from_task_id": "40ddaa29-7245-508c-ad48-ddc063e25115", + "to_workplan_id": null, + "to_task_id": "ddcfb482-8f33-5c81-9ce8-84be8fa5dc30" + }, + { + "workplan": "KEY-WP-0038", + "from": "KEY-WP-0038-T02", + "target": "KEY-WP-0038-T01", + "relationship_type": "starts_after", + "from_workplan_id": "098e3e2c-a138-560e-b2d3-3a15eb49d8a9", + "from_task_id": "ddcfb482-8f33-5c81-9ce8-84be8fa5dc30", + "to_workplan_id": null, + "to_task_id": "5f019d13-1fa3-5b88-a27a-75a3339ca96e" + }, + { + "workplan": "KEY-WP-0038", + "from": "KEY-WP-0038-T02", + "target": "NK-WP-0048-T06", + "relationship_type": "starts_after", + "from_workplan_id": "098e3e2c-a138-560e-b2d3-3a15eb49d8a9", + "from_task_id": "ddcfb482-8f33-5c81-9ce8-84be8fa5dc30", + "to_workplan_id": null, + "to_task_id": "d9b26bcf-a7c6-59a2-92a0-f913d76a203c" + }, + { + "workplan": "KEY-WP-0039", + "from": "KEY-WP-0039-T02", + "target": "KEY-WP-0038-T03", + "relationship_type": "starts_after", + "from_workplan_id": "09c3bddf-6058-5603-8488-cccdb7be4f86", + "from_task_id": "03da4c38-1dac-53b1-8b0b-e697df48e9d3", + "to_workplan_id": null, + "to_task_id": "40ddaa29-7245-508c-ad48-ddc063e25115" + }, + { + "workplan": "KEY-WP-0039", + "from": "KEY-WP-0039-T02", + "target": "KEY-WP-0039-T01", + "relationship_type": "starts_after", + "from_workplan_id": "09c3bddf-6058-5603-8488-cccdb7be4f86", + "from_task_id": "03da4c38-1dac-53b1-8b0b-e697df48e9d3", + "to_workplan_id": null, + "to_task_id": "4d06b059-3768-53bb-83a4-a9a71c0850b8" + }, + { + "workplan": "KEY-WP-0039", + "from": "KEY-WP-0039-T02", + "target": "KEY-WP-0038-T02", + "relationship_type": "starts_after", + "from_workplan_id": "09c3bddf-6058-5603-8488-cccdb7be4f86", + "from_task_id": "03da4c38-1dac-53b1-8b0b-e697df48e9d3", + "to_workplan_id": null, + "to_task_id": "ddcfb482-8f33-5c81-9ce8-84be8fa5dc30" + }, + { + "workplan": "KEY-WP-0007", + "from": "KEY-WP-0007", + "target": "KEY-WP-0005", + "relationship_type": "blocks", + "from_workplan_id": "24db4178-705c-5b09-b7db-ee7a345d71a0", + "from_task_id": null, + "to_workplan_id": "711a8303-69aa-5db6-9043-92530c6dc81b", + "to_task_id": null + }, + { + "workplan": "KEY-WP-0009", + "from": "KEY-WP-0009", + "target": "KEY-WP-0006", + "relationship_type": "blocks", + "from_workplan_id": "c1a9b1cc-2ff0-566a-b544-1a2ef967fc0d", + "from_task_id": null, + "to_workplan_id": "d8d20d8f-61e0-54e2-9a88-a3958f0b6f2d", + "to_task_id": null + } + ], + "refused": [], + "notes": [] + } + } +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/projection.stderr.txt b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/projection.stderr.txt new file mode 100644 index 00000000..e69de29b diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/protected.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/protected.json new file mode 100644 index 00000000..010e50ee --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/protected.json @@ -0,0 +1,1134 @@ +{ + ".claude/rules/agents.md": { + "sha256": "sha256:55ad7da95751de483e42e08d3ccae7d6b04daf8ad5f7457047eff06778b05fa5", + "index": "100644 0e8a5d95b6d263fbaeae4261a7051112fb27ee18 0\t.claude/rules/agents.md" + }, + ".claude/rules/architecture.md": { + "sha256": "sha256:21314c8ac9329a2ab6f554807a7fe131a7417923b7e9faf5782ad25c70a4ff93", + "index": "100644 7c2a64580a2fb55d6586e154ee70d801430faa3e 0\t.claude/rules/architecture.md" + }, + ".claude/rules/credential-routing.md": { + "sha256": "sha256:8f2951b8808f7f3f63f0e2179948255fcf31b6f9c021b5053fcb6c5d0256a1e6", + "index": "100644 2ab2aee3c221b4c2f637786f66de431236b61bc5 0\t.claude/rules/credential-routing.md" + }, + ".claude/rules/first-session.md": { + "sha256": "sha256:605a48a56a3dfd84baa08bdf769cd012e4de566873712b7039d9390473d0271c", + "index": "100644 5b6b1876a29a4de2c3e6fd0f67c3ffbeb144c496 0\t.claude/rules/first-session.md" + }, + ".claude/rules/repo-boundary.md": { + "sha256": "sha256:3ab0772c1ea280c48a75f2d44a1d0494e6e124fd91145ad19e65ac48488ead22", + "index": "100644 b74d916907b49e9abed8a8bd8f4f3cd7aadf95ef 0\t.claude/rules/repo-boundary.md" + }, + ".claude/rules/repo-identity.md": { + "sha256": "sha256:5ae2098aa75878ddf966c8b0f7bfa532e40b320f776dd1e5e1c55bd04380ba03", + "index": "100644 c4b8fa16164b5a8b37fee603997121a5c9680aac 0\t.claude/rules/repo-identity.md" + }, + ".claude/rules/session-protocol.md": { + "sha256": "sha256:e61d95ebe2f1bc92594ab1fcc12e09c95f961a509ddc43ff9310b15fe7115a79", + "index": "100644 0c2d89e25d9b55e90982f7596f7336328a49c786 0\t.claude/rules/session-protocol.md" + }, + ".claude/rules/stack-and-commands.md": { + "sha256": "sha256:8debf28c7e28aeb321a0638a2e7f1dbdcb7c4013f06f5994caf5be240df902da", + "index": "100644 dc53ac69288ec906421a0e8e1e1083528c047702 0\t.claude/rules/stack-and-commands.md" + }, + ".claude/rules/workplan-convention.md": { + "sha256": "sha256:d5ef7350f78ad8091568dca79b072d615133256756b0584ffbc30c7320b063ac", + "index": "100644 f43cfff94d75b083b3ca10e7982654d71e75dfdf 0\t.claude/rules/workplan-convention.md" + }, + ".custodian-brief.md": { + "sha256": "sha256:96d84539b3a92786bff37fcc70161adec4648b9547287e52e6b817bc080a080a", + "index": "100644 d3b36c3bffbeb922769a2a788e35b4113fccaa3f 0\t.custodian-brief.md" + }, + ".forgejo/workflows/acceptance.yaml": { + "sha256": "sha256:1ac9f025edc3394f23c6cc46ee779abe81d70b9e798454ca50cabc070ee66ca9", + "index": "100644 b1bcdc2c729352cada7b654b59a07fe6850fc466 0\t.forgejo/workflows/acceptance.yaml" + }, + ".forgejo/workflows/image.yaml": { + "sha256": "sha256:5bb3910207295c830aa2a6f9bc65ab8cf9f264ea9d2687aacad88c39429f5644", + "index": "100644 0e16cc2ea75d37e1da788ca847c127fc04f5a98f 0\t.forgejo/workflows/image.yaml" + }, + ".gitea/workflows/image.yaml": { + "sha256": "sha256:849e4228aee5c2541ff14c87fbe875a629ee484d74e9cd00a827862f0aa3b958", + "index": "100644 e8491b77aad0b288977d3fb5eb8ca8db4a7725de 0\t.gitea/workflows/image.yaml" + }, + ".github/workflows/ci.yml": { + "sha256": "sha256:e2f9854245d0d62a0ab291b92eaf93c8787d036af42466bf2f8d05233ff7eaac", + "index": "100644 32a386e9115c36d1689d9ff595eab8d66f037286 0\t.github/workflows/ci.yml" + }, + ".gitignore": { + "sha256": "sha256:cfa7e0d0d9ab86e0246ba668147cdfe1c599ae34b1843780cdbccfaa3d0f7621", + "index": "100644 e705f7f1738a49dd9a78b5907d68d9429107c67c 0\t.gitignore" + }, + ".repo-classification.yaml": { + "sha256": "sha256:416fcc6bf409163146a88451a90a04980bb2530433e92579e14f9061a8a30207", + "index": "100644 4fc521fc9c4263b37c6978ea68651d1cb0c25faf 0\t.repo-classification.yaml" + }, + "AGENTS.md": { + "sha256": "sha256:77c8e1ac762e7c101cd09a3aa184993309ed057821bd53fb0d318979a45c9315", + "index": "100644 4a0df33e6635969b7158daec3e80bd28e5f0bbc1 0\tAGENTS.md" + }, + "CLAUDE.md": { + "sha256": "sha256:60ac8c6f039b1f285639ad7f1ebd815352b6fff0be3ec6401658c744aaca740e", + "index": "100644 e81c1b48c16dc3bf49af30e48b476107d916ee21 0\tCLAUDE.md" + }, + "Dockerfile": { + "sha256": "sha256:5ef0e8a932b999adba8deec6478ba21499edaff9351b863910de647bbfdcdef6", + "index": "100644 6adf9ce0636d7782fd231e418a0009deeee9868b 0\tDockerfile" + }, + "INTENT.md": { + "sha256": "sha256:b22cb440691bb399b064ee10ab1a03e1e07838da1051bf6235fbfe2cf820eb10", + "index": "100644 b2519df87f5b29b324187f97f7a0d92dff3fc874 0\tINTENT.md" + }, + "LICENSE": { + "sha256": "sha256:ff413f361a3b3bf44cf50f110fbcc4837064d57eefbcef89df2b43997c6262b6", + "index": "100644 7e08e28d5f32bdea3a9e1c828ae9f1e21d9edae7 0\tLICENSE" + }, + "README.md": { + "sha256": "sha256:953586cca96d01e9240448186b922c9b8ea03827a7f314731e9a9ead4f19d0d3", + "index": "100644 5435b16714d66247db4d99ab7782cf8cd21532d9 0\tREADME.md" + }, + "SCOPE.md": { + "sha256": "sha256:a80e80ba2e5279ba50232e6b3f57a5bdd14866e584d2d055dfb09e98a4c24ce0", + "index": "100644 ef9506b724477e66b5b1cc2af7dcf6382b82cb00 0\tSCOPE.md" + }, + "WORK-RECORDS.md": { + "sha256": "sha256:431842547bd82750f284f8c1c9f519892f1bb1c1a684b9b1e38adc6fdfdc299d", + "index": "100644 d86b29bbc480acfa6d12d5052039578d7d4e380c 0\tWORK-RECORDS.md" + }, + "bin/keycape": { + "sha256": "sha256:20bd7eefd64e027192bcc113029cd032b797332ab6150b9f1ff5d325d2bf5cb5", + "index": "100755 e7887dfbae490351f88d1f249e928f695f6a16d2 0\tbin/keycape" + }, + "bin/keycape-to-keycloak": { + "sha256": "sha256:7e5292c6ce338ea922aada2de13fe9011db98b8c9ca5d66533aef4bfe9818144", + "index": "100755 592504fd11f4c4fc821f3d6b0350b1285c38b0b0 0\tbin/keycape-to-keycloak" + }, + "bin/lldap-export": { + "sha256": "sha256:5320718452ca388788ba1316b437bc56a70f393fdde4079587eec284e027bcae", + "index": "100755 e49fe216aa04525d611c99ddf930639f98929ad0 0\tbin/lldap-export" + }, + "bin/lldap-to-ldap": { + "sha256": "sha256:480378861f090538507ffca0a83a752cea1c153549658e389a2ae725aa5061e8", + "index": "100755 9609697bd8e21396add3009893fcd8a11352eabd 0\tbin/lldap-to-ldap" + }, + "bin/validator": { + "sha256": "sha256:f548b0dc1746c8c492727a1c09fcb81cab7c8695b1608de3d421ab7d301061e5", + "index": "100755 b732e3274c05371e62768da3c3bdc3ac767329a0 0\tbin/validator" + }, + "capabilities/playbooks/key-cape.lightweight-sso.yaml": { + "sha256": "sha256:4ddc7b2ada4022ec3efa7693e9539de521a40140055e7066a78c67d9b0e2596b", + "index": "100644 b43901fe8a7c3ca61f509b5cb2eac8b2ef091064 0\tcapabilities/playbooks/key-cape.lightweight-sso.yaml" + }, + "capabilities/playbooks/key-cape.privacyidea-token-authority.yaml": { + "sha256": "sha256:0b0d8a75a97e9b8342496cf19d071f31e576eebad0343b95077b95d271db4d58", + "index": "100644 2872ef7727ac0fc2c3943296098fbea6f2a85f62 0\tcapabilities/playbooks/key-cape.privacyidea-token-authority.yaml" + }, + "config/dev-config.yaml": { + "sha256": "sha256:303dae14861a00403c10631457eb3ecb0f9615002053401b079d7d8f07ff4b50", + "index": "100644 bf8ea915b24d93be803ed1ef8c18c13a82976c9b 0\tconfig/dev-config.yaml" + }, + "config/service-clients.example.yaml": { + "sha256": "sha256:b7e17698a0946f387c481b7e27fe9ddea22cdd9db2e34e32a50457e02a34b18e", + "index": "100644 a4b13e5cffdc1cb683a202b90724bd86f565ccda 0\tconfig/service-clients.example.yaml" + }, + "docker-compose.dev.yml": { + "sha256": "sha256:dd30f791458c7c4169168ee272ac6b12378c828a6e757828c85fe55264c088d7", + "index": "100644 fa050d2a3722fe7372938ec2cb34b31244b7aa61 0\tdocker-compose.dev.yml" + }, + "docker-compose.scenario-b.yml": { + "sha256": "sha256:49fe67dab4113736cdea8d4a91491935e32212eaf73706933408957fe148efb3", + "index": "100644 a8976c28eb6c40af92e1daadcf168aaef8647ad5 0\tdocker-compose.scenario-b.yml" + }, + "docker-compose.scenario-c.yml": { + "sha256": "sha256:b46d665d0d740267a3cc6b297cbedce41215257181a51261458d8a0a715d8c59", + "index": "100644 5743fa39140e5bac1f2cad2479c5928470e76e1c 0\tdocker-compose.scenario-c.yml" + }, + "docs/adr/ADR-0001-choose-go-for-keycape.md": { + "sha256": "sha256:436b538b55a286914bf5039194e48634cdf1b1aa540c524862d27f63ef85bfed", + "index": "100644 52ab3e94c61c02ea0b13a0b8cf4e3f7d0f89eb40 0\tdocs/adr/ADR-0001-choose-go-for-keycape.md" + }, + "docs/approval-clients-deployment.patch.yaml": { + "sha256": "sha256:89bd4f0932f63b82de6363b31580c7f4b03b36981ae9d07658ebbdfb54149d22", + "index": "100644 f42bfba2462bbc739f409bb817ab85904236e3d1 0\tdocs/approval-clients-deployment.patch.yaml" + }, + "docs/approval-clients-rollout.md": { + "sha256": "sha256:b79f89997afe06538767a170c4ad6966e4573eff81bddd3ea12b79b27bf777e1", + "index": "100644 08b3e12ea62dd0da1354c59060434b88c9e7040f 0\tdocs/approval-clients-rollout.md" + }, + "docs/approval-engine-auth-contract.md": { + "sha256": "sha256:a8a86cd1b37bdb045a5c3dd601e033328f84e5691df1e2bb5a07723ccc226207", + "index": "100644 3c35fe6242d82b72a0a66b3da17f8e5dd078df2e 0\tdocs/approval-engine-auth-contract.md" + }, + "docs/approval-engine-provisioning-request.yaml": { + "sha256": "sha256:92d0e01f8a1a8db7ee59d4a37e4e4931fedeb98ac43d307f32721f5aa383b798", + "index": "100644 902c20cb3cfa6d4592947ac76df88a2fa5186649 0\tdocs/approval-engine-provisioning-request.yaml" + }, + "docs/authorization-code-bindings.md": { + "sha256": "sha256:fd8ce239444a05615b8e40b54ed9fef6454df74117d5fb17207b10c57d5f5921", + "index": "100644 f305058adf60bef56762c2588b5b5b2474f45430 0\tdocs/authorization-code-bindings.md" + }, + "docs/credential-renewal-release-2026-09-13.md": { + "sha256": "sha256:6694e801ae020fc975fe2cd922e3ee9bf93592f30905e81bb9816648d9b70325", + "index": "100644 de742b60f5872ad84195f33f2a5763952653fcd5 0\tdocs/credential-renewal-release-2026-09-13.md" + }, + "docs/enrollment-assurance-release-2026-09-13.md": { + "sha256": "sha256:3a776f2caab9312faf077fef1453c801a4abd926e20fc56865976215301234fa", + "index": "100644 c2061c6a760e810adccdc404e044cb79baa4fdcb 0\tdocs/enrollment-assurance-release-2026-09-13.md" + }, + "docs/evidence/2026-09-08-upstream-issuer-live-proof.json": { + "sha256": "sha256:25b08d6699e75a5aad134677bc6deb8b93e80017b9368455ca9fec22220b115e", + "index": "100644 85dab93ed1f2196810ead4f6b81a897fd06c33ff 0\tdocs/evidence/2026-09-08-upstream-issuer-live-proof.json" + }, + "docs/evidence/2026-09-09-keycape-verifier-admission.json": { + "sha256": "sha256:2cb6c59e06563013675990d8c40684dc73ccdb966429254501bb9f05ac0993c3", + "index": "100644 6ae6fc721df48426e93e505206a0df8e18ef2499 0\tdocs/evidence/2026-09-09-keycape-verifier-admission.json" + }, + "docs/evidence/2026-09-09-upstream-issuer-pin.json": { + "sha256": "sha256:1a43e9d8594c5a77114f5964f7f0ef63f8398fc7f0985eae524b82a9cbb45bbe", + "index": "100644 62fe341c90c514a92585641d14287f60076e8836 0\tdocs/evidence/2026-09-09-upstream-issuer-pin.json" + }, + "docs/evidence/2026-09-14-informed-decision-browser-registration.json": { + "sha256": "sha256:9c91dc3a53359ad6e8efb3d8f75ad87893c0d12dc14aec535ee19ba75b0941c6", + "index": "100644 cc87339baeae5406bd7ce76fe89bd0aaf95b366f 0\tdocs/evidence/2026-09-14-informed-decision-browser-registration.json" + }, + "docs/evidence/2026-09-24-fresh-login-and-account-switch.md": { + "sha256": "sha256:3c984ad2d502f114fcb6b837f7d5fff2d201338e6e62f34e403e77f53bce867d", + "index": "100644 200863c7e6b87f3045c1bffd2b951be1bdee5d84 0\tdocs/evidence/2026-09-24-fresh-login-and-account-switch.md" + }, + "docs/evidence/2026-10-07-secrets-engine-openbao-issuance.json": { + "sha256": "sha256:a405ef5289159c525695352ba71da7eca8e897b6f2dc7e5795f9b239361d8068", + "index": "100644 2278d9917b56923887b64b157b10de537739ee55 0\tdocs/evidence/2026-10-07-secrets-engine-openbao-issuance.json" + }, + "docs/evidence/2026-10-11-key39-next-source-inspection.json": { + "sha256": "sha256:d9bc54b645ea52dc3084f7a95f66456fa2206a6c0dcdd61207ede9af07054a79", + "index": "100644 d97906b5ee836fca2e52bbe42a462b02200f4fe5 0\tdocs/evidence/2026-10-11-key39-next-source-inspection.json" + }, + "docs/evidence/upstream-issuer-probe.json": { + "sha256": "sha256:3c276f34754d31a4819c4f65297d931b2659e8b29f7683c26459d574814eb8bf", + "index": "100644 88d98b835b63a016ede535cdf6416add36c17514 0\tdocs/evidence/upstream-issuer-probe.json" + }, + "docs/forgejo-oidc-client-request.yaml": { + "sha256": "sha256:7ba5bf23eb0a074a496cbb40c38d5c2ba688d5808dd558b2e74624ae8ccf44e5", + "index": "100644 04d0bccc32fa1e0d5739f22b5d71a638e345e386 0\tdocs/forgejo-oidc-client-request.yaml" + }, + "docs/native-authentication.md": { + "sha256": "sha256:378a5fa8174580bde811b716ec8e987339013b9f8d7725cb398fa3b9f8d95655", + "index": "100644 e714df21c4113ac853f2fbbf9309c06ea1b05863 0\tdocs/native-authentication.md" + }, + "docs/offline-checker-owner-review-2026-10-16.json": { + "sha256": "sha256:aa9083e77ea08d166e8cec7c5d73362c19058567c5e80a576766af3745958dc0", + "index": "100644 9f3c00bf7dcef2b3fa40a1c0fd99a7c03cb8facf 0\tdocs/offline-checker-owner-review-2026-10-16.json" + }, + "docs/offline-checker-owner-review-2026-10-16.md": { + "sha256": "sha256:75ed6866b29cbb9f2c5c2a395da2afa25d021f248587c7055bd721e2c55b8685", + "index": "100644 be834c5854e2d1ac3f2747fb45dd80953508ff45 0\tdocs/offline-checker-owner-review-2026-10-16.md" + }, + "docs/oidc-browser-relying-party-type-review.md": { + "sha256": "sha256:0bc277ff71eec01dc8f46a952b7eb152cc1727d0b138f384050ac15b654cd72a", + "index": "100644 259f7e10fb0a6aaa071aac342906cde85c056609 0\tdocs/oidc-browser-relying-party-type-review.md" + }, + "docs/openbao-negative-probe-clients.yaml": { + "sha256": "sha256:23c3d49e713de76d75916aede5bdd109d8918169a3078e4e776f0478064dc778", + "index": "100644 713036618418c02f612071f41c4864b9b67c900a 0\tdocs/openbao-negative-probe-clients.yaml" + }, + "docs/openbao-negative-probe-session-proposal.md": { + "sha256": "sha256:82ab5678426ae78d44464b1293c76bef10d1fedda0b8cea6e0cc2514b89c8684", + "index": "100644 fe9a9945d837fec98dc15452c1e7935b6a4fd0f1 0\tdocs/openbao-negative-probe-session-proposal.md" + }, + "docs/openbao-negative-token-producer-decision.json": { + "sha256": "sha256:7b3e4a53ac4af33c780f16c3f1aa9cde0154040ad2747a8d361dd79bbb7f435c", + "index": "100644 d3b806af1dd024bfc0f518d30ef26e1b715be361 0\tdocs/openbao-negative-token-producer-decision.json" + }, + "docs/openbao-negative-token-producer-decision.md": { + "sha256": "sha256:38e4c9660ca57a1fb6e5ff04f214af61dd1a58abf564a5ed22216d909e27fc73", + "index": "100644 e44cbcb98a7bb4efd727a026e70db45f5195fa30 0\tdocs/openbao-negative-token-producer-decision.md" + }, + "docs/openbao-service-auth-contract.md": { + "sha256": "sha256:9b815eff44ebe898b93da5f4a5eeb927fe23d9490397386f3bca3682ce5c81dc", + "index": "100644 3416a5943e1b535870d16841c10a89fdb65521c8 0\tdocs/openbao-service-auth-contract.md" + }, + "docs/operations.md": { + "sha256": "sha256:3659362e3c7f8720e52cc8dc7c67a6295ac26462f383c68c06c120fac6e6e472", + "index": "100644 c4d838155b92955c76a0d5ec4642f481e8ae3979 0\tdocs/operations.md" + }, + "docs/optional-mfa.md": { + "sha256": "sha256:e1725c3e453b00ff74c7a07c2392ed7a2723fa9a159bd174d52a7fa4f1697c0b", + "index": "100644 f95f57aaa5cfd6203ea5d1b0ce99369ec32c40cc 0\tdocs/optional-mfa.md" + }, + "docs/proposals/2026-10-11-key39-founder-source-design-decision.json": { + "sha256": "sha256:d2f6e2fc733d8092a27a1dafb2f77601cbff398c5606b12bb053b4cd7bcd4091", + "index": "100644 2be7eb82c4ee1ec9a4b9227d2163b063063e40f7 0\tdocs/proposals/2026-10-11-key39-founder-source-design-decision.json" + }, + "docs/proposals/2026-10-11-key39-founder-source-design-decision.md": { + "sha256": "sha256:1816e48b44eb874e4c97db82ee56ed27c23083ddcfc322d9de9876132e802688", + "index": "100644 ad23cbde3d063f40e85948d0b37ec99847f24840 0\tdocs/proposals/2026-10-11-key39-founder-source-design-decision.md" + }, + "docs/proposals/2026-10-11-key39-next-execution-prerequisites.json": { + "sha256": "sha256:78288f6991910715b7ee8fdb2a32654418dd9becd5fccd254bab8d150420cfd3", + "index": "100644 09fe2e81cdda1372fc0ed7ec2e3103d303d7211d 0\tdocs/proposals/2026-10-11-key39-next-execution-prerequisites.json" + }, + "docs/qonto-runtime-identity-contract.md": { + "sha256": "sha256:24bc64dad4b6a6c01e69c2daeb35c62bd8e4539b18d1af329d4f647fc8b124cb", + "index": "100644 714a84c4a5d9e9258110b703297763537bbd07ec 0\tdocs/qonto-runtime-identity-contract.md" + }, + "docs/reviews/2026-10-11-key39-lifecycle-v2-keycape-source-ack.json": { + "sha256": "sha256:776e5a522be3a73a00cf690c68fe084d12d5cd04117666f2dab9031d07537199", + "index": "100644 315a7210651a2777eeca2a5f502cfa5b91207600 0\tdocs/reviews/2026-10-11-key39-lifecycle-v2-keycape-source-ack.json" + }, + "docs/reviews/2026-10-11-key39-lifecycle-v2-keycape-source-ack.sources.json": { + "sha256": "sha256:a272cc4af0979a5e47de36515aa5de256998a7006a038a0a00182b79bcc7227b", + "index": "100644 6c462037bb51a833451f37ddcca6a347656f354d 0\tdocs/reviews/2026-10-11-key39-lifecycle-v2-keycape-source-ack.sources.json" + }, + "docs/reviews/2026-10-11-key39-lifecycle-v4-keycape-source-ack.json": { + "sha256": "sha256:6e90cbe246658325b01b672162da5b336f65bb769b7608ef578473a409278a13", + "index": "100644 af94cc71214d638d2e33cdb455b29c9ef5cfb1f4 0\tdocs/reviews/2026-10-11-key39-lifecycle-v4-keycape-source-ack.json" + }, + "docs/reviews/2026-10-11-key39-lifecycle-v4-keycape-source-ack.sources.json": { + "sha256": "sha256:e448fbf4c8d65886e3f790b91ac2856ea50ae866428086d2ae422073b449ecfa", + "index": "100644 1a1ebdddca7e3e1c419ef293466174644dfdec1b 0\tdocs/reviews/2026-10-11-key39-lifecycle-v4-keycape-source-ack.sources.json" + }, + "docs/reviews/2026-10-11-key39-lifecycle-v5-keycape-source-ack.json": { + "sha256": "sha256:10f74210b02c9c47370a0da223719a7f2dbc5c181319c7ad8f4de282c6efd03e", + "index": "100644 9ad2ee43cf5c66a66ff0472f4c9f40d0e550283a 0\tdocs/reviews/2026-10-11-key39-lifecycle-v5-keycape-source-ack.json" + }, + "docs/reviews/2026-10-11-key39-lifecycle-v5-keycape-source-ack.sources.json": { + "sha256": "sha256:6ba36436559cdc0da035faaf3718f5736a68633a731f103a7084feba5943546f", + "index": "100644 567ee0f3aa1b14f8633e874a35530eb76b8c93c4 0\tdocs/reviews/2026-10-11-key39-lifecycle-v5-keycape-source-ack.sources.json" + }, + "docs/reviews/2026-10-11-key39-v7-input-keycape-source-review.json": { + "sha256": "sha256:73d8ee75c6201f650d32658d0731e2e91ae40cf53e1693b0f5fb029c42a75723", + "index": "100644 f0aa85ec5484751c8e490e2c60a77a600e21a1e1 0\tdocs/reviews/2026-10-11-key39-v7-input-keycape-source-review.json" + }, + "docs/reviews/2026-10-11-key39-v7-input-keycape-source-review.sources.json": { + "sha256": "sha256:4d405fe6547e29a5cc849d698e4d8ea04dede70a25595142f025efbe96e371d7", + "index": "100644 f4d4d9013656d1039585e32e3a9777eab096fa71 0\tdocs/reviews/2026-10-11-key39-v7-input-keycape-source-review.sources.json" + }, + "docs/reviews/2026-10-11-key39-v7-input-keycape-work-record.json": { + "sha256": "sha256:557269082b81bf82bb0c35e8f651342def8aa79a7794d970cd973fcf583fdc6b", + "index": "100644 2b5ccdb5341c43030ff87a62d418e2322d4e75af 0\tdocs/reviews/2026-10-11-key39-v7-input-keycape-work-record.json" + }, + "docs/reviews/2026-10-11-key39-v8-input-keycape-source-ack.json": { + "sha256": "sha256:100430d7c31050b1c68fa6c9b6b2b37e4f914f36fd4591b9f4d9ed62544457c1", + "index": "100644 7e4d3ec75f7671b2327f7eccfc51d1d902db275f 0\tdocs/reviews/2026-10-11-key39-v8-input-keycape-source-ack.json" + }, + "docs/reviews/2026-10-11-key39-v8-input-keycape-source-ack.sources.json": { + "sha256": "sha256:0c601702c4ade690c33368784944a5239c4aadee6d47b1fe3768267bcab23369", + "index": "100644 1d9a58cd94ceba2d4727060eaf13cc0442240352 0\tdocs/reviews/2026-10-11-key39-v8-input-keycape-source-ack.sources.json" + }, + "docs/reviews/2026-10-11-key39-v8-input-keycape-work-record.json": { + "sha256": "sha256:ed9f94f2c58f8210461385e41e02707da92539f1594070a585bfe5a6db6b9488", + "index": "100644 69a2ab4de8cbe2987a2be322648aa90ace9e26d6 0\tdocs/reviews/2026-10-11-key39-v8-input-keycape-work-record.json" + }, + "docs/reviews/2026-10-11-key39-v9-v4-keycape-source-ack.json": { + "sha256": "sha256:4108d3afde1756c3889e6092878afd99a1193e59971ffe04d3845bbe21a42c7e", + "index": "100644 553e90a108f111a9c42b88e16e1f38ff38af3231 0\tdocs/reviews/2026-10-11-key39-v9-v4-keycape-source-ack.json" + }, + "docs/reviews/2026-10-11-key39-v9-v4-keycape-source-ack.sources.json": { + "sha256": "sha256:2a7a587264ceeb902040417d0bc5c329af461590d8bc99edf818ec5699f0a5b0", + "index": "100644 524f47af20bae995988f59285c5f29283261e007 0\tdocs/reviews/2026-10-11-key39-v9-v4-keycape-source-ack.sources.json" + }, + "docs/reviews/2026-10-11-key39-v9-v4-keycape-work-record.json": { + "sha256": "sha256:b5074fdc22eb8f62ae035254bfb8311272cf8a7ec6ed14b60eebd14f5ef4046c", + "index": "100644 acf3e488fa9af74216f669e3f84bdf5d22e3963b 0\tdocs/reviews/2026-10-11-key39-v9-v4-keycape-work-record.json" + }, + "docs/secrets-engine-openbao-owner-packet.md": { + "sha256": "sha256:0bc704a3c18cd475c151e6e1d208ff5f9e1a45ce565fe3f4f009d6a3fccc5860", + "index": "100644 2b7e30ef9b82ebbf22ad589d31d0fccb74b33c95 0\tdocs/secrets-engine-openbao-owner-packet.md" + }, + "docs/sitting-requester-registration.json": { + "sha256": "sha256:0d71459be790c229a8d8e62b5cb94a3d4e7ef9c16cf3e82a2dba9804123e416e", + "index": "100644 ce5f53365f2ae3b14cd53f4b43c248f77c5a0223 0\tdocs/sitting-requester-registration.json" + }, + "docs/t03-requester-registration.json": { + "sha256": "sha256:189c0b8341c98d0c0eb82670b8a4655692ba0f93a56ec03dc03c3ec264e29f6e", + "index": "100644 d45478c9ef6363a735fd3605417e9275c18a2a94 0\tdocs/t03-requester-registration.json" + }, + "docs/t03-requester-registration.md": { + "sha256": "sha256:578b56b18359c9c59e9d67692e4f11fbfe5fd6fa10e822528a4340759e584247", + "index": "100644 32efcf0a5afc5c660bd754eb494020c32f609bdd 0\tdocs/t03-requester-registration.md" + }, + "docs/tenant-claim-contract.md": { + "sha256": "sha256:a7ce4f59c39f6b953a0ebb0592329e20e7830e64d7297abd05df72b758a23483", + "index": "100644 9ab277b85b550ac52ccf98bfda0a0dd7c744e171 0\tdocs/tenant-claim-contract.md" + }, + "docs/upstream-issuer-proof.md": { + "sha256": "sha256:8076cb5efff621b4b4c4d1d2919caec1affecc4c14de23f37f6143b734077811", + "index": "100644 4e7d26b6a1cbcacf6498aed0e33da8964160c39e 0\tdocs/upstream-issuer-proof.md" + }, + "history/2026-09-05-011726-scope-intent-assessment.md": { + "sha256": "sha256:893e9586e83b0598aeba4b01f69b0dcbd15de90a7b102663015a1576c4d7508d", + "index": "100644 4f305e21acfa7ad7f44b70542ba8f627b5ef9362 0\thistory/2026-09-05-011726-scope-intent-assessment.md" + }, + "history/2026-09-09-scope-reassessment.md": { + "sha256": "sha256:25383fac79195d715b8b875363813750125be1b860fe328b2f666786567d9136", + "index": "100644 394eed11f5afb16de7eda7b09f99cf59dbbbacce 0\thistory/2026-09-09-scope-reassessment.md" + }, + "history/2026-09-28-railiance-admin-role.md": { + "sha256": "sha256:a43ac13b0c13d25a576803d29732f41f68653869744db415a70120515ce8f2ee", + "index": "100644 2c9e75f72d9983b1b2980d79b12380564465e640 0\thistory/2026-09-28-railiance-admin-role.md" + }, + "history/KEY-WP-0011-live-secret-exposure-recovery.md": { + "sha256": "sha256:788c6b7d2fe0d36eee870d1d5b0a28da2a2d53916c53835e458ac55258fc8a55", + "index": "100644 77233c20c2230459b2d78d9d28578e9472e568ce 0\thistory/KEY-WP-0011-live-secret-exposure-recovery.md" + }, + "history/KEY-WP-0011-rotated-credentials-2026-08-23-final.tar.age": { + "sha256": "sha256:71478bd7f493dd64e12fd123af386294e66f975b2072cf24d8468086a350b2f7", + "index": "100644 8eef81bac925dacfa8408bdfb4e5a2d672ba903e 0\thistory/KEY-WP-0011-rotated-credentials-2026-08-23-final.tar.age" + }, + "intakes/intakes.md": { + "sha256": "sha256:780d2792c26dc55293bb12f6af341949eda0b5fab128574fd7115d259cd0c601", + "index": "100644 845c3025f781d2296f40b4ec93c43935a480295d 0\tintakes/intakes.md" + }, + "registry/README.md": { + "sha256": "sha256:921c03c506d3e1c12b4796c18ac1cb74010e4f0bbada679f68edf55bda2518bb", + "index": "100644 569abe99c95e163d39048f4b02ccb47165751c7e 0\tregistry/README.md" + }, + "registry/capabilities/.gitkeep": { + "sha256": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "index": "100644 e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 0\tregistry/capabilities/.gitkeep" + }, + "registry/capabilities/capability.iam.key-cape.md": { + "sha256": "sha256:c987ddd0155c248e35409878e9b2dc36ffd18bbd1b82fce8a90157fc4224a915", + "index": "100644 59cc40e2ccad5b2ce9111366efbc9e48f8e18e70 0\tregistry/capabilities/capability.iam.key-cape.md" + }, + "registry/indexes/capabilities.yaml": { + "sha256": "sha256:901d15c15cacd844cf19a1a7b74c890ce5e0b00a3372a9e10bd7114f328596c8", + "index": "100644 0718f5218c9f4b4ef84c6d9aacd4b61440098405 0\tregistry/indexes/capabilities.yaml" + }, + "scripts/bootstrap-dev.sh": { + "sha256": "sha256:c05ddd72d2309c4d7900a9767eecc17c29e5ecd3c51c897438a8ffc9f5f6aa97", + "index": "100755 bf05bb3db90d62b77a1104e48d8e31045ccf0d8e 0\tscripts/bootstrap-dev.sh" + }, + "scripts/collect-upstream-issuer-proof.py": { + "sha256": "sha256:e810aea8d51be122f5fa7ce0e21128c0c76672a0cb6a059afa0bfdb68f09f5dd", + "index": "100644 29627c2056fbcf511bce069db0a8803c797295ff 0\tscripts/collect-upstream-issuer-proof.py" + }, + "scripts/factor_recovery.py": { + "sha256": "sha256:247be2b1c25007539208a02fb14c4b64d1f71df4be8dfae708ba1dc4d226449a", + "index": "100644 10832318492c4b34230400e458209777d58b08a1 0\tscripts/factor_recovery.py" + }, + "scripts/keycape_onboarding_guard.py": { + "sha256": "sha256:9465e5e0b98f7986c2bfdc2a72be5882677c2acddf2f7a10c4e7e14cf6a150c0", + "index": "100644 2bc28a205ffbd14c4f077c61957f5e3c0af284fb 0\tscripts/keycape_onboarding_guard.py" + }, + "scripts/openbao_negative_private_handoff.py": { + "sha256": "sha256:faf63a3e9504dcbb46847a114275f83d508521e095410a47f92f02b86ba82b1b", + "index": "100644 e3a875e114d176431b517667c0c096ac4a974ad2 0\tscripts/openbao_negative_private_handoff.py" + }, + "scripts/openbao_negative_private_launcher.py": { + "sha256": "sha256:46e57504b3185cc13f1656901a0ca02cc3887527cb09566e270f57b76099ab9c", + "index": "100644 4eae60ab0d0766a390743ed33d665ea852bb285e 0\tscripts/openbao_negative_private_launcher.py" + }, + "scripts/openbao_negative_probe.py": { + "sha256": "sha256:bb9610babf44a959342bac700bb5712e97f400b44c4d0659d21df4426e616e19", + "index": "100644 cb864ae0b2b46650a5e20ae90e9465701c362011 0\tscripts/openbao_negative_probe.py" + }, + "scripts/provider-browser-fixture.py": { + "sha256": "sha256:5d2278cd6c6871fe9370f2eebe0faeb2630abdeac85e8745cf1f81964b810a07", + "index": "100644 477857655b8316659d7a3a2afcbe330e497d3851 0\tscripts/provider-browser-fixture.py" + }, + "scripts/provider-onboarding-contract.py": { + "sha256": "sha256:7dcc18dbe739ebaebbf0895f8324e7f3a6d978a9340630c18eedd7f946565455", + "index": "100644 5ac86bfec073a054b712fa7a82fd44066f203a29 0\tscripts/provider-onboarding-contract.py" + }, + "scripts/provider_browser.mjs": { + "sha256": "sha256:d892b77aec406dc1d581281acdf12f9ccc55bd176e9ad7a23378803f6cb759a0", + "index": "100644 2abdf8d67ab9a61f93ab3ef90d36942ee7659702 0\tscripts/provider_browser.mjs" + }, + "scripts/provider_browser_acceptance.py": { + "sha256": "sha256:33aa5e6b5834e4d8b212da028b73b62909bf0310a4b6b1ffea9c990fae4e78ed", + "index": "100644 bc9f59737a06c59e7746aecd00df8112a9c830d1 0\tscripts/provider_browser_acceptance.py" + }, + "scripts/recovery_service.py": { + "sha256": "sha256:90746f479e4a4904d41bb80b0a583809c9d30f07a97f034c84f46c1d9d0abccd", + "index": "100644 ca0bb2a3554c569d3923c48bebe0850a1f4254ff 0\tscripts/recovery_service.py" + }, + "scripts/render-upstream-issuer-probe.py": { + "sha256": "sha256:4f9a79b8332a9c830181c9aacf28e76801d80ffb9669a0e822c1ae86d9a41b20", + "index": "100644 0f2dca8e890f18bf5430596a1c722bdc4bcb4d0c 0\tscripts/render-upstream-issuer-probe.py" + }, + "scripts/test-scenario-b.sh": { + "sha256": "sha256:7186980e174ee10c9c35fa2313f78390f56dedf6cf35b2738ad443d763ecb9d9", + "index": "100755 48a5832ed965624685eeeb9cad396b8e6a854426 0\tscripts/test-scenario-b.sh" + }, + "scripts/test-scenario-c.sh": { + "sha256": "sha256:d2ddda2fba72d50fc474a61d714c8fae0b8f1440ab67ea65841b8a8a9b99a7b8", + "index": "100755 e333ec26464ade014e45d7a13b153d0a6f29b0a1 0\tscripts/test-scenario-c.sh" + }, + "scripts/test_factor_recovery.py": { + "sha256": "sha256:49a69b6f60e31545929988e035e21d4d18984a6a130ac49e4980bc5e35aa07aa", + "index": "100644 25d961f46258329f2290811101388c293e16b025 0\tscripts/test_factor_recovery.py" + }, + "scripts/test_openbao_negative_private_handoff.py": { + "sha256": "sha256:e4eb600718e7d93b0e801ac3ab1427af9895a6e5d877c1134369e049e0849797", + "index": "100644 c17061849c2a8f9b6c614e69888502607c612674 0\tscripts/test_openbao_negative_private_handoff.py" + }, + "scripts/test_openbao_negative_private_launcher.py": { + "sha256": "sha256:243426a85075b3447adeb2ca320a13711409744f71837a06699de6ad5b04ee9d", + "index": "100644 e1d98a393d5276d64d689c3b961790219e939f77 0\tscripts/test_openbao_negative_private_launcher.py" + }, + "scripts/test_openbao_negative_private_preparation.py": { + "sha256": "sha256:8e4dd327c4a339a0151ecba57db5987965b5d536ca18123fb7c74a047a241548", + "index": "100644 8344b22b4d62deb60ccafafa7acca336d226b0a8 0\tscripts/test_openbao_negative_private_preparation.py" + }, + "scripts/test_openbao_negative_probe.py": { + "sha256": "sha256:08d5598357c4db72672b2c4dc21ef09711ac4f9873fb29f8a6949d34afb8d85c", + "index": "100644 242d4502ab1f2bda9886ec0936c647019c426696 0\tscripts/test_openbao_negative_probe.py" + }, + "scripts/test_recovery_service.py": { + "sha256": "sha256:7ba236fa95c55a36eeece50e04440999b03318bf65644a8f9fe5a63877796752", + "index": "100644 6cdb5acd55440ed089e2842f5c762627363defa1 0\tscripts/test_recovery_service.py" + }, + "scripts/test_render_upstream_issuer_probe.py": { + "sha256": "sha256:fd407b5c8ef4753bfb0878aef044fdce46463b30623c87133e480823655bcf70", + "index": "100644 ab6f45297f354d006c4e24beb698bafe8a93a31b 0\tscripts/test_render_upstream_issuer_probe.py" + }, + "spec/canonical-model.yaml": { + "sha256": "sha256:ea4516d17235ee2cf9e8df2be23e61f5f81aa1fcbb661cce9c1dfc4158acebf1", + "index": "100644 fca9b9d450cdee91d383ff8a67c738774c5aca4c 0\tspec/canonical-model.yaml" + }, + "spec/ldap-schema.yaml": { + "sha256": "sha256:65af5ae7f697803cb29fc4fcc8988d899612591f72b04d844e0baccfb8b1e4b7", + "index": "100644 41cc35711da626fd1986f0da439b230235cac4df 0\tspec/ldap-schema.yaml" + }, + "src/Makefile": { + "sha256": "sha256:6cdd3aa6e1cccaf4e028278acafe3e6a8d28170de89ff3462984d4f6eb56bd96", + "index": "100644 083df0b3e537a5ebb09b9a454f25c68d650fdac8 0\tsrc/Makefile" + }, + "src/cmd/keycape-to-keycloak/main.go": { + "sha256": "sha256:6141d3f86bbe3df2a814a0c9995e537d32bf7b19f5549e89d40974eb3270faf7", + "index": "100644 faca3748339a924aff723dcb3ed10ec8d737248f 0\tsrc/cmd/keycape-to-keycloak/main.go" + }, + "src/cmd/keycape/checkconfig.go": { + "sha256": "sha256:2c47c9aedf3457627fdec991703e3be50e5ef554e4104cf3741f8347687279f2", + "index": "100644 5edcfd7d4fe8f6af021676e8f0f8a0b258831c37 0\tsrc/cmd/keycape/checkconfig.go" + }, + "src/cmd/keycape/checkconfig_test.go": { + "sha256": "sha256:06955c996774109b26e4751ab20787f12718a1de96e3483a775fb19688d90e66", + "index": "100644 93e4c44654ca28fb16027748c9c24d91d5ced4bd 0\tsrc/cmd/keycape/checkconfig_test.go" + }, + "src/cmd/keycape/clients_test.go": { + "sha256": "sha256:6a3982c1b2bd9b15c387ba64d4c87b37304dc6f615ed2ab22eec888f620cb1da", + "index": "100644 c2b60259d95831503e35a0c67fbe6e3d0c4169f3 0\tsrc/cmd/keycape/clients_test.go" + }, + "src/cmd/lldap-export/main.go": { + "sha256": "sha256:f019a6dbb0849d06d5c3729874293d520478ca2887929a0595b59a324097ae75", + "index": "100644 daac6e986c48fcf2de9243ef78a40e0b88b9de4a 0\tsrc/cmd/lldap-export/main.go" + }, + "src/cmd/lldap-export/main_test.go": { + "sha256": "sha256:f105e490c717a414a5a3d1e65ceb4edcf74341ad7713b0accf8117a9b1ee02d2", + "index": "100644 5aa9a2bb1472931b7b9c798fbebfee45fe316f9b 0\tsrc/cmd/lldap-export/main_test.go" + }, + "src/cmd/lldap-to-ldap/main.go": { + "sha256": "sha256:adcc9481d009cad909bd55a71d95c17ce30e29ca63e88a7c9e8101b92d4b872e", + "index": "100644 c98b19b31f2c2be0124c88f001b33048a7221968 0\tsrc/cmd/lldap-to-ldap/main.go" + }, + "src/cmd/validator/main.go": { + "sha256": "sha256:e53b0a7860537dfb1cec69a00cdafe7073b35802421b5977f2fece4de01b9c1f", + "index": "100644 411272078c48cc52abce1007c0939528c66581fa 0\tsrc/cmd/validator/main.go" + }, + "src/go.mod": { + "sha256": "sha256:ab299ad4f94feb78e217e2228a4aa161b166460aa28df0c5009451ac1a337456", + "index": "100644 992c33f91d6b7f1244634cf583072f4bfbf73759 0\tsrc/go.mod" + }, + "src/go.sum": { + "sha256": "sha256:b10ad54277fb2bd927d3af727fc4dbb9ebe91a038a75be0469d0253ca699226d", + "index": "100644 d1f81c7aef0bb7c7892e9dd2131653661659bd0b 0\tsrc/go.sum" + }, + "src/internal/adapters/authelia/adapter.go": { + "sha256": "sha256:2887bd546f43a16338547dab5ce4a90850c670ed6f6c0d610a5d08c72c7f3f45", + "index": "100644 b78811acf78adad92d9a412c13cbb7aa86866468 0\tsrc/internal/adapters/authelia/adapter.go" + }, + "src/internal/adapters/authelia/adapter_test.go": { + "sha256": "sha256:d450b37e2b2405c189d444e50f0612e64177d6698cb4665a06ad967ae2224f93", + "index": "100644 81ac6205d8217509e6130b159c77e94291ca55a5 0\tsrc/internal/adapters/authelia/adapter_test.go" + }, + "src/internal/adapters/authelia/config.go": { + "sha256": "sha256:1b85ea3ffd324bced1ba108492ec780af8ba2b015d22cd51b294afaf36f2ec55", + "index": "100644 810f5b9387721058fb629a305d3aaf5254c65a12 0\tsrc/internal/adapters/authelia/config.go" + }, + "src/internal/adapters/authelia/issuer_probe.go": { + "sha256": "sha256:5846e2b514077a572611b898f449c04b096b086aeb724da055b2416994a7a7bb", + "index": "100644 082708a178b818d83632bfe31c77696c03530c60 0\tsrc/internal/adapters/authelia/issuer_probe.go" + }, + "src/internal/adapters/authelia/issuer_probe_test.go": { + "sha256": "sha256:a85e02399f8a5c81401dbf159e8054420bff56e08c8a98e8026cad8d31fcecec", + "index": "100644 7943c3f59d5c59aba5adaff9dab1af4d4055d635 0\tsrc/internal/adapters/authelia/issuer_probe_test.go" + }, + "src/internal/adapters/authelia/verify.go": { + "sha256": "sha256:189f9bc18b8d4319d2d88ee76a76e3b86468ebafde85ef460a4bafb7b350b4c4", + "index": "100644 7c85d3b9ea7d7843092b24d812807fb6b48755dd 0\tsrc/internal/adapters/authelia/verify.go" + }, + "src/internal/adapters/authelia/verify_test.go": { + "sha256": "sha256:f1570604d5038e49c14791f4d1aa278ad76a7e90294e82813d2c21e6a80a5511", + "index": "100644 d9003680dc01f3d709d938ff8843f0a96b8a69f6 0\tsrc/internal/adapters/authelia/verify_test.go" + }, + "src/internal/adapters/lldap/adapter.go": { + "sha256": "sha256:e7df7a159e9dd33a97932fd8cbde49a61091b8722796bf54ae4be887b4a3f5ef", + "index": "100644 e15cecd7c7ee83383745a367502bf6ab3d1280fe 0\tsrc/internal/adapters/lldap/adapter.go" + }, + "src/internal/adapters/lldap/adapter_test.go": { + "sha256": "sha256:650394ccc25d54c73c03746977a1880b1ed905634da8382da0ecf35843454081", + "index": "100644 e153314a0fc06e33ce8b957b66cc1838ee93a180 0\tsrc/internal/adapters/lldap/adapter_test.go" + }, + "src/internal/adapters/lldap/config.go": { + "sha256": "sha256:33059a27418b00e1987b7ced0b21dd39c1765338bf575fe2333ce3e606e5546b", + "index": "100644 fce760a4e97c94e1e542a4d2f0895a20c709fed9 0\tsrc/internal/adapters/lldap/config.go" + }, + "src/internal/adapters/lldap/config_internal_test.go": { + "sha256": "sha256:cbc71ce9a795b73c40b2714153eb2ee4d2e4007f7f56a7882eb862c23868cb68", + "index": "100644 d9e10ff898c19e85160e8b047f79a1d9daa797c7 0\tsrc/internal/adapters/lldap/config_internal_test.go" + }, + "src/internal/adapters/lldap/railiance_admin_test.go": { + "sha256": "sha256:63db481bb6e592e91bf4a555e75065fbd3bd8cd408a7967a4b7786e12bef5d5f", + "index": "100644 d76e938ebfc2f676d5dd0a0639707d1e7f4ebc08 0\tsrc/internal/adapters/lldap/railiance_admin_test.go" + }, + "src/internal/adapters/privacyidea/adapter.go": { + "sha256": "sha256:2559c68b5aa22bc5f61961e47d696b376f8bede533be03715ffc80c0d89ed904", + "index": "100644 35e65335a00ead963c3cd8e95e1b94a5b34e6a5a 0\tsrc/internal/adapters/privacyidea/adapter.go" + }, + "src/internal/adapters/privacyidea/adapter_test.go": { + "sha256": "sha256:6257489b9c51270da2c96f165c0efd1750b273218df51dca907d29c64c98b349", + "index": "100644 286562d56a3f263df68f34eb35bf68b6581688da 0\tsrc/internal/adapters/privacyidea/adapter_test.go" + }, + "src/internal/adapters/privacyidea/config.go": { + "sha256": "sha256:8dd769b18c04c562714794484630acdbda81b34ab1cfaf9cc7445513207e5021", + "index": "100644 b34c9f3d19109a7a0acc309c27639ce913f1e751 0\tsrc/internal/adapters/privacyidea/config.go" + }, + "src/internal/adapters/privacyidea/credential_file_test.go": { + "sha256": "sha256:9db15562c6fdf01e0806bbc478915413b17adb63c7e9ba213acfc4f9b2b2f0b6", + "index": "100644 017315272e6baa1151d4e73912b19c3bb8ca377b 0\tsrc/internal/adapters/privacyidea/credential_file_test.go" + }, + "src/internal/adapters/privacyidea/enrollment_state_test.go": { + "sha256": "sha256:dcf24c486629fa4835cddaa786af31ec78c05907694d4d93bce0f32876806377", + "index": "100644 6f3b883c0c7eced42bfdbe45713b1be5dadf0bc9 0\tsrc/internal/adapters/privacyidea/enrollment_state_test.go" + }, + "src/internal/adapters/privacyidea/optional_mfa_test.go": { + "sha256": "sha256:e2e415c671d1d0e7f30a0ce22f5ec58914d8e366b12e445e13b1d645a9ca6a65", + "index": "100644 13316d5ffada681a8f956b519f5a3d6ef94c3233 0\tsrc/internal/adapters/privacyidea/optional_mfa_test.go" + }, + "src/internal/adapters/privacyidea/read_scope_test.go": { + "sha256": "sha256:4685e1b84dad044db12708ecd231d4f91ec22ac45901ed2b5177e3be17d8cdc3", + "index": "100644 964fbb76048c44616d56b7da916d44c6b86432f0 0\tsrc/internal/adapters/privacyidea/read_scope_test.go" + }, + "src/internal/adapters/tenantengine/adapter.go": { + "sha256": "sha256:a54ef12fafd2efc24c547d562e0a558a7ecef586394e79f7de345dc8cbbbbef3", + "index": "100644 eeb54b9f0b7e1b9776fc37ecfc36599bbf07026a 0\tsrc/internal/adapters/tenantengine/adapter.go" + }, + "src/internal/adapters/tenantengine/adapter_test.go": { + "sha256": "sha256:b9c2db04bc187e6e6e56d4a42d4e657b9e56fef06843500fb4640477dee553e0", + "index": "100644 d437fd14dcfffa53999b16849888a86c553d0a42 0\tsrc/internal/adapters/tenantengine/adapter_test.go" + }, + "src/internal/authclient/client.go": { + "sha256": "sha256:61fb150349c5d3714450a90834c59af9a579a8a649c4149297a402cfcf6e39c5", + "index": "100644 0d39586235d89aa8097d76b7d210331e4a53083f 0\tsrc/internal/authclient/client.go" + }, + "src/internal/authclient/client_test.go": { + "sha256": "sha256:23642488fcff45e369d22ba0000c47e0e450c5f92560e643ab96303e2a2f43aa", + "index": "100644 dfce39882584ab7f37ecb9878d6b1801b74d9a4c 0\tsrc/internal/authclient/client_test.go" + }, + "src/internal/authclient/verify.go": { + "sha256": "sha256:804735be927ba7d0228ac378056730040d3ccf2ed020b4da0714085bae972f25", + "index": "100644 66b0ea4961b3573152c491f597fad3e02ea59a1a 0\tsrc/internal/authclient/verify.go" + }, + "src/internal/authclient/verify_test.go": { + "sha256": "sha256:7febc6698c87eac5fd8d2520c4f77c68e82f18a2aafa448cfa4990b96fdc46fc", + "index": "100644 a2a824f02554f0645a543934ee33419dca429085 0\tsrc/internal/authclient/verify_test.go" + }, + "src/internal/config/account_test.go": { + "sha256": "sha256:c6b75097d14dd42415c836407fa2a509857cdd2b771fb7e53d4507cbad2f4b1d", + "index": "100644 f28ad987f862203708795498947229df9de3757e 0\tsrc/internal/config/account_test.go" + }, + "src/internal/config/config.go": { + "sha256": "sha256:19cd234757f8908880d28b8b40939367dfab1322e0401e4e563d56cd3af06683", + "index": "100644 6376708a25cb5c5a3521d866dbe8323fa55455a8 0\tsrc/internal/config/config.go" + }, + "src/internal/config/config_test.go": { + "sha256": "sha256:af8602010985a0a5a6b4b2bf779f824e7eb5141e6bc2e8d8fcf600b964955100", + "index": "100644 d4236a6d45fa57b865b0983b395c6e9b3974105b 0\tsrc/internal/config/config_test.go" + }, + "src/internal/config/optional_mfa_test.go": { + "sha256": "sha256:03a00bc309943adbed68bdb9bf47facb6b3b50ef380fd49143b5ed54d684f63e", + "index": "100644 585aa6243370bb60a94506f5fa670516959c12b0 0\tsrc/internal/config/optional_mfa_test.go" + }, + "src/internal/config/token_status_test.go": { + "sha256": "sha256:b2b2ec13215c9661d79142ea698cb8b080f6e017de050bedebf3eb8d16df2ad5", + "index": "100644 0d1278d17f351df7b6d5ec379f858faebcaaaeba 0\tsrc/internal/config/token_status_test.go" + }, + "src/internal/config/validate.go": { + "sha256": "sha256:2b1766979b817802f43bdd0f999ac61452d86cdfafc1539a5d6be896b900a405", + "index": "100644 8df815142b95731f9bd95f5d519536ba0aa2c9b0 0\tsrc/internal/config/validate.go" + }, + "src/internal/domain/assurance.go": { + "sha256": "sha256:d3a29ece7c4fa4d9daa8b5fda89cbe0dd1ffef2ee2ecae0051ee68010edb8fd7", + "index": "100644 afbc48c673df6fe76ed3f2fa2aea492e476ec37b 0\tsrc/internal/domain/assurance.go" + }, + "src/internal/domain/assurance_test.go": { + "sha256": "sha256:87680e7afd47294dadc13092ca2bb7c47b9625c80e48a701765c00df3293d755", + "index": "100644 b9096ef7c09da6a413ed392c751799b3bb1b72bf 0\tsrc/internal/domain/assurance_test.go" + }, + "src/internal/domain/auth.go": { + "sha256": "sha256:ae800c5b1f58408147dd28a5c87ab2603b1537500a289397e711a4cb0e132cee", + "index": "100644 66c907c367651b193559701c2da564aea6757ae8 0\tsrc/internal/domain/auth.go" + }, + "src/internal/domain/conformance_test.go": { + "sha256": "sha256:6420ec21d4e7a97f60902e1f0debbaf20df91aeac6ab110629b82a67f4c5c9a1", + "index": "100644 5984835dd46da65b095829e05948f841554f733f 0\tsrc/internal/domain/conformance_test.go" + }, + "src/internal/domain/mfa.go": { + "sha256": "sha256:1b7875b08a0f280a20a14a4fa4fdb4fc84c3942795b1d1417943d32634121b87", + "index": "100644 30b0a92d9444324cdf67df1e856feb984385c29e 0\tsrc/internal/domain/mfa.go" + }, + "src/internal/domain/model.go": { + "sha256": "sha256:ce4309fc7426c66e4ebc18022d2f704c10ebbec243cc98e657d1de765ad09029", + "index": "100644 1cfda5371fe0c6eec07329b4990d3c6a105e92ee 0\tsrc/internal/domain/model.go" + }, + "src/internal/domain/repository.go": { + "sha256": "sha256:28f6d8f7f3d822e73f164af5e877f252db7dc6faa97f0ebf75d76aad64078011", + "index": "100644 56252d821062128e3323a0cdca1064d292a97898 0\tsrc/internal/domain/repository.go" + }, + "src/internal/errors/taxonomy.go": { + "sha256": "sha256:7d60f30a4ff0c9a21a3942451eb0292320a6346d3d81508e414a7dfbdc3c666c", + "index": "100644 80ebf0763538369dff67abd3a17c6269022f5e2e 0\tsrc/internal/errors/taxonomy.go" + }, + "src/internal/errors/taxonomy_test.go": { + "sha256": "sha256:6c0bdf1f8e90ea343d88f57f80f6c916c92428a9ac2191a518ee7b70df0eed45", + "index": "100644 2f5722e94e982c71b008b7f4c522d500df76a0e1 0\tsrc/internal/errors/taxonomy_test.go" + }, + "src/internal/jose/jose_test.go": { + "sha256": "sha256:cbbcbac620b27c8e93d9dc3fefc3ca4fcd20ab58c6bc8f79eb041b980aaa9a43", + "index": "100644 34abfa36f8dd355df7713eb940b269f785805402 0\tsrc/internal/jose/jose_test.go" + }, + "src/internal/migration/lldapexport/exporter.go": { + "sha256": "sha256:cb041827c9c0edf9da1338e966e7722e3765065582933b8c17b0d9008d44d103", + "index": "100644 4119e8a8950a8461c5fe5cb4944af498df5df84f 0\tsrc/internal/migration/lldapexport/exporter.go" + }, + "src/internal/migration/lldapexport/exporter_test.go": { + "sha256": "sha256:6f5cf0e43ea8aea9ceeb6d4d3ae0bfd9f3a5d18636dd49bea0c574c5253a44c2", + "index": "100644 e9071d133a6f3fbd2421d3d0dd9fc8a051d61693 0\tsrc/internal/migration/lldapexport/exporter_test.go" + }, + "src/internal/migration/tokeycloak/transformer.go": { + "sha256": "sha256:856e26fd2075f020ef02373b5b7e9e5a1e98473b5caca95b60b7983287fc10aa", + "index": "100644 4666a2b8579e73f76bd4ccf4518cdd9818035e2a 0\tsrc/internal/migration/tokeycloak/transformer.go" + }, + "src/internal/migration/tokeycloak/transformer_test.go": { + "sha256": "sha256:5c3f5145a37079262db805f5bedaabe1d42edf2ccec1788c09c02f5b8336639b", + "index": "100644 50dee2c66b1922e2d109ca963592fe3a0bf9711c 0\tsrc/internal/migration/tokeycloak/transformer_test.go" + }, + "src/internal/migration/toldap/generator.go": { + "sha256": "sha256:e59ba05203145f52818b3f4e34ab62126481faa9dde697f643fc1cda0638bb46", + "index": "100644 fd21830fd2299a401000bb418946d107bbefa1ee 0\tsrc/internal/migration/toldap/generator.go" + }, + "src/internal/migration/toldap/generator_test.go": { + "sha256": "sha256:73b0969ce2e2cb018aa5734714c86152d1695f0099a5caf7dd96b773717fc2cc", + "index": "100644 5ec399dca0db878f3d5fab76504947635770727d 0\tsrc/internal/migration/toldap/generator_test.go" + }, + "src/internal/server/errors/enforcement.go": { + "sha256": "sha256:f644546b1423992518fc4078ab561ab68fea1fcff00b734795af6652ae3dd4e2", + "index": "100644 81fd2c8d24016adb626f7a88b442361cf6197124 0\tsrc/internal/server/errors/enforcement.go" + }, + "src/internal/server/errors/enforcement_test.go": { + "sha256": "sha256:b4ea0c9a3aaebd66b0b0fcc73f544c76d5a377ac0c9561ccc2638a236844374c", + "index": "100644 0f8384bc5a147905ea99f33d1a4e573c7a85387e 0\tsrc/internal/server/errors/enforcement_test.go" + }, + "src/internal/server/oidc/account.go": { + "sha256": "sha256:b0e36d8cb5f9b1bf4cee573e46b204800c0e3162a912a122b271def4712ab72a", + "index": "100644 7036039edd2837cb22e804b60633b2425a5fb817 0\tsrc/internal/server/oidc/account.go" + }, + "src/internal/server/oidc/account_test.go": { + "sha256": "sha256:db1f7b8a2989b1d0deffee205ec9f4f35c7472135dcb8a10b5498893d881d763", + "index": "100644 1a2d68f1008418e138a6c2d293f2afda017c5ba5 0\tsrc/internal/server/oidc/account_test.go" + }, + "src/internal/server/oidc/assurance_time_test.go": { + "sha256": "sha256:911f65e8cea87ef867d6bf98199ed55abd29427b9f8d0838977d228e6186b08a", + "index": "100644 72ad579561c84e9ed99da98dd86ca472880ff123 0\tsrc/internal/server/oidc/assurance_time_test.go" + }, + "src/internal/server/oidc/audience_test.go": { + "sha256": "sha256:1b751e1aafb5dbdcb751b42b001e32ddfaccfa3d5ba9d5af67b44148d9802ae3", + "index": "100644 fb5b1f41c0619b7ea6d72c231aec2027769f7f77 0\tsrc/internal/server/oidc/audience_test.go" + }, + "src/internal/server/oidc/authorize.go": { + "sha256": "sha256:04f9bfb6b146ecf869161b7a0eb00b6486f424710c2c867e4f4b70af5f44ff5e", + "index": "100644 60447bc9cd056c2119b1611e38585bc81884a568 0\tsrc/internal/server/oidc/authorize.go" + }, + "src/internal/server/oidc/authorize_test.go": { + "sha256": "sha256:61042d55e20a11fb6e1e9e6c054e50c0f629b702ed6d8da281d52529e5c29b0d", + "index": "100644 434b51089fe92497644cdc4504f765f75c21f542 0\tsrc/internal/server/oidc/authorize_test.go" + }, + "src/internal/server/oidc/discovery.go": { + "sha256": "sha256:00e4c831a2b4d29aecf3597a09c943315b87c5834dbcd4912ba5d8d31ab28cd5", + "index": "100644 6291c51c64f044a624680afeb3ee408b57ed92b1 0\tsrc/internal/server/oidc/discovery.go" + }, + "src/internal/server/oidc/discovery_test.go": { + "sha256": "sha256:2d0dc24d59497aa5a9aa581f8fd3d9cca300d7e0cb4962907630570d60e7e7f0", + "index": "100644 f2d069d54f67ac1cad061e53687a44ab0c1648ba 0\tsrc/internal/server/oidc/discovery_test.go" + }, + "src/internal/server/oidc/handoff.go": { + "sha256": "sha256:a2ffede12c9140a6c7d14632122a39ffbd0e707cd357dcc11d3ad885dc2a7fa4", + "index": "100644 31954ca4dd03ccc36d9da03d5734ac029d46c9ce 0\tsrc/internal/server/oidc/handoff.go" + }, + "src/internal/server/oidc/handoff_test.go": { + "sha256": "sha256:23268b7f9f103f8a8798a168004580bc8fdb3a175161220dac26480a89f28e02", + "index": "100644 d8a33fb4e5f90f92e7acab2f198c540d39cfdebc 0\tsrc/internal/server/oidc/handoff_test.go" + }, + "src/internal/server/oidc/hardening_test.go": { + "sha256": "sha256:b41d6a987d5507d5160d970d0f2110ce681851fca1f4f7a3a9573163e8cd6f3e", + "index": "100644 d73a3ffcd40558731fb4fac2c66ff0588c0969f5 0\tsrc/internal/server/oidc/hardening_test.go" + }, + "src/internal/server/oidc/human_tenant_test.go": { + "sha256": "sha256:459664f90d76224958b3dd807d95d7bfcf0fce5f113498bd9886a41be19903a5", + "index": "100644 187bd993cb85369ada263c734bd4e7daec5bbb73 0\tsrc/internal/server/oidc/human_tenant_test.go" + }, + "src/internal/server/oidc/jwks.go": { + "sha256": "sha256:426d6596979ed6d097d6aaae66b6475d1c97687888c6ab1050c05cb14653ec60", + "index": "100644 e74bd2e4a219c25aefc781841e73eb219e0945a5 0\tsrc/internal/server/oidc/jwks.go" + }, + "src/internal/server/oidc/jwks_test.go": { + "sha256": "sha256:9100e83e58ce2cc2f6d2f47804ee0ce035ca424b209597a12c4ef1a8896163aa", + "index": "100644 1fd53f19e6c8a131a639d780bea7e1c0c609930a 0\tsrc/internal/server/oidc/jwks_test.go" + }, + "src/internal/server/oidc/login_session.go": { + "sha256": "sha256:efb0fcd066d81d753b7043c9c3d9e74e35cd510ca4304d21a51ba29dec833e1f", + "index": "100644 7953f06b4948162868166a8ffafef36b2445509b 0\tsrc/internal/server/oidc/login_session.go" + }, + "src/internal/server/oidc/logout.go": { + "sha256": "sha256:d4de80f8056e7a65c7a41f244dd38e447a4e04df729760a8a59cb6bb4e063893", + "index": "100644 496d237a3f642ac94c869f0dc3438d9a2e262b9d 0\tsrc/internal/server/oidc/logout.go" + }, + "src/internal/server/oidc/native_optional_test.go": { + "sha256": "sha256:329907bf7089d8f3ea05baad919d05677b8c3aaa201e6f233795ae9f69c003b5", + "index": "100644 47d4df2dee47489a0923df57fe654be87edf2b12 0\tsrc/internal/server/oidc/native_optional_test.go" + }, + "src/internal/server/oidc/optional_mfa_test.go": { + "sha256": "sha256:d758848d845c181cf1b18710e6ca24977f6b7576320dcad1f7293a5433c3b529", + "index": "100644 2f8eecda6f29cf3d31177ec3b7ec3650a871b555 0\tsrc/internal/server/oidc/optional_mfa_test.go" + }, + "src/internal/server/oidc/policy_isolation_test.go": { + "sha256": "sha256:35cb9870f5942c61c0e8c6ca875e9080bbd71c46c7b20fb18da01be88e0fa077", + "index": "100644 221ed02325c872a7947e798607da236f15d7d6e3 0\tsrc/internal/server/oidc/policy_isolation_test.go" + }, + "src/internal/server/oidc/policy_runtime_test.go": { + "sha256": "sha256:856146013d2aaa60836e669c297024923ed8e2856d31a89744a99baadae4a74a", + "index": "100644 c70d6a4a7d78abd6c0911776f8857ddedb7858bd 0\tsrc/internal/server/oidc/policy_runtime_test.go" + }, + "src/internal/server/oidc/principal_type_guard_test.go": { + "sha256": "sha256:b3fa097691f07594616e09e8775512d586a019ccdf8302bf594c1ac94f5f3f40", + "index": "100644 d1c9a9660f3e5fe6c878657957ce6bd7db175c6d 0\tsrc/internal/server/oidc/principal_type_guard_test.go" + }, + "src/internal/server/oidc/session.go": { + "sha256": "sha256:48473ebe123285ed21e7738834d9d9168dfc855d911cb9e7ce7e87b069a23a3c", + "index": "100644 15d759c148e72d4a84df18a3d62db1c6838d1be5 0\tsrc/internal/server/oidc/session.go" + }, + "src/internal/server/oidc/signin_diagnosis.go": { + "sha256": "sha256:b7976a1cfe1d8d1dca890cf0762cc82d08978a2e7537e45988b147ed0222042f", + "index": "100644 ba82ee4b244e241d8d156e05315d8b71626b1cef 0\tsrc/internal/server/oidc/signin_diagnosis.go" + }, + "src/internal/server/oidc/signin_diagnosis_test.go": { + "sha256": "sha256:97e80be67c480dfe8eef0683f25868a91a0fdc96472b5296b734b56274270b3e", + "index": "100644 72a1b3518b8824da04d1bf87bd4d73dfa1a7a934 0\tsrc/internal/server/oidc/signin_diagnosis_test.go" + }, + "src/internal/server/oidc/tenant_precondition_test.go": { + "sha256": "sha256:2f2c0d90d26da4e3a6c9145aec8c9d7121c791b6b993c2fe8893a763a30fa72f", + "index": "100644 a955146312249d526fa7fedefd085c1140399ac0 0\tsrc/internal/server/oidc/tenant_precondition_test.go" + }, + "src/internal/server/oidc/tenant_test.go": { + "sha256": "sha256:8a3879789589f0c3d6e473ba56dd7d7c86ec6fbdddaafa4b13354f82d5f88713", + "index": "100644 1517610493b1e91c16f9bfee5fd63361be2d7992 0\tsrc/internal/server/oidc/tenant_test.go" + }, + "src/internal/server/oidc/token.go": { + "sha256": "sha256:304fa78d79a5436b9174d88991c19c0834356cb5425c6ed369accb85467a402f", + "index": "100644 0ab22567fc48e3d00c5e4fc21d6dd2a4c75a264b 0\tsrc/internal/server/oidc/token.go" + }, + "src/internal/server/oidc/token_status.go": { + "sha256": "sha256:d9c22a71bb2efad7ea240f2689a98f14768ce3c1519d1d8b4e78ee7af2dc70b3", + "index": "100644 34792f4d5ec77ac3c5d6032e70b86254ab7f0613 0\tsrc/internal/server/oidc/token_status.go" + }, + "src/internal/server/oidc/token_status_discovery_test.go": { + "sha256": "sha256:27adb5797afba46ca2b1f16018721f055f82760498088b58b993730be1fa2031", + "index": "100644 bf8ca629c8f370921858724f3b7bba7c94ee4ae1 0\tsrc/internal/server/oidc/token_status_discovery_test.go" + }, + "src/internal/server/oidc/token_status_http.go": { + "sha256": "sha256:a7202d3176454f8ab42c090426e2debcb5cc2c1fc089e79746bb78e5c455af97", + "index": "100644 5bd916116fda33a576faa685eaa84240da570094 0\tsrc/internal/server/oidc/token_status_http.go" + }, + "src/internal/server/oidc/token_status_internal_test.go": { + "sha256": "sha256:3d3ab41987c7586bd53af8b5c36ff6667b5b2a32d59789915eb9a36b7ceeba53", + "index": "100644 3fe725cdc637883c5ead5d699e00661b0a14fe4f 0\tsrc/internal/server/oidc/token_status_internal_test.go" + }, + "src/internal/server/oidc/token_status_test.go": { + "sha256": "sha256:e2613d44deefcbfbd0ce1db5ce2588849fb4be9b8bed33cb538171cc29f63e90", + "index": "100644 deb3f5298b2881e01c55e4d4594fc40893341897 0\tsrc/internal/server/oidc/token_status_test.go" + }, + "src/internal/server/oidc/token_status_transport_test.go": { + "sha256": "sha256:3a9945f0292125e86d0014b5245a20c0475d6c518eccff0f9b936356d8e0b347", + "index": "100644 8bd0a163e497f59c90b54e0d65239fa1492ba5bd 0\tsrc/internal/server/oidc/token_status_transport_test.go" + }, + "src/internal/server/oidc/token_test.go": { + "sha256": "sha256:5721617c6e5eb79a3b5e86efa63e9278a8d81a0d7c01bf7b184255c102848e33", + "index": "100644 42314ec0fe6c254c3b29c4f859e090f18b316f21 0\tsrc/internal/server/oidc/token_test.go" + }, + "src/internal/server/oidc/userinfo.go": { + "sha256": "sha256:f9c986f7a2c79f27a9970a296e6b493014fed77af2f22ba96c4a457d049c916f", + "index": "100644 4e469561910e5a08882f99f95e77c8b51777910e 0\tsrc/internal/server/oidc/userinfo.go" + }, + "src/internal/server/oidc/userinfo_test.go": { + "sha256": "sha256:e88c42c7cdf50d5953c9f594f0b99b4f87f5e223ba1cb44b70d696972016da80", + "index": "100644 5a12f5e898c8f4526d505404eed14e6f466ca7d7 0\tsrc/internal/server/oidc/userinfo_test.go" + }, + "src/internal/server/policy/policy.go": { + "sha256": "sha256:015d0b42419c501a46171d09a8f7d588dd517d4c98ad14344ff52113294e0fe7", + "index": "100644 29167da1dbb2b3a9d2e74f5f0319e0902d4173a3 0\tsrc/internal/server/policy/policy.go" + }, + "src/internal/server/policy/policy_test.go": { + "sha256": "sha256:25644557ca532b608dff4e02b202c5c3b7c423fb31e98ad0609febf3660183a2", + "index": "100644 4becee709136b31735eeeab3f1b6b1875de4407e 0\tsrc/internal/server/policy/policy_test.go" + }, + "src/internal/server/readiness/readiness.go": { + "sha256": "sha256:ffe22b99633b1aa50fc299371398ec0f3fc090c9c8a5f4957c6bfa76b001d073", + "index": "100644 e0cfefbf7c014370890470fc42850c3b3a879daa 0\tsrc/internal/server/readiness/readiness.go" + }, + "src/internal/server/readiness/readiness_test.go": { + "sha256": "sha256:10163e0b1d2f41f336d61782c3bfffdd1116a8459247cc933ffb40be645184c6", + "index": "100644 02cf96ed77554ce25eb4f62e54c00b02cc0089a5 0\tsrc/internal/server/readiness/readiness_test.go" + }, + "src/internal/server/telemetry/emitter.go": { + "sha256": "sha256:e92f008b6a487a47b8ee2b98011a3a5b821838a61be9c4db4d56cda600e6fda0", + "index": "100644 ff11c05a76db4692e1de6d9ba19f5dc5d45ed2e8 0\tsrc/internal/server/telemetry/emitter.go" + }, + "src/internal/server/telemetry/emitter_test.go": { + "sha256": "sha256:29fae2460deb7219eb8edc725b3701a02d2b341fee62bffb2661a520f5a7381a", + "index": "100644 3d64e3d148536f96bddecd228c7eba6711194780 0\tsrc/internal/server/telemetry/emitter_test.go" + }, + "src/internal/server/telemetry/events.go": { + "sha256": "sha256:3f9df9822649ae2701c3bbf475c8e6d600bc60b7ccdea4d0e54193162d5b0167", + "index": "100644 793b79bcef80638f2c182645cba9773c17c1550c 0\tsrc/internal/server/telemetry/events.go" + }, + "src/internal/validator/report.go": { + "sha256": "sha256:6bc4d31f932ea9a32020cf33203978906730dfe3601350ded0206ff6c8c297a8", + "index": "100644 87baa854418f0a6617579e6566aa84217134c6e2 0\tsrc/internal/validator/report.go" + }, + "src/internal/validator/validator.go": { + "sha256": "sha256:3d0a8bf8ebbe54e21e162c8f7df6e4a4d69ab997a01969b74dcbd53decdf559f", + "index": "100644 78eb866cef192174b0a29f151eac64f4adc85472 0\tsrc/internal/validator/validator.go" + }, + "src/internal/validator/validator_test.go": { + "sha256": "sha256:8216027a464eab4167d8e87b4d27d130854d7b9cd4cc8a1b6f1a47ff1f9a2276", + "index": "100644 a86eff31eb55d9cda811adc3508b44e82f6b2eba 0\tsrc/internal/validator/validator_test.go" + }, + "src/tests/conformance/external_test.go": { + "sha256": "sha256:b26bd465e31086f957c9e374b6bee1f0f077b7481eda9daa29cf63816bb87fdb", + "index": "100644 75cddf3602a0dbb1d29162db1df187e43e3d4568 0\tsrc/tests/conformance/external_test.go" + }, + "src/tests/migration/fixtures_test.go": { + "sha256": "sha256:3fbcb8f531fa206225f719a67b744b2ecb908095fbae0538432796697971e6de", + "index": "100644 208e903a6377e3b894595de8c97248ba96e3dbb3 0\tsrc/tests/migration/fixtures_test.go" + }, + "src/tests/migration/scenario_b_test.go": { + "sha256": "sha256:40ae7239d116f3e284c767570d39e1f32d44fc29b6fa37ea8835987027942ac0", + "index": "100644 8a49ddec84f156a2ef0badf8f78d292243b7a5dd 0\tsrc/tests/migration/scenario_b_test.go" + }, + "src/tests/migration/scenario_c_test.go": { + "sha256": "sha256:9722146ac224768aff85476acbd83f3d478c1e060e5a3c6f99b1786858879b80", + "index": "100644 bf0a61a1c7e00fd6f3e919529603c5c7461f4a69 0\tsrc/tests/migration/scenario_c_test.go" + }, + "src/tests/negative/negative_test.go": { + "sha256": "sha256:757485bf1967ed95e872d4a1987b7fd985fbffccd05cf41270b9f4061431de3f", + "index": "100644 377b0f33da592cfbc7eeb9bc74025280ce553a6d 0\tsrc/tests/negative/negative_test.go" + }, + "src/tests/profile/profile_test.go": { + "sha256": "sha256:e5ab4568b15f681a13c9295b17907ca3872ee33b702bb56aea749f17758d29e6", + "index": "100644 8b802f71346bf27a58ae73877fa594be0557b396 0\tsrc/tests/profile/profile_test.go" + }, + "tools/register-informed-decision.py": { + "sha256": "sha256:c606e58d3fd3e305fe8e932907f341447b2d2e41dd1b11f1d008672e9271299d", + "index": "100644 9192fd9cde67896f741cf67dccd48d2250d6ad27 0\ttools/register-informed-decision.py" + }, + "tools/rotate-live-exposed-secret.sh": { + "sha256": "sha256:c9505e529fc7baa5b6aded0ed2d260af13a7238e8059e9c2a759e3bba7a35833", + "index": "100755 0dcb542eeb16827ccb0d0f05b6e302f6af1693e8 0\ttools/rotate-live-exposed-secret.sh" + }, + "wiki/KeyCapeSpecificationPack_v0.1.md": { + "sha256": "sha256:0001a2964627c0d1ba0fe0f4ac3cc18b87a4536e6ac75e9b2539e844cbb716f3", + "index": "100644 4b728fd406c815143f302a76512858d3577e6aca 0\twiki/KeyCapeSpecificationPack_v0.1.md" + }, + "wiki/KeyCapeSpecification_v0.1.md": { + "sha256": "sha256:a76de79a37ac799192af2351d929a85cbf13c62ca37cf8b86c589b773a48259c", + "index": "100644 c803cabd2342689c3123e71b8773edb8a972125d 0\twiki/KeyCapeSpecification_v0.1.md" + }, + "workplans/ADHOC-2026-09-05.md": { + "sha256": "sha256:76123d22d0c1efc51212f8914e386f078b3c6d908959af6978ae73874e492b04", + "index": "100644 f7e78675df62c9b48e29f882fa99298d6d8ce7f1 0\tworkplans/ADHOC-2026-09-05.md" + }, + "workplans/ADHOC-2026-09-07.md": { + "sha256": "sha256:c335ebfe91dad291277e8f17034ac8f785b3bc767f281f205c446c08f03d7978", + "index": "100644 17401073c053c9710e6e680243bbd313b08d1fc1 0\tworkplans/ADHOC-2026-09-07.md" + }, + "workplans/ADHOC-2026-09-27.md": { + "sha256": "sha256:f6220f17fc5b6e7300d0a55ac29f78f385ad89db276ccaa21693428fffa5919b", + "index": "100644 a2068333f7964360e0e0b99cffc03bd3eb644a67 0\tworkplans/ADHOC-2026-09-27.md" + }, + "workplans/KEY-WP-0001-keycape-implementation.md": { + "sha256": "sha256:29a2bf4892b7185e28e9126a3d8311d0fed34a876f416a3e75c605915fde0969", + "index": "100644 74334411cd056e7c7253e84f1c4b40c42eb13de3 0\tworkplans/KEY-WP-0001-keycape-implementation.md" + }, + "workplans/KEY-WP-0002-container-image-gitea.md": { + "sha256": "sha256:76fee187185b30219bc257ccc9b587661df4489574a2bb57703a365a5d803cec", + "index": "100644 418f477c0ede13d7c003d744abf234347f5d5e31 0\tworkplans/KEY-WP-0002-container-image-gitea.md" + }, + "workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md": { + "sha256": "sha256:5e949c696e587540d305b682eb1f8390ec544bbec6a566be8d04e73fb1b254ca", + "index": "100644 9896c67d78f0efdd03325535eb41295250be3a19 0\tworkplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md" + }, + "workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md": { + "sha256": "sha256:260ba7d3116db3bc5a72e5cd8b9984137e7e372c8128d21073614dbd948c10c2", + "index": "100644 a50e910558ee43073c92cb27865a1aceac990dd5 0\tworkplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md" + }, + "workplans/KEY-WP-0005-iam-profile-core-claims.md": { + "sha256": "sha256:c6702b644cdd046c0d3bba8ba8837050826e4dc3d855bd73327ae94218ba5b57", + "index": "100644 648d2405699dcf25b3121df6c46d871597100d7b 0\tworkplans/KEY-WP-0005-iam-profile-core-claims.md" + }, + "workplans/KEY-WP-0006-client-credentials-service-tokens.md": { + "sha256": "sha256:b3227849978c95cad89e02afb74bf2217b6188ae65c5b0af6a21703d65477701", + "index": "100644 632c4c2cad39cbde55c2ae1f2ba5ecf2f445b1a0 0\tworkplans/KEY-WP-0006-client-credentials-service-tokens.md" + }, + "workplans/KEY-WP-0007-user-engine-portal-oidc-client.md": { + "sha256": "sha256:5408ff6dfeb58a8a7756b48fe4f54f7c7b98d7940cb9aaa5c7864f1247e58150", + "index": "100644 f1b04e1a61b398426c23d8d9ca655b3937d7bd10 0\tworkplans/KEY-WP-0007-user-engine-portal-oidc-client.md" + }, + "workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md": { + "sha256": "sha256:bfc9b2118f0712e92a86bbb0f14a2857fafc3a42a3c14c0e2535002aaa57a2f5", + "index": "100644 438ab5480de3bd66d75b6ec7e09639d1b93e3e5f 0\tworkplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md" + }, + "workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md": { + "sha256": "sha256:d1daac9815930104a392ea96c14922e34f947720a31d1b0ac45a770997e0f476", + "index": "100644 c9e585db65424c7c4e3b5adf37a68de2bdfbdc1c 0\tworkplans/KEY-WP-0009-provider-capabilities-and-service-identities.md" + }, + "workplans/KEY-WP-0010-openbao-operator-loopback-callback.md": { + "sha256": "sha256:41d28a16bef9313b776c5c6305316a9e7d4f5528b7fb7427b8384a0ed0ad35c4", + "index": "100644 81614eeb8c98205d6e5eb3201da10e36b76a21e9 0\tworkplans/KEY-WP-0010-openbao-operator-loopback-callback.md" + }, + "workplans/KEY-WP-0011-live-secret-exposure-recovery.md": { + "sha256": "sha256:3c5458180fe81a04e357f8db737e4287f79640b5ab02682bcadc595b73f846cd", + "index": "100644 f7b906f552f6e3279895a90afbe216b6e78ee5ff 0\tworkplans/KEY-WP-0011-live-secret-exposure-recovery.md" + }, + "workplans/KEY-WP-0012-userinfo-canonical-subject-resolution.md": { + "sha256": "sha256:68d34d75c914e7d2d8177000e800d6372cccda2b850c03ab85da42b90a66b91c", + "index": "100644 0f3deb626e5de9a9f898754ef81d3f2ee5282792 0\tworkplans/KEY-WP-0012-userinfo-canonical-subject-resolution.md" + }, + "workplans/KEY-WP-0013-approval-engine-resource-audience.md": { + "sha256": "sha256:55c88bf4ed9a456db59b319bbaf960dfe6f4147437e339f950e0583d7582057a", + "index": "100644 7d77aee3caf3d79fe6d6c1369249c6d94e0ae123 0\tworkplans/KEY-WP-0013-approval-engine-resource-audience.md" + }, + "workplans/KEY-WP-0014-native-credential-lane-handoff.md": { + "sha256": "sha256:22aac43ae5039aebd11f9f0aa57a882ad009ad6ed119ec08eb85b32a5af48cd7", + "index": "100644 bacf04c07f59125a90c519d3c306a7414cb9a1a3 0\tworkplans/KEY-WP-0014-native-credential-lane-handoff.md" + }, + "workplans/KEY-WP-0015-scope-intent-assessment.md": { + "sha256": "sha256:60b9f2265eff880d916c3ee8dba36aec9984ec310804de776cebf89cc98fdb95", + "index": "100644 82b952a216346ffb7f5cab413623fe4a88f7700e 0\tworkplans/KEY-WP-0015-scope-intent-assessment.md" + }, + "workplans/KEY-WP-0016-authorization-code-protocol-hardening.md": { + "sha256": "sha256:ed48128a1cb51cbe3d154727bafd5a5ffb3b5b618c20649b2a0e7db154cf3a0c", + "index": "100644 52839bd0f83d97656c8ad97a8ffc338d9019239a 0\tworkplans/KEY-WP-0016-authorization-code-protocol-hardening.md" + }, + "workplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md": { + "sha256": "sha256:8700e0e5aa07dcd7f651e792cca12a0330b7ee9d2f6064b4cc3fcf4c7d509340", + "index": "100644 00eb03971aae75724afbf7b8a4946ce6b7eda3af 0\tworkplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md" + }, + "workplans/KEY-WP-0018-export-completeness-evidence.md": { + "sha256": "sha256:15026b708d116f803b0b2fa43f30a4dbced76e4d8137b5fcb5b4275e593d7c7b", + "index": "100644 325fc483d62dbad53b92b986de56112168a92b4a 0\tworkplans/KEY-WP-0018-export-completeness-evidence.md" + }, + "workplans/KEY-WP-0019-upstream-provider-token-verification.md": { + "sha256": "sha256:0d2d8b5bda1e0d333935812d8d3749cb7b0c5523a3987d1b26185f9f6d0f0fa2", + "index": "100644 dfeb92296f46d4ce2ac7df1fedcc61e9ccc5d6b3 0\tworkplans/KEY-WP-0019-upstream-provider-token-verification.md" + }, + "workplans/KEY-WP-0020-migration-contract-preservation.md": { + "sha256": "sha256:cc842d15bf42ddc4d0f4056bc19b3176cab2c5f3c1a2fe6d648e5dbd077be8b3", + "index": "100644 7b6f3be976293469dee2180c10e16f313876d640 0\tworkplans/KEY-WP-0020-migration-contract-preservation.md" + }, + "workplans/KEY-WP-0021-snapshot-attribute-validation.md": { + "sha256": "sha256:b603248693073a9b9b25b4d0a4147d8d88c16a07dc9936e48fa1f3c76fe8bab6", + "index": "100644 1f6efeb32a6eb8fcbc52f4d3b591e2fc6b9e006d 0\tworkplans/KEY-WP-0021-snapshot-attribute-validation.md" + }, + "workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md": { + "sha256": "sha256:8c135e84be81de31b4949f52ac28dccd404f2e4c3eaa576d733bd50160427a53", + "index": "100644 7c69629ecd20d0158aa1332d9d1442b796f6a7af 0\tworkplans/KEY-WP-0022-replacement-harness-and-external-conformance.md" + }, + "workplans/KEY-WP-0023-live-migration-proof.md": { + "sha256": "sha256:e581cd11f3905805b5e8ba8e2ede85092577c7d086e1761f2a2d033fdead4e47", + "index": "100644 3e7c83cb12e7fc31e682cf3c27f4c4767ded2905 0\tworkplans/KEY-WP-0023-live-migration-proof.md" + }, + "workplans/KEY-WP-0024-tenant-roles-opt-in-wiring.md": { + "sha256": "sha256:af7842fa97263bfd46a4b5ae84c5c1ecddb06ab9623586e0292dcc93099fea35", + "index": "100644 baa0bbd195a92708f2befd027b938fcd1812ced7 0\tworkplans/KEY-WP-0024-tenant-roles-opt-in-wiring.md" + }, + "workplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md": { + "sha256": "sha256:0addb34e6d85e376c6a5db7afba597b6f268afa98b86c8c60add9be174dd1b26", + "index": "100644 a53e646761178748e8c4b00dcde888698447a948 0\tworkplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md" + }, + "workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md": { + "sha256": "sha256:c1bc0de47511ae49102009a172c84d9d5d64e829a18c8d40564fe817935563b3", + "index": "100644 1f96a2ac3ac939c4e6e0f66172477cf73db04e51 0\tworkplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md" + }, + "workplans/KEY-WP-0027-rollout-readiness-and-live-state.md": { + "sha256": "sha256:f559eae61d433d451f80ea575254bb14a47f2485267b412e42d524b434bb1b59", + "index": "100644 57e01b2db033847cc786504b8795e37112d988a7 0\tworkplans/KEY-WP-0027-rollout-readiness-and-live-state.md" + }, + "workplans/KEY-WP-0028-browser-client-field-validation.md": { + "sha256": "sha256:fbd51422fa5e6449000e4520e6639f6135c7393165a5ae02b1e92892edba0480", + "index": "100644 46b0672fea90cd7cb672f7d119706c240474f8ca 0\tworkplans/KEY-WP-0028-browser-client-field-validation.md" + }, + "workplans/KEY-WP-0029-scope-reassessment.md": { + "sha256": "sha256:3241f3b94db9cad5e3770cf1fedc5c211288357e4f69b5ba9da57065094bdf0e", + "index": "100644 392f97750f6cb8b12868a6fd016c7d396b58477e 0\tworkplans/KEY-WP-0029-scope-reassessment.md" + }, + "workplans/KEY-WP-0030-tenant-precondition-guard.md": { + "sha256": "sha256:c94c3afc7fb4270dfc18f3fe8a32946c524e4a6ba2d02a3d8fda69c9b8441af0", + "index": "100644 0f74e0d5a037eec64b11b57c67b02057a3b0bfef 0\tworkplans/KEY-WP-0030-tenant-precondition-guard.md" + }, + "workplans/KEY-WP-0031-gate-house-tenant-ruling.md": { + "sha256": "sha256:0abb135367f0366aa071769c4bd76fdeb321d810ec75ad3b58d718734f78382b", + "index": "100644 d2ede9d494927976ccb9ba6a5aeaf1ed21c30837 0\tworkplans/KEY-WP-0031-gate-house-tenant-ruling.md" + }, + "workplans/KEY-WP-0032-principal-type-provenance-guard.md": { + "sha256": "sha256:6a5cd483a40b9477227b02156c42b3469094dac145b33727b336118898aa782a", + "index": "100644 a04f52f817a51efc1d0d0ecb99efacea8dc53a17 0\tworkplans/KEY-WP-0032-principal-type-provenance-guard.md" + }, + "workplans/KEY-WP-0033-vergabe-fresh-login.md": { + "sha256": "sha256:c01bb51cf2dcad06ea846040dddef09845041fa7271cd7015e5a34a49e60bb8f", + "index": "100644 5b478f953890339aec796c11a536af0ec3238789 0\tworkplans/KEY-WP-0033-vergabe-fresh-login.md" + }, + "workplans/KEY-WP-0034-account-recovery.md": { + "sha256": "sha256:7db9adcd418ccabfbce672aec283249a6e374212492f0349e8c47a568f130eda", + "index": "100644 eb58f99bc26e3c3ac33230dfe432c8b1fabe47ce 0\tworkplans/KEY-WP-0034-account-recovery.md" + }, + "workplans/KEY-WP-0035-optional-mfa.md": { + "sha256": "sha256:c60ea8d0c195686c0d2317f657aad2de27c9b9432d311627c0e1d06124cabb49", + "index": "100644 29eb711f656c91808e91f3981a9168c3a0ebc253 0\tworkplans/KEY-WP-0035-optional-mfa.md" + }, + "workplans/KEY-WP-0036-platform-factor-recovery.md": { + "sha256": "sha256:5ceb08fe5789b4f02550bb04fcaf8eeb25a43ac3f506dfc62d60a513bcd0013f", + "index": "100644 fd296bc05a6e565b0ef6e88a9ae3daa7c9f81786 0\tworkplans/KEY-WP-0036-platform-factor-recovery.md" + }, + "workplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md": { + "sha256": "sha256:3a90a0c460fc439570820b96d1ddc3b7f8646c557ca3a8aa27c6d546bb1a845a", + "index": "100644 ad7fed77a27aa8487693ad6fcf342502f418427a 0\tworkplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md" + }, + "workplans/KEY-WP-0038-forgejo-oidc-client.md": { + "sha256": "sha256:dc8d88d462799e7e6e44da759a973d52e44102a271969a5daaa9d30ec015b064", + "index": "100644 8cd5bc66f7b0115eec7813d6eec994a1bb618668 0\tworkplans/KEY-WP-0038-forgejo-oidc-client.md" + }, + "workplans/KEY-WP-0039-openbao-negative-probe-tokens.md": { + "sha256": "sha256:517f9526d574ce3faafad18837e0039db8f3f7990eac3e34a1678cdd7307a9e1", + "index": "100644 4398517afe04e3b0723722af37b434fa8d2209ab 0\tworkplans/KEY-WP-0039-openbao-negative-probe-tokens.md" + }, + "workplans/KEY-WP-0040-mfa-attended-run-findings.md": { + "sha256": "sha256:98b23d8810bff047067169232213cb313ecc14ff79751224842723afe808fbd2", + "index": "100644 8e8730c8e7733b13d6a9f42689a9d8e407769e81 0\tworkplans/KEY-WP-0040-mfa-attended-run-findings.md" + }, + "workplans/KEY-WP-0041-sign-in-diagnosis-page.md": { + "sha256": "sha256:7e44f46acd6b3942c1852b49e0d64b205dfd7d9bb378aed5241b1bf22d7ce88a", + "index": "100644 56fd05819e3acd37b8e6cb468ec3d62307f1ae7a 0\tworkplans/KEY-WP-0041-sign-in-diagnosis-page.md" + } +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-backup/.custodian-brief.md.worktree b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-backup/.custodian-brief.md.worktree new file mode 100644 index 00000000..d3b36c3b --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-backup/.custodian-brief.md.worktree @@ -0,0 +1,37 @@ + +# Custodian Brief — key-cape + +**Domain:** infotech +**Last synced:** 2026-10-17 02:16 UTC +**State Hub:** http://127.0.0.1:8000 *(adjust if running on a remote machine)* + +## Active Workstreams + +### Negative-check tokens for the secrets-engine OpenBao JWT role +Progress: 2/3 done | workplan_id: `09c3bddf-6058-5603-8488-cccdb7be4f86` + +**Open tasks:** +- ! T01 — Define the probe registrations `03da4c38` + *(wait: Ordered identity gate: Forgejo first SecurityCase registration/claims proof, then NetKingdom registry session and attended human/coding-agent custody; registration authorization already resolved.)* + +### Forgejo as a NetKingdom OIDC client, so the forge can close +Progress: 2/4 done | workplan_id: `098e3e2c-a138-560e-b2d3-3a15eb49d8a9` + +**Open tasks:** +- ! T01 — Define what Forgejo receives `ddcfb482` + *(wait: Registration runs as the first KnownSecurityCase of type oidc-browser-relying-party (NK-WP-0048-T06), not as a hand-built rollout.)* +- ! T02 — Register the client and hand over its secret `40ddaa29` + *(wait: Claims are verified against the registered client.)* + +## Inbox Hygiene + +**Stale unread:** 2 message(s) older than 3 day(s) — triage at session start. +**Missing thread_id:** 2 unread message(s) lack supersession chains. + +--- +## MCP Orientation (when available) + +If the state-hub MCP server is reachable, call: +`get_domain_summary("infotech")` +This provides richer cross-domain context. +If the MCP call fails, use this file as your orientation source. diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-backup/WORK-RECORDS.md.worktree b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-backup/WORK-RECORDS.md.worktree new file mode 100644 index 00000000..d86b29bb --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-backup/WORK-RECORDS.md.worktree @@ -0,0 +1,224 @@ +# Work Records — key-cape + +> Generated by `statehub fix-consistency` (CUST-WP-0061-T04, work-record +> stage 3). Do not edit by hand — edit the source file/block listed for +> each record and re-run fix-consistency to refresh this index. Archived +> workplans are omitted; closed decisions/intakes/engagements stay listed +> so recently-resolved work is still visible. [auto] + +| Kind | ID | Status | Lane | Source | +| --- | --- | --- | --- | --- | +| workplan | ADHOC-2026-09-05 | finished | — | workplans/ADHOC-2026-09-05.md | +| workplan | ADHOC-2026-09-07 | finished | — | workplans/ADHOC-2026-09-07.md | +| workplan | ADHOC-2026-09-27 | finished | — | workplans/ADHOC-2026-09-27.md | +| workplan | KEY-WP-0001 | finished | — | workplans/KEY-WP-0001-keycape-implementation.md | +| workplan | KEY-WP-0002 | finished | — | workplans/KEY-WP-0002-container-image-gitea.md | +| workplan | KEY-WP-0003 | finished | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| workplan | KEY-WP-0004 | finished | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| workplan | KEY-WP-0005 | finished | — | workplans/KEY-WP-0005-iam-profile-core-claims.md | +| workplan | KEY-WP-0006 | finished | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| workplan | KEY-WP-0007 | finished | — | workplans/KEY-WP-0007-user-engine-portal-oidc-client.md | +| workplan | KEY-WP-0008 | finished | — | workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md | +| workplan | KEY-WP-0009 | finished | — | workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md | +| workplan | KEY-WP-0010 | finished | — | workplans/KEY-WP-0010-openbao-operator-loopback-callback.md | +| workplan | KEY-WP-0011 | finished | — | workplans/KEY-WP-0011-live-secret-exposure-recovery.md | +| workplan | KEY-WP-0012 | finished | — | workplans/KEY-WP-0012-userinfo-canonical-subject-resolution.md | +| workplan | KEY-WP-0013 | finished | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| workplan | KEY-WP-0014 | finished | — | workplans/KEY-WP-0014-native-credential-lane-handoff.md | +| workplan | KEY-WP-0015 | finished | — | workplans/KEY-WP-0015-scope-intent-assessment.md | +| workplan | KEY-WP-0016 | finished | — | workplans/KEY-WP-0016-authorization-code-protocol-hardening.md | +| workplan | KEY-WP-0017 | finished | — | workplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md | +| workplan | KEY-WP-0018 | finished | — | workplans/KEY-WP-0018-export-completeness-evidence.md | +| workplan | KEY-WP-0019 | finished | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| workplan | KEY-WP-0020 | finished | — | workplans/KEY-WP-0020-migration-contract-preservation.md | +| workplan | KEY-WP-0021 | finished | — | workplans/KEY-WP-0021-snapshot-attribute-validation.md | +| workplan | KEY-WP-0022 | finished | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| workplan | KEY-WP-0023 | finished | — | workplans/KEY-WP-0023-live-migration-proof.md | +| workplan | KEY-WP-0024 | finished | — | workplans/KEY-WP-0024-tenant-roles-opt-in-wiring.md | +| workplan | KEY-WP-0025 | finished | — | workplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md | +| workplan | KEY-WP-0026 | finished | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| workplan | KEY-WP-0027 | finished | — | workplans/KEY-WP-0027-rollout-readiness-and-live-state.md | +| workplan | KEY-WP-0028 | finished | — | workplans/KEY-WP-0028-browser-client-field-validation.md | +| workplan | KEY-WP-0029 | finished | — | workplans/KEY-WP-0029-scope-reassessment.md | +| workplan | KEY-WP-0030 | finished | — | workplans/KEY-WP-0030-tenant-precondition-guard.md | +| workplan | KEY-WP-0031 | finished | — | workplans/KEY-WP-0031-gate-house-tenant-ruling.md | +| workplan | KEY-WP-0032 | finished | — | workplans/KEY-WP-0032-principal-type-provenance-guard.md | +| workplan | KEY-WP-0033 | finished | — | workplans/KEY-WP-0033-vergabe-fresh-login.md | +| workplan | KEY-WP-0034 | finished | — | workplans/KEY-WP-0034-account-recovery.md | +| workplan | KEY-WP-0035 | finished | — | workplans/KEY-WP-0035-optional-mfa.md | +| workplan | KEY-WP-0036 | finished | — | workplans/KEY-WP-0036-platform-factor-recovery.md | +| workplan | KEY-WP-0037 | finished | — | workplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md | +| workplan | KEY-WP-0038 | active | — | workplans/KEY-WP-0038-forgejo-oidc-client.md | +| workplan | KEY-WP-0039 | active | — | workplans/KEY-WP-0039-openbao-negative-probe-tokens.md | +| workplan | KEY-WP-0040 | finished | — | workplans/KEY-WP-0040-mfa-attended-run-findings.md | +| workplan | KEY-WP-0041 | finished | — | workplans/KEY-WP-0041-sign-in-diagnosis-page.md | +| task | ADHOC-2026-09-05-T01 | done | — | workplans/ADHOC-2026-09-05.md | +| task | ADHOC-2026-09-07-T01 | done | — | workplans/ADHOC-2026-09-07.md | +| task | ADHOC-2026-09-27-T01 | done | — | workplans/ADHOC-2026-09-27.md | +| task | ADHOC-2026-09-27-T02 | done | — | workplans/ADHOC-2026-09-27.md | +| task | KEY-WP-0001-T01 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T02 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T03 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T04 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T05 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T06 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T07 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T08 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T09 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T10 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T11 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T12 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T13 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T14 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T15 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T16 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T17 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T18 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T19 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T20 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T21 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T22 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T23 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0002-T01 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0002-T02 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0002-T03 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0002-T04 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0002-T05 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0002-T06 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0003-T01 | done | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| task | KEY-WP-0003-T02 | done | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| task | KEY-WP-0003-T03 | done | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| task | KEY-WP-0003-T04 | done | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| task | KEY-WP-0003-T05 | done | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| task | KEY-WP-0004-T01 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T02 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T03 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T04 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T05 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T06 | cancel | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T07 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0005-T01 | done | — | workplans/KEY-WP-0005-iam-profile-core-claims.md | +| task | KEY-WP-0005-T02 | done | — | workplans/KEY-WP-0005-iam-profile-core-claims.md | +| task | KEY-WP-0005-T03 | done | — | workplans/KEY-WP-0005-iam-profile-core-claims.md | +| task | KEY-WP-0006-T01 | done | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| task | KEY-WP-0006-T02 | done | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| task | KEY-WP-0006-T03 | done | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| task | KEY-WP-0006-T04 | done | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| task | KEY-WP-0006-T05 | done | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| task | KEY-WP-0007-T01 | done | — | workplans/KEY-WP-0007-user-engine-portal-oidc-client.md | +| task | KEY-WP-0007-T02 | done | — | workplans/KEY-WP-0007-user-engine-portal-oidc-client.md | +| task | KEY-WP-0007-T03 | done | — | workplans/KEY-WP-0007-user-engine-portal-oidc-client.md | +| task | KEY-WP-0008-T01 | done | — | workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md | +| task | KEY-WP-0008-T02 | done | — | workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md | +| task | KEY-WP-0008-T03 | done | — | workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md | +| task | KEY-WP-0008-T04 | done | — | workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md | +| task | KEY-WP-0009-T01 | done | — | workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md | +| task | KEY-WP-0009-T02 | done | — | workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md | +| task | KEY-WP-0009-T03 | done | — | workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md | +| task | KEY-WP-0009-T04 | done | — | workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md | +| task | KEY-WP-0010-T01 | done | — | workplans/KEY-WP-0010-openbao-operator-loopback-callback.md | +| task | KEY-WP-0011-T01 | done | — | workplans/KEY-WP-0011-live-secret-exposure-recovery.md | +| task | KEY-WP-0011-T02 | done | — | workplans/KEY-WP-0011-live-secret-exposure-recovery.md | +| task | KEY-WP-0011-T03 | done | — | workplans/KEY-WP-0011-live-secret-exposure-recovery.md | +| task | KEY-WP-0012-T01 | done | — | workplans/KEY-WP-0012-userinfo-canonical-subject-resolution.md | +| task | KEY-WP-0012-T02 | done | — | workplans/KEY-WP-0012-userinfo-canonical-subject-resolution.md | +| task | KEY-WP-0012-T03 | done | — | workplans/KEY-WP-0012-userinfo-canonical-subject-resolution.md | +| task | KEY-WP-0013-T01 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T02 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T03 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T04 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T05 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T06 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T07 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0014-T01 | done | — | workplans/KEY-WP-0014-native-credential-lane-handoff.md | +| task | KEY-WP-0014-T02 | done | — | workplans/KEY-WP-0014-native-credential-lane-handoff.md | +| task | KEY-WP-0014-T03 | done | — | workplans/KEY-WP-0014-native-credential-lane-handoff.md | +| task | KEY-WP-0014-T04 | done | — | workplans/KEY-WP-0014-native-credential-lane-handoff.md | +| task | KEY-WP-0015-T01 | done | — | workplans/KEY-WP-0015-scope-intent-assessment.md | +| task | KEY-WP-0016-T01 | done | — | workplans/KEY-WP-0016-authorization-code-protocol-hardening.md | +| task | KEY-WP-0016-T02 | done | — | workplans/KEY-WP-0016-authorization-code-protocol-hardening.md | +| task | KEY-WP-0016-T03 | done | — | workplans/KEY-WP-0016-authorization-code-protocol-hardening.md | +| task | KEY-WP-0016-T04 | done | — | workplans/KEY-WP-0016-authorization-code-protocol-hardening.md | +| task | KEY-WP-0017-T01 | done | — | workplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md | +| task | KEY-WP-0017-T02 | done | — | workplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md | +| task | KEY-WP-0017-T03 | done | — | workplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md | +| task | KEY-WP-0017-T04 | done | — | workplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md | +| task | KEY-WP-0018-T01 | done | — | workplans/KEY-WP-0018-export-completeness-evidence.md | +| task | KEY-WP-0018-T02 | done | — | workplans/KEY-WP-0018-export-completeness-evidence.md | +| task | KEY-WP-0018-T03 | done | — | workplans/KEY-WP-0018-export-completeness-evidence.md | +| task | KEY-WP-0019-T01 | done | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| task | KEY-WP-0019-T02 | done | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| task | KEY-WP-0019-T03 | done | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| task | KEY-WP-0019-T04 | done | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| task | KEY-WP-0019-T05 | done | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| task | KEY-WP-0020-T01 | done | — | workplans/KEY-WP-0020-migration-contract-preservation.md | +| task | KEY-WP-0020-T02 | done | — | workplans/KEY-WP-0020-migration-contract-preservation.md | +| task | KEY-WP-0020-T03 | done | — | workplans/KEY-WP-0020-migration-contract-preservation.md | +| task | KEY-WP-0021-T01 | done | — | workplans/KEY-WP-0021-snapshot-attribute-validation.md | +| task | KEY-WP-0021-T02 | done | — | workplans/KEY-WP-0021-snapshot-attribute-validation.md | +| task | KEY-WP-0021-T03 | done | — | workplans/KEY-WP-0021-snapshot-attribute-validation.md | +| task | KEY-WP-0022-T01 | done | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| task | KEY-WP-0022-T02 | done | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| task | KEY-WP-0022-T03 | done | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| task | KEY-WP-0022-T04 | done | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| task | KEY-WP-0022-T05 | done | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| task | KEY-WP-0023-T01 | done | — | workplans/KEY-WP-0023-live-migration-proof.md | +| task | KEY-WP-0023-T02 | done | — | workplans/KEY-WP-0023-live-migration-proof.md | +| task | KEY-WP-0023-T03 | done | — | workplans/KEY-WP-0023-live-migration-proof.md | +| task | KEY-WP-0023-T04 | done | — | workplans/KEY-WP-0023-live-migration-proof.md | +| task | KEY-WP-0023-T05 | done | — | workplans/KEY-WP-0023-live-migration-proof.md | +| task | KEY-WP-0024-T01 | done | — | workplans/KEY-WP-0024-tenant-roles-opt-in-wiring.md | +| task | KEY-WP-0024-T02 | done | — | workplans/KEY-WP-0024-tenant-roles-opt-in-wiring.md | +| task | KEY-WP-0025-T01 | done | — | workplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md | +| task | KEY-WP-0025-T02 | done | — | workplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md | +| task | KEY-WP-0025-T03 | done | — | workplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md | +| task | KEY-WP-0025-T04 | done | — | workplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md | +| task | KEY-WP-0026-T01 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0026-T02 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0026-T03 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0026-T04 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0026-T05 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0026-T06 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0027-T01 | done | — | workplans/KEY-WP-0027-rollout-readiness-and-live-state.md | +| task | KEY-WP-0027-T02 | done | — | workplans/KEY-WP-0027-rollout-readiness-and-live-state.md | +| task | KEY-WP-0027-T03 | done | — | workplans/KEY-WP-0027-rollout-readiness-and-live-state.md | +| task | KEY-WP-0027-T04 | done | — | workplans/KEY-WP-0027-rollout-readiness-and-live-state.md | +| task | KEY-WP-0028-T01 | done | — | workplans/KEY-WP-0028-browser-client-field-validation.md | +| task | KEY-WP-0028-T02 | done | — | workplans/KEY-WP-0028-browser-client-field-validation.md | +| task | KEY-WP-0029-T01 | done | — | workplans/KEY-WP-0029-scope-reassessment.md | +| task | KEY-WP-0029-T02 | done | — | workplans/KEY-WP-0029-scope-reassessment.md | +| task | KEY-WP-0029-T03 | done | — | workplans/KEY-WP-0029-scope-reassessment.md | +| task | KEY-WP-0030-T01 | done | — | workplans/KEY-WP-0030-tenant-precondition-guard.md | +| task | KEY-WP-0030-T02 | done | — | workplans/KEY-WP-0030-tenant-precondition-guard.md | +| task | KEY-WP-0031-T01 | done | — | workplans/KEY-WP-0031-gate-house-tenant-ruling.md | +| task | KEY-WP-0031-T02 | done | — | workplans/KEY-WP-0031-gate-house-tenant-ruling.md | +| task | KEY-WP-0032-T01 | done | — | workplans/KEY-WP-0032-principal-type-provenance-guard.md | +| task | KEY-WP-0032-T02 | done | — | workplans/KEY-WP-0032-principal-type-provenance-guard.md | +| task | KEY-WP-0033-T01 | done | — | workplans/KEY-WP-0033-vergabe-fresh-login.md | +| task | KEY-WP-0033-T02 | done | — | workplans/KEY-WP-0033-vergabe-fresh-login.md | +| task | KEY-WP-0034-T01 | done | — | workplans/KEY-WP-0034-account-recovery.md | +| task | KEY-WP-0034-T02 | done | — | workplans/KEY-WP-0034-account-recovery.md | +| task | KEY-WP-0035-T01 | done | — | workplans/KEY-WP-0035-optional-mfa.md | +| task | KEY-WP-0035-T02 | done | — | workplans/KEY-WP-0035-optional-mfa.md | +| task | KEY-WP-0035-T03 | done | — | workplans/KEY-WP-0035-optional-mfa.md | +| task | KEY-WP-0035-T04 | done | — | workplans/KEY-WP-0035-optional-mfa.md | +| task | KEY-WP-0035-T05 | done | — | workplans/KEY-WP-0035-optional-mfa.md | +| task | KEY-WP-0036-T01 | done | — | workplans/KEY-WP-0036-platform-factor-recovery.md | +| task | KEY-WP-0036-T02 | cancel | — | workplans/KEY-WP-0036-platform-factor-recovery.md | +| task | KEY-WP-0036-T03 | done | — | workplans/KEY-WP-0036-platform-factor-recovery.md | +| task | KEY-WP-0037-T01 | done | — | workplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md | +| task | KEY-WP-0037-T02 | done | — | workplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md | +| task | KEY-WP-0037-T03 | done | — | workplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md | +| task | KEY-WP-0037-T04 | done | — | workplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md | +| task | KEY-WP-0038-T01 | done | — | workplans/KEY-WP-0038-forgejo-oidc-client.md | +| task | KEY-WP-0038-T02 | wait | — | workplans/KEY-WP-0038-forgejo-oidc-client.md | +| task | KEY-WP-0038-T03 | wait | — | workplans/KEY-WP-0038-forgejo-oidc-client.md | +| task | KEY-WP-0038-T04 | cancel | — | workplans/KEY-WP-0038-forgejo-oidc-client.md | +| task | KEY-WP-0039-T01 | done | — | workplans/KEY-WP-0039-openbao-negative-probe-tokens.md | +| task | KEY-WP-0039-T02 | wait | — | workplans/KEY-WP-0039-openbao-negative-probe-tokens.md | +| task | KEY-WP-0039-T03 | done | — | workplans/KEY-WP-0039-openbao-negative-probe-tokens.md | +| task | KEY-WP-0040-T01 | done | — | workplans/KEY-WP-0040-mfa-attended-run-findings.md | +| task | KEY-WP-0040-T02 | done | — | workplans/KEY-WP-0040-mfa-attended-run-findings.md | +| task | KEY-WP-0041-T01 | done | — | workplans/KEY-WP-0041-sign-in-diagnosis-page.md | +| task | KEY-WP-0041-T02 | done | — | workplans/KEY-WP-0041-sign-in-diagnosis-page.md | +| intake | KEY-IN-0001 | closed | — | intakes/intakes.md | diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-backup/originals.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-backup/originals.json new file mode 100644 index 00000000..0e7e20f1 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-backup/originals.json @@ -0,0 +1,10 @@ +[ + { + "path": ".custodian-brief.md", + "index": "100644 d3b36c3bffbeb922769a2a788e35b4113fccaa3f 0\t.custodian-brief.md" + }, + { + "path": "WORK-RECORDS.md", + "index": "100644 d86b29bbc480acfa6d12d5052039578d7d4e380c 0\tWORK-RECORDS.md" + } +] diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-commit.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-commit.json new file mode 100644 index 00000000..697b8997 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-commit.json @@ -0,0 +1,85 @@ +{ + "exit_code": 0, + "commit": "08c083bae9ff35fbaf028c36d72a95b57d2541b7", + "base": "67a0869c1ee40c9e00a60cb7c1d828734d5d3d32", + "files": [ + { + "path": "Makefile", + "sha256": "fb7c057286017e18c5a10ce7752f09336becffba3e30d9fb9b6a2467e53dcb50" + }, + { + "path": "adapters/go/tokenstatus/LICENSE", + "sha256": "ff413f361a3b3bf44cf50f110fbcc4837064d57eefbcef89df2b43997c6262b6" + }, + { + "path": "adapters/go/tokenstatus/go.mod", + "sha256": "e8b028e1002e63a76dba78a4abbd67882307ad198e4783bad631652061aa0f54" + }, + { + "path": "adapters/go/tokenstatus/internal/jose/jose.go", + "sha256": "a6de154cd81e34a521b8aac5dce6b45a3cfb015681ed16e2beb8f2a24c72c00d" + }, + { + "path": "adapters/go/tokenstatus/pkg/tokenstatus/client.go", + "sha256": "f34626a85d67590b9c61474f19ce1021f8afd17093f8f522b3f98e9cef34e575" + }, + { + "path": "adapters/go/tokenstatus/producer-source.json", + "sha256": "3bd9b25b912e7c17b331997ca5fee9da8a7c314f336e09e3c116885954799b73" + }, + { + "path": "docs/current-token-client.md", + "sha256": "69db63087c752bba0b07b41aa7784484703aacc064181782d15de62310751c4e" + }, + { + "path": "docs/online-token-status.md", + "sha256": "56064b1c0df5ff9a20d5c205396e7b1b2d0d70785ea7945c999d34b4de3aa1b8" + }, + { + "path": "src/cmd/keycape/main.go", + "sha256": "553094de91cfafb021b7607eac1263fa155fedeb32c1e99e7c71e8d86e20ffd0" + }, + { + "path": "src/internal/authclient/cli.go", + "sha256": "009c9ce900524b62483cf4955f3cbacc0dcb9027b8da77924b51b22e3fa5170c" + }, + { + "path": "src/internal/authclient/online.go", + "sha256": "182ec3971ded3a7f3923aab7a23b7317de3ec0f657b8da6d9d882a43bcb0961a" + }, + { + "path": "src/internal/authclient/online_cli.go", + "sha256": "6763c1e85396726b044067e77179ee2220e397bbd3888ec8de071c2826c6c7f2" + }, + { + "path": "src/internal/authclient/online_cli_test.go", + "sha256": "5408a183beda6a885ebae00d3fa420d3fb0d51e4aeb72965fef535d822270c4f" + }, + { + "path": "src/internal/authclient/online_export_test.go", + "sha256": "5695f233e4caf581e494087cb203a74613d39a5626bbcc323b9f2d553a96b7ba" + }, + { + "path": "src/internal/authclient/online_human_test.go", + "sha256": "e501c30b6d710a6dea89559ccf8b98de68502c2ee58d1778a56e97f1b7f3b6e0" + }, + { + "path": "src/internal/authclient/online_test.go", + "sha256": "6288329ca2576f72a361256050c94f9d1995e9fbe53b2a6318da2954bcbc7c6a" + }, + { + "path": "src/internal/jose/jose.go", + "sha256": "a6de154cd81e34a521b8aac5dce6b45a3cfb015681ed16e2beb8f2a24c72c00d" + }, + { + "path": "tools/export_tokenstatus_client.py", + "sha256": "c05cc75de87c9d7bd9d184c012c4ab8d273da36934c8908c05d7c72192db218e" + }, + { + "path": "workplans/KEY-WP-0042-online-access-token-status.md", + "sha256": "e8b0d15d7461ea34075b4a7f8047af380d96e521f42a0dae6136f6cfdd052b0f" + } + ], + "stdout": "[main 08c083b] Share current-token verification and scoped cleanup through one producer client\n 19 files changed, 2228 insertions(+), 3 deletions(-)\n create mode 100644 adapters/go/tokenstatus/LICENSE\n create mode 100644 adapters/go/tokenstatus/go.mod\n create mode 100644 adapters/go/tokenstatus/internal/jose/jose.go\n create mode 100644 adapters/go/tokenstatus/pkg/tokenstatus/client.go\n create mode 100644 adapters/go/tokenstatus/producer-source.json\n create mode 100644 docs/current-token-client.md\n create mode 100644 src/internal/authclient/online.go\n create mode 100644 src/internal/authclient/online_cli.go\n create mode 100644 src/internal/authclient/online_cli_test.go\n create mode 100644 src/internal/authclient/online_export_test.go\n create mode 100644 src/internal/authclient/online_human_test.go\n create mode 100644 src/internal/authclient/online_test.go\n create mode 100644 tools/export_tokenstatus_client.py\n", + "stderr": "{\"blocked_blob_ids\": [], \"scanned_blobs\": 18, \"scanner_sha256\": \"88f91962aa2f93ac6ab281d553b9e125f5197bbbce38f9f2437f7299c32e5509\", \"scanner_version\": \"8.30.1\", \"scope\": \"changed-staged-blobs\", \"status\": \"clean\"}\n" +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-inputs.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-inputs.json new file mode 100644 index 00000000..fd7ca9ed --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/keycape-application/publication-inputs.json @@ -0,0 +1,83 @@ +{ + "owner": "key-cape", + "base_revision": "67a0869c1ee40c9e00a60cb7c1d828734d5d3d32", + "message": "Share current-token verification and scoped cleanup through one producer client", + "files": [ + { + "path": "Makefile", + "sha256": "fb7c057286017e18c5a10ce7752f09336becffba3e30d9fb9b6a2467e53dcb50" + }, + { + "path": "adapters/go/tokenstatus/LICENSE", + "sha256": "ff413f361a3b3bf44cf50f110fbcc4837064d57eefbcef89df2b43997c6262b6" + }, + { + "path": "adapters/go/tokenstatus/go.mod", + "sha256": "e8b028e1002e63a76dba78a4abbd67882307ad198e4783bad631652061aa0f54" + }, + { + "path": "adapters/go/tokenstatus/internal/jose/jose.go", + "sha256": "a6de154cd81e34a521b8aac5dce6b45a3cfb015681ed16e2beb8f2a24c72c00d" + }, + { + "path": "adapters/go/tokenstatus/pkg/tokenstatus/client.go", + "sha256": "f34626a85d67590b9c61474f19ce1021f8afd17093f8f522b3f98e9cef34e575" + }, + { + "path": "adapters/go/tokenstatus/producer-source.json", + "sha256": "3bd9b25b912e7c17b331997ca5fee9da8a7c314f336e09e3c116885954799b73" + }, + { + "path": "docs/current-token-client.md", + "sha256": "69db63087c752bba0b07b41aa7784484703aacc064181782d15de62310751c4e" + }, + { + "path": "docs/online-token-status.md", + "sha256": "56064b1c0df5ff9a20d5c205396e7b1b2d0d70785ea7945c999d34b4de3aa1b8" + }, + { + "path": "src/cmd/keycape/main.go", + "sha256": "553094de91cfafb021b7607eac1263fa155fedeb32c1e99e7c71e8d86e20ffd0" + }, + { + "path": "src/internal/authclient/cli.go", + "sha256": "009c9ce900524b62483cf4955f3cbacc0dcb9027b8da77924b51b22e3fa5170c" + }, + { + "path": "src/internal/authclient/online.go", + "sha256": "182ec3971ded3a7f3923aab7a23b7317de3ec0f657b8da6d9d882a43bcb0961a" + }, + { + "path": "src/internal/authclient/online_cli.go", + "sha256": "6763c1e85396726b044067e77179ee2220e397bbd3888ec8de071c2826c6c7f2" + }, + { + "path": "src/internal/authclient/online_cli_test.go", + "sha256": "5408a183beda6a885ebae00d3fa420d3fb0d51e4aeb72965fef535d822270c4f" + }, + { + "path": "src/internal/authclient/online_export_test.go", + "sha256": "5695f233e4caf581e494087cb203a74613d39a5626bbcc323b9f2d553a96b7ba" + }, + { + "path": "src/internal/authclient/online_human_test.go", + "sha256": "e501c30b6d710a6dea89559ccf8b98de68502c2ee58d1778a56e97f1b7f3b6e0" + }, + { + "path": "src/internal/authclient/online_test.go", + "sha256": "6288329ca2576f72a361256050c94f9d1995e9fbe53b2a6318da2954bcbc7c6a" + }, + { + "path": "src/internal/jose/jose.go", + "sha256": "a6de154cd81e34a521b8aac5dce6b45a3cfb015681ed16e2beb8f2a24c72c00d" + }, + { + "path": "tools/export_tokenstatus_client.py", + "sha256": "c05cc75de87c9d7bd9d184c012c4ab8d273da36934c8908c05d7c72192db218e" + }, + { + "path": "workplans/KEY-WP-0042-online-access-token-status.md", + "sha256": "e8b0d15d7461ea34075b4a7f8047af380d96e521f42a0dae6136f6cfdd052b0f" + } + ] +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/application.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/application.json new file mode 100644 index 00000000..dc6fef58 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/application.json @@ -0,0 +1,9 @@ +{ + "status": "source-applied", + "owner": "ops-warden", + "files": 4, + "original_task_blocks_preserved": 4, + "other_tracked_files_and_index_preserved": true, + "catalog_or_generated_artifact_changed": false, + "native_authority": false +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/consistency.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/consistency.json new file mode 100644 index 00000000..1bfa0a0c --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/consistency.json @@ -0,0 +1,141 @@ +{ + "repo_slug": "ops-warden", + "repo_path": "/home/worsch/ops-warden", + "source_revision": "08c098e64a9afd89e43f65436782ed2bb69cdfbd", + "source_revision_reason": null, + "issues": [ + { + "severity": "WARN", + "check_id": "C-24", + "message": "Repo classification advisory: capability_tag 'security' is not a recommended family tag (allowed, check for synonym)", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-42", + "message": "Blocked workplan 'warden-wp-0027' has no task in status wait \u2014 nothing states what it waits for; qualify a wait task or re-status the workplan", + "file_path": "workplans/WARDEN-WP-0027-credential-governance-lockdown.md", + "db_id": "21528e8d-a049-523d-9ae1-da7a27cb8bbf", + "file_value": "blocked", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-37", + "message": "Residual workplan 'warden-wp-0034' has no origin/origin_ref provenance (not invented)", + "file_path": "workplans/WARDEN-WP-0034-layer-model-v07-conformance.md", + "db_id": "ae3ff76f-883d-5e2f-b6aa-144d61e8fdef", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-40", + "message": "blocker satisfied, task still wait: 'WARDEN-WP-0037-T03' in workplan 'WARDEN-WP-0037' \u2014 decision 1591daa1-6e85-4dfd-aadd-5a9fe1ef47fa is resolved", + "file_path": "workplans/WARDEN-WP-0037-whynot-design-forgejo-npm-lane.md#WARDEN-WP-0037-T03", + "db_id": "", + "file_value": "1591daa1-6e85-4dfd-aadd-5a9fe1ef47fa", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-37", + "message": "Residual workplan 'warden-wp-0040' has no origin/origin_ref provenance (not invented)", + "file_path": "workplans/WARDEN-WP-0040-unknown-zone-fail-closed-adoption.md", + "db_id": "c8ee441e-1be1-5219-910c-e79ff23cc9ec", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'adhoc-2026-06-29@retired-20260828' (id=1c0460b7\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "1c0460b7-bc8a-48db-96d4-681bce18ac91", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'adhoc-2026-08-17@retired-20260827' (id=8376eb89\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "8376eb89-36f2-52b0-a59a-2954b2e49349", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'adhoc-2026-08-11@retired-20260827' (id=bc6dd3e3\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "bc6dd3e3-ab2b-567a-9574-30d2650f20a2", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'ops-warden-adhoc-2026-06-27@retired-20260827' (id=142b171b\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "142b171b-c34b-4a45-91a5-c77e6d07ec6f", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'adhoc-2026-07-07@retired-20260827' (id=2e8bc783\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "2e8bc783-2e37-4b86-a691-177b18329783", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-28", + "message": "4 unread inbox message(s) older than 3 day(s): the-custodian:d422aecb, railiance-platform:b3b9fcd8, the-custodian:23172cb2, the-custodian:51e9eace", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-28", + "message": "4 unread message(s) lack thread_id for supersession tracking: the-custodian:fa687c42, the-custodian:d422aecb, the-custodian:23172cb2, the-custodian:51e9eace", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + } + ], + "fixes_applied": [ + "bindings: synced 51/51", + "C-17 cleared: pushed 1 backlogged commit(s)", + "brief: .custodian-brief.md updated", + "push: pushed" + ], + "summary": { + "fail": 0, + "automation_error": 0, + "warn": 7, + "info": 5 + }, + "result": "warn" +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/consistency.stderr.txt b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/consistency.stderr.txt new file mode 100644 index 00000000..3345563f --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/consistency.stderr.txt @@ -0,0 +1 @@ +WARN: git commit failed for writeback: Generated-only commits rejected: staged diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/manifest.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/manifest.json new file mode 100644 index 00000000..1993dcc8 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/manifest.json @@ -0,0 +1,1266 @@ +{ + "owner": "ops-warden", + "base_revision": "b593c879831378db7dc62adfabdfedf2d44ddd38", + "files": [ + { + "path": "src/warden/case_run.py", + "source": "/tmp/custodian-keycape-current-client-r1/warden-source/src/warden/case_run.py", + "before_sha256": "sha256:1bc73e30ac718fd75bbaff2a739495fc051aeaec73802ac71f0583cb2d53ab0a", + "sha256": "sha256:6bc06faf727db42810e4db2ab228cf60f52ede1e48d2b65d03d0a67492bd3c97" + }, + { + "path": "tests/test_case_current_session_reference.py", + "source": "/tmp/custodian-keycape-current-client-r1/warden-source/tests/test_case_current_session_reference.py", + "before_sha256": null, + "sha256": "sha256:7013ad1b30a0648cb83a78102def02340c6af3ebc284877335b71b080fced720" + }, + { + "path": "docs/security-case-execution-kernel-v1.md", + "source": "/tmp/custodian-keycape-current-client-r1/warden-source/docs/security-case-execution-kernel-v1.md", + "before_sha256": "sha256:e5570f542ec3ef4e6c11332cfe48fea16bf90cde5b9a5d926f5a068b7cafdbc7", + "sha256": "sha256:4055f8cee7688dd45a2026c6e1927d178bc38f4a7dbcf9736ef8fc3fcd9d8e4a" + }, + { + "path": "workplans/WARDEN-WP-0044-security-case-follow-through.md", + "source": "/tmp/custodian-keycape-current-client-r1/warden-source/workplans/WARDEN-WP-0044-security-case-follow-through.md", + "before_sha256": "sha256:44f88a5a84894d951add888206fe823d3d13019aca39a572ad8dfa15d510e05d", + "sha256": "sha256:f67f434a05df28c936e6e35dbe1a0623f6915e4bc8df2f0263d1c030aaad8714" + } + ], + "protected": { + ".claude/rules/agents.md": { + "sha256": "sha256:55ad7da95751de483e42e08d3ccae7d6b04daf8ad5f7457047eff06778b05fa5", + "index": "100644 0e8a5d95b6d263fbaeae4261a7051112fb27ee18 0\t.claude/rules/agents.md" + }, + ".claude/rules/architecture.md": { + "sha256": "sha256:b54a07821faaa53b917724e90fb29f545eb1b34682de1f2981c8c36a609bfa46", + "index": "100644 ee357fb21d8ce7171bdf83bf9271a2494cdc48a3 0\t.claude/rules/architecture.md" + }, + ".claude/rules/credential-routing.md": { + "sha256": "sha256:873a702383461863d87bf4fa34152f37c6fb690b18fc835c36b65d6f85b37c20", + "index": "100644 c3e999df29503dc181310f877f510437123e04bd 0\t.claude/rules/credential-routing.md" + }, + ".claude/rules/finding-routing.md": { + "sha256": "sha256:00d92c091671b38eed623974e2184c0caba3cd2e9a0572762be4f384e1ab4278", + "index": "100644 4171644daedffd1c5e22cf373a166f175c2d3f62 0\t.claude/rules/finding-routing.md" + }, + ".claude/rules/first-session.md": { + "sha256": "sha256:45b4dcc0277a9f5e2a3248f299730700c136bf8267ef11c074d933d13e886559", + "index": "100644 b58be4f2454f85b1c5c13ad00396bd94e6c26061 0\t.claude/rules/first-session.md" + }, + ".claude/rules/repo-boundary.md": { + "sha256": "sha256:075c704688260c1bcc8e8d7e3e5a27daa7f2a622ae748236de22c35b24b8ba85", + "index": "100644 aca5f69b599dcc217b1cb3e3d1a8ce445e6fd32c 0\t.claude/rules/repo-boundary.md" + }, + ".claude/rules/repo-identity.md": { + "sha256": "sha256:2fa1aa228d61802a8a67c7d6303fc57eefc49d099f86edd1dfc04e64708ca65d", + "index": "100644 4fa0d3225d1cc83fb857e6003c6ef052b28023c8 0\t.claude/rules/repo-identity.md" + }, + ".claude/rules/session-protocol.md": { + "sha256": "sha256:e9a7a4e2b1f699982738fb588b65801386787eff2192ca5ce3f425db20b2f585", + "index": "100644 603c952d21c83fdc7ad6adcde819bb3c82adda2d 0\t.claude/rules/session-protocol.md" + }, + ".claude/rules/stack-and-commands.md": { + "sha256": "sha256:8debf28c7e28aeb321a0638a2e7f1dbdcb7c4013f06f5994caf5be240df902da", + "index": "100644 dc53ac69288ec906421a0e8e1e1083528c047702 0\t.claude/rules/stack-and-commands.md" + }, + ".claude/rules/workplan-convention.md": { + "sha256": "sha256:e7dc90c7cbb9f62e9216e57039e4dc71ade86804908cc0634286a350fa6ab8ec", + "index": "100644 9b6adcc466a8f9b6e72aa0a0829ef5eabac6123d 0\t.claude/rules/workplan-convention.md" + }, + ".custodian-brief.md": { + "sha256": "sha256:4ff4bb94315149e07d36b8f4ecbbfc63b61d72e9d81f0f43a9c2f02bc13ada85", + "index": "100644 34573d262327057c11628ce8a7ca78292968545b 0\t.custodian-brief.md" + }, + ".forgejo/workflows/ci-smoke.yaml": { + "sha256": "sha256:c17729b2144648fa92871e1c94bcb6bd8f64a4b533577ede9457593758e2b7ab", + "index": "100644 bd44c56a4f8a6c12bdab40257e450c2a676f751a 0\t.forgejo/workflows/ci-smoke.yaml" + }, + ".gitignore": { + "sha256": "sha256:e9d3300c8f0fee92fa2a3c15751a11979040940d9c927bb9f0286c9fc2f54528", + "index": "100644 ddae26ab0a5f153abe1169219d2d4d53f1b9675e 0\t.gitignore" + }, + ".repo-classification.yaml": { + "sha256": "sha256:7e190835f27005d19deb800085f97ce211f650d1a3446b67bec42eb6ca0da6ac", + "index": "100644 3fd72d54a7423194514cc98981b9699f1015f254 0\t.repo-classification.yaml" + }, + ".repo-manager/index.json": { + "sha256": "sha256:b7e20ccc8e200b0cc989b15f745fb1c75dac303b85c01c0e3d5b952e38511d0a", + "index": "100644 ae60c119b0ebdc991c47ab503fb89b53ca7fbab9 0\t.repo-manager/index.json" + }, + "AGENTS.md": { + "sha256": "sha256:aa03031516b886b254d8c4b1fafa160c063c74aa0115ba51af3dd7326dccfad6", + "index": "100644 dea050c51141bf8a70c7b2abafa6ac8cd25f81cd 0\tAGENTS.md" + }, + "CLAUDE.md": { + "sha256": "sha256:b3bc41956283ee1c5ae4133cf40d94742952b52e7f3bc5e09cc707055a2547c4", + "index": "100644 e6f45039f0e2e3cc3ea34b0ebfd4b3b2198e397c 0\tCLAUDE.md" + }, + "INTENT.md": { + "sha256": "sha256:3e9382fefa52ee0970dfac133cc799656e5034760b26dccc1bf9bab65fc538d9", + "index": "100644 c643f16260b48abd60461a61f6bbc6164c5bc74c 0\tINTENT.md" + }, + "LICENSE": { + "sha256": "sha256:ff413f361a3b3bf44cf50f110fbcc4837064d57eefbcef89df2b43997c6262b6", + "index": "100644 7e08e28d5f32bdea3a9e1c828ae9f1e21d9edae7 0\tLICENSE" + }, + "Makefile": { + "sha256": "sha256:8cf08ec680ed6bd323a1ce8475ade731dbeebcd64ffd43ecd169308f8a727940", + "index": "100644 60a726a2e860ef12b1448f9acf5ddc9db12a0984 0\tMakefile" + }, + "README.md": { + "sha256": "sha256:1f11071d7fd651806da180272cc4aa4e3ae19d7bad0e321aa97c7dcaea7f2857", + "index": "100644 cd4e10cac66f00900bc7eff8c0d9c4ccb880890c 0\tREADME.md" + }, + "SCOPE.md": { + "sha256": "sha256:47b47468746617c84f8411ac671bb488ab740b4c3133401f5d7b55d3d024345f", + "index": "100644 edadb36c7888c96c055f117201b3031ec13eb92b 0\tSCOPE.md" + }, + "WORK-RECORDS.md": { + "sha256": "sha256:b6af9b1cb21e3a64b2ef8a5e732bc35c39cdeaef6af7a18f24824e8ec9fb5a76", + "index": "100644 34cf268862326a5832a7d0be9e84eb296e5601bb 0\tWORK-RECORDS.md" + }, + "deploy/kubernetes/caller-identity.yaml": { + "sha256": "sha256:45911f673d65667e3e60e32f41ba2db690677feea80085a400239dba4b0e80bc", + "index": "100644 89a8b93d3f32dd92dc591769e3a7ce3be4584f68 0\tdeploy/kubernetes/caller-identity.yaml" + }, + "docs/adr/ADR-0001-catalog-is-a-pointer-layer.md": { + "sha256": "sha256:7df0bb364276e382cbee9383e7e67d399b0ac1b0353246e0ab323e629e732a6d", + "index": "100644 9d593497f157a3612e5a9f152b049cb0d55aa6c0 0\tdocs/adr/ADR-0001-catalog-is-a-pointer-layer.md" + }, + "docs/adr/ADR-0002-conduit-not-broker.md": { + "sha256": "sha256:7dcc31732d774ddf2c98636b69ee12e2d74034836ed0def81b7e06461309b53a", + "index": "100644 042c619b308d2a5167ad32832a471e81807d701a 0\tdocs/adr/ADR-0002-conduit-not-broker.md" + }, + "docs/adr/ADR-0003-cover-gaps-never-silently-own-them.md": { + "sha256": "sha256:45b47c02afa575fbfe5be980e426c331a1d99bb9cd9c7a8de80bf8e319469f81", + "index": "100644 5fc474c8af910beb5f9a4fe70a9d41ae9af200fc 0\tdocs/adr/ADR-0003-cover-gaps-never-silently-own-them.md" + }, + "docs/adr/ADR-0004-agent-read-boundary-on-high-risk-lanes.md": { + "sha256": "sha256:e379f47fb56214ff0cc6abcddaaad33c6969cf386e11abeed105b4fef953c5a0", + "index": "100644 5069487322741e74d9b98eeea35e2100b91781e0 0\tdocs/adr/ADR-0004-agent-read-boundary-on-high-risk-lanes.md" + }, + "docs/adr/ADR-0005-implement-narrowly-route-broadly.md": { + "sha256": "sha256:31eafe4d8d9362a3446739d63c3af83fd9138cfdc6ad120086312a67dc0d27d0", + "index": "100644 b637aa8f2aef88738f3cad0cb13f5635688330c3 0\tdocs/adr/ADR-0005-implement-narrowly-route-broadly.md" + }, + "docs/adr/ADR-0006-enforcement-is-zone-scoped.md": { + "sha256": "sha256:e4e2dd963bad52e0ad8b0f8acfa939fc5f0c85356ae5182aff93775eb9e2ac30", + "index": "100644 e4228ea2c09502774db342086e040b43d268a836 0\tdocs/adr/ADR-0006-enforcement-is-zone-scoped.md" + }, + "docs/adr/ADR-0007-build-stage-stops-at-credential-disclosure.md": { + "sha256": "sha256:868f953688988b11ce48f4141833bbca51abdb4e86d5b495a8a905002830d7b0", + "index": "100644 b80d9ca973f3bd43e03d8ab0b5956c24a6e57b97 0\tdocs/adr/ADR-0007-build-stage-stops-at-credential-disclosure.md" + }, + "docs/adr/ADR-0008-grade-the-path-not-the-field.md": { + "sha256": "sha256:2e22863ba592802cceb40b32d395168b42ace747741f5188307505eaa89ff764", + "index": "100644 6c2f317757cff6104808a0e2917b0e479674e6b1 0\tdocs/adr/ADR-0008-grade-the-path-not-the-field.md" + }, + "docs/adr/ADR-0009-adopt-security-zones-as-a-consumer.md": { + "sha256": "sha256:73fff22177b4bec2c56ff737e06e4225eb02d39669be3ea1b723906245f878b8", + "index": "100644 461d7563c85c861087d0b232172ad0fe123d42fb 0\tdocs/adr/ADR-0009-adopt-security-zones-as-a-consumer.md" + }, + "docs/adr/ADR-0010-ops-warden-is-staff.md": { + "sha256": "sha256:064455bcb2870abf8e243f5a8c154e50bfc1c537cfba7996a792f9e314dd78ae", + "index": "100644 65e4ed2f11a5a3ac6597cf33bcf394734b5b9169 0\tdocs/adr/ADR-0010-ops-warden-is-staff.md" + }, + "docs/adr/README.md": { + "sha256": "sha256:123d96b0d19bb3ca7111f8daf5236519384a130ca8e8f4f19a55afac72ca704b", + "index": "100644 8678e25bb0a7d8605b45044f2496a16ae256ba52 0\tdocs/adr/README.md" + }, + "docs/credential-governance-break-glass.md": { + "sha256": "sha256:2f2adf0e08365ae30e14cb24644518bf10ee8e614ee0394d681c905358ddb81e", + "index": "100644 240e34c423be1a933287a4247f34f363dafc3dee 0\tdocs/credential-governance-break-glass.md" + }, + "docs/development/safe-unit-tests.md": { + "sha256": "sha256:b157c3e6956a41dcd9fc3912d0c7d09a664f11f08f0f8a8e4cae57fac9747cf7", + "index": "100644 6600c6a555dda9a7f6342019c4df2b833d968313 0\tdocs/development/safe-unit-tests.md" + }, + "docs/evidence/2026-10-03-emergent-pilot-owner-feedback.md": { + "sha256": "sha256:1a2d251554c8de7539464863772bef58c4c5d221d0d1b055450e232176e0710f", + "index": "100644 4dd6ef5faeac4664b266cf1fff8fc5a4b87c0b5a 0\tdocs/evidence/2026-10-03-emergent-pilot-owner-feedback.md" + }, + "docs/evidence/2026-10-04-catalog-scaffold.json": { + "sha256": "sha256:11dd2839b6b22619395d96dc81b0ef3774e0dbdd789d73665c0e476cf8a35c57", + "index": "100644 1eed223bc60922ad06fbcb6c615410b7eb285d25 0\tdocs/evidence/2026-10-04-catalog-scaffold.json" + }, + "docs/evidence/2026-10-11-security-layer-v08-migration.json": { + "sha256": "sha256:802a3976dec7645274a2736d68d198870a199338dca7f4b88b2acae51ec5470a", + "index": "100644 e41319f29a722622ae48c989ea723acb16121923 0\tdocs/evidence/2026-10-11-security-layer-v08-migration.json" + }, + "docs/evidence/2026-10-15-cust81-attended-dependency-repair-r1.json": { + "sha256": "sha256:97d8f55feddf35ab5931be1a816236e51e17761979eba89860c58f5715224f9d", + "index": "100644 aa49ca23f22d94f5a4dc872a50b5f8135f40fa9b 0\tdocs/evidence/2026-10-15-cust81-attended-dependency-repair-r1.json" + }, + "docs/evidence/RAILIANCE-WP-0026-T01-ops-warden-receipt.json": { + "sha256": "sha256:d2ba444ed16989590325697e69d25283dc75a9432c29a72e627e80bf9fd987e4", + "index": "100644 5674c4f3bb15370309f3e40c51d882f7b1422138 0\tdocs/evidence/RAILIANCE-WP-0026-T01-ops-warden-receipt.json" + }, + "docs/evidence/WARDEN-WP-0027-T02-drill-preparation-checklist-2026-08-22.md": { + "sha256": "sha256:5462b69104d31849cd73c308bb092c16e1a38b7d7e0a48c492a87e8207fdd3fa", + "index": "100644 801442f28009608421c827b48cb25f81422af69a 0\tdocs/evidence/WARDEN-WP-0027-T02-drill-preparation-checklist-2026-08-22.md" + }, + "docs/evidence/WARDEN-WP-0027-T02-drill-scenario-2026-08-22.md": { + "sha256": "sha256:ffa69764ad391db633f57ac70444e5781eee698bf9e362dfef31614fa43152dc", + "index": "100644 99fb0cef4d03808547c2da0fe206ff81cea17144 0\tdocs/evidence/WARDEN-WP-0027-T02-drill-scenario-2026-08-22.md" + }, + "docs/evidence/security-zone-admission-2026-08-22.md": { + "sha256": "sha256:7ed1080fb7aeb7f02f98323a1a46f70efef1953d25bb521caeaebe865150d961", + "index": "100644 9ffce906ae19e2174b870e5e001e799aa683ef0f 0\tdocs/evidence/security-zone-admission-2026-08-22.md" + }, + "docs/layer-declaration-precedence.md": { + "sha256": "sha256:e5b9bfeb7a3ac444ee50338455643489c91cf91ae68ba5931837b326bebf4947", + "index": "100644 2f1f199b74906b8de9e458eeb88f992c6e8fe754 0\tdocs/layer-declaration-precedence.md" + }, + "docs/reviews/2026-10-11-case-execution-kernel-independent-review.findings.json": { + "sha256": "sha256:d583435077e15cd5239c1c748d1fc079a73b70d8a9ef6c61d79869e93aa1699b", + "index": "100644 24375f495386190e8d1d5260cb893af405df1111 0\tdocs/reviews/2026-10-11-case-execution-kernel-independent-review.findings.json" + }, + "docs/reviews/2026-10-11-case-execution-kernel-independent-review.md": { + "sha256": "sha256:12837da13771e8e2e42dabbf9603911134ebe907501fbf94591cd48c829dea15", + "index": "100644 e61b098243b2093e45feba72a7f98a0235d8397b 0\tdocs/reviews/2026-10-11-case-execution-kernel-independent-review.md" + }, + "docs/reviews/2026-10-11-case-execution-kernel-independent-review.sources.json": { + "sha256": "sha256:276012c3cf8e3698b4b4a0425fab9ced83c56442937d036a2063b92173d507eb", + "index": "100644 4c818035d01ec96c14aac581df2e18b33dbf8486 0\tdocs/reviews/2026-10-11-case-execution-kernel-independent-review.sources.json" + }, + "docs/reviews/2026-10-16-browser-producer-pin-refresh.md": { + "sha256": "sha256:0279fc83885e94ead2048afa1564b8c46d879365402807df357281abcdcc7631", + "index": "100644 be35190d380cf4cd1b0d7febece2b24f32c64bd4 0\tdocs/reviews/2026-10-16-browser-producer-pin-refresh.md" + }, + "docs/security-case-execution-proposal.md": { + "sha256": "sha256:78ab1439e4c5beb205aeccf15b1b2e706511be55ab195c5a3aa682f326c7c77c", + "index": "100644 f061d43818ec328ed4ee18ac02fa22cf5ceb1873 0\tdocs/security-case-execution-proposal.md" + }, + "examples/inventory.seed.yaml": { + "sha256": "sha256:2403c449b3de5553bd06f6dacb0cf953cd48c949b26a5041eef92c3ff8e87647", + "index": "100644 49ce69f8dab5c24e8d80073f657a7785cd5e3550 0\texamples/inventory.seed.yaml" + }, + "examples/posture-conformance.example.yaml": { + "sha256": "sha256:139a74234108e5a4d7eb05c5d1d221cb48fd77703a1542056644c843df62e653", + "index": "100644 1f5b466d242cc99b5c75d3f67fd6fdb403284f7b 0\texamples/posture-conformance.example.yaml" + }, + "examples/rapp-qonto-posture-conformance.yaml": { + "sha256": "sha256:bd8b42cbf82d6d092f330ed73953a1739e53f9b00874673341a8f7209e2e1659", + "index": "100644 188ef36a376ff67ea5fc0ca33fe0051a8b0a885d 0\texamples/rapp-qonto-posture-conformance.yaml" + }, + "examples/warden.production.example.yaml": { + "sha256": "sha256:c4bdf3cb8e84cac8597e8e8eebaab86bcea371f503d73aa70774cf49b903fe05", + "index": "100644 a00403048790bfd90ea472c6123092ebf3734d70 0\texamples/warden.production.example.yaml" + }, + "examples/worker.env.example": { + "sha256": "sha256:fc6b81979a87eb67a15951c20740d368922398133ad6aa1423914a5419434326", + "index": "100644 e304e86c6511eef17e071942f2d77c4d55ac6554 0\texamples/worker.env.example" + }, + "history/2026-06-17-intent-scope-assessment.md": { + "sha256": "sha256:447bd037c37f5b1dc53ada6e85b21f42febcb5b1f3b74efcf06786042fbbba1f", + "index": "100644 bbb26cd4740a67404bbceee0c27e57ed3884e28b 0\thistory/2026-06-17-intent-scope-assessment.md" + }, + "history/2026-06-17-intent-scope-reassessment.md": { + "sha256": "sha256:a5d0eb2e71736166193df9b2e3789618784a8b8e788ce89d667a1d127bbf6802", + "index": "100644 f98c4c09a3e70a9622430d31b60efbd4a4a9f186 0\thistory/2026-06-17-intent-scope-reassessment.md" + }, + "history/2026-06-17-openbao-production-verify.md": { + "sha256": "sha256:532cc65c88e83a405138ab3e178e8f6648e982d82b706a12b7478e8d41298cd9", + "index": "100644 2e6d6075d9eca079f852905e9716a73ec3d325a2 0\thistory/2026-06-17-openbao-production-verify.md" + }, + "history/2026-06-17-post-wp0007-reassessment.md": { + "sha256": "sha256:146d3eaf30216a2bd5e8de6be80e8d8f48915098a1881ebbb008dbc2b1daed42", + "index": "100644 08dac5f0fddc09a224bb39dfb4b93907cf7a3e73 0\thistory/2026-06-17-post-wp0007-reassessment.md" + }, + "history/2026-06-18-access-routing-intent-shift-assessment.md": { + "sha256": "sha256:e959bcb5282f10ad068773d2be1b44477a866fad6ce0995b0808672982cb6349", + "index": "100644 b66520a110197e618d8e5694e6680b87b98ccac3 0\thistory/2026-06-18-access-routing-intent-shift-assessment.md" + }, + "history/2026-06-18-post-wp0008-intent-scope-reassessment.md": { + "sha256": "sha256:46130cace84fc6585b8c78431c414a481088bbdeb9e364b26c9d597c0e739542", + "index": "100644 115e573226f1edc1c3f452f5bde5c0e2f78c7e39 0\thistory/2026-06-18-post-wp0008-intent-scope-reassessment.md" + }, + "history/2026-06-23-flex-auth-policy-gate-local-smoke.md": { + "sha256": "sha256:d1ce47c1033e158ba0da987b08022e2bb4dddd25b402e893536bd2fe8749594b", + "index": "100644 f24cc76a749a20e4e4013742ccd1e81d3844932d 0\thistory/2026-06-23-flex-auth-policy-gate-local-smoke.md" + }, + "history/2026-06-23-flex-auth-policy-gate-production-smoke.md": { + "sha256": "sha256:cb78e3c8ad9be38fdb1660e4b643ee6f98bdd03817f7780cdf82ede5b1014e25", + "index": "100644 d47258cfb49d063e4dd2e1bcb976a0046339a197 0\thistory/2026-06-23-flex-auth-policy-gate-production-smoke.md" + }, + "history/2026-06-23-flex-auth-production-pickup-suggestion.md": { + "sha256": "sha256:ac0da5c14292edaeda3e3e1765cb12c35e6ae657af92abea0e6d4ca2e5adee5f", + "index": "100644 2456db9b0f86bceba0900574d681e70e77428f2d 0\thistory/2026-06-23-flex-auth-production-pickup-suggestion.md" + }, + "history/2026-06-24-intent-scope-gap-analysis.md": { + "sha256": "sha256:4c6ec261d3f4e44e3b9f851854410443518beed2c4159ed767d01835bd8a69a9", + "index": "100644 983e07d10464298a1d3e5f72f4de02ed8a27052f 0\thistory/2026-06-24-intent-scope-gap-analysis.md" + }, + "history/2026-06-24-ops-bridge-cert-command-pilot-coordination.md": { + "sha256": "sha256:1450f23d0c2bdb25f0a840b9106a0bb44ac1f67e82908dac77123d34340dc7f1", + "index": "100644 484585cc185a807fd18cd6bd56f25d0d28a15e62 0\thistory/2026-06-24-ops-bridge-cert-command-pilot-coordination.md" + }, + "history/2026-06-27-operator-access-assist-charter.md": { + "sha256": "sha256:69c44d898619ab75928322f9ea9fe581ad55d81d57cde6b986212a8084aa0d3b", + "index": "100644 26717a45b7bc368cdd08e028deb7ca13bec0c10c 0\thistory/2026-06-27-operator-access-assist-charter.md" + }, + "history/2026-06-27-workload-security-posture-charter.md": { + "sha256": "sha256:a8f7837ab6350a64099af57c9b49ad49e987dac2ce1cda62950b4bdf1b93fc99", + "index": "100644 f2b84fae2bc42bfc147d7df7463aa33b57fe7f54 0\thistory/2026-06-27-workload-security-posture-charter.md" + }, + "history/2026-07-01-intent-scope-gap-analysis.md": { + "sha256": "sha256:be282aa4bd64c4052cf850e382c031c2a95e820ae6d78ef8d12ef733d6a9251b", + "index": "100644 29fdc040f5d8fc0c21b8dcafa0c9dca6170d5449 0\thistory/2026-07-01-intent-scope-gap-analysis.md" + }, + "history/2026-07-16-credential-disclosure-lessons.md": { + "sha256": "sha256:970239dc7b56c71220658089b6e5754db1b674371e1fa7ee64de7e6d8f3b0059", + "index": "100644 19e2e35dd4f3a8a63441356cf21aebbcfba80abc 0\thistory/2026-07-16-credential-disclosure-lessons.md" + }, + "history/2026-08-11-delegation-surface-assessment.md": { + "sha256": "sha256:d51d322670909d7267aa9140d33900f18eb8ca7511cfd73eb3bfa0cad3682188", + "index": "100644 43199d05fcb63efc796bbd0460a37371ed0c884d 0\thistory/2026-08-11-delegation-surface-assessment.md" + }, + "history/2026-08-19-flex-auth-caller-identity-evidence.md": { + "sha256": "sha256:5f63ff0d5cd258f18d03e940bf830b3a6d63d628d14a068a09c9fe298568b422", + "index": "100644 ba29ccd629e3096a109124d33fb016c6cee1de31 0\thistory/2026-08-19-flex-auth-caller-identity-evidence.md" + }, + "history/2026-08-28-security-layer-model-assent.md": { + "sha256": "sha256:866589414adc56f23e2206819b02120b9cc462a24593a4ddaae5d7b476956fa3", + "index": "100644 286b855e1e79a19d8e8625e0e762e0688e8855c3 0\thistory/2026-08-28-security-layer-model-assent.md" + }, + "history/2026-08-29-layer-model-v04-review.md": { + "sha256": "sha256:94a7271accff22a0d60e021f28fc46776faba172e87056292d994f38fb4dcd1f", + "index": "100644 a54839984baa66267f810c1fe6d6807054cf080c 0\thistory/2026-08-29-layer-model-v04-review.md" + }, + "history/2026-08-29-layer-model-v06-review.md": { + "sha256": "sha256:5d0b418a9098377c7a5c4feb9ca64e5573acc8ba01deb76118ccc7d8f4281703", + "index": "100644 857a78a99631b6504b34724eb04912177e22d3ac 0\thistory/2026-08-29-layer-model-v06-review.md" + }, + "history/2026-08-29-v07-scope-intent-assessment.md": { + "sha256": "sha256:4f36f97a580f4d74d15c326b1eb400a7ed19c479c8090c865d7827243c8ee2f2", + "index": "100644 f8a21965f0db36c901f757fcc40a7bcdcedcfb5a 0\thistory/2026-08-29-v07-scope-intent-assessment.md" + }, + "history/2026-09-09-layer-model-v08-review.md": { + "sha256": "sha256:622b1b7c5ecf4c6ad0b562c369cc589ded5d0a753eac4aefd0179e6ddd945f21", + "index": "100644 ac4ddd85f12cca05c9d0d2b7ebd7743987cf6103 0\thistory/2026-09-09-layer-model-v08-review.md" + }, + "history/2026-09-21-gate-house-a16-a17-response.md": { + "sha256": "sha256:7b0af166e4ba36b525d375fe119fe8b6bd41004012191ed762ab7032761a61c5", + "index": "100644 3c4b72d09477789a990756f6359464798cca42c7 0\thistory/2026-09-21-gate-house-a16-a17-response.md" + }, + "history/2026-10-08-oidc-rp-follow-through-review.md": { + "sha256": "sha256:673f8877c3d2979a7005b3a711f6127bd1e12a8237dc48f7c581a344f9e66e66", + "index": "100644 f254ee41653837558c21ca5417560ee5fae25269 0\thistory/2026-10-08-oidc-rp-follow-through-review.md" + }, + "intakes/intakes.md": { + "sha256": "sha256:75606faa2302fcb056c19b444bcf4dbf212d8680820420a73ef15c47880f6f3d", + "index": "100644 aaebce3998bf432977996287ffcdd71dc8c5a331 0\tintakes/intakes.md" + }, + "interfaces/reviews/WARDEN-WP-0027-T02-DRILL-20260822-01-railiance-infra.json": { + "sha256": "sha256:d8522dd87afa04d51b00a19d587dd80aaa524186eaa2b0b59991f55bd910196d", + "index": "100644 1eb023dd50dccf31310959c946e2a900f86208f6 0\tinterfaces/reviews/WARDEN-WP-0027-T02-DRILL-20260822-01-railiance-infra.json" + }, + "interfaces/reviews/WARDEN-WP-0027-T02-DRILL-20260822-01-railiance-master.json": { + "sha256": "sha256:b20ef90e6a1f9cb1549da1d2988f99e40c882d90412ac10fdcd6f01d1c576458", + "index": "100644 ca5457d52a01da3adb5772639d446002a33bccab 0\tinterfaces/reviews/WARDEN-WP-0027-T02-DRILL-20260822-01-railiance-master.json" + }, + "interfaces/reviews/WARDEN-WP-0027-T02-DRILL-20260822-01-railiance-platform.json": { + "sha256": "sha256:56cd38e1d7c7785c14d2e63716e0251073a5d3bec860758ed1b9c0786d471a76", + "index": "100644 587a7c23cef4e3789c2e670e2e41257f1bf32c95 0\tinterfaces/reviews/WARDEN-WP-0027-T02-DRILL-20260822-01-railiance-platform.json" + }, + "layer.yaml": { + "sha256": "sha256:5a6d5fc0570fedbfa312a33796e6bdbe800ea1a761552105918cb4444b30fa09", + "index": "100644 a9449976ce79d240afe50709dfe774cb9c117e91 0\tlayer.yaml" + }, + "pep-stance.yaml": { + "sha256": "sha256:422e5984b2bb78f275c30a5442564845173743e94d146ff4f4ac0152b1d1dc5a", + "index": "100644 40d69ca9f824d15efb78543895460b1f81bc27a7 0\tpep-stance.yaml" + }, + "pyproject.toml": { + "sha256": "sha256:c8f7c53f0bd0f8ae4e7242342fe47b1f36d47fd221964782a3a6953e0f804e01", + "index": "100644 814749e4dbe7b3916287763c03846a55e5a2929c 0\tpyproject.toml" + }, + "registry/README.md": { + "sha256": "sha256:921c03c506d3e1c12b4796c18ac1cb74010e4f0bbada679f68edf55bda2518bb", + "index": "100644 569abe99c95e163d39048f4b02ccb47165751c7e 0\tregistry/README.md" + }, + "registry/capabilities/capability.security.access-routing.md": { + "sha256": "sha256:e3d5b2737fa743174216e0b106cba8ae861b9a1fd7797331a041ffa941a3beae", + "index": "100644 dbab2a00c8e6db979500feb7fb23ad52d11fa0ae 0\tregistry/capabilities/capability.security.access-routing.md" + }, + "registry/capabilities/capability.security.case-follow-through.md": { + "sha256": "sha256:8a69a28b2f17ee247305fae6201decb0805ff903ced37ab91d8c6c5dbe8a681d", + "index": "100644 1268c238b99bc6e361656960707a1c221bc567d2 0\tregistry/capabilities/capability.security.case-follow-through.md" + }, + "registry/capabilities/capability.security.ssh-certificate-issuance.md": { + "sha256": "sha256:f48c749ec3342b57d94866c847be5f3ff10934bfa86b5953b729afde6d3e6b5f", + "index": "100644 91e05c85ae3588603f044d8636df3276788c54b1 0\tregistry/capabilities/capability.security.ssh-certificate-issuance.md" + }, + "registry/flex-auth/production_registry_snapshot.json": { + "sha256": "sha256:3c3d6654790556bcc23a03adb04f04b96e82ba8335600cb9b816799a22252bf4", + "index": "100644 7ebb0af4b5f0575280f085a28672d9434fd3d3ed 0\tregistry/flex-auth/production_registry_snapshot.json" + }, + "registry/flex-auth/zone-resolutions.json": { + "sha256": "sha256:9e23793c25253a43c9ced53d4673a4cab07b59b7a4b5cac30c89ebdf32208c2d", + "index": "100644 cd79cd78b6adbfe381eef82cdeabb4777dee7af9 0\tregistry/flex-auth/zone-resolutions.json" + }, + "registry/generated/high-risk-data-paths.yaml": { + "sha256": "sha256:5cd9c03b86751f7197cb5661a53a86d59765137958b215ec14bb343156f216d0", + "index": "100644 20346be23cd26cec2006806c25019fd8274ade9b 0\tregistry/generated/high-risk-data-paths.yaml" + }, + "registry/indexes/capabilities.yaml": { + "sha256": "sha256:4d3aba70ead10c826814dc766f9d23e3e0ce52475330acf57905bf62b01c819c", + "index": "100644 7f4d6496e098408241cbe978d8007bcef51ba2ba 0\tregistry/indexes/capabilities.yaml" + }, + "registry/policy/security-posture.yaml": { + "sha256": "sha256:389358b98534eee386079bd5df81e6da1abf40c6244c1b3323015bd1146c3157", + "index": "100644 0b618ee46f8f92e85056382b0a059ca6f3621463 0\tregistry/policy/security-posture.yaml" + }, + "registry/routing/catalog.yaml": { + "sha256": "sha256:ba9634a92e584dac8c42e8624ab52adce06e79a285209cb64c0daa4dac9cd7d8", + "index": "100644 7f4735e0e0b6a62426a77f8aab0264db64e23ba0 0\tregistry/routing/catalog.yaml" + }, + "scripts/build_flex_auth_registry.py": { + "sha256": "sha256:8074c845be00405024ee4d9b02987b872c2dc324cb94a67037e269ccc006f003", + "index": "100644 00ae652f27a7b4baec779d41e6cdb8aeec21b834 0\tscripts/build_flex_auth_registry.py" + }, + "scripts/check_agent_read_boundary.py": { + "sha256": "sha256:d8ce6f0793c33ec9cc0200ce907b6fc9c0e7dfcc181415831d051ea712d6f7ed", + "index": "100755 18bbf0111bef6aea4a7e8b6e3a064e382edfae5d 0\tscripts/check_agent_read_boundary.py" + }, + "scripts/check_flex_auth_manifest_coverage.py": { + "sha256": "sha256:7b75451b41a79c858462de93d70b6eb4da31db31b8cd5f636b0fa2d866eef17c", + "index": "100644 755ba024177c8accd3df1123fa64a8422afc5220 0\tscripts/check_flex_auth_manifest_coverage.py" + }, + "scripts/check_layer_conformance.py": { + "sha256": "sha256:7262fae9fae7ed454c0765cc6859e83a74e59ef6eade849991e0b8ab9c66757b", + "index": "100644 d05f234f8b39981bdf0cd63a026ae0bce5d833d0 0\tscripts/check_layer_conformance.py" + }, + "scripts/check_policy_caller_identity.py": { + "sha256": "sha256:6b3050ef2799297e95952a05f47d87e966e256e7f23c5dfae70659aa458f8c15", + "index": "100755 d2a4324c0458b966b54be8bdb59b941fbd02db78 0\tscripts/check_policy_caller_identity.py" + }, + "scripts/check_principals_drift.py": { + "sha256": "sha256:f6ef9b036e398d59740057ddeeffbad964acb793cab280abe8188ace55832696", + "index": "100644 e69a4a20675a9dafcb78a59aa589f46dcccb15e6 0\tscripts/check_principals_drift.py" + }, + "scripts/check_secret_posture_conformance.py": { + "sha256": "sha256:10c1f752d8831671d57ab5149e847413ef8a83bf407f5e8fce45cbc180848efe", + "index": "100644 587656672f4d1f3914d1d93baf6238bc4acc37ea 0\tscripts/check_secret_posture_conformance.py" + }, + "scripts/check_tunnel_cert_readiness.py": { + "sha256": "sha256:acb2576f0a28161b58954ba264946163a99a3b4ff93789ee783443355d115c17", + "index": "100644 597b6eb23cecbbb6f8fe12e3439e15d74fda6f1c 0\tscripts/check_tunnel_cert_readiness.py" + }, + "scripts/emit_high_risk_paths.py": { + "sha256": "sha256:5e95f7ba6d00f923adc41913e3ca6063209416e3133955d69ad59920149fd9fe", + "index": "100755 f8d533d3192e4ad772a37d80e0fb14d5ffa24c45 0\tscripts/emit_high_risk_paths.py" + }, + "scripts/install-worker-timer.sh": { + "sha256": "sha256:a05cec628a8d4b76727ba2d73e26f8b344919e97cf2a62037725bf65248ac725", + "index": "100755 6a9ca49bdb259f6846b243cfa6f11f0152c3bcaf 0\tscripts/install-worker-timer.sh" + }, + "scripts/policy_gate_production_smoke.sh": { + "sha256": "sha256:756bc425c8d225bbb9453c97369fbcfa454ed22094125cf9389b9c1df418271a", + "index": "100755 3aad4a44144db6ce96f6651a1d00c5e45bd94387 0\tscripts/policy_gate_production_smoke.sh" + }, + "scripts/report_coverage.py": { + "sha256": "sha256:2bf180427a2878cc2ec09e69d2e4ceca09d3e53316678c2c40aa61314459bfe2", + "index": "100644 11955ea48c2eb4a0791b7be26292eb2c9d1a50a9 0\tscripts/report_coverage.py" + }, + "scripts/report_workload_join.py": { + "sha256": "sha256:3df0d33e680a9f3bff82cdebe8ff5528deb09e103cdcf7f376c1b1b7cd051361", + "index": "100755 bc8d9be95de35537bedfdbf496a23002f2e90078 0\tscripts/report_workload_join.py" + }, + "scripts/run_unit_tests.py": { + "sha256": "sha256:86880094b33114fdefb26691140b5c9a516cdba5fe6ddabd70fd5b7f18e9d2aa", + "index": "100644 6c812b20d52d1ece1880d21439d0ef02cde69697 0\tscripts/run_unit_tests.py" + }, + "scripts/worker-tick.sh": { + "sha256": "sha256:dacd9fcb6a0112a21ef57d5f5ac2514c508d8ce93ddcbfd368850ad3ef8e77d4", + "index": "100755 3b7672903a21582c80afa239a9430ee163c88356 0\tscripts/worker-tick.sh" + }, + "src/warden/__init__.py": { + "sha256": "sha256:047e0feba479474235f0707a207655ecfddfb33cd4f54069134419b8ca4ea24a", + "index": "100644 4525f1e29bd8bc5a6cacc403521165b5980a57fb 0\tsrc/warden/__init__.py" + }, + "src/warden/access.py": { + "sha256": "sha256:258d45d2f84b54b2464373ad4d7d6df6ff95b8e8d60f5e85ceb2d962fcfa8a61", + "index": "100644 1f217d987a41dae1d015b5e25a45c7a9b922d131 0\tsrc/warden/access.py" + }, + "src/warden/audit.py": { + "sha256": "sha256:6b5b8fe053064d3905294bfde1b691fcca8a0806c889e52a49494470d29c24a0", + "index": "100644 1132c74155b0b83017a9c3afd4240724b2f00658 0\tsrc/warden/audit.py" + }, + "src/warden/ca.py": { + "sha256": "sha256:d5282819c5d29386fd59a7dc46d1abdc01e99fc6838a1a6637f90868389fe557", + "index": "100644 68aefd8b0aca3e729cc8413000044179de6fec52 0\tsrc/warden/ca.py" + }, + "src/warden/caller_identity.py": { + "sha256": "sha256:747edfaceecd470981949253bda0c3bd2f487d40a9a2f77c2cc1eff3f34f04f7", + "index": "100644 d4b7a98f1250889cd9724f45be03e100899e3e3b 0\tsrc/warden/caller_identity.py" + }, + "src/warden/case_inputs.py": { + "sha256": "sha256:1334b0cd9897e763cfea2d306e997c659f3f284ecc3f9612140c2104835da7c7", + "index": "100644 9c876d793a9cd713b89cd47ed520a5817361ff1d 0\tsrc/warden/case_inputs.py" + }, + "src/warden/case_plan.py": { + "sha256": "sha256:9352ae8683d1181980c4ff38524582e4be448d33c85b558f60582c1e5bb5bbaa", + "index": "100644 15cb14bf999e54f765db2c5815a351057d7fe0e6 0\tsrc/warden/case_plan.py" + }, + "src/warden/case_receipt_state.py": { + "sha256": "sha256:a2cda7f187e77bd76d4d209505638de44a587fae0bc033ec75c23ee9ea9f73bc", + "index": "100644 03a53e99887816e65f45d556776cad77bad59ed4 0\tsrc/warden/case_receipt_state.py" + }, + "src/warden/case_type.py": { + "sha256": "sha256:7b659b8d682863cd28df24025be4b10dd7ca3df724350a22d360c6af9615bca7", + "index": "100644 1454cd364317a81edaf6db49960d592534030a8e 0\tsrc/warden/case_type.py" + }, + "src/warden/cli.py": { + "sha256": "sha256:196cd829d3dbfbd2333598a983687bde1f9bcdfadef95b2fd1d237c4a5f060a9", + "index": "100644 d6c13d532d59601c4f8f53750996d86dd6596b19 0\tsrc/warden/cli.py" + }, + "src/warden/clock_attribution.py": { + "sha256": "sha256:5fcf07a2525a6a250442e14b6f6229f7db2a6ca02fc6aac23cdaa4c1a78c63eb", + "index": "100644 6f7c04a913c3c4587a671e80e4962f55204384af 0\tsrc/warden/clock_attribution.py" + }, + "src/warden/config.py": { + "sha256": "sha256:8a857faa3811b00303d4d5c904d69255ebdaff3239e8516f97e6606e53b46924", + "index": "100644 d0a612a7f3228944de0dc6f5340e6dd5bcaed2eb 0\tsrc/warden/config.py" + }, + "src/warden/desk.py": { + "sha256": "sha256:2499120392a5a1c0fd8f423d5b5c787c75a4efb9a986a1b7bcb85eae13423e85", + "index": "100644 3bbef1f59995e0411dc5d373a1b32593d2724180 0\tsrc/warden/desk.py" + }, + "src/warden/doubles.py": { + "sha256": "sha256:5460e07f5bd0f51a81d3f3c0ac84efde65ca9130b1039f94ee22ca484976a9de", + "index": "100644 57603be0f575a309678e4caab514d0a593460821 0\tsrc/warden/doubles.py" + }, + "src/warden/inventory.py": { + "sha256": "sha256:9401db92d7cbf3bea962b97e83ef2c252a19c69ab94ce4836ba58f68638cb311", + "index": "100644 ef60ba349889303113bbcd625af0ea4cbc7f17dd 0\tsrc/warden/inventory.py" + }, + "src/warden/mask.py": { + "sha256": "sha256:0876412d453fa84109dc8ee0468449f40cf4d3421b056f30fc205f0f59ec494b", + "index": "100644 bd8a4621aefb746cb8a4d10c29c50d24d4a807ca 0\tsrc/warden/mask.py" + }, + "src/warden/memory.py": { + "sha256": "sha256:ecf5f7ccabb669b56bfca3a109b10bbe8437bdd2ea30a47a4c08570f97d7be2a", + "index": "100644 0296e75dc37f16fda6efc5bdeb89ca702930da68 0\tsrc/warden/memory.py" + }, + "src/warden/models.py": { + "sha256": "sha256:f4100b02c5d96d537980e00d4b874159cd5822ba8219f1f533a2516912b7bd85", + "index": "100644 fcc0aecc2f1880b3e6d9938f03fd6ac16516e01a 0\tsrc/warden/models.py" + }, + "src/warden/openbao_caller.py": { + "sha256": "sha256:7e6d07827d00eae7de3b2367c97bdcda1a13d6559627201a4ba09a0e42d46a17", + "index": "100644 548c15182d4d1b0c42a7c35ab7ab4138617788b5 0\tsrc/warden/openbao_caller.py" + }, + "src/warden/plan.py": { + "sha256": "sha256:001b3197e644221344d52e6b1594eb8eae78d10e73d18ed31273505909f3916b", + "index": "100644 1b568310a1438032141605a74ff7088639c86600 0\tsrc/warden/plan.py" + }, + "src/warden/policy.py": { + "sha256": "sha256:aac46f538e986731cd841581c91efe004b8c1940966b954ef635780a719dada4", + "index": "100644 34762594875913bb6b2b5888a4dd816458cd8bb6 0\tsrc/warden/policy.py" + }, + "src/warden/posture.py": { + "sha256": "sha256:1bb60c4dd4634ea42cb130ae1325d7415adf43096906bde2515396c368256e33", + "index": "100644 563191ef6f21303f5927c1ed08fc690f6cb026f7 0\tsrc/warden/posture.py" + }, + "src/warden/proxy.py": { + "sha256": "sha256:69649bcf8979e4ed7f9104e927b458827a355c4846143367f4cd49c8b89b96da", + "index": "100644 b4eca4141ed111bc38a7c87696dd378fcf54db62 0\tsrc/warden/proxy.py" + }, + "src/warden/routing/__init__.py": { + "sha256": "sha256:e9124811ebe11ad32c98ab462b2eed634d4ddca08792981d0f353b223a239902", + "index": "100644 52254b34b1c751f23cb300b2b8576a111cdb12d8 0\tsrc/warden/routing/__init__.py" + }, + "src/warden/routing/catalog.py": { + "sha256": "sha256:5b95810df9e6102a33d3a116a096cd75292c8572bad721fe6baa772caacc9bc3", + "index": "100644 b776d09d4e313ec08c88f1e611ef070fa12900f5 0\tsrc/warden/routing/catalog.py" + }, + "src/warden/routing/models.py": { + "sha256": "sha256:b85372b2572a49af62e9534f26a33963b894633c7cd43dd2a28416b8959cba3e", + "index": "100644 c691b33ba03675196f926a654c680159c197bc91 0\tsrc/warden/routing/models.py" + }, + "src/warden/routing/scaffold.py": { + "sha256": "sha256:5079c8e51f8d487eae3f322a66324bd70cefb637bb28f46c861032de8ec54aa2", + "index": "100644 c82ec38993654ee5fa493463521c54a52ed4597d 0\tsrc/warden/routing/scaffold.py" + }, + "src/warden/scorecard.py": { + "sha256": "sha256:0fa5aef34aeb004fa7fcfabc287759cc47421ca5244c1f31fc467b22a653353c", + "index": "100644 e30c50e644554b95ed8facc7e2124d26b08dd608 0\tsrc/warden/scorecard.py" + }, + "src/warden/scripts/__init__.py": { + "sha256": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "index": "100644 e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 0\tsrc/warden/scripts/__init__.py" + }, + "src/warden/scripts/ops_ssh_wrapper.py": { + "sha256": "sha256:e8c289882f2ad439d2eb32f9a871967420fefaffe745c9271c1a2e948fbdfe50", + "index": "100644 5928a9ea9f10ab1bee18ddbf9ee33c99f582e5d2 0\tsrc/warden/scripts/ops_ssh_wrapper.py" + }, + "src/warden/taint.py": { + "sha256": "sha256:8c3d161d18d429d026aad715ac01e2d33e0f4e84ac03fbaea3cea15017ad39a1", + "index": "100644 abd18f7021961bfcf5aa227bb2a1f2584ef74265 0\tsrc/warden/taint.py" + }, + "src/warden/vault.py": { + "sha256": "sha256:860b8c9f498b3955b363a74dd74087b6d0c399599ef22b951a076ee33c95929f", + "index": "100644 266868877da50b5002dbba23475e37a04b176542 0\tsrc/warden/vault.py" + }, + "src/warden/vault_hints.py": { + "sha256": "sha256:0d158ffcc3a93d5442df5fbe13d4c1e3b3159dd60301530bbdae6db9bc9c709e", + "index": "100644 4b6fb8da29246ce9c58b3ac9f60824e990ee68a0 0\tsrc/warden/vault_hints.py" + }, + "src/warden/worker.py": { + "sha256": "sha256:d7c2b391b36033d44d8c6841b9bce18a05c74b41ef2910b91689820b6a1cb44e", + "index": "100644 9f54db067ce4261459a582daeb9258b100c650ff 0\tsrc/warden/worker.py" + }, + "systemd/ops-warden-worker.service": { + "sha256": "sha256:8cc2f543711013a8a801e8a679d760c503f82b93ad72ba0c3bf4362c7aeef607", + "index": "100644 a412dc630d0c28b3ce1d65d291ab91716b06447e 0\tsystemd/ops-warden-worker.service" + }, + "systemd/ops-warden-worker.timer": { + "sha256": "sha256:9e2b8c8c921dc424046c7b1c24e11b54a0b79fcd18cf8f346779dad0a63dd868", + "index": "100644 52be230a6bc72be8e6f3f88e29f9d3b55c2afa47 0\tsystemd/ops-warden-worker.timer" + }, + "tenancy.yaml": { + "sha256": "sha256:a81765dcd92d44313c56ed2856b94deeb7f6aaf3eb4006525ddaa6611d8ce3ce", + "index": "100644 fdd61bbffd082792c04c7d149ec57aac141e7596 0\ttenancy.yaml" + }, + "tests/__init__.py": { + "sha256": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "index": "100644 e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 0\ttests/__init__.py" + }, + "tests/conftest.py": { + "sha256": "sha256:40ae0e4e7e57e5daa13f2997b27b7fa30ac86ec7ac1800e3e65a2247d7e3edfd", + "index": "100644 f8f462879d0b79c5fe61eb34a6325b2eb72ef089 0\ttests/conftest.py" + }, + "tests/fixtures/workload-coverage/provenance.json": { + "sha256": "sha256:a4a203c1bd7bc5b8039d1b2525bea65dbae288a3f552969e4218cd5abda96990", + "index": "100644 6340fb1dde08ba60c546637b0b32b3decf148301 0\ttests/fixtures/workload-coverage/provenance.json" + }, + "tests/fixtures/workload-coverage/rapp-core-hub/declarations/rapp.yaml": { + "sha256": "sha256:9ce902da0c77809f1094a634244652835b162f59682e9fa6923d8c8aa4ed4a3c", + "index": "100644 4f7bf9c1a406202e9185ab17193de68b1b53c5f7 0\ttests/fixtures/workload-coverage/rapp-core-hub/declarations/rapp.yaml" + }, + "tests/fixtures/workload-coverage/rapp-issue-core/declarations/rapp.yaml": { + "sha256": "sha256:a1956deecf2f0fbca44549e5ea5e8f1c4b74ebf91a9482c64c982491af0d923b", + "index": "100644 0fda74555073cc5eabb6ae5e71cfb20f18c0140f 0\ttests/fixtures/workload-coverage/rapp-issue-core/declarations/rapp.yaml" + }, + "tests/fixtures/workload-coverage/rapp-qonto/declarations/rapp.yaml": { + "sha256": "sha256:15aa9809e8d6a120c516be5ce9adfb72c00382140c171e791083ad117f503b3f", + "index": "100644 7392f759fdb3ebea24bb68555c85082d2d3560b1 0\ttests/fixtures/workload-coverage/rapp-qonto/declarations/rapp.yaml" + }, + "tests/test_access.py": { + "sha256": "sha256:89c8e57929a83da409ddd327bd0b3a5b48399c888523e3e599510b437853873d", + "index": "100644 1736a45227a087860da4c6c730c1c33dd8e08172 0\ttests/test_access.py" + }, + "tests/test_agent_read_boundary_check.py": { + "sha256": "sha256:cda637e2ab179cec155989d203ec6e74ae7489a3d68d55f85ab0d6764c829443", + "index": "100644 ec697d10badf03b97603c195adb453acbe109aca 0\ttests/test_agent_read_boundary_check.py" + }, + "tests/test_audit.py": { + "sha256": "sha256:74efa3dcfdb05e21b28b0d22c8770133fcea001c66cc7a80bd9e6af2c87636ba", + "index": "100644 9ca5c0bafffe30d5b20891618c7a357d14a9053d 0\ttests/test_audit.py" + }, + "tests/test_ca.py": { + "sha256": "sha256:1358b78a33079185e6ff69b27cdfcb21db10a6ce5c44321a21b43165a4428ede", + "index": "100644 70bb249b33ccce23d456ca6bb99f58e406a8b39f 0\ttests/test_ca.py" + }, + "tests/test_case_1_3_integration.py": { + "sha256": "sha256:4862c5a004075eb18733d354bee7dda3f55e04a6ee8ecb44b76166347c121158", + "index": "100644 bb13c095114480126d857f1dd6428766035338d9 0\ttests/test_case_1_3_integration.py" + }, + "tests/test_case_admission_modes.py": { + "sha256": "sha256:9110d6b6286cf0f85268d4970d1fd403250da3f04351d70b1fd2d9d7a93e2d89", + "index": "100644 5069491d8686344b3286358884c97ff1e598a9be 0\ttests/test_case_admission_modes.py" + }, + "tests/test_case_attended_boundary.py": { + "sha256": "sha256:4615e653f06144305ea1a84e98bc6260e16ed41ef9e5db2d0f162ef9f723ef2d", + "index": "100644 ba07b331e7ca8b392a80a168a0e13167f619ca70 0\ttests/test_case_attended_boundary.py" + }, + "tests/test_case_inputs.py": { + "sha256": "sha256:6bf84eafbc4399831b35aa58e755574c8da9ddcbf1d0532eccf649d37779533d", + "index": "100644 c8d1b70757d2bf3d3935cd2628bdf986f34b9bb5 0\ttests/test_case_inputs.py" + }, + "tests/test_case_original_context_consistency.py": { + "sha256": "sha256:10c5187cbc49222017319249ccb408816497ec6e006859d23003f3b2b375445b", + "index": "100644 ddd429dd50e15113230b5a2eb6681a4d14821bdd 0\ttests/test_case_original_context_consistency.py" + }, + "tests/test_case_plan.py": { + "sha256": "sha256:944bc2a725ca1b7a10f4516c3ceed65f99627057dd15a859da4f8ffb3d97e71f", + "index": "100644 7de67e423310ff91e408f20ea8bd727cec11fce8 0\ttests/test_case_plan.py" + }, + "tests/test_case_receipt_state.py": { + "sha256": "sha256:6ca261660744ea187b7a7aa79cfa5e0d05e7e53af72f9c12d6c9ed375a4130e9", + "index": "100644 74ee9ea64faf34782327279a1f061f89110dac60 0\ttests/test_case_receipt_state.py" + }, + "tests/test_case_run.py": { + "sha256": "sha256:32a277175cfa9f496a2850289f6ad8d5afdf47d33c4747dd7ec552e951fd7b39", + "index": "100644 b7664a57e797c9baec84a65a0302920cdc79303b 0\ttests/test_case_run.py" + }, + "tests/test_case_type.py": { + "sha256": "sha256:5a217a172e7e2ffbea66f1beee9a1c18bf5e97f9fb25b83cb96b6ba976cbb2a5", + "index": "100644 2ca08b8f0f0c174c3b47706427ef5b097eaad09e 0\ttests/test_case_type.py" + }, + "tests/test_cli.py": { + "sha256": "sha256:4b9d32c990dd5b0e5ed7b81bf17577e09458fac2006e01e59caadd99d761ac56", + "index": "100644 36e7971410b2bf0e8aa16013226e0754e6736c18 0\ttests/test_cli.py" + }, + "tests/test_config.py": { + "sha256": "sha256:ef4e8bea2ebbc689e822cf10fd27bd2bd9b5271a93eb2039e2e0a236ebbabac3", + "index": "100644 b486f00fdb898b21ab9fbc478d2c554fbcc3ea0d 0\ttests/test_config.py" + }, + "tests/test_desk.py": { + "sha256": "sha256:b655023ae57e4e889c87802d47c19efddc575154f89516343761212694eeb092", + "index": "100644 2ec34b27c2b4bada3308ef796cbd1164471dedad 0\ttests/test_desk.py" + }, + "tests/test_doubles.py": { + "sha256": "sha256:ffc3d792d5571c420c21ee301d3fa74ec45937c8e374211453d7027fe0b1f100", + "index": "100644 6a77eccd79d172972ddc58fcc1f013aad517c73a 0\ttests/test_doubles.py" + }, + "tests/test_flex_auth_registry.py": { + "sha256": "sha256:7b1eba1aed31f74112455524ea928129e4ad03bd9688500cb2077b7df9d6b0a5", + "index": "100644 70dd26fa623d3a66fc1276b9aa9be3799c61672b 0\ttests/test_flex_auth_registry.py" + }, + "tests/test_integration.py": { + "sha256": "sha256:b27529b3c794639c21a778265c589ba3c87bb82e7ce280bddb38ed64ea398d4b", + "index": "100644 4af4447d850ea2178e2b68d56d9f37ee9081925e 0\ttests/test_integration.py" + }, + "tests/test_inventory.py": { + "sha256": "sha256:895d2032cd4927ab9ec94253286e2605695c3261c1e4b4aaf67c9ee2cf3461cb", + "index": "100644 b770bf76822be52767ea242286e528a4feba8c49 0\ttests/test_inventory.py" + }, + "tests/test_layer_conformance.py": { + "sha256": "sha256:3edf0a0d49c3560278a564c477834335cfaf5243341cb9345f0d4bf8994db56c", + "index": "100644 64ea533d85c2a44b20df33edeab4d466c19359d4 0\ttests/test_layer_conformance.py" + }, + "tests/test_mask.py": { + "sha256": "sha256:51588dff08546f7f4d7761b4203b647dfe23121fe0a94de78f2900450d444fee", + "index": "100644 d690edb612e91b28811d9a9b3ba8da56bd05be1f 0\ttests/test_mask.py" + }, + "tests/test_memory.py": { + "sha256": "sha256:300d9d9c6cd98eea1292eb70a01b28849cb5696690a2504f524123934180220e", + "index": "100644 8f8dcd4d2a7e2d0250ec34e568c9237575c1c5f1 0\ttests/test_memory.py" + }, + "tests/test_models.py": { + "sha256": "sha256:81b2416654a3abcb2431d7867914d594a9ee15f49b8f59ed8d7d7c0d7aa78350", + "index": "100644 e6781c30a9de0c590192b61bee6e76a4f73a4d75 0\ttests/test_models.py" + }, + "tests/test_openbao_caller.py": { + "sha256": "sha256:3ec471cc61f4c968c89e74f482de1a6cd70ec861387a61d2219e970651a521ee", + "index": "100644 6533380a21051722b173bd99fda6c199d3062f45 0\ttests/test_openbao_caller.py" + }, + "tests/test_openbao_configuration_routing.py": { + "sha256": "sha256:597c3092827b684cb86986a12e489d6fd609b62dc739a33b7dd42e59c9879721", + "index": "100644 4e831f22e6f322c49a11f8e45af261b1f3376467 0\ttests/test_openbao_configuration_routing.py" + }, + "tests/test_plan.py": { + "sha256": "sha256:405906b207d8f7469b6135782b357f5a35e4e31ed0426fd56cedfd02d43c1392", + "index": "100644 a3cf827cf529f770ed052859bcc892a544d9d0ce 0\ttests/test_plan.py" + }, + "tests/test_policy.py": { + "sha256": "sha256:208ca1ba567e86e4fb1b40206c0e030d7592edab937bdc4232367890852dfb31", + "index": "100644 8257e236ec3163056bbb5596e423915ae972fb84 0\ttests/test_policy.py" + }, + "tests/test_policy_fetch_evaluator.py": { + "sha256": "sha256:122f6ce39d01e78d46abd2ffae0a2a2021a9dbe4189f2181679f9539cca8683c", + "index": "100644 72b6ab1061108a9f1b4ac14c31e4c0869d4aa018 0\ttests/test_policy_fetch_evaluator.py" + }, + "tests/test_policy_http_refusal.py": { + "sha256": "sha256:443f214ffbcc454cbfdc9752e8622593816139f2d8538c6c535e9902559a842e", + "index": "100644 88f88be12d50fb8136fc7eb8701b736cf72289a7 0\ttests/test_policy_http_refusal.py" + }, + "tests/test_posture.py": { + "sha256": "sha256:dde12cfcd8a951be4a122e2eb9730f70a588a257e437dfed23c0c05461b5a6b6", + "index": "100644 cf3a8a3b7d86f0e7258939bda05671b9803a9edb 0\ttests/test_posture.py" + }, + "tests/test_posture_conformance.py": { + "sha256": "sha256:29ba461285f8a1812a9f0d1c6759f5ce8f969ad3d8f4e5b47c49aafff0368b04", + "index": "100644 96494aa5f8b90a7f41805706fed98234f73349db 0\ttests/test_posture_conformance.py" + }, + "tests/test_principals_drift.py": { + "sha256": "sha256:17bcfec0fc25584739b04c59d83ff10e407a3af81d21e99aae83a35d31084f85", + "index": "100644 7fb33d06d9a29885ed8a435d6faec96a9ee18fd4 0\ttests/test_principals_drift.py" + }, + "tests/test_proxy.py": { + "sha256": "sha256:9e464043e85f450c0130acfe64b362ee0714483ed2e6fbc2bea6edfac7cdb83e", + "index": "100644 3078bbf567fde31996af9beacfd6fd47dcba7db0 0\ttests/test_proxy.py" + }, + "tests/test_reuse_surface_caller_gate.py": { + "sha256": "sha256:c17b36a7e2de1c832737d65b36c45a8c5e3bdd820fa96c5faed3d269053a511e", + "index": "100644 58436730713699bec50774ac9c7df50afd2c6728 0\ttests/test_reuse_surface_caller_gate.py" + }, + "tests/test_routing.py": { + "sha256": "sha256:43998fccf67b1f0d1a6c8bde1a4768a32f8418fb72a8eda5bf321dd96c097d35", + "index": "100644 53b49139d7272c456aede35c24fa0740d38139b6 0\ttests/test_routing.py" + }, + "tests/test_safe_unit_runner.py": { + "sha256": "sha256:5408e7face98b01b92da077b0b2d115fcb370ec46e572ad5a69e3d0c10df8433", + "index": "100644 972854a82e2097f39d57b2e8ba3a3f8222fcdeac 0\ttests/test_safe_unit_runner.py" + }, + "tests/test_scaffold.py": { + "sha256": "sha256:3126d8ea447fdb0685ba40d0bb031e2635bff26b0eb057c6bc7cdd5851a4aa2e", + "index": "100644 ad1c2bdcc529698e93c0614d57b3c392e8636499 0\ttests/test_scaffold.py" + }, + "tests/test_scorecard.py": { + "sha256": "sha256:830ebc26b1337202641eaa28d7da61c513231a272805de02c3f2a7ff15f2e95d", + "index": "100644 457dbe8c2cc5576f389208aab77cdf2abd33bc71 0\ttests/test_scorecard.py" + }, + "tests/test_taint.py": { + "sha256": "sha256:5909a29b43e24b0cdc7d8752b789679f175a6614ba021e62cf82ffde1bf5455c", + "index": "100644 5c7982a3c3d02971ab49ba07118668f86c1958a5 0\ttests/test_taint.py" + }, + "tests/test_tunnel_cert_readiness.py": { + "sha256": "sha256:d2bf6f1bf6d7cc50b86a28fd8a52959e513ea1b6dd15a0326f7028af52653b44", + "index": "100644 1b17e09989834674d6662fa99ff3a1477d32f0d8 0\ttests/test_tunnel_cert_readiness.py" + }, + "tests/test_vault.py": { + "sha256": "sha256:3c3b16739cc16651eaf4409e00d44b5a9bce92b710e75b98913b61a4fd00fe6f", + "index": "100644 52909c2a49b8b82553026f3fd7a7528e4576a5a8 0\ttests/test_vault.py" + }, + "tests/test_worker.py": { + "sha256": "sha256:9584572486bafb0de585aed8433add7f60f7947527684f64cef4498bb84efb6b", + "index": "100644 90328424cad29c73bfb714df9055c647d9f20694 0\ttests/test_worker.py" + }, + "tests/test_workload_join.py": { + "sha256": "sha256:8ef0891daf4b7ac520430a514690364917110628edc760911a850195cffbdd4a", + "index": "100644 313be70ba6e74d3cad17ae622319f691535f8838 0\ttests/test_workload_join.py" + }, + "tests/unit_isolation_probe.py": { + "sha256": "sha256:726d3e01ae21c1379588e1f08459449908cc8a75ffea1b337c33a1a888c66f59", + "index": "100644 d4c6596d5f2fc96e18245fdc720af805c13a69f6 0\ttests/unit_isolation_probe.py" + }, + "uv.lock": { + "sha256": "sha256:c26e772f95c6fe3751ed5ceed73d936d8a764f4ceab67e7953d353ba9e01d0d9", + "index": "100644 e920abb8c75c056b041b90f7e979b941e6c0b96d 0\tuv.lock" + }, + "wiki/AccessManagementDirective.md": { + "sha256": "sha256:9ce43c038938888222b18430bc700ee57ee93e0e427ea276c372de9574fbef93", + "index": "100644 38cb8eda5983f8980eaa5bec94ffb73b24dd91af 0\twiki/AccessManagementDirective.md" + }, + "wiki/AccessRouting.md": { + "sha256": "sha256:1002f068841283f31d4e46e94328341ffe017a68a232f73d9acc1e288724b4fb", + "index": "100644 682b2110a992fb7ae5ff383ca5d561d8cbef4f5e 0\twiki/AccessRouting.md" + }, + "wiki/ActorInventoryPatterns.md": { + "sha256": "sha256:98852253e3fad7a4b54033f0805306ea22d487838a786af8f1f1cf07b36b1340", + "index": "100644 23d8c72ff5a41e7778683ecb931169e97d91c7f4 0\twiki/ActorInventoryPatterns.md" + }, + "wiki/ApprovalConsumption.md": { + "sha256": "sha256:ff131eee841b5641f52aa22c7cf496dcadf9bfb3ec179691ad18849eb351018c", + "index": "100644 e0b2e6af2406651927807ccffc467b00aa49a1d1 0\twiki/ApprovalConsumption.md" + }, + "wiki/AuditTrail.md": { + "sha256": "sha256:57f254fa41749f424315f0e07d5d96299f92cb9231fd4e1189ce1069b8acab62", + "index": "100644 aba9036777d8ca121038a690fada07a4e0faa66a 0\twiki/AuditTrail.md" + }, + "wiki/CatalogLaneScaffoldContract.md": { + "sha256": "sha256:e3729df74d8750f86e071151d23216914d5b135201178c635e5342e6c2fb75f4", + "index": "100644 a0c8a7a0c5178781cd9ec11c32b34a95461a935a 0\twiki/CatalogLaneScaffoldContract.md" + }, + "wiki/CertCommandInterface.md": { + "sha256": "sha256:a06562efc901db0c2eaaf15342cb7e254f6e5726e65ddff57457ff12e3d8f745", + "index": "100644 ef077689c7f9f1eab8d30694be2f935d94bdc1ff 0\twiki/CertCommandInterface.md" + }, + "wiki/CredentialRouting.md": { + "sha256": "sha256:544530cc13052e33d2135fa3b0583e620010abb0af86079be6d8e09c36844646", + "index": "100644 5a9b5042e572113366c5683d7c8ea4017ceddef4 0\twiki/CredentialRouting.md" + }, + "wiki/InterHubBootstrapAccessLane.md": { + "sha256": "sha256:d1ee6a6b7c2d6df7201bef82f1dd40d18a285993b11fb36f64b22d9e1b63b299", + "index": "100644 ae16f0dee2f440c8af724a65c068ba137552ca7b 0\twiki/InterHubBootstrapAccessLane.md" + }, + "wiki/NetKingdomSecurityMap.md": { + "sha256": "sha256:84495bc213a7a20ef477742f4e5f621e7e8a3e9d2fe72735c00972eea5c0df09", + "index": "100644 cc27337103661d1c7ef077fd637ba224a16ff4ef 0\twiki/NetKingdomSecurityMap.md" + }, + "wiki/OpenBaoSshEngineChecklist.md": { + "sha256": "sha256:566f9214891d162c99f414e480b329253f7f73bf01927c71f66842d6fdd5f1e3", + "index": "100644 a8c17f9ad880a8e793537a2205212f3d8aa72a5a 0\twiki/OpenBaoSshEngineChecklist.md" + }, + "wiki/OperatorAccessAssist.md": { + "sha256": "sha256:1433f6c7420083d633e3453cedadd6937320004ecf9f462b637744f967f78c37", + "index": "100644 847ce84ec7c199908854f61bfa61c2271f51c188 0\twiki/OperatorAccessAssist.md" + }, + "wiki/OpsWardenConfig.md": { + "sha256": "sha256:6ae3a9e7e30efc5128d58e9d23d510a6d359da1c289fec0856a4e6d2540a36ea", + "index": "100644 a51d156da9acf566479b83e035e532d5a239c57b 0\twiki/OpsWardenConfig.md" + }, + "wiki/OpsWardenMemory.md": { + "sha256": "sha256:9b073d063e55bb2da8e51cf7a63b6f27f55d4768e9b0e43f56a055bb1e4974e1", + "index": "100644 2e86a166763b6cfd0375d56c12ca13487e76f24c 0\twiki/OpsWardenMemory.md" + }, + "wiki/PolicyGatedSigning.md": { + "sha256": "sha256:4e0a87156c6ec4f6b1fb4d8f30d8b30addd762901c67346d1810d2516095ee51", + "index": "100644 85f53eab401ab7c37d16f25859f8eb430e104a29 0\twiki/PolicyGatedSigning.md" + }, + "wiki/WorkloadSecurityPosture.md": { + "sha256": "sha256:a95844db9daad649ce1e92f5312a97f5dfefea305318dcf2584a2a31b3dce06f", + "index": "100644 399ccfcd99e8fac48152d5ba2333238fc963c371 0\twiki/WorkloadSecurityPosture.md" + }, + "wiki/playbooks/activity-core-issue-sink.md": { + "sha256": "sha256:296a6faabcae35a4e0ce397e4b1e175968df977951d39d764ae18388a98341e6", + "index": "100644 9436d72e74ae5c18f2c79dc0b7c5662efadda3de 0\twiki/playbooks/activity-core-issue-sink.md" + }, + "wiki/playbooks/agent-harness-secrets.md": { + "sha256": "sha256:547772ed95ba6d6d1d4bb5de4487d348d071dfec8c07d14e97ebe6c7df7905ed", + "index": "100644 b28045ab7e2b6ea10218bcec8c7a1c9326228a00 0\twiki/playbooks/agent-harness-secrets.md" + }, + "wiki/playbooks/agent-read-boundary.md": { + "sha256": "sha256:c201465a3e32e714823ef2bdf4409c32fc601b4d63b94b041ca0d4db49aa27c9", + "index": "100644 5e82883ee337ff339bfaaaa6ea17c50a1bda3fd0 0\twiki/playbooks/agent-read-boundary.md" + }, + "wiki/playbooks/audit-core-senders.md": { + "sha256": "sha256:e081f30f79404e577cdacc61f6f8c0dae1b4df0f7f4693639dd2c9b2e7ab709a", + "index": "100644 85c878def56af680e25c157aebf8ac9fc573bc98 0\twiki/playbooks/audit-core-senders.md" + }, + "wiki/playbooks/binky-company-email-imap.md": { + "sha256": "sha256:1cb028d4290875f5066d0cbe6f4e08ed8198a348ed293f2926c3104435b34290", + "index": "100644 92c22f6ad20832fceb55c65673373e66eba1569a 0\twiki/playbooks/binky-company-email-imap.md" + }, + "wiki/playbooks/binky-qonto-api.md": { + "sha256": "sha256:07c2b8fa3013bb955e47f6bac4343b1bc0b217c7ae9ddfe4e22fe49b7cb41c94", + "index": "100644 020fb0ea7a003528f15a22565c5d36bbac537ee0 0\twiki/playbooks/binky-qonto-api.md" + }, + "wiki/playbooks/catalog-lane-promotion.md": { + "sha256": "sha256:63e183c43aeb49ce59035f26e1d0c4c56bdb1dadb65cfd42c1a6c9b7e7f6d354", + "index": "100644 c3f653a118b0d903b5937fabe30064ba5a831846 0\twiki/playbooks/catalog-lane-promotion.md" + }, + "wiki/playbooks/core-hub-forgejo-source-read.md": { + "sha256": "sha256:51ec502795cf5564c6ba8fa3273b95100c8002ad4e3a3b4c40f7e47e1436b7bf", + "index": "100644 af43f091dc1236408f71b636ce5b04cc7c806116 0\twiki/playbooks/core-hub-forgejo-source-read.md" + }, + "wiki/playbooks/coulomb-social-runtime-env.md": { + "sha256": "sha256:7d630633fdc18a943787d6bc453a3a75e88b22a1f5e81911ee4de4baa624ba43", + "index": "100644 1d367eeb5ebba13480c7a2609602e80588ef6129 0\twiki/playbooks/coulomb-social-runtime-env.md" + }, + "wiki/playbooks/database-dynamic-credentials.md": { + "sha256": "sha256:6d05df687557c6105d020f1ed4e2916680892c85902adfeb50c39f6d066f8882", + "index": "100644 11b4eacdb769e8e9397fef0a578efe9fb1403610 0\twiki/playbooks/database-dynamic-credentials.md" + }, + "wiki/playbooks/email-connect-transactional.md": { + "sha256": "sha256:5e865438ed7a5d489cb82f03b404cb7eb941fad7086006f2265ae8e4a282d64a", + "index": "100644 46fe025162c0b5a00e60723df7a6ebb6e16a7666 0\twiki/playbooks/email-connect-transactional.md" + }, + "wiki/playbooks/exposed-taint.md": { + "sha256": "sha256:3259a46675f6ccaa5f63e9b1d86a28552ac7555957884f38cd9412830b70c5de", + "index": "100644 4875d22dec2c444d9be07ddfba5934288daafef9 0\twiki/playbooks/exposed-taint.md" + }, + "wiki/playbooks/flex-auth-decision-envelope-signing-key.md": { + "sha256": "sha256:33976a62c1526f8ca2298236d219fff8051ac04c684e010b72eb267a4984ea94", + "index": "100644 31c7650047690c6c5b85a2ca31de918f2762935b 0\twiki/playbooks/flex-auth-decision-envelope-signing-key.md" + }, + "wiki/playbooks/fluid-telegram-operator.md": { + "sha256": "sha256:bc1ad9b3539236f0820734fa15d44fba6e708cc17ddc12fae9e9cda312a77f03", + "index": "100644 2e81897478813ed5822525e3bfa716b1de75b2fa 0\twiki/playbooks/fluid-telegram-operator.md" + }, + "wiki/playbooks/forgejo-admin-api-token.md": { + "sha256": "sha256:c2996c6da0c6b19e13be40bf0a9d91c76fcc17c5d7fc3fb80f21ea3c8b1b2555", + "index": "100644 43a05c2b27c7607d1577bcaa3089e5b70a3ddf48 0\twiki/playbooks/forgejo-admin-api-token.md" + }, + "wiki/playbooks/inbound-library-imap-approle.md": { + "sha256": "sha256:1cd82d3d2ee1ccf010b3f81d553ddcd3a6d82e1bb15becd59398b400245d92c9", + "index": "100644 11b30a4f76e5a53f06bdb0962de6fcb550ece87d 0\twiki/playbooks/inbound-library-imap-approle.md" + }, + "wiki/playbooks/informed-decision-sitting-requester-login.md": { + "sha256": "sha256:3abbeffd2d0a528222d32d2a6a9b3dfd65599dbd79956b0fb429d314a32074ce", + "index": "100644 8cc3e1ab1726ffba4b15e766cfea0a229535ec04 0\twiki/playbooks/informed-decision-sitting-requester-login.md" + }, + "wiki/playbooks/issue-core-ingestion-api-key.md": { + "sha256": "sha256:3f4670d29cf4b06e5dcf9b43f2d41f1b28adc9f09b2f08b24971f3a3b637c4c0", + "index": "100644 79476ddf452dc691f9da52501648a8df59c8053c 0\twiki/playbooks/issue-core-ingestion-api-key.md" + }, + "wiki/playbooks/keycape-client-secret-generate.md": { + "sha256": "sha256:c27018b12235783827875e459a639cb574ad571fcfb91cbae88fad378d2fa584", + "index": "100644 225abe495e5858d50b26936df08486dc3eac62fd 0\twiki/playbooks/keycape-client-secret-generate.md" + }, + "wiki/playbooks/net-kingdom-sso-bind-credentials.md": { + "sha256": "sha256:91bea48221b895be51e1d1db68784c63aa787f51330eba12fede8b702c4049c5", + "index": "100644 3d603fb1d1830f57575a4769a2a54ebc18b2555e 0\twiki/playbooks/net-kingdom-sso-bind-credentials.md" + }, + "wiki/playbooks/netkingdom-layer-declaration.md": { + "sha256": "sha256:6a409a1c474ce8759b01cf5a62e5b95bba297e167a05fd8f8b616abdf6414306", + "index": "100644 24af535bc15c6df4a546095ccc81b26eb8bf4186 0\twiki/playbooks/netkingdom-layer-declaration.md" + }, + "wiki/playbooks/object-storage-sts.md": { + "sha256": "sha256:23ac333bf3650665a3058a85eacd2870bd83dd65d2de072c7b3e8f01d1d2206d", + "index": "100644 6763ab1ebee94aa038aafb84896be37480099559 0\twiki/playbooks/object-storage-sts.md" + }, + "wiki/playbooks/openbao-platform-admin-login.md": { + "sha256": "sha256:40300743c411b009bd7b3b1e70031c783a5ceb23b66fed5840ceb205d11892cf", + "index": "100644 0cd809d5271eddb3c182be2c90a9edcf0df7e468 0\twiki/playbooks/openbao-platform-admin-login.md" + }, + "wiki/playbooks/openbao-shamir-recovery-ceremony.md": { + "sha256": "sha256:942759c0bf530065d59eb6de04f1c0edfb9f1084d0433ffc2b816720795dbb5e", + "index": "100644 8aac70b1c1b7bbbe2f993571234cb5b67362a901 0\twiki/playbooks/openbao-shamir-recovery-ceremony.md" + }, + "wiki/playbooks/openbao-structure-survey.md": { + "sha256": "sha256:f6863d4dbbe5bfdb3a571df8575975e9ba14b3901784df2974023053a176769a", + "index": "100644 c2453869abe2e7b14fa1d14170c938eab8d9f7c1 0\twiki/playbooks/openbao-structure-survey.md" + }, + "wiki/playbooks/openrouter-llm-connect.md": { + "sha256": "sha256:33a91313137dc465a96bf4fd8352b539c3408c493f4a8d9977ed1070d88a3d16", + "index": "100644 06fd78422e1a4c7c101c0d81c15fe26ff2ffbd72 0\twiki/playbooks/openrouter-llm-connect.md" + }, + "wiki/playbooks/operator-openbao-token-hygiene.md": { + "sha256": "sha256:f03ee79bccd4ad987fbebe9ad7b5958db3c613a8eb21d04b43fabfe788e4ab40", + "index": "100644 e0e11297252002f4470aa1e37940f6ede3a55d0e 0\twiki/playbooks/operator-openbao-token-hygiene.md" + }, + "wiki/playbooks/ops-bridge-tunnel-cert.md": { + "sha256": "sha256:830bbf75dc2be04d339c07d39b022ac235c5294708fbdc6386939f5865bb338e", + "index": "100644 a23d44750d91540e1be78a63a86ebf0ee6d6ba7f 0\twiki/playbooks/ops-bridge-tunnel-cert.md" + }, + "wiki/playbooks/ops-warden-warden-sign-token.md": { + "sha256": "sha256:77bb9924b16a30af1dd4f42025f669de6a76f357b8634135a3914a23db8397f6", + "index": "100644 46d8bdf152dc74f8742b9d3227bca29d01530a98 0\twiki/playbooks/ops-warden-warden-sign-token.md" + }, + "wiki/playbooks/platform-supplier-credentials.md": { + "sha256": "sha256:4f41e0127c15815f660f769408a8ce50e93d8614cd59d7c27282177ef15461cc", + "index": "100644 3a09567589bd57ef5a382c2cf9136da32c51f6e5 0\twiki/playbooks/platform-supplier-credentials.md" + }, + "wiki/playbooks/policy-nexus-forgejo-source-read.md": { + "sha256": "sha256:50ef0230d2bf28b762bcea21d9899d3ee63250fe85cfb604175ab3ee5d7f6bd5", + "index": "100644 6e704c7b51b38a7c6ab190312e873886789bfbb9 0\twiki/playbooks/policy-nexus-forgejo-source-read.md" + }, + "wiki/playbooks/railiance-backup-offsite-lane.md": { + "sha256": "sha256:092bd7bd280b7939f91037ac048e1e59a45adba07620cce60b2ad038cba0c630", + "index": "100644 0e5a2e2e0606c513b1b29c1b593b11c097b9940b 0\twiki/playbooks/railiance-backup-offsite-lane.md" + }, + "wiki/playbooks/rein-openweights-openrouter-approle.md": { + "sha256": "sha256:4c78daef2bcc38096a52705102eee6b5ae9146694d7d1b53e85ad9893da6cecc", + "index": "100644 4a04ab5619672165bb8668df2836facd8ce6c22f 0\twiki/playbooks/rein-openweights-openrouter-approle.md" + }, + "wiki/playbooks/reuse-surface-hub-write-token.md": { + "sha256": "sha256:cec21dd6bd417eeb43cce5ceefc346d4665dbaf552a89e62d78157ce50d0f374", + "index": "100644 59d21252acc8b1d697e770308540b2287f7c2b1c 0\twiki/playbooks/reuse-surface-hub-write-token.md" + }, + "wiki/playbooks/scaleway-bootstrap.md": { + "sha256": "sha256:e9a8a3f04b1085c994753fca0d8537c5777000410fdba265dcd877118ede0791", + "index": "100644 c89e7b68679ef0499e90f481d9d43ec114d23ea9 0\twiki/playbooks/scaleway-bootstrap.md" + }, + "wiki/playbooks/scheduled-worker.md": { + "sha256": "sha256:19b9d931350ff94d12a98d718a4c8d36952f69991b70314de98e244c88ebb92c", + "index": "100644 12b50e66f9b03210d587dada8b57a707080fa9ff 0\twiki/playbooks/scheduled-worker.md" + }, + "wiki/playbooks/secrets-engine-approval-client-login.md": { + "sha256": "sha256:56c8407f1475818abaa9bb8b914f6bf665ae24e966531eece43abd9824971c77", + "index": "100644 71b4bc4a6b07ab087117b1ac476c49c0bdcd8899 0\twiki/playbooks/secrets-engine-approval-client-login.md" + }, + "wiki/playbooks/secrets-engine-requester-login.md": { + "sha256": "sha256:98700a96c8559b39ca848c7043ef5d57dedfb06aff05aabec2bb758386f8683e", + "index": "100644 f0cdb7b0269e7e4e15e760b5990ce1a0820d13c0 0\twiki/playbooks/secrets-engine-requester-login.md" + }, + "wiki/playbooks/state-hub-forge-derivation-read.md": { + "sha256": "sha256:ce573cdec4de9e91baa89e0f473bda47d0c2359372821053e6489cb02d7d91c1", + "index": "100644 5bcc9a2a432e15bb042f12a343bd329bc11ab47e 0\twiki/playbooks/state-hub-forge-derivation-read.md" + }, + "wiki/playbooks/tenant-secret-onboarding.md": { + "sha256": "sha256:f7f88b64442c5a9fd33260ea9e6ab4939b46a90e0157bb9ce79216bf97a80cf9", + "index": "100644 51050402d9a55eed74c7773511e4c7a82d542399 0\twiki/playbooks/tenant-secret-onboarding.md" + }, + "wiki/playbooks/whynot-design-npm-publish.md": { + "sha256": "sha256:a0547a7125875cbf5c5261a5df692c4e904474aeebad2f3611fe87964604ca2a", + "index": "100644 3c450146f0346cf67cb0275fb693757038a27be2 0\twiki/playbooks/whynot-design-npm-publish.md" + }, + "workplans/ADHOC-2026-06-27.md": { + "sha256": "sha256:f0a89c1809e23b436767a73b70636c283e79216fb19678f08bef2b9e62e42ddb", + "index": "100644 d75908fb225c1f964b5b697032a6f98c4a13c1db 0\tworkplans/ADHOC-2026-06-27.md" + }, + "workplans/ADHOC-2026-06-29.md": { + "sha256": "sha256:9869f07cdfe79d37314d36db74a434a55b50c0b965ae53f29d76ca9a9a73151f", + "index": "100644 b46be0fd6ee2eeea9ffeff695b887b61aab8a7a2 0\tworkplans/ADHOC-2026-06-29.md" + }, + "workplans/ADHOC-2026-08-11.md": { + "sha256": "sha256:6bba4f5dab9fc64f7b65df7c2ab7e4b9d4dbb69ba1c4a41c8440dbd23555aea4", + "index": "100644 3d858fe808bd7a9d8318cdcd38ee012a8d907ca4 0\tworkplans/ADHOC-2026-08-11.md" + }, + "workplans/ADHOC-2026-08-17.md": { + "sha256": "sha256:39ec882551bf5643fabb3ebc9f47300b4e6f6caf6d67a0a26bc100b68d4e313e", + "index": "100644 65d75959a0fd23dd861e24321b1b46057d6fea5f 0\tworkplans/ADHOC-2026-08-17.md" + }, + "workplans/ADHOC-2026-09-08.md": { + "sha256": "sha256:27c64084fdd16b926b138584d96688061a18a58d4d8152d9688b4486b9687c05", + "index": "100644 c1ae7c3ea0d8e722d7073ae920780a5e56611294 0\tworkplans/ADHOC-2026-09-08.md" + }, + "workplans/ADHOC-2026-10-03.md": { + "sha256": "sha256:8de5e5ba28ce2cd94c5864e316d54fe32e6cdfdb0e75551fe92ed25b81eeafa6", + "index": "100644 e76cd016eab0dfd9eceac7d8033b40f92c9ada32 0\tworkplans/ADHOC-2026-10-03.md" + }, + "workplans/WARDEN-WP-0016-ops-bridge-tunnel-cert-pilot.md": { + "sha256": "sha256:ad904837aa2d83d888d46c482fe381eba328c96a4617209ea8a9ae2d7d64c467", + "index": "100644 a787f1da8347fdd2219ef67a569d21a192563343 0\tworkplans/WARDEN-WP-0016-ops-bridge-tunnel-cert-pilot.md" + }, + "workplans/WARDEN-WP-0017-access-front-door-discoverability.md": { + "sha256": "sha256:a35f65a40c98d35e86f352c1430837b8bc9f269bddaddfe4a71c6414f678d85c", + "index": "100644 fe9c5b15a464aa3ae104576bfc0a04510d944f89 0\tworkplans/WARDEN-WP-0017-access-front-door-discoverability.md" + }, + "workplans/WARDEN-WP-0018-whynot-design-npm-lane-activation.md": { + "sha256": "sha256:6d9145534f7fa80cec9f185751d3796fdaab4a2d88b289a5451ba04e24822855", + "index": "100644 f923be5351582a2bab38afc1aca3b4e5da0fe008 0\tworkplans/WARDEN-WP-0018-whynot-design-npm-lane-activation.md" + }, + "workplans/WARDEN-WP-0019-route-to-secrets-engine.md": { + "sha256": "sha256:8fa2d79c85a821f7bc51044f37001bad613afb75d143181e2e0a01b213e06df8", + "index": "100644 602fad1b4e56fc69de85aa2e0843676f50186340 0\tworkplans/WARDEN-WP-0019-route-to-secrets-engine.md" + }, + "workplans/WARDEN-WP-0020-ops-warden-worker.md": { + "sha256": "sha256:d565f65413a2698160caf33ab30d7513a03d06ddcee7d624b198bb8841abdcc3", + "index": "100644 1230ed3175d3f5f175fc0146e8006ebd8be5a369 0\tworkplans/WARDEN-WP-0020-ops-warden-worker.md" + }, + "workplans/WARDEN-WP-0021-enable-scheduled-worker-tick.md": { + "sha256": "sha256:4f7afe5bdd147705e68d31d02f39251543c6c120ce22d893b98af063e303c361", + "index": "100644 2500d4b346dffbe6d5f9848c5440bfa8d85d5d14 0\tworkplans/WARDEN-WP-0021-enable-scheduled-worker-tick.md" + }, + "workplans/WARDEN-WP-0022-audit-trail-and-activity.md": { + "sha256": "sha256:f733fb0d7cfcc7b44aba49a730e7f51381d6478a87c394161e77c90577c26505", + "index": "100644 63171f58096efb8d4bc07c69db250fff7038f4e1 0\tworkplans/WARDEN-WP-0022-audit-trail-and-activity.md" + }, + "workplans/WARDEN-WP-0023-intent-scope-alignment-closeout.md": { + "sha256": "sha256:97d25825ba626a3979e8d6217aebd27f58d27fe9f92e8b94eb2f63e2bb843cb9", + "index": "100644 99278d609aa5324c625364b2e0ac636ad9219ddf 0\tworkplans/WARDEN-WP-0023-intent-scope-alignment-closeout.md" + }, + "workplans/WARDEN-WP-0024-experiential-memory-and-agent-sessions.md": { + "sha256": "sha256:22bde2d1398a4260e337768c6cf71cf80cd61d466371b6cfd0c0f0c18fc72378", + "index": "100644 3ebac662f6c96f69a5fa6cbb5917999a4e24455a 0\tworkplans/WARDEN-WP-0024-experiential-memory-and-agent-sessions.md" + }, + "workplans/WARDEN-WP-0025-forgejo-admin-api-token-lane.md": { + "sha256": "sha256:ded5bdfdbe897f3376c71c7a169caca51a9d75453ba66cf216ec8dfcab91c708", + "index": "100644 5c4e77249b01fd8cb9300a237c917d95363cf2d7 0\tworkplans/WARDEN-WP-0025-forgejo-admin-api-token-lane.md" + }, + "workplans/WARDEN-WP-0026-credential-disclosure-hygiene.md": { + "sha256": "sha256:f65ccdf9c920e9138353018e2ed5a7fbbd590246eb730fc6f57c75b6d2e09eea", + "index": "100644 309f77187b31c1287b085affefc9d271ea40858c 0\tworkplans/WARDEN-WP-0026-credential-disclosure-hygiene.md" + }, + "workplans/WARDEN-WP-0027-credential-governance-lockdown.md": { + "sha256": "sha256:0d0c08458718ec88883c4b257ea80011123a6d5aa2eea36fe28db331ff6d438f", + "index": "100644 c14e9c303a1f1a096fdf710ee48112f68205435e 0\tworkplans/WARDEN-WP-0027-credential-governance-lockdown.md" + }, + "workplans/WARDEN-WP-0028-tenant-secret-custody.md": { + "sha256": "sha256:92cc0ad8d42209d5d7e45122e8ddd67e1970de1d200df373885ba5fb75e0d22a", + "index": "100644 fe81983444e5127bb8a0fdf94f42c3817758c67e 0\tworkplans/WARDEN-WP-0028-tenant-secret-custody.md" + }, + "workplans/WARDEN-WP-0029-policy-front-door-and-founder-surface.md": { + "sha256": "sha256:2b21f06c062edd96943a1d26fd86c6a27b341b1db4532e528edbaebd4ced7e66", + "index": "100644 4008d825b4c39d3f0e4a80f6d290af9b551fd812 0\tworkplans/WARDEN-WP-0029-policy-front-door-and-founder-surface.md" + }, + "workplans/WARDEN-WP-0030-delegation-register.md": { + "sha256": "sha256:59bf962b355cd9734315108f9868508739ddcb4855591bff53aea3634aed47f7", + "index": "100644 49612d072663af831f7b7314c4b77e4b9596097b 0\tworkplans/WARDEN-WP-0030-delegation-register.md" + }, + "workplans/WARDEN-WP-0031-policy-caller-identity.md": { + "sha256": "sha256:0fa890ba81833180feb727ba35dcf01ead7d7dedf55a285a49a2585049b4bffb", + "index": "100644 c4c600c47a6e4a65951b1adf324cc33f13cb1be6 0\tworkplans/WARDEN-WP-0031-policy-caller-identity.md" + }, + "workplans/WARDEN-WP-0032-security-zones.md": { + "sha256": "sha256:4497947e57fb86e883090d07c8bef031fd5fe4a7f3eb065d530ebe327d97b1cc", + "index": "100644 6c8000ade056b82e019826d01a7e9e8cf0f4de98 0\tworkplans/WARDEN-WP-0032-security-zones.md" + }, + "workplans/WARDEN-WP-0033-native-lane-handoff.md": { + "sha256": "sha256:74747ebf7c628b1a5336c63aa3924212068a6015f370e647cf9127949c181998", + "index": "100644 55cd015061bb610fe43c8f2ee821bb71b092d77c 0\tworkplans/WARDEN-WP-0033-native-lane-handoff.md" + }, + "workplans/WARDEN-WP-0034-layer-model-v07-conformance.md": { + "sha256": "sha256:57e10b9efff02d7437231424ebc4d48864a2019939c2cda2fa10629a4ede2a3b", + "index": "100644 d6ebfdce0e2901b42c98e38e9eaaac0f1d817e79 0\tworkplans/WARDEN-WP-0034-layer-model-v07-conformance.md" + }, + "workplans/WARDEN-WP-0035-policy-nexus-forgejo-source-read-route.md": { + "sha256": "sha256:d40987b48a8416de386972d214ce01dba138a9f294cc948de36085c794c76418", + "index": "100644 1210b158a3836d2b4df934f50fb538c5241b09d5 0\tworkplans/WARDEN-WP-0035-policy-nexus-forgejo-source-read-route.md" + }, + "workplans/WARDEN-WP-0036-attended-login-openbao-output.md": { + "sha256": "sha256:e0584491b5a6a7d4db0cf61a689f733b4a6597778ca79a3f8f2207fe7ecfb8cc", + "index": "100644 452eb41267ea99cc83104fcb2a782c0b244b87d1 0\tworkplans/WARDEN-WP-0036-attended-login-openbao-output.md" + }, + "workplans/WARDEN-WP-0037-whynot-design-forgejo-npm-lane.md": { + "sha256": "sha256:7c64a631eb70d9ff42826ea5966cac571786ff86bac5393f88c328aeb14aa9ba", + "index": "100644 a3eba2dff6517a64b2c5d3d9b9a9c14ca4570ec6 0\tworkplans/WARDEN-WP-0037-whynot-design-forgejo-npm-lane.md" + }, + "workplans/WARDEN-WP-0038-plan-mutation-intent.md": { + "sha256": "sha256:650142bd2bd3019c2765fde1c56d36cb5e0515d96d2dab735d9de96e00529c88", + "index": "100644 541a238185e060e1605fcb79598c187b5b23cd35 0\tworkplans/WARDEN-WP-0038-plan-mutation-intent.md" + }, + "workplans/WARDEN-WP-0039-explicit-policy-refusal.md": { + "sha256": "sha256:e8773a7b4196cf77a48ab4ed0804a5f826a0a0b5e7972f968681746ebbc6e3e9", + "index": "100644 ca0828d2679eda031fb86d66eb886ccb38ee1843 0\tworkplans/WARDEN-WP-0039-explicit-policy-refusal.md" + }, + "workplans/WARDEN-WP-0040-unknown-zone-fail-closed-adoption.md": { + "sha256": "sha256:a4b8e768eaacd5ab5a90f69a1abcb3bd48ce821fcdea208b0ee75d9326f0d512", + "index": "100644 f07fb535d5ad00f5330f16a5a6e927da6960fe52 0\tworkplans/WARDEN-WP-0040-unknown-zone-fail-closed-adoption.md" + }, + "workplans/WARDEN-WP-0041-catalog-lane-scaffolding.md": { + "sha256": "sha256:c16993301f29e7f5ea005cccdbe360ac9c4c3949e6988e2b7a1f1e5df6235bc1", + "index": "100644 8a1ca341e9fcc041dcf99be8706f0db2a39408a6 0\tworkplans/WARDEN-WP-0041-catalog-lane-scaffolding.md" + }, + "workplans/WARDEN-WP-0042-openbao-structure-survey-route.md": { + "sha256": "sha256:1e48399d6ef8a509898e8ea0b334a378c51ec467aaa704b6dbf8485aed29fa8b", + "index": "100644 097d64791e79e782640514c7324e2ff8a5dc435c 0\tworkplans/WARDEN-WP-0042-openbao-structure-survey-route.md" + }, + "workplans/WARDEN-WP-0043-platform-supplier-credentials.md": { + "sha256": "sha256:c059b7f80ad4c0e5faa8ad15532ab6c2577d0c383ba91cde7293534b6e4683e2", + "index": "100644 d359328239b0b897ccffbf037a12b06d1f0d126a 0\tworkplans/WARDEN-WP-0043-platform-supplier-credentials.md" + }, + "workplans/archived/260515-WARDEN-WP-0001-initial-implementation.md": { + "sha256": "sha256:359456ecd25525d95748ca611e7c6c118eee2b914dae447c84c59442a6520458", + "index": "100644 5425cbd886ff77afc9be7c8b62b97d03278e0a8e 0\tworkplans/archived/260515-WARDEN-WP-0001-initial-implementation.md" + }, + "workplans/archived/260515-WARDEN-WP-0002-correctness-and-completeness.md": { + "sha256": "sha256:43ba78e9c6e9914360edc88a6f8f5af0f981b3078ef41808a784ce7388559fb7", + "index": "100644 0b6044f99391e81a439f2782ee697434319df05b 0\tworkplans/archived/260515-WARDEN-WP-0002-correctness-and-completeness.md" + }, + "workplans/archived/260515-WARDEN-WP-0003-test-coverage-and-quality.md": { + "sha256": "sha256:4fb4ac0cb72cf14dd72c6e5f313a068d90ead203460ad3ac68f0d5dd12b6a755", + "index": "100644 d544f950037cb705d5f7195ee559f91ca9f6a4f4 0\tworkplans/archived/260515-WARDEN-WP-0003-test-coverage-and-quality.md" + }, + "workplans/archived/260617-WARDEN-WP-0004-repo-hygiene-and-hub-sync.md": { + "sha256": "sha256:fbb36a3d9c4ab0ac829bba713160d919b3c12c19f5f5826fb4e8483edeec3ac1", + "index": "100644 31330938708c5ae9b6412c5715549f2d69192589 0\tworkplans/archived/260617-WARDEN-WP-0004-repo-hygiene-and-hub-sync.md" + }, + "workplans/archived/260617-WARDEN-WP-0005-openbao-doc-alignment.md": { + "sha256": "sha256:3c930a395d518f9b287855632c21fe99a3d5c78a758ece06498fb9e35f5ea8b9", + "index": "100644 9969260deee2960143102edecadb9fd7c9736832 0\tworkplans/archived/260617-WARDEN-WP-0005-openbao-doc-alignment.md" + }, + "workplans/archived/260617-WARDEN-WP-0006-netkingdom-alignment-and-access-stewardship.md": { + "sha256": "sha256:fbc90ca4c18f8180a7fbcd2b43f21d7f99a44c914eb17c78f823228f8e3cc64f", + "index": "100644 8a7cc2f69821ac8cbf0de744073b7a938fa6b51d 0\tworkplans/archived/260617-WARDEN-WP-0006-netkingdom-alignment-and-access-stewardship.md" + }, + "workplans/archived/260617-WARDEN-WP-0007-policy-gate-and-production-verify.md": { + "sha256": "sha256:613b73c79bad0929f621feb136b3141f9c60e23bf6e23650881a47c762101214", + "index": "100644 f49eea27ea7c15f4f3d608669ddd60e3a13803b5 0\tworkplans/archived/260617-WARDEN-WP-0007-policy-gate-and-production-verify.md" + }, + "workplans/archived/260618-WARDEN-WP-0008-production-ssh-path-and-stewardship-closeout.md": { + "sha256": "sha256:8362d4cdb933b52c9be968d5410c8548c7554cc4cd44ab0389b913674795a10a", + "index": "100644 f3827285c4e279f36ac63c14ad166ff90544659a 0\tworkplans/archived/260618-WARDEN-WP-0008-production-ssh-path-and-stewardship-closeout.md" + }, + "workplans/archived/260623-WARDEN-WP-0009-flex-auth-policy-gate-production.md": { + "sha256": "sha256:fa611c1a2e5c5a214e38f0673ebcda17e3f30e10556b268fb126ded9af2bdbbb", + "index": "100644 7f87d0ed26b7f19438f164a10a10a46808824776 0\tworkplans/archived/260623-WARDEN-WP-0009-flex-auth-policy-gate-production.md" + }, + "workplans/archived/260624-WARDEN-WP-0010-access-routing-charter.md": { + "sha256": "sha256:62bc994e3efbb124004f98992ded6842ff2748568b2e405c61b335385a35b9d7", + "index": "100644 12357da7a3d1d5f994e70d0f06dcc80ea1faf848 0\tworkplans/archived/260624-WARDEN-WP-0010-access-routing-charter.md" + }, + "workplans/archived/260624-WARDEN-WP-0011-routing-guide-cli.md": { + "sha256": "sha256:767cd3c53cfe64beab93f19475be823d0637a40140877db6dfcc60e2693652ce", + "index": "100644 3fe363e93d7e7d38db58deeec0ef3023bb35f8fa 0\tworkplans/archived/260624-WARDEN-WP-0011-routing-guide-cli.md" + }, + "workplans/archived/260624-WARDEN-WP-0013-production-integration-and-stewardship-closeout.md": { + "sha256": "sha256:ecc38b4998796e20d734105df81ef6e2eb05c8e830b6d0dbe344d6336b9f668b", + "index": "100644 9812e11e5e3499a22d0d4dde01fccd26b7d0ee03 0\tworkplans/archived/260624-WARDEN-WP-0013-production-integration-and-stewardship-closeout.md" + }, + "workplans/archived/260627-WARDEN-WP-0012-routing-scenario-playbooks.md": { + "sha256": "sha256:7a7a1d25cd1d015c0a28f0d443de0512fc48cb1fda4317760051251988aa96f0", + "index": "100644 acf9cce9f55395827479d4963e2d257be182f507 0\tworkplans/archived/260627-WARDEN-WP-0012-routing-scenario-playbooks.md" + }, + "workplans/archived/260627-WARDEN-WP-0014-operator-access-assist.md": { + "sha256": "sha256:c1b84e750b2580fa1deae7dd56fd29abe5d9924a3ccd47ce9fc5f99c26aa4924", + "index": "100644 01240484d955b0af77443d6dd49948c96f9fb032 0\tworkplans/archived/260627-WARDEN-WP-0014-operator-access-assist.md" + }, + "workplans/archived/260627-WARDEN-WP-0015-secret-lifecycle-tiering.md": { + "sha256": "sha256:300b8b6cfdd7306fbb81ab30d4f59551976eed1de0012fd655e4b6fc096ccf10", + "index": "100644 c59207892dcf723ce7b4ca0908635fb32407176e 0\tworkplans/archived/260627-WARDEN-WP-0015-secret-lifecycle-tiering.md" + }, + "workplans/archived/260707-ADHOC-2026-07-07.md": { + "sha256": "sha256:e169418f6d83f954de1907ae8fa26a5f5cf4fe011be01dba9363e69befa05cfa", + "index": "100644 31e9d27f2aa37f8eac17cb5500873a60b9ee8833 0\tworkplans/archived/260707-ADHOC-2026-07-07.md" + } + }, + "before_status": " M WORK-RECORDS.md\n", + "native_actions": false +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/projection.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/projection.json new file mode 100644 index 00000000..cd1047d7 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/projection.json @@ -0,0 +1,287 @@ +{ + "ok": true, + "status": "applied", + "repo_slug": "ops-warden", + "commit": "08c098e64a9afd89e43f65436782ed2bb69cdfbd", + "requests": 2, + "elapsed_ms": 4638.5, + "git": { + "upstream": "origin/main", + "behind": 0, + "ahead": 0 + }, + "identifiers": { + "schema": "repo-manager.identifier-assignment.v1", + "ok": true, + "executed": true, + "repo": "ops-warden", + "namespace": "helixforge", + "assignments": [], + "historical_invalid_identifiers": [], + "historical_identity_collisions": [], + "files_changed": [] + }, + "receipt": { + "schema": "state-hub.repository-projection-reconcile.v1", + "instance_role": "primary", + "instance_label": "railiance01", + "expected_commit": "08c098e64a9afd89e43f65436782ed2bb69cdfbd", + "derived_commit": "08c098e64a9afd89e43f65436782ed2bb69cdfbd", + "outcome": { + "schema": "state-hub.projection-reset.v1", + "repo_slug": "ops-warden", + "commit": "08c098e64a9afd89e43f65436782ed2bb69cdfbd", + "status": "applied", + "counts": { + "created": 0, + "updated": 51, + "retired": 0, + "refused": 0, + "released": 0, + "created_tasks": 0, + "updated_tasks": 0, + "cancelled_tasks": 0, + "created_edges": 0, + "removed_edges": 0, + "unresolved_edges": 0, + "external_edges": 17 + }, + "created": [], + "updated": [ + "WARDEN-WP-0001", + "WARDEN-WP-0002", + "WARDEN-WP-0003", + "WARDEN-WP-0004", + "WARDEN-WP-0005", + "WARDEN-WP-0006", + "WARDEN-WP-0007", + "WARDEN-WP-0008", + "WARDEN-WP-0009", + "WARDEN-WP-0010", + "WARDEN-WP-0011", + "WARDEN-WP-0012", + "WARDEN-WP-0013", + "WARDEN-WP-0014", + "WARDEN-WP-0015", + "WARDEN-WP-0016", + "WARDEN-WP-0017", + "WARDEN-WP-0018", + "WARDEN-WP-0019", + "WARDEN-WP-0020", + "WARDEN-WP-0021", + "WARDEN-WP-0022", + "WARDEN-WP-0023", + "WARDEN-WP-0024", + "WARDEN-WP-0025", + "WARDEN-WP-0026", + "WARDEN-WP-0027", + "WARDEN-WP-0028", + "WARDEN-WP-0029", + "WARDEN-WP-0030", + "WARDEN-WP-0031", + "WARDEN-WP-0032", + "WARDEN-WP-0033", + "WARDEN-WP-0034", + "WARDEN-WP-0035", + "WARDEN-WP-0036", + "WARDEN-WP-0037", + "WARDEN-WP-0038", + "WARDEN-WP-0039", + "WARDEN-WP-0040", + "WARDEN-WP-0041", + "WARDEN-WP-0042", + "WARDEN-WP-0043", + "WARDEN-WP-0044", + "WARDEN-WP-ADHOC-2026-06-27", + "WARDEN-WP-ADHOC-2026-06-29", + "WARDEN-WP-ADHOC-2026-07-07", + "WARDEN-WP-ADHOC-2026-08-11", + "WARDEN-WP-ADHOC-2026-08-17", + "WARDEN-WP-ADHOC-2026-09-08", + "WARDEN-WP-ADHOC-2026-10-03" + ], + "retired": [], + "released": [], + "created_tasks": [], + "updated_tasks": [], + "cancelled_tasks": [], + "created_edges": [], + "removed_edges": [], + "unresolved_edges": [], + "external_edges": [ + { + "workplan": "WARDEN-WP-0032", + "from": "WARDEN-WP-0032", + "target": "WARDEN-WP-0031", + "relationship_type": "blocks", + "from_workplan_id": "38c6a5f3-fb0d-5230-be85-f9e3ffc850f6", + "from_task_id": null, + "to_workplan_id": "739bad25-2345-5f4f-aaa3-cc4cd8c71f6c", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0037", + "from": "WARDEN-WP-0037-T03", + "target": "SECRETS-WP-0006-T06", + "relationship_type": "starts_after", + "from_workplan_id": "42a097db-1c24-558e-a724-030bb2b4443e", + "from_task_id": "a8b1b855-ab34-5835-b9fd-5f48bc0b6817", + "to_workplan_id": null, + "to_task_id": "1431edae-5791-5892-8c4b-829419b537d2" + }, + { + "workplan": "WARDEN-WP-0033", + "from": "WARDEN-WP-0033", + "target": "WARDEN-WP-0030", + "relationship_type": "blocks", + "from_workplan_id": "4627d89b-4b00-562a-81e9-76e96f90fa7e", + "from_task_id": null, + "to_workplan_id": "da3367d5-890c-52c6-aa54-1bdd0f277342", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0013", + "from": "WARDEN-WP-0013", + "target": "WARDEN-WP-0011", + "relationship_type": "blocks", + "from_workplan_id": "4678c41a-c1d0-48cd-9988-4ea0380e8258", + "from_task_id": null, + "to_workplan_id": "0a520f8e-01b4-48f1-9af3-2f3f69fd0672", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0013", + "from": "WARDEN-WP-0013", + "target": "WARDEN-WP-0009", + "relationship_type": "blocks", + "from_workplan_id": "4678c41a-c1d0-48cd-9988-4ea0380e8258", + "from_task_id": null, + "to_workplan_id": "9213b262-e2f5-480e-a5bc-56635d5eb4c9", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0013", + "from": "WARDEN-WP-0013", + "target": "WARDEN-WP-0008", + "relationship_type": "blocks", + "from_workplan_id": "4678c41a-c1d0-48cd-9988-4ea0380e8258", + "from_task_id": null, + "to_workplan_id": "a174963a-4ff1-4565-b19f-896cd4ff14a0", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0013", + "from": "WARDEN-WP-0013", + "target": "WARDEN-WP-0010", + "relationship_type": "blocks", + "from_workplan_id": "4678c41a-c1d0-48cd-9988-4ea0380e8258", + "from_task_id": null, + "to_workplan_id": "e93de9fd-0192-4d02-bb7c-5e859fb76b9b", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0031", + "from": "WARDEN-WP-0031", + "target": "WARDEN-WP-0007", + "relationship_type": "blocks", + "from_workplan_id": "739bad25-2345-5f4f-aaa3-cc4cd8c71f6c", + "from_task_id": null, + "to_workplan_id": "3718ac07-2fa2-47d0-a02a-c9a7b83a5ba9", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0038", + "from": "WARDEN-WP-0038", + "target": "WARDEN-WP-0029", + "relationship_type": "blocks", + "from_workplan_id": "751ad530-e44b-52c4-b70e-cb47568a0179", + "from_task_id": null, + "to_workplan_id": "bbb3d9ec-d88d-5088-b4c0-55bfba0a10cf", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0023", + "from": "WARDEN-WP-0023", + "target": "WARDEN-WP-0022", + "relationship_type": "blocks", + "from_workplan_id": "7bad1ec4-a7c2-4980-b8f9-49a7f5408574", + "from_task_id": null, + "to_workplan_id": "fc8afa28-68a7-4250-a19e-9754829f0cd5", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0034", + "from": "WARDEN-WP-0034", + "target": "WARDEN-WP-0030", + "relationship_type": "blocks", + "from_workplan_id": "ae3ff76f-883d-5e2f-b6aa-144d61e8fdef", + "from_task_id": null, + "to_workplan_id": "da3367d5-890c-52c6-aa54-1bdd0f277342", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0040", + "from": "WARDEN-WP-0040", + "target": "WARDEN-WP-0032", + "relationship_type": "blocks", + "from_workplan_id": "c8ee441e-1be1-5219-910c-e79ff23cc9ec", + "from_task_id": null, + "to_workplan_id": "38c6a5f3-fb0d-5230-be85-f9e3ffc850f6", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0040", + "from": "WARDEN-WP-0040", + "target": "WARDEN-WP-0034", + "relationship_type": "blocks", + "from_workplan_id": "c8ee441e-1be1-5219-910c-e79ff23cc9ec", + "from_task_id": null, + "to_workplan_id": "ae3ff76f-883d-5e2f-b6aa-144d61e8fdef", + "to_task_id": null + }, + { + "workplan": "WARDEN-WP-0040", + "from": "WARDEN-WP-0040-T03", + "target": "WARDEN-WP-0040-T01", + "relationship_type": "starts_after", + "from_workplan_id": "c8ee441e-1be1-5219-910c-e79ff23cc9ec", + "from_task_id": "93eaf1f2-daaa-5e22-8804-85ca9433571c", + "to_workplan_id": null, + "to_task_id": "611f0901-9fb5-5954-8dd0-a860c5f0cbec" + }, + { + "workplan": "WARDEN-WP-0044", + "from": "WARDEN-WP-0044-T04", + "target": "WARDEN-WP-0044-T03", + "relationship_type": "starts_after", + "from_workplan_id": "f7e81013-6868-5d99-8528-ba75a442eca9", + "from_task_id": "4a0fa4a7-5ca9-518a-ab92-a79a5e2cf93e", + "to_workplan_id": null, + "to_task_id": "bcbf6c91-2c04-5c16-ae8c-5d6c06fd6b89" + }, + { + "workplan": "WARDEN-WP-0044", + "from": "WARDEN-WP-0044-T03", + "target": "MASON-WP-0010-T03", + "relationship_type": "starts_after", + "from_workplan_id": "f7e81013-6868-5d99-8528-ba75a442eca9", + "from_task_id": "bcbf6c91-2c04-5c16-ae8c-5d6c06fd6b89", + "to_workplan_id": null, + "to_task_id": "56cea6be-c613-586c-80cd-125340b374da" + }, + { + "workplan": "WARDEN-WP-0044", + "from": "WARDEN-WP-0044-T03", + "target": "WARDEN-WP-0044-T02", + "relationship_type": "starts_after", + "from_workplan_id": "f7e81013-6868-5d99-8528-ba75a442eca9", + "from_task_id": "bcbf6c91-2c04-5c16-ae8c-5d6c06fd6b89", + "to_workplan_id": null, + "to_task_id": "5f68c991-f490-58f8-a121-92f74073d272" + } + ], + "refused": [], + "notes": [] + } + } +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/projection.stderr.txt b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/projection.stderr.txt new file mode 100644 index 00000000..e69de29b diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-backup/.custodian-brief.md.worktree b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-backup/.custodian-brief.md.worktree new file mode 100644 index 00000000..34573d26 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-backup/.custodian-brief.md.worktree @@ -0,0 +1,60 @@ + +# Custodian Brief — ops-warden + +**Domain:** infotech +**Last synced:** 2026-10-16 00:05 UTC +**State Hub:** http://127.0.0.1:8000 *(adjust if running on a remote machine)* + +## Active Workstreams + +### Adopt unknown -> fail_closed behind signing-target classification coverage +Progress: 1/4 done | workplan_id: `c8ee441e-1be1-5219-910c-e79ff23cc9ec` + +**Open tasks:** +- ! Tasks `611f0901` + *(wait: Warden's own declaration cannot classify the repair-path target workloads; the owner must declare the continuity actor/target and its z2-continuity resolution (see 2026-09-28 review).)* +- ! Tasks `54ad4864` + *(wait: Owners of agt-codex-interhub-bootstrap (ops-hub) and agt-state-hub-bridge (ops-bridge) must publish authoritative workload identity declarations; atm-backup-daily declared by activity-core and compiled 2026-10-09 (z2-protected, admission unsatisfied: M1 below M2 floor).)* +- ! Tasks `93eaf1f2` + *(wait: Gated on T01 and on layer model v0.8 (or successor) reaching accepted; never convert against a proposed standard.)* + +### Layer model v0.7 conformance — state the deadline, bind the agent boundary, steward the estate's newest rule +Progress: 5/6 done | workplan_id: `ae3ff76f-883d-5e2f-b6aa-144d61e8fdef` + +**Open tasks:** +- ! Tasks `7d1b3c82` + *(wait: Two items to route, not absorb: ops-mason has published no stance map; the second is another repository's to own.)* + +### Follow through on KnownSecurityCases along their type's route +Progress: 2/4 done | workplan_id: `f7e81013-6868-5d99-8528-ba75a442eca9` + +**Open tasks:** +- ! T03 — Run and verify a case `4a0fa4a7` + *(wait: Catalog integration follows a proven run.)* +- ► T02 — Plan a case run `bcbf6c91` + +### Tamper-resistant credential governance + mass rotation/lockdown (Strand B) +Progress: 2/3 done | workplan_id: `21528e8d-a049-523d-9ae1-da7a27cb8bbf` + +**Open tasks:** +- · Task: Graded lockdown / break-glass with explicit trust-root `cae498ee` + +### Repoint the whynot-design npm lane to Forgejo +Progress: 2/3 done | workplan_id: `42a097db-1c24-558e-a724-030bb2b4443e` + +**Open tasks:** +- ! Prove routing and publication `a8b1b855` + *(wait: Hold kept by D3 until SECRETS-WP-0006-T06 moves publishing off the legacy whynot-design npm path; then rotate and prove a fresh publish.)* + +## Inbox Hygiene + +**Stale unread:** 2 message(s) older than 3 day(s) — triage at session start. +**Missing thread_id:** 3 unread message(s) lack supersession chains. + +--- +## MCP Orientation (when available) + +If the state-hub MCP server is reachable, call: +`get_domain_summary("infotech")` +This provides richer cross-domain context. +If the MCP call fails, use this file as your orientation source. diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-backup/WORK-RECORDS.md.worktree b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-backup/WORK-RECORDS.md.worktree new file mode 100644 index 00000000..8b5226ae --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-backup/WORK-RECORDS.md.worktree @@ -0,0 +1,188 @@ +# Work Records — ops-warden + +> Generated by `statehub fix-consistency` (CUST-WP-0061-T04, work-record +> stage 3). Do not edit by hand — edit the source file/block listed for +> each record and re-run fix-consistency to refresh this index. Archived +> workplans are omitted; closed decisions/intakes/engagements stay listed +> so recently-resolved work is still visible. [auto] + +| Kind | ID | Status | Lane | Source | +| --- | --- | --- | --- | --- | +| workplan | WARDEN-WP-ADHOC-2026-06-27 | finished | — | workplans/ADHOC-2026-06-27.md | +| workplan | WARDEN-WP-ADHOC-2026-06-29 | finished | — | workplans/ADHOC-2026-06-29.md | +| workplan | WARDEN-WP-ADHOC-2026-08-11 | finished | — | workplans/ADHOC-2026-08-11.md | +| workplan | WARDEN-WP-ADHOC-2026-08-17 | finished | — | workplans/ADHOC-2026-08-17.md | +| workplan | WARDEN-WP-ADHOC-2026-09-08 | finished | — | workplans/ADHOC-2026-09-08.md | +| workplan | WARDEN-WP-ADHOC-2026-10-03 | finished | — | workplans/ADHOC-2026-10-03.md | +| workplan | WARDEN-WP-0016 | finished | — | workplans/WARDEN-WP-0016-ops-bridge-tunnel-cert-pilot.md | +| workplan | WARDEN-WP-0017 | finished | — | workplans/WARDEN-WP-0017-access-front-door-discoverability.md | +| workplan | WARDEN-WP-0018 | finished | — | workplans/WARDEN-WP-0018-whynot-design-npm-lane-activation.md | +| workplan | WARDEN-WP-0019 | finished | — | workplans/WARDEN-WP-0019-route-to-secrets-engine.md | +| workplan | WARDEN-WP-0020 | finished | — | workplans/WARDEN-WP-0020-ops-warden-worker.md | +| workplan | WARDEN-WP-0021 | finished | — | workplans/WARDEN-WP-0021-enable-scheduled-worker-tick.md | +| workplan | WARDEN-WP-0022 | finished | — | workplans/WARDEN-WP-0022-audit-trail-and-activity.md | +| workplan | WARDEN-WP-0023 | finished | — | workplans/WARDEN-WP-0023-intent-scope-alignment-closeout.md | +| workplan | WARDEN-WP-0024 | finished | — | workplans/WARDEN-WP-0024-experiential-memory-and-agent-sessions.md | +| workplan | WARDEN-WP-0025 | finished | — | workplans/WARDEN-WP-0025-forgejo-admin-api-token-lane.md | +| workplan | WARDEN-WP-0026 | finished | — | workplans/WARDEN-WP-0026-credential-disclosure-hygiene.md | +| workplan | WARDEN-WP-0027 | blocked | — | workplans/WARDEN-WP-0027-credential-governance-lockdown.md | +| workplan | WARDEN-WP-0028 | finished | — | workplans/WARDEN-WP-0028-tenant-secret-custody.md | +| workplan | WARDEN-WP-0029 | finished | — | workplans/WARDEN-WP-0029-policy-front-door-and-founder-surface.md | +| workplan | WARDEN-WP-0030 | finished | — | workplans/WARDEN-WP-0030-delegation-register.md | +| workplan | WARDEN-WP-0031 | finished | — | workplans/WARDEN-WP-0031-policy-caller-identity.md | +| workplan | WARDEN-WP-0032 | finished | — | workplans/WARDEN-WP-0032-security-zones.md | +| workplan | WARDEN-WP-0033 | finished | — | workplans/WARDEN-WP-0033-native-lane-handoff.md | +| workplan | WARDEN-WP-0034 | active | — | workplans/WARDEN-WP-0034-layer-model-v07-conformance.md | +| workplan | WARDEN-WP-0035 | finished | — | workplans/WARDEN-WP-0035-policy-nexus-forgejo-source-read-route.md | +| workplan | WARDEN-WP-0036 | finished | — | workplans/WARDEN-WP-0036-attended-login-openbao-output.md | +| workplan | WARDEN-WP-0037 | blocked | — | workplans/WARDEN-WP-0037-whynot-design-forgejo-npm-lane.md | +| workplan | WARDEN-WP-0038 | finished | — | workplans/WARDEN-WP-0038-plan-mutation-intent.md | +| workplan | WARDEN-WP-0039 | finished | — | workplans/WARDEN-WP-0039-explicit-policy-refusal.md | +| workplan | WARDEN-WP-0040 | active | — | workplans/WARDEN-WP-0040-unknown-zone-fail-closed-adoption.md | +| workplan | WARDEN-WP-0041 | finished | — | workplans/WARDEN-WP-0041-catalog-lane-scaffolding.md | +| workplan | WARDEN-WP-0042 | finished | — | workplans/WARDEN-WP-0042-openbao-structure-survey-route.md | +| workplan | WARDEN-WP-0043 | finished | — | workplans/WARDEN-WP-0043-platform-supplier-credentials.md | +| workplan | WARDEN-WP-0044 | active | — | workplans/WARDEN-WP-0044-security-case-follow-through.md | +| task | WARDEN-WP-ADHOC-2026-06-27-T01 | done | — | workplans/ADHOC-2026-06-27.md | +| task | WARDEN-WP-ADHOC-2026-06-29-T01 | done | — | workplans/ADHOC-2026-06-29.md | +| task | WARDEN-WP-ADHOC-2026-08-11-T01 | done | — | workplans/ADHOC-2026-08-11.md | +| task | WARDEN-WP-ADHOC-2026-08-11-T02 | done | — | workplans/ADHOC-2026-08-11.md | +| task | WARDEN-WP-ADHOC-2026-08-11-T03 | done | — | workplans/ADHOC-2026-08-11.md | +| task | WARDEN-WP-ADHOC-2026-08-17-T01 | done | — | workplans/ADHOC-2026-08-17.md | +| task | WARDEN-WP-ADHOC-2026-08-17-T02 | done | — | workplans/ADHOC-2026-08-17.md | +| task | WARDEN-WP-ADHOC-2026-08-17-T03 | done | — | workplans/ADHOC-2026-08-17.md | +| task | WARDEN-WP-ADHOC-2026-08-17-T04 | done | — | workplans/ADHOC-2026-08-17.md | +| task | WARDEN-WP-ADHOC-2026-09-08-T01 | done | — | workplans/ADHOC-2026-09-08.md | +| task | WARDEN-WP-ADHOC-2026-09-08-T02 | done | — | workplans/ADHOC-2026-09-08.md | +| task | WARDEN-WP-ADHOC-2026-09-08-T03 | done | — | workplans/ADHOC-2026-09-08.md | +| task | WARDEN-WP-ADHOC-2026-09-08-T04 | done | — | workplans/ADHOC-2026-09-08.md | +| task | WARDEN-WP-ADHOC-2026-09-08-T05 | done | — | workplans/ADHOC-2026-09-08.md | +| task | WARDEN-WP-ADHOC-2026-09-08-T06 | done | — | workplans/ADHOC-2026-09-08.md | +| task | WARDEN-WP-ADHOC-2026-10-03-T01 | done | — | workplans/ADHOC-2026-10-03.md | +| task | WARDEN-WP-0016-T01 | done | — | workplans/WARDEN-WP-0016-ops-bridge-tunnel-cert-pilot.md | +| task | WARDEN-WP-0016-T02 | done | — | workplans/WARDEN-WP-0016-ops-bridge-tunnel-cert-pilot.md | +| task | WARDEN-WP-0016-T03 | done | — | workplans/WARDEN-WP-0016-ops-bridge-tunnel-cert-pilot.md | +| task | WARDEN-WP-0016-T04 | done | — | workplans/WARDEN-WP-0016-ops-bridge-tunnel-cert-pilot.md | +| task | WARDEN-WP-0017-T01 | done | — | workplans/WARDEN-WP-0017-access-front-door-discoverability.md | +| task | WARDEN-WP-0017-T02 | done | — | workplans/WARDEN-WP-0017-access-front-door-discoverability.md | +| task | WARDEN-WP-0017-T03 | done | — | workplans/WARDEN-WP-0017-access-front-door-discoverability.md | +| task | WARDEN-WP-0018-T01 | done | — | workplans/WARDEN-WP-0018-whynot-design-npm-lane-activation.md | +| task | WARDEN-WP-0018-T02 | done | — | workplans/WARDEN-WP-0018-whynot-design-npm-lane-activation.md | +| task | WARDEN-WP-0018-T03 | done | — | workplans/WARDEN-WP-0018-whynot-design-npm-lane-activation.md | +| task | WARDEN-WP-0019-T01 | done | — | workplans/WARDEN-WP-0019-route-to-secrets-engine.md | +| task | WARDEN-WP-0019-T02 | done | — | workplans/WARDEN-WP-0019-route-to-secrets-engine.md | +| task | WARDEN-WP-0020-T01 | done | — | workplans/WARDEN-WP-0020-ops-warden-worker.md | +| task | WARDEN-WP-0020-T02 | done | — | workplans/WARDEN-WP-0020-ops-warden-worker.md | +| task | WARDEN-WP-0020-T03 | done | — | workplans/WARDEN-WP-0020-ops-warden-worker.md | +| task | WARDEN-WP-0020-T04 | done | — | workplans/WARDEN-WP-0020-ops-warden-worker.md | +| task | WARDEN-WP-0020-T05 | done | — | workplans/WARDEN-WP-0020-ops-warden-worker.md | +| task | WARDEN-WP-0021-T01 | done | — | workplans/WARDEN-WP-0021-enable-scheduled-worker-tick.md | +| task | WARDEN-WP-0021-T02 | done | — | workplans/WARDEN-WP-0021-enable-scheduled-worker-tick.md | +| task | WARDEN-WP-0021-T03 | done | — | workplans/WARDEN-WP-0021-enable-scheduled-worker-tick.md | +| task | WARDEN-WP-0021-T04 | done | — | workplans/WARDEN-WP-0021-enable-scheduled-worker-tick.md | +| task | WARDEN-WP-0021-T05 | done | — | workplans/WARDEN-WP-0021-enable-scheduled-worker-tick.md | +| task | WARDEN-WP-0022-T01 | done | — | workplans/WARDEN-WP-0022-audit-trail-and-activity.md | +| task | WARDEN-WP-0022-T02 | done | — | workplans/WARDEN-WP-0022-audit-trail-and-activity.md | +| task | WARDEN-WP-0022-T03 | done | — | workplans/WARDEN-WP-0022-audit-trail-and-activity.md | +| task | WARDEN-WP-0022-T04 | done | — | workplans/WARDEN-WP-0022-audit-trail-and-activity.md | +| task | WARDEN-WP-0023-T01 | done | — | workplans/WARDEN-WP-0023-intent-scope-alignment-closeout.md | +| task | WARDEN-WP-0023-T02 | done | — | workplans/WARDEN-WP-0023-intent-scope-alignment-closeout.md | +| task | WARDEN-WP-0023-T03 | done | — | workplans/WARDEN-WP-0023-intent-scope-alignment-closeout.md | +| task | WARDEN-WP-0023-T04 | done | — | workplans/WARDEN-WP-0023-intent-scope-alignment-closeout.md | +| task | WARDEN-WP-0023-T05 | done | — | workplans/WARDEN-WP-0023-intent-scope-alignment-closeout.md | +| task | WARDEN-WP-0023-T06 | done | — | workplans/WARDEN-WP-0023-intent-scope-alignment-closeout.md | +| task | WARDEN-WP-0023-T07 | done | — | workplans/WARDEN-WP-0023-intent-scope-alignment-closeout.md | +| task | WARDEN-WP-0024-T01 | done | — | workplans/WARDEN-WP-0024-experiential-memory-and-agent-sessions.md | +| task | WARDEN-WP-0024-T02 | done | — | workplans/WARDEN-WP-0024-experiential-memory-and-agent-sessions.md | +| task | WARDEN-WP-0024-T03 | done | — | workplans/WARDEN-WP-0024-experiential-memory-and-agent-sessions.md | +| task | WARDEN-WP-0024-T04 | done | — | workplans/WARDEN-WP-0024-experiential-memory-and-agent-sessions.md | +| task | WARDEN-WP-0024-T05 | done | — | workplans/WARDEN-WP-0024-experiential-memory-and-agent-sessions.md | +| task | WARDEN-WP-0024-T06 | done | — | workplans/WARDEN-WP-0024-experiential-memory-and-agent-sessions.md | +| task | WARDEN-WP-0024-T07 | done | — | workplans/WARDEN-WP-0024-experiential-memory-and-agent-sessions.md | +| task | WARDEN-WP-0025-T01 | done | — | workplans/WARDEN-WP-0025-forgejo-admin-api-token-lane.md | +| task | WARDEN-WP-0025-T02 | done | — | workplans/WARDEN-WP-0025-forgejo-admin-api-token-lane.md | +| task | WARDEN-WP-0025-T03 | done | — | workplans/WARDEN-WP-0025-forgejo-admin-api-token-lane.md | +| task | WARDEN-WP-0025-T04 | done | — | workplans/WARDEN-WP-0025-forgejo-admin-api-token-lane.md | +| task | WARDEN-WP-0025-T05 | done | — | workplans/WARDEN-WP-0025-forgejo-admin-api-token-lane.md | +| task | WARDEN-WP-0026-T01 | done | — | workplans/WARDEN-WP-0026-credential-disclosure-hygiene.md | +| task | WARDEN-WP-0026-T02 | done | — | workplans/WARDEN-WP-0026-credential-disclosure-hygiene.md | +| task | WARDEN-WP-0026-T03 | done | — | workplans/WARDEN-WP-0026-credential-disclosure-hygiene.md | +| task | WARDEN-WP-0026-T04 | done | — | workplans/WARDEN-WP-0026-credential-disclosure-hygiene.md | +| task | WARDEN-WP-0026-T05 | done | — | workplans/WARDEN-WP-0026-credential-disclosure-hygiene.md | +| task | WARDEN-WP-0026-T06 | done | — | workplans/WARDEN-WP-0026-credential-disclosure-hygiene.md | +| task | WARDEN-WP-0026-T07 | done | — | workplans/WARDEN-WP-0026-credential-disclosure-hygiene.md | +| task | WARDEN-WP-0027-T01 | cancel | — | workplans/WARDEN-WP-0027-credential-governance-lockdown.md | +| task | WARDEN-WP-0027-T02 | todo | — | workplans/WARDEN-WP-0027-credential-governance-lockdown.md | +| task | WARDEN-WP-0027-T03 | cancel | — | workplans/WARDEN-WP-0027-credential-governance-lockdown.md | +| task | WARDEN-WP-0028-T01 | done | — | workplans/WARDEN-WP-0028-tenant-secret-custody.md | +| task | WARDEN-WP-0028-T02 | done | — | workplans/WARDEN-WP-0028-tenant-secret-custody.md | +| task | WARDEN-WP-0028-T03 | done | — | workplans/WARDEN-WP-0028-tenant-secret-custody.md | +| task | WARDEN-WP-0028-T04 | done | — | workplans/WARDEN-WP-0028-tenant-secret-custody.md | +| task | WARDEN-WP-0028-T05 | done | — | workplans/WARDEN-WP-0028-tenant-secret-custody.md | +| task | WARDEN-WP-0028-T06 | done | — | workplans/WARDEN-WP-0028-tenant-secret-custody.md | +| task | WARDEN-WP-0028-T07 | done | — | workplans/WARDEN-WP-0028-tenant-secret-custody.md | +| task | WARDEN-WP-0029-T01 | done | — | workplans/WARDEN-WP-0029-policy-front-door-and-founder-surface.md | +| task | WARDEN-WP-0029-T02 | done | — | workplans/WARDEN-WP-0029-policy-front-door-and-founder-surface.md | +| task | WARDEN-WP-0029-T03 | done | — | workplans/WARDEN-WP-0029-policy-front-door-and-founder-surface.md | +| task | WARDEN-WP-0029-T04 | done | — | workplans/WARDEN-WP-0029-policy-front-door-and-founder-surface.md | +| task | WARDEN-WP-0029-T05 | done | — | workplans/WARDEN-WP-0029-policy-front-door-and-founder-surface.md | +| task | WARDEN-WP-0030-T01 | done | — | workplans/WARDEN-WP-0030-delegation-register.md | +| task | WARDEN-WP-0030-T02 | done | — | workplans/WARDEN-WP-0030-delegation-register.md | +| task | WARDEN-WP-0030-T03 | done | — | workplans/WARDEN-WP-0030-delegation-register.md | +| task | WARDEN-WP-0030-T04 | done | — | workplans/WARDEN-WP-0030-delegation-register.md | +| task | WARDEN-WP-0030-T05 | done | — | workplans/WARDEN-WP-0030-delegation-register.md | +| task | WARDEN-WP-0031-T01 | done | — | workplans/WARDEN-WP-0031-policy-caller-identity.md | +| task | WARDEN-WP-0031-T02 | done | — | workplans/WARDEN-WP-0031-policy-caller-identity.md | +| task | WARDEN-WP-0031-T03 | done | — | workplans/WARDEN-WP-0031-policy-caller-identity.md | +| task | WARDEN-WP-0031-T04 | done | — | workplans/WARDEN-WP-0031-policy-caller-identity.md | +| task | WARDEN-WP-0031-T05 | cancel | — | workplans/WARDEN-WP-0031-policy-caller-identity.md | +| task | WARDEN-WP-0032-T01 | done | — | workplans/WARDEN-WP-0032-security-zones.md | +| task | WARDEN-WP-0032-T02 | done | — | workplans/WARDEN-WP-0032-security-zones.md | +| task | WARDEN-WP-0032-T03 | done | — | workplans/WARDEN-WP-0032-security-zones.md | +| task | WARDEN-WP-0032-T04 | done | — | workplans/WARDEN-WP-0032-security-zones.md | +| task | WARDEN-WP-0032-T05 | done | — | workplans/WARDEN-WP-0032-security-zones.md | +| task | WARDEN-WP-0032-T06 | done | — | workplans/WARDEN-WP-0032-security-zones.md | +| task | WARDEN-WP-0032-T07 | done | — | workplans/WARDEN-WP-0032-security-zones.md | +| task | WARDEN-WP-0033-T01 | done | — | workplans/WARDEN-WP-0033-native-lane-handoff.md | +| task | WARDEN-WP-0033-T02 | done | — | workplans/WARDEN-WP-0033-native-lane-handoff.md | +| task | WARDEN-WP-0033-T03 | done | — | workplans/WARDEN-WP-0033-native-lane-handoff.md | +| task | WARDEN-WP-0033-T04 | done | — | workplans/WARDEN-WP-0033-native-lane-handoff.md | +| task | WARDEN-WP-0033-T05 | done | — | workplans/WARDEN-WP-0033-native-lane-handoff.md | +| task | WARDEN-WP-0033-T06 | done | — | workplans/WARDEN-WP-0033-native-lane-handoff.md | +| task | WARDEN-WP-0034-T01 | done | — | workplans/WARDEN-WP-0034-layer-model-v07-conformance.md | +| task | WARDEN-WP-0034-T02 | done | — | workplans/WARDEN-WP-0034-layer-model-v07-conformance.md | +| task | WARDEN-WP-0034-T03 | done | — | workplans/WARDEN-WP-0034-layer-model-v07-conformance.md | +| task | WARDEN-WP-0034-T04 | done | — | workplans/WARDEN-WP-0034-layer-model-v07-conformance.md | +| task | WARDEN-WP-0034-T05 | wait | — | workplans/WARDEN-WP-0034-layer-model-v07-conformance.md | +| task | WARDEN-WP-0034-T06 | done | — | workplans/WARDEN-WP-0034-layer-model-v07-conformance.md | +| task | WARDEN-WP-0035-T01 | done | — | workplans/WARDEN-WP-0035-policy-nexus-forgejo-source-read-route.md | +| task | WARDEN-WP-0035-T02 | done | — | workplans/WARDEN-WP-0035-policy-nexus-forgejo-source-read-route.md | +| task | WARDEN-WP-0036-T01 | done | — | workplans/WARDEN-WP-0036-attended-login-openbao-output.md | +| task | WARDEN-WP-0036-T02 | done | — | workplans/WARDEN-WP-0036-attended-login-openbao-output.md | +| task | WARDEN-WP-0037-T01 | done | — | workplans/WARDEN-WP-0037-whynot-design-forgejo-npm-lane.md | +| task | WARDEN-WP-0037-T02 | done | — | workplans/WARDEN-WP-0037-whynot-design-forgejo-npm-lane.md | +| task | WARDEN-WP-0037-T03 | wait | — | workplans/WARDEN-WP-0037-whynot-design-forgejo-npm-lane.md | +| task | WARDEN-WP-0038-T01 | done | — | workplans/WARDEN-WP-0038-plan-mutation-intent.md | +| task | WARDEN-WP-0039-T01 | done | — | workplans/WARDEN-WP-0039-explicit-policy-refusal.md | +| task | WARDEN-WP-0039-T02 | done | — | workplans/WARDEN-WP-0039-explicit-policy-refusal.md | +| task | WARDEN-WP-0039-T03 | done | — | workplans/WARDEN-WP-0039-explicit-policy-refusal.md | +| task | WARDEN-WP-0040-T01 | wait | — | workplans/WARDEN-WP-0040-unknown-zone-fail-closed-adoption.md | +| task | WARDEN-WP-0040-T02 | wait | — | workplans/WARDEN-WP-0040-unknown-zone-fail-closed-adoption.md | +| task | WARDEN-WP-0040-T03 | wait | — | workplans/WARDEN-WP-0040-unknown-zone-fail-closed-adoption.md | +| task | WARDEN-WP-0040-T04 | done | — | workplans/WARDEN-WP-0040-unknown-zone-fail-closed-adoption.md | +| task | WARDEN-WP-0041-T01 | done | — | workplans/WARDEN-WP-0041-catalog-lane-scaffolding.md | +| task | WARDEN-WP-0041-T02 | done | — | workplans/WARDEN-WP-0041-catalog-lane-scaffolding.md | +| task | WARDEN-WP-0041-T03 | done | — | workplans/WARDEN-WP-0041-catalog-lane-scaffolding.md | +| task | WARDEN-WP-0041-T04 | done | — | workplans/WARDEN-WP-0041-catalog-lane-scaffolding.md | +| task | WARDEN-WP-0042-T01 | done | — | workplans/WARDEN-WP-0042-openbao-structure-survey-route.md | +| task | WARDEN-WP-0042-T02 | done | — | workplans/WARDEN-WP-0042-openbao-structure-survey-route.md | +| task | WARDEN-WP-0043-T01 | done | — | workplans/WARDEN-WP-0043-platform-supplier-credentials.md | +| task | WARDEN-WP-0043-T02 | done | — | workplans/WARDEN-WP-0043-platform-supplier-credentials.md | +| task | WARDEN-WP-0043-T03 | done | — | workplans/WARDEN-WP-0043-platform-supplier-credentials.md | +| task | WARDEN-WP-0044-T01 | done | — | workplans/WARDEN-WP-0044-security-case-follow-through.md | +| task | WARDEN-WP-0044-T02 | done | — | workplans/WARDEN-WP-0044-security-case-follow-through.md | +| task | WARDEN-WP-0044-T03 | progress | — | workplans/WARDEN-WP-0044-security-case-follow-through.md | +| task | WARDEN-WP-0044-T04 | wait | — | workplans/WARDEN-WP-0044-security-case-follow-through.md | +| intake | WARDEN-IN-0001 | closed | — | intakes/intakes.md | +| intake | WARDEN-IN-0002 | closed | — | intakes/intakes.md | +| intake | WARDEN-IN-0003 | closed | — | intakes/intakes.md | diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-backup/originals.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-backup/originals.json new file mode 100644 index 00000000..21406cf6 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-backup/originals.json @@ -0,0 +1,10 @@ +[ + { + "path": ".custodian-brief.md", + "index": "100644 34573d262327057c11628ce8a7ca78292968545b 0\t.custodian-brief.md" + }, + { + "path": "WORK-RECORDS.md", + "index": "100644 34cf268862326a5832a7d0be9e84eb296e5601bb 0\tWORK-RECORDS.md" + } +] diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-commit.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-commit.json new file mode 100644 index 00000000..643491b5 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-commit.json @@ -0,0 +1,25 @@ +{ + "exit_code": 0, + "commit": "08c098e64a9afd89e43f65436782ed2bb69cdfbd", + "base": "b593c879831378db7dc62adfabdfedf2d44ddd38", + "files": [ + { + "path": "src/warden/case_run.py", + "sha256": "6bc06faf727db42810e4db2ab228cf60f52ede1e48d2b65d03d0a67492bd3c97" + }, + { + "path": "tests/test_case_current_session_reference.py", + "sha256": "7013ad1b30a0648cb83a78102def02340c6af3ebc284877335b71b080fced720" + }, + { + "path": "docs/security-case-execution-kernel-v1.md", + "sha256": "4055f8cee7688dd45a2026c6e1927d178bc38f4a7dbcf9736ef8fc3fcd9d8e4a" + }, + { + "path": "workplans/WARDEN-WP-0044-security-case-follow-through.md", + "sha256": "f67f434a05df28c936e6e35dbe1a0623f6915e4bc8df2f0263d1c030aaad8714" + } + ], + "verification": "normal direct git commit terminal exit 0; exact tree/parent and unrelated metadata/index verified", + "initial_preparation_failure": "sandbox denied owner Git index write; retried exact staging/normal commit with filesystem approval; hooks unchanged" +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-inputs.json b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-inputs.json new file mode 100644 index 00000000..2b810a5d --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-current-client-r1/warden-application/publication-inputs.json @@ -0,0 +1,23 @@ +{ + "owner": "ops-warden", + "base_revision": "b593c879831378db7dc62adfabdfedf2d44ddd38", + "message": "Keep original case provenance while revalidating a fresh caller session", + "files": [ + { + "path": "src/warden/case_run.py", + "sha256": "6bc06faf727db42810e4db2ab228cf60f52ede1e48d2b65d03d0a67492bd3c97" + }, + { + "path": "tests/test_case_current_session_reference.py", + "sha256": "7013ad1b30a0648cb83a78102def02340c6af3ebc284877335b71b080fced720" + }, + { + "path": "docs/security-case-execution-kernel-v1.md", + "sha256": "4055f8cee7688dd45a2026c6e1927d178bc38f4a7dbcf9736ef8fc3fcd9d8e4a" + }, + { + "path": "workplans/WARDEN-WP-0044-security-case-follow-through.md", + "sha256": "f67f434a05df28c936e6e35dbe1a0623f6915e4bc8df2f0263d1c030aaad8714" + } + ] +} diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-token-status-r1/owner-publication/publication-backup/.custodian-brief.md.worktree b/docs/changes/netkingdom-target-2026-10-18/keycape-token-status-r1/owner-publication/publication-backup/.custodian-brief.md.worktree new file mode 100644 index 00000000..f0bc1344 --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-token-status-r1/owner-publication/publication-backup/.custodian-brief.md.worktree @@ -0,0 +1,37 @@ + +# Custodian Brief — key-cape + +**Domain:** infotech +**Last synced:** 2026-10-18 01:51 UTC +**State Hub:** http://127.0.0.1:8000 *(adjust if running on a remote machine)* + +## Active Workstreams + +### Negative-check tokens for the secrets-engine OpenBao JWT role +Progress: 2/3 done | workplan_id: `09c3bddf-6058-5603-8488-cccdb7be4f86` + +**Open tasks:** +- ! T02 — Register the probe clients, run the attended probe, then remove them `03da4c38` + *(wait: Ordered identity gate: Forgejo first SecurityCase registration/claims proof, then NetKingdom registry session and attended human/coding-agent custody; original secrets-engine-openbao registration go remains resolved; probe/coding-client custody and attended readiness are not established.)* + +### Forgejo as a NetKingdom OIDC client, so the forge can close +Progress: 2/4 done | workplan_id: `098e3e2c-a138-560e-b2d3-3a15eb49d8a9` + +**Open tasks:** +- ! T02 — Register the client and hand over its secret `ddcfb482` + *(wait: Registration runs as the first KnownSecurityCase of type oidc-browser-relying-party (NK-WP-0048-T06), not as a hand-built rollout.)* +- ! T03 — Prove the claims for each kind of identity `40ddaa29` + *(wait: Claims are verified against the registered client.)* + +## Inbox Hygiene + +**Stale unread:** 2 message(s) older than 3 day(s) — triage at session start. +**Missing thread_id:** 2 unread message(s) lack supersession chains. + +--- +## MCP Orientation (when available) + +If the state-hub MCP server is reachable, call: +`get_domain_summary("infotech")` +This provides richer cross-domain context. +If the MCP call fails, use this file as your orientation source. diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-token-status-r1/owner-publication/publication-backup/WORK-RECORDS.md.worktree b/docs/changes/netkingdom-target-2026-10-18/keycape-token-status-r1/owner-publication/publication-backup/WORK-RECORDS.md.worktree new file mode 100644 index 00000000..d86b29bb --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-token-status-r1/owner-publication/publication-backup/WORK-RECORDS.md.worktree @@ -0,0 +1,224 @@ +# Work Records — key-cape + +> Generated by `statehub fix-consistency` (CUST-WP-0061-T04, work-record +> stage 3). Do not edit by hand — edit the source file/block listed for +> each record and re-run fix-consistency to refresh this index. Archived +> workplans are omitted; closed decisions/intakes/engagements stay listed +> so recently-resolved work is still visible. [auto] + +| Kind | ID | Status | Lane | Source | +| --- | --- | --- | --- | --- | +| workplan | ADHOC-2026-09-05 | finished | — | workplans/ADHOC-2026-09-05.md | +| workplan | ADHOC-2026-09-07 | finished | — | workplans/ADHOC-2026-09-07.md | +| workplan | ADHOC-2026-09-27 | finished | — | workplans/ADHOC-2026-09-27.md | +| workplan | KEY-WP-0001 | finished | — | workplans/KEY-WP-0001-keycape-implementation.md | +| workplan | KEY-WP-0002 | finished | — | workplans/KEY-WP-0002-container-image-gitea.md | +| workplan | KEY-WP-0003 | finished | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| workplan | KEY-WP-0004 | finished | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| workplan | KEY-WP-0005 | finished | — | workplans/KEY-WP-0005-iam-profile-core-claims.md | +| workplan | KEY-WP-0006 | finished | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| workplan | KEY-WP-0007 | finished | — | workplans/KEY-WP-0007-user-engine-portal-oidc-client.md | +| workplan | KEY-WP-0008 | finished | — | workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md | +| workplan | KEY-WP-0009 | finished | — | workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md | +| workplan | KEY-WP-0010 | finished | — | workplans/KEY-WP-0010-openbao-operator-loopback-callback.md | +| workplan | KEY-WP-0011 | finished | — | workplans/KEY-WP-0011-live-secret-exposure-recovery.md | +| workplan | KEY-WP-0012 | finished | — | workplans/KEY-WP-0012-userinfo-canonical-subject-resolution.md | +| workplan | KEY-WP-0013 | finished | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| workplan | KEY-WP-0014 | finished | — | workplans/KEY-WP-0014-native-credential-lane-handoff.md | +| workplan | KEY-WP-0015 | finished | — | workplans/KEY-WP-0015-scope-intent-assessment.md | +| workplan | KEY-WP-0016 | finished | — | workplans/KEY-WP-0016-authorization-code-protocol-hardening.md | +| workplan | KEY-WP-0017 | finished | — | workplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md | +| workplan | KEY-WP-0018 | finished | — | workplans/KEY-WP-0018-export-completeness-evidence.md | +| workplan | KEY-WP-0019 | finished | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| workplan | KEY-WP-0020 | finished | — | workplans/KEY-WP-0020-migration-contract-preservation.md | +| workplan | KEY-WP-0021 | finished | — | workplans/KEY-WP-0021-snapshot-attribute-validation.md | +| workplan | KEY-WP-0022 | finished | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| workplan | KEY-WP-0023 | finished | — | workplans/KEY-WP-0023-live-migration-proof.md | +| workplan | KEY-WP-0024 | finished | — | workplans/KEY-WP-0024-tenant-roles-opt-in-wiring.md | +| workplan | KEY-WP-0025 | finished | — | workplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md | +| workplan | KEY-WP-0026 | finished | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| workplan | KEY-WP-0027 | finished | — | workplans/KEY-WP-0027-rollout-readiness-and-live-state.md | +| workplan | KEY-WP-0028 | finished | — | workplans/KEY-WP-0028-browser-client-field-validation.md | +| workplan | KEY-WP-0029 | finished | — | workplans/KEY-WP-0029-scope-reassessment.md | +| workplan | KEY-WP-0030 | finished | — | workplans/KEY-WP-0030-tenant-precondition-guard.md | +| workplan | KEY-WP-0031 | finished | — | workplans/KEY-WP-0031-gate-house-tenant-ruling.md | +| workplan | KEY-WP-0032 | finished | — | workplans/KEY-WP-0032-principal-type-provenance-guard.md | +| workplan | KEY-WP-0033 | finished | — | workplans/KEY-WP-0033-vergabe-fresh-login.md | +| workplan | KEY-WP-0034 | finished | — | workplans/KEY-WP-0034-account-recovery.md | +| workplan | KEY-WP-0035 | finished | — | workplans/KEY-WP-0035-optional-mfa.md | +| workplan | KEY-WP-0036 | finished | — | workplans/KEY-WP-0036-platform-factor-recovery.md | +| workplan | KEY-WP-0037 | finished | — | workplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md | +| workplan | KEY-WP-0038 | active | — | workplans/KEY-WP-0038-forgejo-oidc-client.md | +| workplan | KEY-WP-0039 | active | — | workplans/KEY-WP-0039-openbao-negative-probe-tokens.md | +| workplan | KEY-WP-0040 | finished | — | workplans/KEY-WP-0040-mfa-attended-run-findings.md | +| workplan | KEY-WP-0041 | finished | — | workplans/KEY-WP-0041-sign-in-diagnosis-page.md | +| task | ADHOC-2026-09-05-T01 | done | — | workplans/ADHOC-2026-09-05.md | +| task | ADHOC-2026-09-07-T01 | done | — | workplans/ADHOC-2026-09-07.md | +| task | ADHOC-2026-09-27-T01 | done | — | workplans/ADHOC-2026-09-27.md | +| task | ADHOC-2026-09-27-T02 | done | — | workplans/ADHOC-2026-09-27.md | +| task | KEY-WP-0001-T01 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T02 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T03 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T04 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T05 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T06 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T07 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T08 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T09 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T10 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T11 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T12 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T13 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T14 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T15 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T16 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T17 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T18 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T19 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T20 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T21 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T22 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0001-T23 | done | — | workplans/KEY-WP-0001-keycape-implementation.md | +| task | KEY-WP-0002-T01 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0002-T02 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0002-T03 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0002-T04 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0002-T05 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0002-T06 | done | — | workplans/KEY-WP-0002-container-image-gitea.md | +| task | KEY-WP-0003-T01 | done | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| task | KEY-WP-0003-T02 | done | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| task | KEY-WP-0003-T03 | done | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| task | KEY-WP-0003-T04 | done | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| task | KEY-WP-0003-T05 | done | — | workplans/KEY-WP-0003-bootstrap-console-oidc-mfa-login.md | +| task | KEY-WP-0004-T01 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T02 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T03 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T04 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T05 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T06 | cancel | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0004-T07 | done | — | workplans/KEY-WP-0004-binky-hedgehog-tenant-onboarding.md | +| task | KEY-WP-0005-T01 | done | — | workplans/KEY-WP-0005-iam-profile-core-claims.md | +| task | KEY-WP-0005-T02 | done | — | workplans/KEY-WP-0005-iam-profile-core-claims.md | +| task | KEY-WP-0005-T03 | done | — | workplans/KEY-WP-0005-iam-profile-core-claims.md | +| task | KEY-WP-0006-T01 | done | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| task | KEY-WP-0006-T02 | done | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| task | KEY-WP-0006-T03 | done | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| task | KEY-WP-0006-T04 | done | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| task | KEY-WP-0006-T05 | done | — | workplans/KEY-WP-0006-client-credentials-service-tokens.md | +| task | KEY-WP-0007-T01 | done | — | workplans/KEY-WP-0007-user-engine-portal-oidc-client.md | +| task | KEY-WP-0007-T02 | done | — | workplans/KEY-WP-0007-user-engine-portal-oidc-client.md | +| task | KEY-WP-0007-T03 | done | — | workplans/KEY-WP-0007-user-engine-portal-oidc-client.md | +| task | KEY-WP-0008-T01 | done | — | workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md | +| task | KEY-WP-0008-T02 | done | — | workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md | +| task | KEY-WP-0008-T03 | done | — | workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md | +| task | KEY-WP-0008-T04 | done | — | workplans/KEY-WP-0008-registration-handoff-and-client-mfa-policy.md | +| task | KEY-WP-0009-T01 | done | — | workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md | +| task | KEY-WP-0009-T02 | done | — | workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md | +| task | KEY-WP-0009-T03 | done | — | workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md | +| task | KEY-WP-0009-T04 | done | — | workplans/KEY-WP-0009-provider-capabilities-and-service-identities.md | +| task | KEY-WP-0010-T01 | done | — | workplans/KEY-WP-0010-openbao-operator-loopback-callback.md | +| task | KEY-WP-0011-T01 | done | — | workplans/KEY-WP-0011-live-secret-exposure-recovery.md | +| task | KEY-WP-0011-T02 | done | — | workplans/KEY-WP-0011-live-secret-exposure-recovery.md | +| task | KEY-WP-0011-T03 | done | — | workplans/KEY-WP-0011-live-secret-exposure-recovery.md | +| task | KEY-WP-0012-T01 | done | — | workplans/KEY-WP-0012-userinfo-canonical-subject-resolution.md | +| task | KEY-WP-0012-T02 | done | — | workplans/KEY-WP-0012-userinfo-canonical-subject-resolution.md | +| task | KEY-WP-0012-T03 | done | — | workplans/KEY-WP-0012-userinfo-canonical-subject-resolution.md | +| task | KEY-WP-0013-T01 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T02 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T03 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T04 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T05 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T06 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0013-T07 | done | — | workplans/KEY-WP-0013-approval-engine-resource-audience.md | +| task | KEY-WP-0014-T01 | done | — | workplans/KEY-WP-0014-native-credential-lane-handoff.md | +| task | KEY-WP-0014-T02 | done | — | workplans/KEY-WP-0014-native-credential-lane-handoff.md | +| task | KEY-WP-0014-T03 | done | — | workplans/KEY-WP-0014-native-credential-lane-handoff.md | +| task | KEY-WP-0014-T04 | done | — | workplans/KEY-WP-0014-native-credential-lane-handoff.md | +| task | KEY-WP-0015-T01 | done | — | workplans/KEY-WP-0015-scope-intent-assessment.md | +| task | KEY-WP-0016-T01 | done | — | workplans/KEY-WP-0016-authorization-code-protocol-hardening.md | +| task | KEY-WP-0016-T02 | done | — | workplans/KEY-WP-0016-authorization-code-protocol-hardening.md | +| task | KEY-WP-0016-T03 | done | — | workplans/KEY-WP-0016-authorization-code-protocol-hardening.md | +| task | KEY-WP-0016-T04 | done | — | workplans/KEY-WP-0016-authorization-code-protocol-hardening.md | +| task | KEY-WP-0017-T01 | done | — | workplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md | +| task | KEY-WP-0017-T02 | done | — | workplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md | +| task | KEY-WP-0017-T03 | done | — | workplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md | +| task | KEY-WP-0017-T04 | done | — | workplans/KEY-WP-0017-canonical-model-and-discovery-conformance.md | +| task | KEY-WP-0018-T01 | done | — | workplans/KEY-WP-0018-export-completeness-evidence.md | +| task | KEY-WP-0018-T02 | done | — | workplans/KEY-WP-0018-export-completeness-evidence.md | +| task | KEY-WP-0018-T03 | done | — | workplans/KEY-WP-0018-export-completeness-evidence.md | +| task | KEY-WP-0019-T01 | done | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| task | KEY-WP-0019-T02 | done | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| task | KEY-WP-0019-T03 | done | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| task | KEY-WP-0019-T04 | done | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| task | KEY-WP-0019-T05 | done | — | workplans/KEY-WP-0019-upstream-provider-token-verification.md | +| task | KEY-WP-0020-T01 | done | — | workplans/KEY-WP-0020-migration-contract-preservation.md | +| task | KEY-WP-0020-T02 | done | — | workplans/KEY-WP-0020-migration-contract-preservation.md | +| task | KEY-WP-0020-T03 | done | — | workplans/KEY-WP-0020-migration-contract-preservation.md | +| task | KEY-WP-0021-T01 | done | — | workplans/KEY-WP-0021-snapshot-attribute-validation.md | +| task | KEY-WP-0021-T02 | done | — | workplans/KEY-WP-0021-snapshot-attribute-validation.md | +| task | KEY-WP-0021-T03 | done | — | workplans/KEY-WP-0021-snapshot-attribute-validation.md | +| task | KEY-WP-0022-T01 | done | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| task | KEY-WP-0022-T02 | done | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| task | KEY-WP-0022-T03 | done | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| task | KEY-WP-0022-T04 | done | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| task | KEY-WP-0022-T05 | done | — | workplans/KEY-WP-0022-replacement-harness-and-external-conformance.md | +| task | KEY-WP-0023-T01 | done | — | workplans/KEY-WP-0023-live-migration-proof.md | +| task | KEY-WP-0023-T02 | done | — | workplans/KEY-WP-0023-live-migration-proof.md | +| task | KEY-WP-0023-T03 | done | — | workplans/KEY-WP-0023-live-migration-proof.md | +| task | KEY-WP-0023-T04 | done | — | workplans/KEY-WP-0023-live-migration-proof.md | +| task | KEY-WP-0023-T05 | done | — | workplans/KEY-WP-0023-live-migration-proof.md | +| task | KEY-WP-0024-T01 | done | — | workplans/KEY-WP-0024-tenant-roles-opt-in-wiring.md | +| task | KEY-WP-0024-T02 | done | — | workplans/KEY-WP-0024-tenant-roles-opt-in-wiring.md | +| task | KEY-WP-0025-T01 | done | — | workplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md | +| task | KEY-WP-0025-T02 | done | — | workplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md | +| task | KEY-WP-0025-T03 | done | — | workplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md | +| task | KEY-WP-0025-T04 | done | — | workplans/KEY-WP-0025-runtime-lifecycle-and-readiness.md | +| task | KEY-WP-0026-T01 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0026-T02 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0026-T03 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0026-T04 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0026-T05 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0026-T06 | done | — | workplans/KEY-WP-0026-packaging-bootstrap-and-credential-handling.md | +| task | KEY-WP-0027-T01 | done | — | workplans/KEY-WP-0027-rollout-readiness-and-live-state.md | +| task | KEY-WP-0027-T02 | done | — | workplans/KEY-WP-0027-rollout-readiness-and-live-state.md | +| task | KEY-WP-0027-T03 | done | — | workplans/KEY-WP-0027-rollout-readiness-and-live-state.md | +| task | KEY-WP-0027-T04 | done | — | workplans/KEY-WP-0027-rollout-readiness-and-live-state.md | +| task | KEY-WP-0028-T01 | done | — | workplans/KEY-WP-0028-browser-client-field-validation.md | +| task | KEY-WP-0028-T02 | done | — | workplans/KEY-WP-0028-browser-client-field-validation.md | +| task | KEY-WP-0029-T01 | done | — | workplans/KEY-WP-0029-scope-reassessment.md | +| task | KEY-WP-0029-T02 | done | — | workplans/KEY-WP-0029-scope-reassessment.md | +| task | KEY-WP-0029-T03 | done | — | workplans/KEY-WP-0029-scope-reassessment.md | +| task | KEY-WP-0030-T01 | done | — | workplans/KEY-WP-0030-tenant-precondition-guard.md | +| task | KEY-WP-0030-T02 | done | — | workplans/KEY-WP-0030-tenant-precondition-guard.md | +| task | KEY-WP-0031-T01 | done | — | workplans/KEY-WP-0031-gate-house-tenant-ruling.md | +| task | KEY-WP-0031-T02 | done | — | workplans/KEY-WP-0031-gate-house-tenant-ruling.md | +| task | KEY-WP-0032-T01 | done | — | workplans/KEY-WP-0032-principal-type-provenance-guard.md | +| task | KEY-WP-0032-T02 | done | — | workplans/KEY-WP-0032-principal-type-provenance-guard.md | +| task | KEY-WP-0033-T01 | done | — | workplans/KEY-WP-0033-vergabe-fresh-login.md | +| task | KEY-WP-0033-T02 | done | — | workplans/KEY-WP-0033-vergabe-fresh-login.md | +| task | KEY-WP-0034-T01 | done | — | workplans/KEY-WP-0034-account-recovery.md | +| task | KEY-WP-0034-T02 | done | — | workplans/KEY-WP-0034-account-recovery.md | +| task | KEY-WP-0035-T01 | done | — | workplans/KEY-WP-0035-optional-mfa.md | +| task | KEY-WP-0035-T02 | done | — | workplans/KEY-WP-0035-optional-mfa.md | +| task | KEY-WP-0035-T03 | done | — | workplans/KEY-WP-0035-optional-mfa.md | +| task | KEY-WP-0035-T04 | done | — | workplans/KEY-WP-0035-optional-mfa.md | +| task | KEY-WP-0035-T05 | done | — | workplans/KEY-WP-0035-optional-mfa.md | +| task | KEY-WP-0036-T01 | done | — | workplans/KEY-WP-0036-platform-factor-recovery.md | +| task | KEY-WP-0036-T02 | cancel | — | workplans/KEY-WP-0036-platform-factor-recovery.md | +| task | KEY-WP-0036-T03 | done | — | workplans/KEY-WP-0036-platform-factor-recovery.md | +| task | KEY-WP-0037-T01 | done | — | workplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md | +| task | KEY-WP-0037-T02 | done | — | workplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md | +| task | KEY-WP-0037-T03 | done | — | workplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md | +| task | KEY-WP-0037-T04 | done | — | workplans/KEY-WP-0037-secrets-engine-openbao-registration-custody.md | +| task | KEY-WP-0038-T01 | done | — | workplans/KEY-WP-0038-forgejo-oidc-client.md | +| task | KEY-WP-0038-T02 | wait | — | workplans/KEY-WP-0038-forgejo-oidc-client.md | +| task | KEY-WP-0038-T03 | wait | — | workplans/KEY-WP-0038-forgejo-oidc-client.md | +| task | KEY-WP-0038-T04 | cancel | — | workplans/KEY-WP-0038-forgejo-oidc-client.md | +| task | KEY-WP-0039-T01 | done | — | workplans/KEY-WP-0039-openbao-negative-probe-tokens.md | +| task | KEY-WP-0039-T02 | wait | — | workplans/KEY-WP-0039-openbao-negative-probe-tokens.md | +| task | KEY-WP-0039-T03 | done | — | workplans/KEY-WP-0039-openbao-negative-probe-tokens.md | +| task | KEY-WP-0040-T01 | done | — | workplans/KEY-WP-0040-mfa-attended-run-findings.md | +| task | KEY-WP-0040-T02 | done | — | workplans/KEY-WP-0040-mfa-attended-run-findings.md | +| task | KEY-WP-0041-T01 | done | — | workplans/KEY-WP-0041-sign-in-diagnosis-page.md | +| task | KEY-WP-0041-T02 | done | — | workplans/KEY-WP-0041-sign-in-diagnosis-page.md | +| intake | KEY-IN-0001 | closed | — | intakes/intakes.md | diff --git a/docs/changes/netkingdom-target-2026-10-18/keycape-token-status-r1/owner-publication/publication-backup/originals.json b/docs/changes/netkingdom-target-2026-10-18/keycape-token-status-r1/owner-publication/publication-backup/originals.json new file mode 100644 index 00000000..f5e1777a --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/keycape-token-status-r1/owner-publication/publication-backup/originals.json @@ -0,0 +1,10 @@ +[ + { + "path": ".custodian-brief.md", + "index": "100644 f0bc1344d7e573e6a656ee7ce3f548d341dcd476 0\t.custodian-brief.md" + }, + { + "path": "WORK-RECORDS.md", + "index": "100644 d86b29bbc480acfa6d12d5052039578d7d4e380c 0\tWORK-RECORDS.md" + } +] diff --git a/docs/changes/netkingdom-target-2026-10-18/receive-scanner-activation-r1/apps-publication/consistency.json b/docs/changes/netkingdom-target-2026-10-18/receive-scanner-activation-r1/apps-publication/consistency.json new file mode 100644 index 00000000..7aa2fd9e --- /dev/null +++ b/docs/changes/netkingdom-target-2026-10-18/receive-scanner-activation-r1/apps-publication/consistency.json @@ -0,0 +1,382 @@ +{ + "repo_slug": "railiance-apps", + "repo_path": "/home/worsch/railiance-apps", + "source_revision": "2fdc198b2bb8e6d4ad50768c22cf99328828eb4f", + "source_revision_reason": null, + "issues": [ + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager warning: .repo-classification.yaml: category is project but slug is not prj-*; not every category:project is a prj- repo", + "file_path": ".repo-classification.yaml", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager missing: README.md: README.md is required for flavor project", + "file_path": "README.md", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager warning: workplans/: repository uses more than one workplan prefix: ['RAILIANCE-WP', 'RAPPS-WP']", + "file_path": "workplans/", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager contradictory: workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-1: task id 'RAILIANCE-WP-0004-I01' is not accepted by the canon kind registry", + "file_path": "workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-1", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager contradictory: workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-2: task id 'RAILIANCE-WP-0004-I02' is not accepted by the canon kind registry", + "file_path": "workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-2", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager contradictory: workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-3: task id 'RAILIANCE-WP-0004-I03' is not accepted by the canon kind registry", + "file_path": "workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-3", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager contradictory: workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-4: task id 'RAILIANCE-WP-0004-I04' is not accepted by the canon kind registry", + "file_path": "workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-4", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager contradictory: workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-5: task id 'RAILIANCE-WP-0004-I05' is not accepted by the canon kind registry", + "file_path": "workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-5", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager contradictory: workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-6: task id 'RAILIANCE-WP-0004-I06' is not accepted by the canon kind registry", + "file_path": "workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-6", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-35", + "message": "Repo Manager contradictory: workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-7: task id 'RAILIANCE-WP-0004-I07' is not accepted by the canon kind registry", + "file_path": "workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md#task-block-7", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-31", + "message": "[workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md] id 'RAILIANCE-WP-0004-I01' matches no kind in the canon work-record type registry \u2014 unregistered species become sidetracks needing manual reintegration (work-record-types_v0.1)", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-31", + "message": "[workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md] id 'RAILIANCE-WP-0004-I02' matches no kind in the canon work-record type registry \u2014 unregistered species become sidetracks needing manual reintegration (work-record-types_v0.1)", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-31", + "message": "[workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md] id 'RAILIANCE-WP-0004-I03' matches no kind in the canon work-record type registry \u2014 unregistered species become sidetracks needing manual reintegration (work-record-types_v0.1)", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-31", + "message": "[workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md] id 'RAILIANCE-WP-0004-I04' matches no kind in the canon work-record type registry \u2014 unregistered species become sidetracks needing manual reintegration (work-record-types_v0.1)", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-31", + "message": "[workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md] id 'RAILIANCE-WP-0004-I05' matches no kind in the canon work-record type registry \u2014 unregistered species become sidetracks needing manual reintegration (work-record-types_v0.1)", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-31", + "message": "[workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md] id 'RAILIANCE-WP-0004-I06' matches no kind in the canon work-record type registry \u2014 unregistered species become sidetracks needing manual reintegration (work-record-types_v0.1)", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-31", + "message": "[workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md] id 'RAILIANCE-WP-0004-I07' matches no kind in the canon work-record type registry \u2014 unregistered species become sidetracks needing manual reintegration (work-record-types_v0.1)", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-33", + "message": "WORK-RECORDS.md is missing or stale \u2014 regenerate via fix-consistency (CUST-WP-0061-T04 generated work-record index)", + "file_path": "WORK-RECORDS.md", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": true + }, + { + "severity": "WARN", + "check_id": "C-39", + "message": "Wait task 'RAPPS-WP-0015-T04' in workplan 'RAPPS-WP-0015' has neither depends_on, needs_human: true, blocked_on: message-from:\u2026 nor wait_until \u2014 unqualified wait", + "file_path": "workplans/RAPPS-WP-0015-coulomb-personal-content-release.md#RAPPS-WP-0015-T04", + "db_id": "", + "file_value": "wait", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-20", + "message": "Workplan dependency target 'KEY-WP-0038' is not linked to State Hub", + "file_path": "workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md", + "db_id": "", + "file_value": "KEY-WP-0038", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-39", + "message": "Human wait task 'RAPPS-WP-0016-T04' in workplan 'RAPPS-WP-0016' has needs_human: true without decision_id \u2014 unrouted human gate", + "file_path": "workplans/RAPPS-WP-0016-forgejo-netkingdom-login.md#RAPPS-WP-0016-T04", + "db_id": "", + "file_value": "needs_human: true", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-20", + "message": "Workplan dependency target 'RPF-WP-0058' is not linked to State Hub", + "file_path": "workplans/RAPPS-WP-0017-reuse-private-reader-release.md", + "db_id": "", + "file_value": "RPF-WP-0058", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-20", + "message": "Workplan dependency target 'REUSE-WP-0025' is not linked to State Hub", + "file_path": "workplans/RAPPS-WP-0017-reuse-private-reader-release.md", + "db_id": "", + "file_value": "REUSE-WP-0025", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'railiance-wp-0006@retired-20260826' (id=1960b22b\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "1960b22b-82ae-4b67-9fff-397bd38bdd65", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'railiance-wp-0005@retired-20260826' (id=685f1c18\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "685f1c18-33c0-400d-a2b1-e1dae0f27c3e", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'railiance-wp-0009@retired-20260826' (id=21c3fcdc\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "21c3fcdc-f014-4858-8028-0ac3038212b7", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'railiance-wp-0011@retired-20260826' (id=98cf42ae\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "98cf42ae-9b64-4736-97e1-bae325ded1f9", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'railiance-wp-0008@retired-20260826' (id=41b9deea\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "41b9deea-a935-4372-8916-b3981336f597", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'railiance-wp-0018@retired-20260826' (id=1b9af4e8\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "1b9af4e8-7579-5141-837b-c736b85204a0", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'railiance-wp-0007@retired-20260826' (id=7da18dd8\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "7da18dd8-76b9-4a70-b9d7-de541afc65c0", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "INFO", + "check_id": "C-08", + "message": "Retired DB workstream 'railiance-wp-0010@retired-20260826' (id=a4f301bb\u2026, status=finished) has no backing workplan file \u2014 projection tombstone, not live work", + "file_path": "", + "db_id": "a4f301bb-3f49-450a-8dbd-5cf6a16b8e0f", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-28", + "message": "2 unread inbox message(s) older than 3 day(s): the-custodian:23172cb2, the-custodian:51e9eace", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-28", + "message": "2 unread message(s) lack thread_id for supersession tracking: the-custodian:23172cb2, the-custodian:51e9eace", + "file_path": "", + "db_id": "", + "file_value": "", + "db_value": "", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-26", + "message": "Workplan id 'RAIL-AP-WP-0001' uses prefix 'RAIL-AP-WP' but repo canonical prefix is 'RAPPS-WP' \u2014 new plans must conform", + "file_path": "workplans/archived/260605-RAIL-AP-WP-0001-gitea-container-registry.md", + "db_id": "", + "file_value": "RAIL-AP-WP-0001", + "db_value": "RAPPS-WP", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-26", + "message": "Workplan id 'RAILIANCE-WP-0002' uses prefix 'RAILIANCE-WP' but repo canonical prefix is 'RAPPS-WP' \u2014 new plans must conform", + "file_path": "workplans/archived/260702-railiance-apps-WP-0002-vergabe-teilnahme-on-railiance01.md", + "db_id": "", + "file_value": "RAILIANCE-WP-0002", + "db_value": "RAPPS-WP", + "fixable": false + }, + { + "severity": "WARN", + "check_id": "C-26", + "message": "Workplan id 'RAILIANCE-WP-0004' uses prefix 'RAILIANCE-WP' but repo canonical prefix is 'RAPPS-WP' \u2014 new plans must conform", + "file_path": "workplans/archived/260702-railiance-apps-WP-0004-app-deployment-improvements.md", + "db_id": "", + "file_value": "RAILIANCE-WP-0004", + "db_value": "RAPPS-WP", + "fixable": false + } + ], + "fixes_applied": [ + "bindings: synced 20/20", + "C-17 cleared: pushed 1 backlogged commit(s)", + "C-33 fixed: regenerated WORK-RECORDS.md", + "brief: .custodian-brief.md updated", + "push: pushed" + ], + "summary": { + "fail": 0, + "automation_error": 0, + "warn": 28, + "info": 8 + }, + "result": "warn" +}