fix(adapters): bound the conformance probe, honor declared timeouts, scratch cwd - #168
Merged
Merged
Conversation
…scratch cwd adrianco's real Hermes adapter run against PR #131 (comment #5320745151) surfaced two ergonomics bugs in the activity-routing/primary-eligible conformance tiers: - The probe prompt ("conformance harness probe") is open-ended, so an agentic host reads it as a task and goes and does real work instead of proving the transport. Bounded to a directive "Reply with exactly: OK". - The outer runner budget was hardcoded to the 120s default regardless of the manifest's own declared execution.run.hook.timeoutMs, so a local-model adapter with a longer declared budget could never actually use it. Now honored by default, with `ak host adapters conformance --timeout <ms>` as an explicit override. - Both tiers also now run their worker in a throwaway scratch directory instead of the operator's process.cwd() — a live, often auto-approving worker has no business landing wherever the operator happened to run the command from. Also documents the nativeMcpConfig/nativeGuidance author-trap adrianco hit (capabilities describe what the adapter wires, not what the host can do) and clarifies AK_WORKER_CWD is advisory, not a sandbox boundary. detection.binPath and hook-content hash pinning (his other two findings) are held for a follow-up branch pending his design input requested in the PR #131 follow-up comment.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
adrianco ran a real Hermes adapter against
ak host adapters conformanceon alpha.42 (PR #131 follow-up) and found theactivity-routingtier can't pass on a local model:"conformance harness probe") is open-ended, so an agentic host reads it as a task and does real work (4+ minutes) instead of proving the transport. Now"Reply with exactly: OK".execution.run.hook.timeoutMs, so a local-model adapter with a longer declared budget could never use it. Now honored by default;ak host adapters conformance --timeout <ms>is available as an explicit override.activity-routing/primary-eligiblenow run their worker in a throwaway temp directory instead of the operator'sprocess.cwd().Also documents two things from his report that need no code fix: the
nativeMcpConfig/nativeGuidanceauthor-trap (capabilities describe what the adapter wires, not what the host can do in principle), and thatAK_WORKER_CWDis advisory, not a sandbox boundary.Held for a follow-up branch, pending his design input requested in the PR #131 comment:
detection.binPath(his venv-install finding) and hook-content hash pinning (his consent-drift finding).Test plan
pnpm run check(typecheck + lint + markdownlint + build + full test suite) — 1993/1998 passed, 0 failures (5 skips are win32-only)--timeoutoverride reaches the worker, declared manifest timeout is honored without an override, CLI--timeoutflag parses/forwards/rejects invalid input🤖 Generated with Claude Code