Run Hermes adapter through local harness - #35
Conversation
|
Codex review: needs changes before merge. Reviewed August 3, 2026, 12:09 AM ET / 04:09 UTC. ClawSweeper reviewWhat this changesThe PR routes registered local adapters such as Hermes through ShellBench’s harness, adds Hermes local configuration and verification support, and prepends workspace guidance to Hermes prompts. Merge readiness⛔ Blocked by patch quality or review findings - 7 items remain This PR remains necessary: current main still rejects Hermes and other registered adapters before the generic lifecycle can run. The branch has a concrete P1 scoring defect, however: it discards the adapter context and tears it down before scoring, then substitutes a gateway-only client, so adapter state verification is never used for memory, session, cron, or gateway assertions. Priority: P2 Review scores
Verification
How this fits togetherShellBench’s benchmark harness selects an agent adapter, prepares a task workspace, drives task phases, and passes the resulting transcript and state assertions to the scorer. Adapters supply their own runtime lifecycle and state-query verification; the scorer produces the benchmark result used for reports and comparisons. flowchart LR
A[Benchmark task] --> B[Harness selects adapter]
B --> C[Adapter setup and task phases]
C --> D[Workspace and transcript]
C --> E[Adapter state queries]
D --> F[Scorer]
E --> F
F --> G[Benchmark result]
Before merge
Findings
Agent review detailsSecurityNone. Review metrics
Merge-risk optionsMaintainer options:
Copy recommended automerge instructionTechnical reviewBest possible solution: Keep the generic adapter lifecycle, but score local runs through the live adapter and AdapterContext before teardown, with a regression test proving a stateful Hermes-compatible assertion uses verify_state_query rather than a gateway shim. Do we have a high-confidence way to reproduce the issue? Yes—source establishes a high-confidence path: run a local adapter task containing a memory, session, cron, browser, or gateway state assertion. The proposed harness tears down the adapter and supplies Is this the best way to solve the issue? No—the generic lifecycle is directionally appropriate, but the implementation must preserve the live adapter context through scoring instead of substituting a gateway-only verifier. A stateful regression test is the narrowest way to protect the intended contract. Full review comments:
Overall correctness: patch is incorrect AGENTS.md: not found in the target repository. Codex review notes: model internal, reasoning high; reviewed against 884dd1bb5511. LabelsLabel justifications:
EvidenceAcceptance criteria:
What I checked:
Likely related people:
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
HistoryReview history (29 earlier review cycles; latest 8 shown)
|
Summary
Validation
/Users/reckon/miniconda3/bin/python -m pytest tests/test_harness.py tests/test_hermes_adapter.py -q->21 passed/Users/reckon/miniconda3/bin/python -m pytest -q->318 passed, 5 skippedt2-msg-summarize-threadimproved from0.63704to1.000with the workspace-guidance patch.Notes
adapter != "openclaw"through the adapter lifecycle.