Goal
Distribute dci via homebrew-core so users get:
brew install dci — no tap qualifier
- Discoverability via
brew search dci and the formulae.brew.sh listing
The current tap works fine (brew install doitintl/dci-cli/dci auto-taps, so brew upgrade dci just works). This migration is about reach, not fixing anything broken.
Blocker: notability thresholds (as of 2026-07-22)
Homebrew's Package Acceptance Policy is enforced automatically by brew audit via hard-coded thresholds in Library/Homebrew/utils/shared_audits.rb (GITHUB_NOTABILITY_THRESHOLDS):
| Submission path |
Required (any one of) |
| Community member (not repo owner/org) |
≥75 stars, or ≥30 forks, or ≥30 watchers |
| Self-submitted (anyone from DoiT) |
≥225 stars, or ≥90 forks, or ≥90 watchers |
Snapshot of this repo on 2026-07-22: 2 stars / 1 fork / 1 watcher. A PR today fails audit in CI before human review, and burning a rejection hurts a future attempt.
Note: if an outside community member submits the formula, the lower 75/30/30 bar applies — but the policy also warns self-submission scrutiny extends to obviously-coordinated submissions, so don't game this.
Eligibility check (re-run anytime)
gh repo view doitintl/dci-cli --json stargazerCount,forkCount,watchers \
-q '{stars: .stargazerCount, forks: .forkCount, watchers: .watchers.totalCount}'
Compare against the table above. Also re-check the thresholds in shared_audits.rb — they can change.
Migration checklist (when eligible)
Context
- Discussed and scoped on 2026-07-22: attempting submission now would auto-fail audit (2/1/1 vs 225/90/90 self-submitted), so the decision was to stay on the tap, keep this issue as the pickup point, and revisit when metrics qualify.
- Growing stars/forks/watchers is the actual critical path here — that's promotion/adoption work, not engineering.
Goal
Distribute
dcivia homebrew-core so users get:brew install dci— no tap qualifierbrew search dciand the formulae.brew.sh listingThe current tap works fine (
brew install doitintl/dci-cli/dciauto-taps, sobrew upgrade dcijust works). This migration is about reach, not fixing anything broken.Blocker: notability thresholds (as of 2026-07-22)
Homebrew's Package Acceptance Policy is enforced automatically by
brew auditvia hard-coded thresholds inLibrary/Homebrew/utils/shared_audits.rb(GITHUB_NOTABILITY_THRESHOLDS):Snapshot of this repo on 2026-07-22: 2 stars / 1 fork / 1 watcher. A PR today fails audit in CI before human review, and burning a rejection hurts a future attempt.
Note: if an outside community member submits the formula, the lower 75/30/30 bar applies — but the policy also warns self-submission scrutiny extends to obviously-coordinated submissions, so don't game this.
Eligibility check (re-run anytime)
gh repo view doitintl/dci-cli --json stargazerCount,forkCount,watchers \ -q '{stars: .stargazerCount, forks: .forkCount, watchers: .watchers.totalCount}'Compare against the table above. Also re-check the thresholds in
shared_audits.rb— they can change.Migration checklist (when eligible)
shared_audits.rbthresholdsurlmust point at the immutable tagged source tarball (.../archive/refs/tags/vX.Y.Z.tar.gz) withsha256; build withgo buildusing-ldflagsfor version stamping (mirror.goreleaser.yamlflags); include a realtest doblock (e.g.dci --version)brew install --build-from-source ./dci.rb,brew test dci,brew audit --new --formula dci(must pass clean, including notability)brew install dci/brew upgrade dcideprecate!inFormula/dci.rbpointing users at core) — keep the tap repo/redirect for existing installssync-manifests.yml(Scoop/WinGet parts stay)brew bump-formula-pron tag (or rely on Homebrew's autobump, if the formula qualifies)post-release-verify.ymlsmoke test to install from coreContext