Repository navigation
CI: resemble ArcadeData/arcadedb automation (labels, milestones, in-progress, PR template, Dependabot merge) - #252
Merged
Conversation
Issue labels from rules, the in-progress label, a release milestone on merge, a PR template and issue forms, dependabot auto-merge on green for patch and minor updates, dependency review and gitignore hygiene. Everything that needs a secret, an app or a repository setting is left out (model-based classification, Claude review, merge-related-issues, REUSE lint which fails on this repository today); the issue lists them. Dependabot auto-merge polls hourly with an explicit green gate rather than enabling GitHub auto-merge: the repository has no branch protection and "Allow auto-merge" is off, so --auto would merge a clean PR before its checks finish. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Nov 5, 2026
This was referenced Nov 5, 2026
tae898
added a commit
that referenced
this pull request
Nov 5, 2026
…write) (#260) The workflow from #252 failed on the merges of #252 and #256 with 403 Resource not accessible by integration when it set the pull request's milestone; issues: write covers issues only. The workflow still checks out no pull request code (pull_request_target), so the wider token stays safe. Closes #259 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.
Closes #251
Ports the parts of ArcadeData/arcadedb's GitHub automation that fit a Python bindings repository and need no secret, App or repository setting. Same table as the issue:
classify-issue.ymlclassify-issue.yml: rule-based only. The package comes from the bug form dropdown (native,jvm), topic words givevector,performance,concurrency,timeseries; only labels that exist are added, never removed. Upstream's model call (labels,severity:*) and the sponsorhigh_priorityjob are not portedlabel-issue-in-progress.ymllabel-issue-in-progress.yml, same trigger and logic (GitHub'sclosingIssuesReferences)dependabot-auto-merge.ymldependabot-auto-merge.ymlplus.github/scripts/dependabot_merge.py. Upstream merges on one human approval with no green condition. Here it polls hourly and squash-merges patch and minor updates only when the check list is not empty, every check succeeded and the PR is mergeable and clean; majors and grouped updates stay open. Pinned to the inspected head SHAassign-milestone.yml: on merge, the PR and the issues it closes get the open milestone due first, if they have none. Dependabot PRs and issues closed as not planned are skippedpull_request_template.md.github/pull_request_template.md:Closes #N, timed A/B result for performance changes, docs touched, test and pre-commit checklistISSUE_TEMPLATE.mdISSUE_TEMPLATE/bug_report.ymlandfeature_request.yml(package dropdown feeds the classifier),config.ymllinking engine bugs to the upstream repository; the existingrelease.mdstaysgitignore-hygiene.ymlgitignore-hygiene.yml, the tracked-file check (the second check is for Java source trees)dependency-review-config.ymland the Dependency Review job ofstudio-security-audit.ymldependency-review.ymlanddependency-review-config.yml: moderate or worse vulnerabilities and GPL, AGPL, SSPL licences fail a PR; the npm-specific parts are droppeddependabot.ymlmerge-related-issues.ymlclaude.yml,claude-code-review.ymllicense-compliance.ymlpip-audit) andscripts/verify_wheel_licences.pycover itreuse-compliance.ymlreuse lintfails on this repository today (noLICENSES/Apache-2.0.txt, files undernative/andscripts/without headers, an invalid expression innative/wheel/THIRD_PARTY_NOTICES.md); the workflow would be red on every PR.github/scripts/check-*How each was checked (nothing was run on GitHub yet; the first real runs are this PR and the next issue or Dependabot PR):
uvx --from actionlint-py actionlint .github/workflows/*.ymlwith the repository's.github/actionlint.yaml: no findings, and theactionlintpre-commit hook passed. (uvx actionlintitself does not resolve, the PyPI name isactionlint-py.)uvx pre-commit run --files <changed files>run twice: black reformatted the new script on the first run, everything passed on the second.yaml.safe_load; the threegithub-scriptbodies passnode --check; the classifier regexes were run against a sample issue form body.dependabot_merge.py:compile()and pyflakes are clean; asserts cover major versus minor and patch (4to5,v7.0.1tov7.0.2,>=1.0to>=2.0.0,1.2to1.10), a grouped title, and an empty, pending, failed or skipped check list; it was run against the titles and check lists of the last four merged Dependabot PRs and against the live repository with--dry-run(no open Dependabot PR, so no decision to show).ci.adocandCLAUDE.mddescribe the new workflows; the docs build is checked bydocs.ymlon this PR.reuse lintfails with 354 findings, soreuse-compliance.ymlstays out.What each new workflow needs.
classify-issue.yml:issues: write;label-issue-in-progress.yml:issues: write,pull-requests: read;assign-milestone.yml:issues: write,pull-requests: read, and an open milestone (it does nothing without one);dependabot-auto-merge.yml:contents: write,pull-requests: write, runs only onArcadeData/arcadedb-python, a merge byGITHUB_TOKENstarts no push workflow onmain;dependency-review.yml:contents: readand the dependency graph on;gitignore-hygiene.yml:contents: read. All third-party actions are pinned to a full commit SHA with the version in a comment. The Actions setting "Read and write permissions" for the default token is not needed, each workflow declares its own.Left for the maintainers, with what each would need, in the issue: the Claude workflows and the model-based classifier (token and App), sponsor priority, GitHub auto-merge with branch protection, and REUSE compliance.
This PR has no milestone: it is automation, not release content.
🤖 Generated with Claude Code