[codex] add metaswarm review adapter integration#49
Merged
Conversation
Reviewer's GuideAdds an experimental metaswarm external-tools review-only adapter script for freellmpool, documents how to use it as a reviewer/second-opinion in metaswarm, and adds tests to ensure shell syntax correctness, fail-closed auth_missing behavior when no strong provider keys are configured, and that docs are properly linked. Sequence diagram for metaswarm freellmpool review-only adaptersequenceDiagram
actor Metaswarm
participant Adapter as freellmpool_review_adapter.sh
participant FreellmpoolCLI as freellmpool_CLI
participant Provider as Strong_provider_panel
Metaswarm->>Adapter: review --worktree --rubric-file --spec-file
Adapter->>Adapter: parse_args
Adapter->>Adapter: count_configured_strong_providers
alt [no strong providers configured]
Adapter->>Adapter: emit_error command=review error_type=auth_missing
Adapter-->>Metaswarm: JSON envelope (error_type=auth_missing)
else [one or more strong providers]
Adapter->>Adapter: build_keyed_env
loop for each model in STRONG_MODELS (up to MAX_MODELS)
Adapter->>FreellmpoolCLI: ask --model <model> --json
FreellmpoolCLI->>Provider: upstream LLM call
Provider-->>FreellmpoolCLI: review response
FreellmpoolCLI-->>Adapter: JSON review
end
Adapter->>FreellmpoolCLI: ask --model <first_success_model> --json (synthesis)
FreellmpoolCLI->>Provider: upstream LLM call (synthesis)
Provider-->>FreellmpoolCLI: synthesized verdict
FreellmpoolCLI-->>Adapter: JSON synthesis
Adapter->>Adapter: emit_json command=review exit_code=0
Adapter-->>Metaswarm: JSON envelope (verdict, findings, summary)
end
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
Owner
Author
|
Final consensus pass on head
Consensus-driven follow-ups added after review:
|
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
Adds an experimental metaswarm
external-toolsintegration forfreellmpoolas a review/second-opinion adapter.What changed
integrations/metaswarm/freellmpool-review-adapter.sh, a self-contained review-only adapter withhealth,review, and unsupportedimplementcommands.integrations/metaswarm/README.mdwith install instructions,.metaswarm/external-tools.yamlconfig, environment variables, and fail-closed no-key behavior.docs/INTEGRATIONS.md,docs/AGENTS.md,docs/llms.txt,docs/index.html, andCHANGELOG.mdso metaswarm support is discoverable.auth_missingbehavior, and docs linkage.Why
Metaswarm can use external review tools, and
freellmpoolis a good fit for independent review panels because it can fan out to multiple configured free-tier providers while keeping the implementation role with a coding agent.Behavior and safety
The adapter is deliberately review-only. If no strong review provider is configured,
reviewreturns a structured JSON envelope witherror_type: "auth_missing"before making provider calls. The raw log lists required environment variable names, not secret values.Validation
bash -n integrations/metaswarm/freellmpool-review-adapter.shpython3 -m pytest tests/test_metaswarm_integration.py tests/test_release_metadata.py tests/test_contributor_surface.pypython3 -m pytest tests/test_cli.py tests/test_tokenmax.pyruff check .git diff --checkpython3 -m pytest→ 427 passedNotes
Local untracked
docs/POLISH_PLAN.mdwas pre-existing and is intentionally excluded from this PR.Summary by Sourcery
Add an experimental metaswarm external-tools adapter to use freellmpool as a review-only, second-opinion tool and document its setup and behavior.
New Features:
Enhancements:
Tests: