# Politica de higiene de workspace

- report_id: `workspace-hygiene-policy-9147f326520c9100`
- generated_at: `2026-05-02T10:28:39+00:00`
- cases: `1536`
- owner_action_cases: `288`
- unsafe_block_cases: `192`

## Resumo

- Policy cases: 1536.
- Owner action cases: 288.
- Unsafe path blocks: 192.
- Best-effort cleanup must continue after child ACL errors and retain only inaccessible paths.

## Casos amostrais

- `workspace-hygiene-policy-5d2027200080cdc46bb65f26` `.test-tmp` `windows_primary` `inspect` `none` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-228473216bb503bc783a215c` `.test-tmp` `windows_primary` `inspect` `not_found` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-cb761d2f71e849f1c149b488` `.test-tmp` `windows_primary` `inspect` `permission_denied` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-4582db63a0bb51ede7108d29` `.test-tmp` `windows_primary` `inspect` `directory_not_empty` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-fb0ee31aef29fc1e827f9a6a` `.test-tmp` `windows_primary` `inspect` `file_locked` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-4aa82262a3f3e58f587663a6` `.test-tmp` `windows_primary` `inspect` `unsafe_path` -> `block_unsafe` actions `block_before_write, write_status_artifact`
- `workspace-hygiene-policy-4c516245ec963722a3dc7ee8` `.test-tmp` `windows_primary` `inspect` `central_write_denied` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-dabc8c8df47232d77d5e1541` `.test-tmp` `windows_primary` `inspect` `unknown` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-a0a5fba1d3767fe3c2d63f33` `.test-tmp` `windows_primary` `apply` `none` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-3e31009425a0230ecef0ccd8` `.test-tmp` `windows_primary` `apply` `not_found` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-c23bb01b6d9294f0ebfdd9fc` `.test-tmp` `windows_primary` `apply` `permission_denied` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-7cce0df320947bdf44a99a25` `.test-tmp` `windows_primary` `apply` `directory_not_empty` -> `retain_with_evidence` actions `best_effort_delete, continue_after_child_error, write_status_artifact`
- `workspace-hygiene-policy-7d3c3344e63eb8e867ee5bfe` `.test-tmp` `windows_primary` `apply` `file_locked` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-f3675147f70d13633cb09512` `.test-tmp` `windows_primary` `apply` `unsafe_path` -> `block_unsafe` actions `block_before_write, write_status_artifact`
- `workspace-hygiene-policy-ac1bd6962d0b5a4526fdd10a` `.test-tmp` `windows_primary` `apply` `central_write_denied` -> `retain_with_evidence` actions `write_status_artifact, update_semantic_sql`
- `workspace-hygiene-policy-5aef47da6b565cd6dcabe957` `.test-tmp` `windows_primary` `apply` `unknown` -> `retain_with_evidence` actions `write_status_artifact`
- `workspace-hygiene-policy-f9d8c5f22f456ec593c6f211` `.test-tmp` `windows_primary` `closeout` `none` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-66c57ea342cf242a5393be0d` `.test-tmp` `windows_primary` `closeout` `not_found` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-32e3856c59c82f31b106ac99` `.test-tmp` `windows_primary` `closeout` `permission_denied` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-b1638bc1c123df15e80227d2` `.test-tmp` `windows_primary` `closeout` `directory_not_empty` -> `retain_with_evidence` actions `best_effort_delete, continue_after_child_error, write_status_artifact`
- `workspace-hygiene-policy-45895efc199646bc41cdf9e0` `.test-tmp` `windows_primary` `closeout` `file_locked` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-7a53c08cceab0e41c3359ed8` `.test-tmp` `windows_primary` `closeout` `unsafe_path` -> `block_unsafe` actions `block_before_write, write_status_artifact`
- `workspace-hygiene-policy-46699cee9bdfd53b87e78c36` `.test-tmp` `windows_primary` `closeout` `central_write_denied` -> `retain_with_evidence` actions `write_status_artifact, update_semantic_sql`
- `workspace-hygiene-policy-36d8f0af32e85b3e0b279e05` `.test-tmp` `windows_primary` `closeout` `unknown` -> `retain_with_evidence` actions `write_status_artifact`
- `workspace-hygiene-policy-5a1b22bdcb58bbcc237f14ac` `.test-tmp` `windows_primary` `central_record` `none` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-0a88ddf3c1c8b14321813c32` `.test-tmp` `windows_primary` `central_record` `not_found` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-606b442e56149662192ac879` `.test-tmp` `windows_primary` `central_record` `permission_denied` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-89a9c0752f0b51866217bf84` `.test-tmp` `windows_primary` `central_record` `directory_not_empty` -> `retain_with_evidence` actions `best_effort_delete, continue_after_child_error, write_status_artifact`
- `workspace-hygiene-policy-1f3ffab2223eeaecbbdbed62` `.test-tmp` `windows_primary` `central_record` `file_locked` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-1c441a1661159cb6f7187ce1` `.test-tmp` `windows_primary` `central_record` `unsafe_path` -> `block_unsafe` actions `block_before_write, write_status_artifact`
- `workspace-hygiene-policy-aad100963e7d8379a24f2b57` `.test-tmp` `windows_primary` `central_record` `central_write_denied` -> `retain_with_evidence` actions `write_status_artifact, update_semantic_sql`
- `workspace-hygiene-policy-e3eb826734091137b31cc07b` `.test-tmp` `windows_primary` `central_record` `unknown` -> `retain_with_evidence` actions `write_status_artifact`
- `workspace-hygiene-policy-f8242138d8161a66bdd2d7cb` `.test-tmp` `windows_secondary` `inspect` `none` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-8f0f0dfa2a0a0cd0be6b658e` `.test-tmp` `windows_secondary` `inspect` `not_found` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-f9c3fc1327e3c1391868b696` `.test-tmp` `windows_secondary` `inspect` `permission_denied` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-0baf6ba10316a0cfd87f80ad` `.test-tmp` `windows_secondary` `inspect` `directory_not_empty` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-806a326c17d88486df9359d2` `.test-tmp` `windows_secondary` `inspect` `file_locked` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-c992717a0c0a8d1f38b29b08` `.test-tmp` `windows_secondary` `inspect` `unsafe_path` -> `block_unsafe` actions `block_before_write, write_status_artifact`
- `workspace-hygiene-policy-53a6aee1dc74bbd57220d67e` `.test-tmp` `windows_secondary` `inspect` `central_write_denied` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-9c152223f8242817a79971bc` `.test-tmp` `windows_secondary` `inspect` `unknown` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-87c3f9c9b4e74cbc737cbda2` `.test-tmp` `windows_secondary` `apply` `none` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-206da35bc71c92f44cfee34f` `.test-tmp` `windows_secondary` `apply` `not_found` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-51957806f136b8a3e39c1b58` `.test-tmp` `windows_secondary` `apply` `permission_denied` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-0ff808e4688a92886ff70527` `.test-tmp` `windows_secondary` `apply` `directory_not_empty` -> `retain_with_evidence` actions `best_effort_delete, continue_after_child_error, write_status_artifact`
- `workspace-hygiene-policy-d0ad8569490cf7d3fbf0fa6c` `.test-tmp` `windows_secondary` `apply` `file_locked` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-9cc8d387da8cc335efd68e3a` `.test-tmp` `windows_secondary` `apply` `unsafe_path` -> `block_unsafe` actions `block_before_write, write_status_artifact`
- `workspace-hygiene-policy-769cb1efd5f31fa84616585f` `.test-tmp` `windows_secondary` `apply` `central_write_denied` -> `retain_with_evidence` actions `write_status_artifact, update_semantic_sql`
- `workspace-hygiene-policy-bf728d1d9afc76b2627a662a` `.test-tmp` `windows_secondary` `apply` `unknown` -> `retain_with_evidence` actions `write_status_artifact`
- `workspace-hygiene-policy-049c398e0663b27fb5609985` `.test-tmp` `windows_secondary` `closeout` `none` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-0ff76ce14fffe9fe665251e1` `.test-tmp` `windows_secondary` `closeout` `not_found` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-1451df7001a804cc3ee552dc` `.test-tmp` `windows_secondary` `closeout` `permission_denied` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-2cc605680ae873c818865b33` `.test-tmp` `windows_secondary` `closeout` `directory_not_empty` -> `retain_with_evidence` actions `best_effort_delete, continue_after_child_error, write_status_artifact`
- `workspace-hygiene-policy-cb226b7380849e26aa4d76c7` `.test-tmp` `windows_secondary` `closeout` `file_locked` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-63a68ccc0d018e2fe1546090` `.test-tmp` `windows_secondary` `closeout` `unsafe_path` -> `block_unsafe` actions `block_before_write, write_status_artifact`
- `workspace-hygiene-policy-20906dab1c11fbb4cebf2b62` `.test-tmp` `windows_secondary` `closeout` `central_write_denied` -> `retain_with_evidence` actions `write_status_artifact, update_semantic_sql`
- `workspace-hygiene-policy-2221a710356ed9e7607ef7f3` `.test-tmp` `windows_secondary` `closeout` `unknown` -> `retain_with_evidence` actions `write_status_artifact`
- `workspace-hygiene-policy-714c981b7e3ac0583c2a9b9f` `.test-tmp` `windows_secondary` `central_record` `none` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-c99a74dc347c76b2b57bb2e1` `.test-tmp` `windows_secondary` `central_record` `not_found` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-eb582edade7af46be10eea64` `.test-tmp` `windows_secondary` `central_record` `permission_denied` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-2acae1058db81e26fe74bf74` `.test-tmp` `windows_secondary` `central_record` `directory_not_empty` -> `retain_with_evidence` actions `best_effort_delete, continue_after_child_error, write_status_artifact`
- `workspace-hygiene-policy-00a57f8e2a5229b50f48463f` `.test-tmp` `windows_secondary` `central_record` `file_locked` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-2d76fae86d19d0550d374952` `.test-tmp` `windows_secondary` `central_record` `unsafe_path` -> `block_unsafe` actions `block_before_write, write_status_artifact`
- `workspace-hygiene-policy-20ab0f83d53c3cd4c8a67f08` `.test-tmp` `windows_secondary` `central_record` `central_write_denied` -> `retain_with_evidence` actions `write_status_artifact, update_semantic_sql`
- `workspace-hygiene-policy-83f282f1d7fe2cca0bd27934` `.test-tmp` `windows_secondary` `central_record` `unknown` -> `retain_with_evidence` actions `write_status_artifact`
- `workspace-hygiene-policy-90f58c90392bba2d16c0dbd8` `.test-tmp` `codex_server` `inspect` `none` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-7694790458af6a1d5b93d85b` `.test-tmp` `codex_server` `inspect` `not_found` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-e830494add59daf1410a11a6` `.test-tmp` `codex_server` `inspect` `permission_denied` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-b120f9fd5fa901c522ef7d14` `.test-tmp` `codex_server` `inspect` `directory_not_empty` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-ebe8bd703ba081cef5c7d379` `.test-tmp` `codex_server` `inspect` `file_locked` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-7fe73882bbf81c6c267106d0` `.test-tmp` `codex_server` `inspect` `unsafe_path` -> `block_unsafe` actions `block_before_write, write_status_artifact`
- `workspace-hygiene-policy-b65b014821b311f4c5991681` `.test-tmp` `codex_server` `inspect` `central_write_denied` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-8049cd78fdda5b4b748f5074` `.test-tmp` `codex_server` `inspect` `unknown` -> `record_only` actions `verify_absent, write_status_artifact`
- `workspace-hygiene-policy-584d53c3180c3596cb9021f0` `.test-tmp` `codex_server` `apply` `none` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-ab6e1d396d8421f67657dcf1` `.test-tmp` `codex_server` `apply` `not_found` -> `pass` actions `verify_absent`
- `workspace-hygiene-policy-af6f8916bf733c4a553d50e3` `.test-tmp` `codex_server` `apply` `permission_denied` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-3b75f906ae19b7cac43af2f6` `.test-tmp` `codex_server` `apply` `directory_not_empty` -> `retain_with_evidence` actions `best_effort_delete, continue_after_child_error, write_status_artifact`
- `workspace-hygiene-policy-6372da5f33fc0af7df08e000` `.test-tmp` `codex_server` `apply` `file_locked` -> `owner_action_required` actions `best_effort_delete, continue_after_child_error, escalate_owner, record_acl_exception`
- `workspace-hygiene-policy-d95aca64f3bee2b9921624be` `.test-tmp` `codex_server` `apply` `unsafe_path` -> `block_unsafe` actions `block_before_write, write_status_artifact`
- `workspace-hygiene-policy-d71b3e6ba8346080dd3288e2` `.test-tmp` `codex_server` `apply` `central_write_denied` -> `retain_with_evidence` actions `write_status_artifact, update_semantic_sql`
- `workspace-hygiene-policy-0bcdd168427902e850455395` `.test-tmp` `codex_server` `apply` `unknown` -> `retain_with_evidence` actions `write_status_artifact`

## Regra operacional

- Remover somente artefatos locais aprovados.
- Continuar a limpeza depois de erro de filho quando o caminho ainda estiver dentro do projeto.
- Registrar WinError 5, arquivo em uso ou pasta nao vazia como pendencia de owner quando persistirem.
- Nao apagar paths fora do project_root.
