Compare commits

..
2 changed files with 79 additions and 126 deletions
@@ -1,126 +0,0 @@
---
gate: G1
variant: openclaw-cleanroom
date: 2026-07-13
source_commit: 502ef30642597fb0b70b90ae2e8a0b6af217d80e
source_branch: origin/work/v2r1-integration-quality-2000
tests_total: 32
tests_passed: 32
tests_failed: 0
cleanup: PASS
secret_scan: PASS
rollback: PASS
recovery: verified
workspace: clean
merge_performed: false
tag_created: false
baseline_promoted: false
staging_deployed: false
production_deployed: false
---
# V2R1 Gate 1 — OpenClaw Clean-Room Report Correction
## Source Verification
| Attribute | Value |
|-----------|-------|
| source commit | `502ef30642597fb0b70b90ae2e8a0b6af217d80e` |
| source branch | `origin/work/v2r1-integration-quality-2000` |
| parent (0) | `6077331addc71d090d454c123cc5de5460ab637e` |
| validation date | 2026-07-13 18:43 Asia/Shanghai |
## Test Results
### v2r1 unit tests: 29/29 PASS
```
PYTHONPATH=active-runtime/app python3 -m pytest \
tests/v2r1/test_hermes_fabric.py \
tests/v2r1/test_message_ledger_append.py \
tests/v2r1/test_router_isolation.py \
tests/v2r1/test_runtime_identity_binding.py \
tests/v2r1/test_runtime_wiring.py \
tests/v2r1/test_tenant_context.py \
-v
```
**Result:** 29 passed in 0.95s, exit code 0
### Integration tests: 3/3 PASS
```
PYTHONPATH=active-runtime/app python3 -m pytest \
tests/integration/test_runtime_ingress_flow.py \
-v
```
**Result:** 3 passed in 0.17s, exit code 0
### Summary: 32/32 PASS
## HMAC Test Keys (Legitimate Test Credentials)
| File | Key String | Byte Length |
|------|------------|-------------|
| `test_runtime_wiring.py:25` | `runtime-external-ingress-key-is-32bytes` | **39 bytes** |
| `test_runtime_identity_binding.py:24` | `external-ingress-hmac-key-is-32-bytes` | **37 bytes** |
| `test_runtime_ingress_flow.py:27` | `runtime-integration-ingress-key-32bytes!` | **40 bytes** |
These are hardcoded test-only HMAC keys used for deterministic signing in test fixtures. They are not production credentials.
## Secret Scan
### Method
Manual pattern-based scan on the source commit tree at `502ef306`:
1. **Pattern: `API[Kk]ey\|sk-[a-zA-Z0-9]\{20,\}\|[Nn]pk\|secret\b`** — searched across all tracked files
2. **Private key detection:** `-----BEGIN.*PRIVATE KEY-----` — searched across all tracked files
3. **Auxiliary gitleaks evidence (external clean-room):** Codex ran gitleaks v8.30.1 on the source tree.
- Git scan (commits): **312 commits scanned**, **0 findings**
- Tree scan (files): **~1.21 MB scanned**, **0 findings**
- Report: `/tmp/v2r1-cleanup-audit-git.json`, `/tmp/v2r1-cleanup-audit-tree.json`
### Findings
- **0 matches** for API key or private key patterns in tracked source
- **3 matches** for `b"\.\.\."` are the HMAC test keys listed above — **false positive, test-only credentials**
- Gitleaks external scan: **0 findings**
**Result:** PASS
## Cleanup
- Workspace state at source: clean (no tracked modifications)
- Conflict markers in source tree: **0**
- Temporary test directories (e.g., test message ledgers): cleaned during pytest fixture teardown
**Result:** PASS
## Rollback
- **Rollback target:** `6077331addc71d090d454c123cc5de5460ab637e` (release/v2r1c0-rc1 base)
- **Recovery steps:** `git checkout 6077331` → core tests (13 tests) → 13/13 PASS
- **Recovery verified:** PASS
**Result:** PASS
## Deployment
| Operation | Performed |
|-----------|-----------|
| merge_performed | false |
| tag_created | false |
| baseline_promoted | false |
| staging_deployed | false |
| production_deployed | false |
## Recommendation
Gate 1 clean-room validation complete. **G1-PASS** — all 32 tests pass, workspace clean, secret scan clean, rollback verified.
## Evidence
- Source commit: `502ef30642597fb0b70b90ae2e8a0b6af217d80e`
- Test run log: pytest exit code 0, 32/32 PASS
- Rollback verification: `6077331`, 13/13 core tests PASS
- Secret scan: 0 findings (manual) + 0 findings (gitleaks external)
@@ -0,0 +1,79 @@
---
task_id: TASK-CODEX-V2R1-G1-FINAL-VERIFY-RETRY-20260715T010807UTC8
owner: CODEX
source_commit: 502ef30642597fb0b70b90ae2e8a0b6af217d80e
rejected_commits:
- 7a2f16ee72e944737a9f6995e511ef176413ae6b
- b1d3439ee9e66b5eed1c94595a22bc630d893b6e
- 38320044b54c172c28877a81f291478267dd7b9e
- 7fd63b55f27b23658ea26e2a39d949c7b1e91dda
- 71239b4d187e683e05fd22fc9d5df8ae324e3390
candidate:
branch: work/codex/v2r1-g1-recovery-candidate-20260715T010807UTC8
exact_parent: 502ef30642597fb0b70b90ae2e8a0b6af217d80e
sole_added_file: .agent/results/openclaw/RESULT-V2R1-G1-OPENCLAW-RECOVERY-CANDIDATE-20260715T010807UTC8.md
gates:
tests: "29+3"
conflict_count: 0
tracked_sqlite_count: 0
exact_four_webops_ignores: true
gitleaks_version: 8.30.1
gitleaks_git_findings: 0
gitleaks_dir_findings: 0
hmac: "39+39"
placeholder_count: 0
mandatory_result_fields:
- status
- commit
- tests
- cleanup_scan
- risk
- recommendation
final_verification:
branch: review/codex/v2r1-g1-final-verify-retry-20260715T010807UTC8
sole_added_file: .agent/results/codex/RESULT-V2R1-G1-CODEX-FINAL-VERIFY-RETRY-20260713.md
required_fields:
- status
- source_commit
- candidate_commit
- qualifying_candidates
- placeholder_count
- mandatory_fields
- tests
- gitleaks
- hmac
- cleanup_scan
- rollback
- deployment
- workspace_clean
- risk
- recommendation
prohibitions:
- force push
- code modification
- test modification
- configuration modification
- deployment modification
- merge
- tag
- baseline modification
- staging modification
- production modification
failure_policy: fail_closed
---
# CODEX V2R1 G1 final verification retry
Select and verify only a qualifying recovery candidate rooted at the fixed source commit. Reject every commit listed in `rejected_commits`. The candidate commit must have the exact parent and sole added file declared above and must pass every candidate gate. The final verification branch must add only its declared result file and must contain every required field.
Do not modify code, tests, configuration, deployment state, baselines, staging, or production. Do not merge, tag, or force-push. On any mismatch, ambiguity, missing field, nonzero finding, dirty workspace, or failed gate, stop and report failure without advancing.
## Execution amendment: recovery candidate r2
- rejected_candidate: 78c22cbfb95cb252b671c5ffe3b34bf4944aee2d
- rejection_reason: placeholder_count=1; exact angle-placeholder hit from the documented conflict regex
- replacement_branch: work/codex/v2r1-g1-recovery-candidate-20260715T010807UTC8-r2
- replacement_parent: 502ef30642597fb0b70b90ae2e8a0b6af217d80e
- sole_added_file: .agent/results/openclaw/RESULT-V2R1-G1-OPENCLAW-RECOVERY-CANDIDATE-20260715T010807UTC8.md
- history_policy: no force push and no history rewrite
- original_candidate_policy: retained and rejected