docs: correct conductor validator counts to match the router - #1014
Merged
Conversation
Greptile SummaryThe PR aligns the reference documentation with the router’s validator counts and corrects the conductor template’s model-level description.
Confidence Score: 5/5The PR appears safe to merge. No blocking failure remains.
|
| Filename | Overview |
|---|---|
| AGENTS.md | Updates validator counts and routing documentation to match the router and two-stage CRITICAL workflow. |
| CLAUDE.md | Mirrors the corrected validator topology and UNCERTAIN escalation documentation. |
| cluster-templates/conductor-bootstrap.json | Corrects descriptive model tiers to match the configured junior and senior conductor levels. |
Reviews (2): Last reviewed commit: "docs: correct conductor validator counts..." | Re-trigger Greptile
This was referenced Aug 13, 2026
CLAUDE.md and AGENTS.md both claimed 3 validators for STANDARD and 5 for CRITICAL. getValidatorCount() in src/config-router.ts returns 2 and 0, and the conductor prompts in cluster-templates/conductor-bootstrap.json already say 2 and 4, so the two reference docs were the only place still wrong. CRITICAL returning 0 is the confusing part, so it's now spelled out: the 0 skips full-workflow's inline validators and activates the meta-coordinator, which runs quick-validation then heavy-validation at 2 validators each. Also fixes the bootstrap description, which said level1 junior / level2 senior where the agents are modelLevel level2 and level3. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LeBinMzJJjDvW2fPSAu14S
EivMeyer
force-pushed
the
eivind/docs-validator-counts
branch
from
August 13, 2026 12:10
3200893 to
0272e5c
Compare
euntaek-hong
pushed a commit
to wrongbutworks/zeroshot
that referenced
this pull request
Aug 13, 2026
…-open-engine#1015) Two gaps in the current README, both verified against `main` at `7be7eea`. **The routing isn't on the page.** The README presents the executor–verifier loop as universal. `getBase()` in `src/config-router.ts:61-73` says otherwise: TRIVIAL goes to `single-worker` with no validator at all, and any DEBUG above TRIVIAL goes to `debug-workflow`, which is an investigator/fixer/tester shape rather than executor plus verifier. "Fix a login bug" is one of the README's own good-fit examples and lands on that second path. The new table lists the rules in router precedence order, first match wins, and states the TRIVIAL exception rather than leaving it to be discovered. **`--config` was invisible.** `zeroshot run --config` (`cli/index.js:2709`) and `zeroshot config list/show/validate` (`cli/index.js:4709+`) appeared zero times in the README, so the page reads as a fixed pipeline when the runtime is a general graph engine. Adds a short section and both commands in the reference block. Every claim in the new sections checked against source: - validator counts per workflow: the `condition` gates in `cluster-templates/base-templates/full-workflow.json`, against `getValidatorCount()` - CRITICAL's two stages: the `meta-coordinator` loading `quick-validation` then `heavy-validation`, 2 validators each - "CRITICAL is meant to be rare": the bias instruction in both conductor prompts in `conductor-bootstrap.json` - trigger predicates: `src/logic-engine.js:12,166` evaluates them in a `vm` sandbox - cycle rule: `src/config-validator.js:1660-1680` errors on a 3+ ring with no escape logic, warns when there is - nesting: `MAX_DEPTH = 5` in `src/config-validator.js:84` ## One copy change The Open Engine section promised "approve, or a reproducible failure." Only `validator-requirements` requires command evidence (`criteriaResults[].evidence` with command, exitCode, output). `validator-code` and `validator-security` return free-text `errors[]`, and an instant-reject on a swallowed error has no command to re-run. Changed to the specific objections that blocked it, which is what those validators actually return. Docs only. Prettier clean. Companion to the-open-engine#1014; both lift the parts of the-open-engine#863 that are still true after the README rewrite in the-open-engine#945. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01LeBinMzJJjDvW2fPSAu14S Co-authored-by: Eivind <eivindcovibes.ai@Eivinds-MacBook-Pro.local> Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
|
🎉 This PR is included in version 6.39.2 🎉 The release is available on: Your semantic-release bot 📦🚀 |
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.
The validator table in
CLAUDE.mdandAGENTS.mdsays STANDARD gets 3 validators and CRITICAL gets 5. Neither number is real.getValidatorCount()insrc/config-router.ts:85-93returns 2 for STANDARD and 0 for CRITICAL. The conductor prompts incluster-templates/conductor-bootstrap.jsonalready quote 2 and 4. So the router and the prompts agree with each other, and the two reference docs disagree with both.Where the numbers come from:
validator_count: 2, which activatesvalidator-requirements(>= 1 && < 4) andvalidator-code(>= 2 && < 4) infull-workflow.json.validator_count: 0, which is a signal rather than a count: it activates themeta-coordinator(complexity == 'CRITICAL' && validator_count == 0), which loadsquick-validationand thenheavy-validation, 2 validators each, so 4 in two stages.Also corrects the
conductor-bootstrap.jsondescription, which said level1 junior / level2 senior where the agents aremodelLevel: level2andlevel3.Docs only, no behaviour change. Lifted from #863, which is otherwise stale against the README rewrite in #945.
One thing this doesn't fix
validator-securityandvalidator-testerinfull-workflow.jsonare both gated onvalidator_count == 3, and the router never emits 3. They can only ever run through the CRITICAL sub-clusters, never inline. That's either a dead condition or an off-by-one against the>= 2 && < 4gate above it; leaving it alone here since it's a behaviour question, not a docs one.🤖 Generated with Claude Code
https://claude.ai/code/session_01LeBinMzJJjDvW2fPSAu14S