Skip to content

feat(standards): repo-conformance check + get.resq.software install#23

Merged
WomB0ComB0 merged 3 commits into
mainfrom
feat/repo-standards-and-template
Jun 12, 2026
Merged

feat(standards): repo-conformance check + get.resq.software install#23
WomB0ComB0 merged 3 commits into
mainfrom
feat/repo-standards-and-template

Conversation

@WomB0ComB0

Copy link
Copy Markdown
Member

Summary

Two complementary changes — improving the org README template and adding a
GitHub-native way to enforce template/standards conformance across all
resq-software/* repos.

1. Enforce conformance — repo-standards.yml

A new reusable workflow that validates a repo against the org baseline:

  • a detectable LICENSE/COPYING file (org standard: Apache-2.0)
  • a non-stub README.md with a top-level title
  • no unrendered {{PLACEHOLDER}} template tokens (threshold-based: ≥3
    distinct tokens, excluding the literal {{PLACEHOLDER}} meta-example, so
    docs that merely mention the syntax don't false-trip)
  • no leftover ResQ README Template scaffold marker

It's wired into:

  • required.yml → every consumer repo inherits it through the existing
    single required status check gated by org ruleset
    default-branch-baseline (id 15191038). No consumer-repo change needed.
  • required-gate.yml → this repo dogfoods the check on its own PRs.

Warn-by-default, matching the org's audit→enforce pattern (harden-runner
audit, rulesets evaluate). Violations surface as ::warning annotations
without failing the build. Flip to hard enforcement per-repo with:

uses: resq-software/.github/.github/workflows/required.yml@main
with:
  lang: rust
  repo-standards-strict: true

2. get.resq.software install endpoint

  • profile/README.md — collapse the two-curl onboarding into a single
    curl -fsSL https://get.resq.software | sh. Verified the served script
    (install.sh) does both the SHA256-verified resq binary install and the
    git-hook setup, so the second curl is redundant.
  • README.template.md — add a "ResQ CLI" install block (one-liner +
    inspect-before-run variant).
  • .github/workflows/README.md — document repo-standards.yml and the
    repo-standards-strict toggle.

Conformance audit (what warn-mode will surface, current public repos)

Repo GitHub-detected license Note
viz, vcpkg, pypi Apache-2.0 ok
docs MIT divergent license
ardupilot GPL-3.0 upstream fork — expected
landing, npm NOASSERTION LICENSE present but unclassified
programs, crates, dotnet-sdk, dev NONE no LICENSE detected — top fix candidates

repo-standards checks for a LICENSE file (more lenient than GitHub's SPDX
detector), so NOASSERTION repos pass; NONE repos are the real gaps.

Test plan

  • actionlint clean on repo-standards.yml, required.yml, required-gate.yml (incl. shellcheck on run: blocks)
  • Local sim of the check logic: this repo passes (LICENSE present, titled README, 0 distinct placeholder tokens after excluding the meta-example)
  • Threshold logic verified: README.template.md → 32 distinct tokens (would flag); README.md → 0 (won't)
  • CI green on this PR via required-gate (repo-standards runs in warn mode)
  • After merge: confirm a consumer repo's next required.yml@main run shows the repo-standards job

Notes

  • Backward-compatible: required.yml gains one optional input
    (repo-standards-strict, default false); existing callers are unaffected.
  • Independent of the in-flight language-standards rollout (this is the
    template/repo-conformance layer, not language CI).

Add a reusable repo-standards.yml that validates template/standards
conformance: a detectable LICENSE, a non-stub README.md with a title,
and no unrendered {{PLACEHOLDER}} template tokens (threshold-based, so
docs that merely mention the syntax don't false-trip).

Wire it into required.yml so every consumer repo inherits it through the
existing `required` status check, and into required-gate.yml to dogfood
it on this repo. Warn-by-default (annotations only), matching the org's
audit->enforce pattern (harden-runner audit, rulesets evaluate); pass
`repo-standards-strict: true` to required.yml to turn violations into a
hard failure once a repo is clean.

Adopt the new get.resq.software install endpoint:
- profile/README.md: collapse the two-curl onboarding to a single
  `curl -fsSL https://get.resq.software | sh` (install.sh performs both
  the SHA256-verified binary install and the git-hook setup).
- README.template.md: add a "ResQ CLI" install block with the one-liner
  plus an inspect-before-run variant.
- .github/workflows/README.md: document repo-standards.yml and the
  strict toggle.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jun 12, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@WomB0ComB0, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 4 minutes and 19 seconds. Learn how PR review limits work.

Your organization has run out of usage credits. Purchase more credits in the billing tab to continue.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 210a0602-7cbe-4562-8f6c-47efda666ca1

📥 Commits

Reviewing files that changed from the base of the PR and between 73b9edb and 5cbffbc.

📒 Files selected for processing (6)
  • .github/workflows/README.md
  • .github/workflows/repo-standards.yml
  • .github/workflows/required-gate.yml
  • .github/workflows/required.yml
  • README.template.md
  • profile/README.md
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/repo-standards-and-template

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request simplifies the ResQ CLI installation instructions in both README.template.md and profile/README.md by replacing a multi-step setup with a single-line installation command, while also providing a safer alternative that downloads the script for inspection before execution. The reviewer's feedback correctly points out that using a generic filename like install.sh in the multi-step instructions risks overwriting existing files, and suggests using a more specific filename like install-resq.sh instead.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread README.template.md Outdated
Comment thread profile/README.md Outdated
WomB0ComB0 and others added 2 commits June 12, 2026 02:26
…rity, Support, Acknowledgements

Make the per-repo README scaffold more complete and opinionated:
- Demo: optional GIF/screenshot block with explicit dimensions (no CLS)
  and a live-demo link.
- Prerequisites: runtime/version table pinned to what CI tests.
- Security: coordinated-disclosure pointer to the org-inherited
  SECURITY.md — never file vulns as public issues.
- Support: docs / SUPPORT.md / issue-chooser links.
- Acknowledgements: optional attribution section.
- Contributing: note that the single `required` status check (language
  CI + security scan + repo-standards) must stay green.
- Table of Contents updated to match; all linked org files verified to
  exist (SECURITY.md, SUPPORT.md, CONTRIBUTING.md, LICENSE, banner).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Use `install-resq.sh` (not generic `install.sh`) for the
  inspect-before-run download so it can't clobber an existing
  ./install.sh in the user's cwd. Applied in README.template.md and
  profile/README.md (addresses gemini-code-assist review on #23).
- Add a centered nav-links row (Documentation · Website · Quick Start ·
  Report Bug · Request Feature) under the badges for a cleaner rendered
  hero.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@WomB0ComB0 WomB0ComB0 merged commit 0947449 into main Jun 12, 2026
8 checks passed
@WomB0ComB0 WomB0ComB0 deleted the feat/repo-standards-and-template branch June 12, 2026 09:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant