Merge branch 'worktree-store-virus-scanning' into main
.amadan/ci.d/30-minio-contract+23 −8AGENTS.md+19 −0apimode.go+191 −0cmd/console/main.go+164 −13cmd/console/wiring_test.go+66 −0docs/site/cli.md+106 −0docs/superpowers/plans/2026-09-01-carloku-scanning-rollout.md+249 −0docs/superpowers/plans/2026-09-01-object-storage-virus-scanning.md+1680 −0docs/superpowers/plans/2026-09-02-scan-on-demand.md+558 −0docs/superpowers/plans/2026-09-04-scanning-to-deployable.md+425 −0docs/superpowers/specs/2026-09-01-object-storage-virus-scanning-design.md+696 −0docs/superpowers/specs/2026-09-02-scan-on-demand-design.md+1005 −0internal/clamd/clamd.go+296 −0internal/clamd/clamd_test.go+308 −0internal/console/apiscan.go+623 −0internal/console/apiscan_test.go+549 −0internal/console/apiservices.go+6 −0internal/console/apiservices_test.go+35 −0internal/console/apistore.go+8 −0internal/console/apisystem.go+194 −0internal/console/apisystem_test.go+165 −0internal/console/appsettings.go+11 −1internal/console/authcli.go+16 −0internal/console/deletion_test.go+1 −1internal/console/ownership.go+1 −1internal/console/scanpass.go+290 −0internal/console/scanpass_test.go+508 −0internal/console/server.go+44 −0internal/console/svcpage.go+22 −0internal/console/svcpage_test.go+26 −0internal/console/svcprincipal.go+19 −0internal/console/svcroutes_test.go+8 −2internal/objstore/aws.go+93 −5internal/objstore/aws_test.go+19 −6internal/objstore/clamav.go+568 −0internal/objstore/clamav_test.go+1251 −0internal/objstore/contract_test.go+465 −0internal/objstore/enforce_test.go+237 −0internal/objstore/memprovisioner.go+24 −2internal/objstore/memprovisioner_test.go+1 −1internal/objstore/memscanner.go+252 −0internal/objstore/objstore.go+48 −0internal/objstore/provisioner.go+5 −1internal/objstore/queue.go+550 −0internal/objstore/queue_test.go+897 −0internal/objstore/scanblock_test.go+153 −0internal/objstore/scanner.go+144 −0internal/objstore/scanner_contract_test.go+141 −0internal/objstore/scanresult.go+221 −0internal/objstore/scanresult_test.go+216 −0internal/objstore/scantag.go+163 −0internal/objstore/scantag_test.go+262 −0internal/objstore/sidecar.go+137 −0internal/objstore/sidecar_test.go+125 −0internal/objstore/sweep.go+421 −0internal/objstore/sweep_test.go+568 −0internal/objstore/teardown_scan_test.go+127 −0internal/objstore/walk.go+55 −7internal/objstore/walk_test.go+14 −14internal/release/pagelister_test.go+199 −0internal/release/store.go+90 −0internal/release/system.go+95 −0internal/release/system_test.go+100 −0internal/svcrole/service_role_test.go+51 −0internal/svcrole/svcrole.go+13 −2main.go+2 −0scan.go+361 −0scan_test.go+198 −0services.go+3 −3store.go+43 −3store_test.go+1 −1storescan_test.go+94 −0system.go+128 −0system_test.go+100 −0
CI passed — run details
.amadan/ci.d/30-minio-contractLoading diff…
AGENTS.mdLoading diff…
apimode.goLoading diff…
cmd/console/main.goLoading diff…
cmd/console/wiring_test.goLoading diff…
docs/site/cli.mdLoading diff…
docs/superpowers/plans/2026-09-01-carloku-scanning-rollout.mdLoading diff…
docs/superpowers/plans/2026-09-01-object-storage-virus-scanning.mdLoading diff…
docs/superpowers/plans/2026-09-02-scan-on-demand.mdLoading diff…
docs/superpowers/plans/2026-09-04-scanning-to-deployable.mdLoading diff…
docs/superpowers/specs/2026-09-01-object-storage-virus-scanning-design.mdLoading diff…
docs/superpowers/specs/2026-09-02-scan-on-demand-design.mdLoading diff…
internal/clamd/clamd.goLoading diff…
internal/clamd/clamd_test.goLoading diff…
internal/console/apiscan.goLoading diff…
internal/console/apiscan_test.goLoading diff…
internal/console/apiservices.goLoading diff…
internal/console/apiservices_test.goLoading diff…
internal/console/apistore.goLoading diff…
internal/console/apisystem.goLoading diff…
internal/console/apisystem_test.goLoading diff…
internal/console/appsettings.goLoading diff…
internal/console/authcli.goLoading diff…
internal/console/deletion_test.goLoading diff…
internal/console/ownership.goLoading diff…
internal/console/scanpass.goLoading diff…
internal/console/scanpass_test.goLoading diff…
internal/console/server.goLoading diff…
internal/console/svcpage.goLoading diff…
internal/console/svcpage_test.goLoading diff…
internal/console/svcprincipal.goLoading diff…
internal/console/svcroutes_test.goLoading diff…
internal/objstore/aws.goLoading diff…
internal/objstore/aws_test.goLoading diff…
internal/objstore/clamav.goLoading diff…
internal/objstore/clamav_test.goLoading diff…
internal/objstore/contract_test.goLoading diff…
internal/objstore/enforce_test.goLoading diff…
internal/objstore/memprovisioner.goLoading diff…
internal/objstore/memprovisioner_test.goLoading diff…
internal/objstore/memscanner.goLoading diff…
internal/objstore/objstore.goLoading diff…
internal/objstore/provisioner.goLoading diff…
internal/objstore/queue.goLoading diff…
internal/objstore/queue_test.goLoading diff…
internal/objstore/scanblock_test.goLoading diff…
internal/objstore/scanner.goLoading diff…
internal/objstore/scanner_contract_test.goLoading diff…
internal/objstore/scanresult.goLoading diff…
internal/objstore/scanresult_test.goLoading diff…
internal/objstore/scantag.goLoading diff…
internal/objstore/scantag_test.goLoading diff…
internal/objstore/sidecar.goLoading diff…
internal/objstore/sidecar_test.goLoading diff…
internal/objstore/sweep.goLoading diff…
internal/objstore/sweep_test.goLoading diff…
internal/objstore/teardown_scan_test.goLoading diff…
internal/objstore/walk.goLoading diff…
internal/objstore/walk_test.goLoading diff…
internal/release/pagelister_test.goLoading diff…
internal/release/store.goLoading diff…
internal/release/system.goLoading diff…
internal/release/system_test.goLoading diff…
internal/svcrole/service_role_test.goLoading diff…
internal/svcrole/svcrole.goLoading diff…
main.goLoading diff…
scan.goLoading diff…
scan_test.goLoading diff…
services.goLoading diff…
store.goLoading diff…
store_test.goLoading diff…
storescan_test.goLoading diff…
system.goLoading diff…
system_test.goLoading diff…