fix(hermes): clarify auxiliary model policy to match audit #140

Merged
abiba-bot merged 1 commits from fix/hermes-aux-model-policy-20260927 into master 2026-09-27 10:05:45 +00:00
Owner

Summary

The "Auxiliary Tasks (CONSISTENCY RULE)" header in hermes-config-template.prose.md claimed all auxiliary services must use an identical model (gpu-vision) and that syslog-auto must never be used for auxiliary tasks. Both are false for compression, which the enforcement script audit-hermes-config.py (and Rule 7/Rule 8 in the same file) require to be syslog-auto. An agent configuring from the template produced a config the audit then FAILED.

Changes (prose only — script unchanged)

  • Split auxiliary into two explicit classes:
    • Light auxiliary (vision, web_extract/browsing) -> gpu-vision (RTX 5070) — keeps the reasoning hosts free.
    • Context-heavy auxiliary (compression) -> syslog-auto (weighted pool) — deliberate per the existing 2026-07-23 OPERATIONAL DECISION in Rule 7 (summarization runs against long histories and must use the pool).
  • Removed the absolute sentence "Do NOT use syslog-auto for auxiliary tasks — it routes to the primary GPU." (false for compression; the source of the contradiction).
  • Stated plainly that gpu-dense + strix-moe are the reasoning hosts and auxiliary work should not be pinned to them.
  • Added an UPDATED 2026-09-27 note in the frontmatter.

audit-hermes-config.py is the enforcement contract and is unchanged; the prose now matches it line-for-line on vision / web_extract / compression. No live gpu-light reference remains.

Raw check output

prose-lint.sh

LINT PASSED (21 warning(s))   # exit 0 — all 21 warnings pre-existing, none in hermes-config-template.prose.md
  secret scan clean (tree; 34 allowlisted exception(s), 22 inert value(s) ignored)

scripts/secret-scan.sh

── secret scan (tree): 100 files under /root/abiba-workspace/projects/prose-contracts ──
✅ secret scan clean (tree; 34 allowlisted exception(s), 22 inert value(s) ignored)   # exit 0

tests/test_audit_hermes_config_alias.py

============================== 14 passed in 0.62s ==============================   # exit 0

audit-hermes-config.py on the template's stated policy

✅ [Rule 7] compression.model must be syslog-auto (got 'syslog-auto')
✅ [Rule 7] auxiliary.compression.model must be syslog-auto (got 'syslog-auto')
✅ [Rule 8] auxiliary.vision.model must be gpu-vision (got 'gpu-vision')
✅ [Rule 8] auxiliary.web_extract.model must be gpu-vision (got 'gpu-vision')
RESULT: PASS — all contract rules satisfied   # exit 0
## Summary The "Auxiliary Tasks (CONSISTENCY RULE)" header in `hermes-config-template.prose.md` claimed **all** auxiliary services must use an identical model (`gpu-vision`) and that `syslog-auto` must **never** be used for auxiliary tasks. Both are false for compression, which the enforcement script `audit-hermes-config.py` (and Rule 7/Rule 8 in the same file) require to be `syslog-auto`. An agent configuring from the template produced a config the audit then FAILED. ## Changes (prose only — script unchanged) - Split auxiliary into two explicit classes: - **Light auxiliary** (vision, web_extract/browsing) -> `gpu-vision` (RTX 5070) — keeps the reasoning hosts free. - **Context-heavy auxiliary** (compression) -> `syslog-auto` (weighted pool) — deliberate per the existing **2026-07-23 OPERATIONAL DECISION in Rule 7** (summarization runs against long histories and must use the pool). - Removed the absolute sentence "Do NOT use syslog-auto for auxiliary tasks — it routes to the primary GPU." (false for compression; the source of the contradiction). - Stated plainly that `gpu-dense` + `strix-moe` are the reasoning hosts and auxiliary work should not be pinned to them. - Added an `UPDATED 2026-09-27` note in the frontmatter. `audit-hermes-config.py` is the enforcement contract and is **unchanged**; the prose now matches it line-for-line on vision / web_extract / compression. No live `gpu-light` reference remains. ## Raw check output ### prose-lint.sh ``` LINT PASSED (21 warning(s)) # exit 0 — all 21 warnings pre-existing, none in hermes-config-template.prose.md secret scan clean (tree; 34 allowlisted exception(s), 22 inert value(s) ignored) ``` ### scripts/secret-scan.sh ``` ── secret scan (tree): 100 files under /root/abiba-workspace/projects/prose-contracts ── ✅ secret scan clean (tree; 34 allowlisted exception(s), 22 inert value(s) ignored) # exit 0 ``` ### tests/test_audit_hermes_config_alias.py ``` ============================== 14 passed in 0.62s ============================== # exit 0 ``` ### audit-hermes-config.py on the template's stated policy ``` ✅ [Rule 7] compression.model must be syslog-auto (got 'syslog-auto') ✅ [Rule 7] auxiliary.compression.model must be syslog-auto (got 'syslog-auto') ✅ [Rule 8] auxiliary.vision.model must be gpu-vision (got 'gpu-vision') ✅ [Rule 8] auxiliary.web_extract.model must be gpu-vision (got 'gpu-vision') RESULT: PASS — all contract rules satisfied # exit 0 ```
abiba-bot added 1 commit 2026-09-27 09:47:57 +00:00
fix(hermes): clarify auxiliary model policy to match audit
PR Pipeline — Authorize → Validate → Review → Merge / auth (pull_request) Successful in 9s
PR Pipeline — Authorize → Validate → Review → Merge / validate (pull_request) Successful in 6s
PR Pipeline — Authorize → Validate → Review → Merge / lint (pull_request) Successful in 11s
PR Pipeline — Authorize → Validate → Review → Merge / ai-review (pull_request) Successful in 9s
PR Pipeline — Authorize → Validate → Review → Merge / gate (pull_request) Successful in 1s
d4e238047d
The 'Auxiliary Tasks (CONSISTENCY RULE)' header claimed ALL auxiliary
services must use an identical model (gpu-vision) and that syslog-auto
must never be used for auxiliary tasks. Both are false for compression,
which the script (and Rule 7/8) require to be syslog-auto. An agent
following the template produced a config the audit then failed.

- Split auxiliary into two classes: light (vision, web_extract/browsing)
  -> gpu-vision (RTX 5070); context-heavy (compression) -> syslog-auto,
  citing the existing 2026-07-23 OPERATIONAL DECISION in Rule 7.
- Remove the absolute 'Do NOT use syslog-auto for auxiliary tasks' line.
- State gpu-dense + strix-moe are the reasoning hosts; do not pin aux to them.
- Note the change in the frontmatter UPDATED log.

audit-hermes-config.py unchanged (it is the enforcement contract); prose
now matches it line-for-line on vision/web_extract/compression.

Verified: prose-lint.sh PASS, secret-scan.sh clean, 14/14 tests in
tests/test_audit_hermes_config_alias.py pass, audit PASSES on the
template's stated policy.
abiba-bot merged commit eadb927ec1 into master 2026-09-27 10:05:45 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SyslogSolution/prose-contracts#140