- Integrate ActionMonitor into ChatGPT GitOps API for failure tracking - Add ErrorClassifier with permission, git, runtime, system, secret violation error types - Add FailureRouter to route errors to correct recovery agents (openclaw/hermes/windows_codex_app) - Add RecoveryController orchestrating full pipeline: capture→classify→route→plan→execute→validate→record - Update error_classifier to include ClientResponseError, rate limit, and secret_violation patterns - All 8 integration tests passing (ActionMonitor, ErrorClassifier, FailureRouter, RecoveryController, API 500 scenario) - Push baseline to V1R2C2 with tag v1r2c2-baseline
31 lines
1.1 KiB
Markdown
31 lines
1.1 KiB
Markdown
# fix-patches-permission-v1 - Execution Report
|
|
|
|
## Summary
|
|
Fixed `patches/` directory tree permission to conform with `root:gitops` + setgid ownership model.
|
|
|
|
## Before
|
|
```
|
|
patches/ drwxrwsr-x root:gitops (OK: setgid on root dir)
|
|
nl/ drwxr-xr-x root:root (WRONG: no setgid, wrong group)
|
|
nl-*.json -rw-r--r-- root:root (WRONG: wrong group, no group write)
|
|
patch_*.json -rw-rw-r-- aiman:aiman (WRONG: wrong owner/group)
|
|
self-*.json -rw-r--r-- root:root (WRONG: no group write)
|
|
```
|
|
|
|
## After
|
|
```
|
|
patches/ drwxrws--- root:gitops ✓ setgid
|
|
nl/ drwxrws--- root:gitops ✓ setgid inherited
|
|
nl/*.json -rw-rw---- root:gitops ✓ rw for group
|
|
*patch*.json -rw-rw---- root:gitops ✓ rw for group
|
|
self-*.json -rw-rw---- root:gitops ✓ rw for group
|
|
```
|
|
|
|
## Verification
|
|
- aiman (gitops member): read OK ✓
|
|
- aios (gitops member): read OK ✓
|
|
- Non-group users: denied (o-rwx) ✓
|
|
|
|
## Git Commit
|
|
Not committed. This is a filesystem permission fix, no file content changes.
|