bundle-bracket-pr

bundle-bracket-pr is a cursor rule for Cursor from arturogarrido/claudinho. It costs 0 tokens per session (585 once invoked), scanned A, original, MIT.

A checklist for preparing data-heavy changes for a pull request, especially code that builds schedules and tournament brackets from bundled or live data. A pull request is a proposed code change submitted for review.

In plain words
What is it for?
Running build, type, test, and lint checks; validating empty schedule fixtures; resolving knockout winners after scores or penalty results; and checking group standings and bracket indexes.
Why use it?
It catches incorrect bundled results, prematurely confirmed teams, and mistakes in knockout advancement before the change is considered ready.

Cursor rule for Cursor

Written for Cursor: installed under .cursor/. Also seen: mentions AGENTS.md.

Good fit Running build, type, test, and lint checks; validating empty schedule fixtures; resolving knockout winners after scores or penalty results; and checking group standings and bracket indexes.

Compare 6 cursor rules from other repositories ↓
Install with agentmods
npx agentmods add rules/arturogarrido/claudinho/bundle-bracket-pr
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Clone the repo
git clone --depth 1 https://github.com/arturogarrido/claudinho

Made for: Cursor.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for bundle-bracket-pr

README.md
[![agentmods](https://agentmods.dev/badge/rules/arturogarrido/claudinho/bundle-bracket-pr/github.svg)](https://agentmods.dev/rules/arturogarrido/claudinho/bundle-bracket-pr)
Your own site
<a href="https://agentmods.dev/rules/arturogarrido/claudinho/bundle-bracket-pr"><img src="https://agentmods.dev/badge/rules/arturogarrido/claudinho/bundle-bracket-pr/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for bundle-bracket-pr

Your own site · 80×15
<a href="https://agentmods.dev/rules/arturogarrido/claudinho/bundle-bracket-pr"><img src="https://agentmods.dev/badge/rules/arturogarrido/claudinho/bundle-bracket-pr.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 0 Nothing until a file matches its globs; then the whole rule loads.
When invoked 585 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00000 $0.00585
Opus 5.5 $0.00000 $0.00234
Sonnet 5.5 $0.00000 $0.00117
Haiku 4.5 $0.00000 $0.00059

Measured yesterday against content hash d6501316b577, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

bundle-bracket-pr scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.cursor/rules/bundle-bracket-pr.mdc · 30 lines

How it starts

The opening of the file, as written. The whole thing — 30 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Bundle & bracket PR readiness

Before marking a data-heavy feature merge-ready, run pnpm -r build && pnpm -r typecheck && pnpm -r test && pnpm lint (mirror CI — build first because cli/mcp import @claudinho/core from dist; build alone does not typecheck). scripts/gate.sh runs the same gate with CI's smokes and guards, one verdict per step; it does not run pnpm release:qa or replace CI's Node 20, Windows and macOS jobs, which scripts/push-and-watch.sh reads on the pushed SHA.

Adversarial tests (add when touching bracket/schedule)

Scenario Assert
FT level + winnerCode Winner advances
fetchWindow throws, standings OK Projected groups + source set
Bundle-only bracket No real flags in R32+ slots
Group at 0 games played Slots stay tbd, no (proj.)
Group at 2/3 played, standings live Leaders show flags + (proj.)
Group fully played (round-robin complete) Winner + runner-up confirmed, no (proj.)
toolGetBracket tz: UTC vs America/Mexico_City Calendar date/time differs on cross-midnight kickoff
Knockout kickoffs span >1 week Output includes month + day (not weekday-only)
formatShareBracket social + compact Same date format as CLI list
formatShareBracket / toolGetBracket Each disclaimer line once
Statusline and ambient --json knockout countdown (cached fixtures) Real nations or ⚽ —; never 🏳️
Statusline and ambient --json stale cache during live KO live · syncing… (on ambient --json in the view's lang, en vivo · sincronizando…; the statusline's stays English) without 🏳️; resolved pairing when cache has it
Empty fixtures cache at phase boundary Re-polls after short TTL (~60s), not 15min

The invariants are AGENTS.md "Conventions" (canonical: the bundled schedule, the live pairing, the knockout surfaces). Their narration, and the knockout resolution, topology indexing, live hybrid paths and pre-merge QA this rule carried, are in guides/conventions/bundle-and-bracket.md; the adversarial test table stays in this rule, where the PR template cites it.

Read the full file on GitHub · 30 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday Changed d6501316b577
  2. 8d ago Changed e0f1a1698636
  3. 9d ago Changed · -36 lines f75ae7318350
  4. 11d ago Changed 91c409f9d8c5
  5. 15d ago Changed · +3 lines da79dc9f5a7b
  6. 16d ago Changed · +4 lines 0bb969f06a63
  7. 1mo ago First seen · 59 lines · 0 tokens per session scan A 0b0758752961

Subscribe to this mod's changes

bundle-bracket-pr is a cursor rule published in the GitHub repository arturogarrido/claudinho (31 stars, last pushed today), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 585 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.