Repository navigation
Move the PR gate out to the argus-hosting submodule - #327
Merged
Merged
Conversation
The PR gate (argus/release_tools/pr_gate, ~5.0k lines, and its six test files, ~2.7k lines) now lives in the separate public repository lbx154/argus-hosting as the package argus_hosting, mounted here as a git submodule at hosting/. Argus never imports it at run time. What stays in argus/release_tools: build_release, generate_manifest, check_artifacts, the event fixture/type and resource-status generators, plus the plugin and typecheck helpers that Argus CI and plugin authors call (typecheck_gate, build_plugins, verify_plugin_install, preinstall_*, provision_platon, repository_parity). Wiring: - .github/workflows/pr-gate.yml checks out submodules and runs `PYTHONPATH=hosting python -m argus_hosting.pr_gate`. - scripts/pr-gate puts hosting/ on the path and runs the same command; it explains how to fetch the submodule when hosting/ is empty. - pyproject: drop the pr-gate console script; ruff, mypy and pytest skip hosting/. - experiments/pr_regression_50 and docs/local-pr-regression-gate.md moved with the code; LAYOUT and the study README point at hosting/. - tests/tools/test_pr_gate_wiring.py checks the wiring always, and runs the description gate and launcher only when the submodule is present. - Release manifest and frontend artifacts rebuilt. .gitmodules records https://github.com/lbx154/argus-hosting.git, which does not exist yet; the submodule was tested from a local clone. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ssion study with placeholders Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Moves the PR gate out of Argus into a separate public repository,
lbx154/argus-hosting, mounted here as a git submodule athosting/(Python packageargus_hosting). Argus never imports it at run time.Draft until the owner has reviewed and created
lbx154/argus-hosting. That repository does not exist yet, so the submodule commit (481d78d) cannot be fetched, and thepr-gatecheck on this PR will fail at checkout until it does.What moved (to argus-hosting)
argus/release_tools/pr_gate/(35 files, ~5.0k lines): the description gate run by CI, the local regression gate (pr-gate check/verify), and the 50-PR study driver.tests/tools/test_pr_gate*.py,test_local_pr_gate.py,test_pr_regression_study.py(6 files, ~2.7k lines).experiments/pr_regression_50/anddocs/local-pr-regression-gate.md.What stays in
argus/release_toolsbuild_release,generate_manifest,check_artifacts,generate_event_fixtures/generate_event_types,generate_resource_status(what Argus needs to build its own release), plustypecheck_gate,build_plugins,verify_plugin_install,preinstall_plugins/preinstall_verticals,provision_platon,repository_parity, which Argus CI, doctor/repair, the desktop build and plugin authors call.Wiring
.github/workflows/pr-gate.yml: checks out withsubmodules: trueand runsPYTHONPATH=hosting python -m argus_hosting.pr_gate --event ... --output .... The submodule is public, so no token is needed.scripts/pr-gate: putshosting/on the path and runs the samepr-gatecommand; ifhosting/is empty it says to rungit submodule update --init hosting.pyproject.toml: removes thepr-gateconsole script; ruff, mypy and pytest skiphosting/.tests/tools/test_pr_gate_wiring.py: always checks.gitmodules, the workflow, thatargus/never importsargus_hosting, and the launcher's message when the submodule is missing; runs the description gate and the launcher only when the submodule is checked out (otherwise skipped).docs/LAYOUT.mdand the 2026-09-16 study README point athosting/.python -m argus.release_tools.build_release).Tests
ruff check argus argus_skill tests: clean.tests/release_tools: passed.PYTHONPATH.After argus-hosting is published
No change is needed here:
.gitmodulesalready recordshttps://github.com/lbx154/argus-hosting.git. Re-run thepr-gatecheck, then mark ready for review.🤖 Generated with Claude Code