Skip to content

fix(grant-scout): stop fabricated prior-grant claims; de-hardcode metrics#19

Open
Oba-One wants to merge 2 commits into
mainfrom
fix/grant-scout-verify-claims
Open

fix(grant-scout): stop fabricated prior-grant claims; de-hardcode metrics#19
Oba-One wants to merge 2 commits into
mainfrom
fix/grant-scout-verify-claims

Conversation

@Oba-One
Copy link
Copy Markdown
Member

@Oba-One Oba-One commented May 31, 2026

Why

The guild-grant-scout routine surfaced a false "prior NLnet Evidence Commons grant (completed)" claim that nearly rode into a live grant proposal (it reached a Commons draft in Drive). NLnet is Applied / pending, never awarded — there is no prior NLnet grant or relationship. This is the kind of easily-checked falsehood that damages credibility with the exact funders we're courting.

Root cause

The Project landscape section listed the NLnet "Evidence Commons" draft framing under "Prior grant work to reference," beside genuinely-submitted proposals (OSV, Octant). The routine read it as a real prior grant each run and propagated "Evidence Commons (completed)" into drafts. Compounded by a hardcoded "Season One: 13 live gardens" metric (drifts; conflicts with the run-time-metrics step) and no guardrail requiring factual claims to be verified against a primary source.

Changes (two commits in this branch)

Commit 1 — prior-grant reference line → ledger-anchored & status-accurate. Application materials are explicitly not awards; only database-export.csv "Completed" rows are wins; NLnet flagged pending; the real completed wins are listed.

Commit 2 — guardrails + metric de-hardcoding:

  • New Guardrail: verify factual claims against primary sources (track record, prior funding, partnerships, "live" capabilities, metrics) before they enter a draft or Linear Issue; never upgrade applied → awarded; never imply a funder relationship the ledger doesn't show. This is the durable, generalizing fix.
  • New Guardrail: never hardcode production metrics — pull garden/gardener counts from the indexer/PostHog at run time with an "as of {date}" stamp.
  • Removed the hardcoded "Season One: 13 live gardens" count from the project landscape.

Verification

Cumulative diff vs main: old fabrication string removed; hardcoded "13 live gardens" removed (0 occurrences); all three new markers present; no collateral edits.

Found during a 2026-05-31 grant-research session (write-up: nlnet-grant-strategy-2026-05-31.md / grant-scout-fix-2026-05-31.md in afo's working dir).

🤖 Generated with Claude Code

…rics

The guild-grant-scout routine surfaced a false "prior NLnet Evidence
Commons grant (completed)" claim that nearly rode into a live grant
proposal. Root cause: the "Project landscape" section listed the NLnet
"Evidence Commons" *draft framing* under "prior grant work to reference"
beside genuinely-submitted proposals, so the routine treated it as a real
prior grant. NLnet is Applied/pending, never awarded — no prior NLnet
relationship exists.

Changes:
- Rewrite the prior-grant reference line to be ledger-anchored and
  status-accurate (only database-export.csv "Completed" rows are wins;
  NLnet = pending). Application materials are explicitly not awards.
- Add a Guardrail: verify factual claims (track record, prior funding,
  partnerships, "live" capabilities, metrics) against a primary source
  before they enter a draft or Linear Issue; never upgrade
  applied -> awarded.
- De-hardcode "Season One: 13 live gardens" -> pull counts from the
  indexer/PostHog at run time with an "as of {date}" stamp (drifts).
- Collapse a pre-existing duplicate "## Guardrails" header.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 31, 2026 06:33
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 31, 2026

Warning

Review limit reached

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

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

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

⌛ 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: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 0d71e188-731e-4e56-b3ad-0f0891fe26fa

📥 Commits

Reviewing files that changed from the base of the PR and between fc095d5 and 2715642.

📒 Files selected for processing (1)
  • routines/claude/guild-grant-scout.md
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/grant-scout-verify-claims

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.

Follow-on to the prior-grant-reference fix in this branch. Adds the two
edits that complete the hardening:
- Guardrail: verify factual claims (track record, prior funding,
  partnerships, "live" capabilities, metrics) against a primary source
  before they enter a draft or Linear Issue; never upgrade
  applied -> awarded, never imply a funder relationship the ledger
  doesn't show.
- Guardrail: never hardcode production metrics in a draft; pull
  garden/gardener counts from the indexer/PostHog at run time with an
  "as of {date}" stamp.
- Remove the hardcoded "Season One: 13 live gardens" count from the
  project landscape (drifts; conflicts with the run-time metrics step).

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

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Tightens the guild-grant-scout routine's "Project landscape" section to prevent the routine from re-asserting a fabricated prior NLnet "Evidence Commons" grant. The previous wording listed in-progress application materials alongside genuinely awarded grants under "Prior grant work to reference," which the routine then propagated into drafts as a completed funding relationship. The new wording reframes those items as application materials, names database-export.csv as the authoritative funding ledger, flags NLnet as Applied/pending, and enumerates the actually-completed wins citable as track record.

Changes:

  • Rewrites the prior-grant reference line at routines/claude/guild-grant-scout.md:62 to distinguish application materials from awards and anchor funding status to the ledger.
  • Adds an explicit "as of 2026-05-31" status snapshot (NLnet pending, OSV awaiting, completed wins list) and an inline "see Guardrails" pointer.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

**Distinct angles for funder pitches:** offline-first PWA infrastructure for low-connectivity contexts, on-chain regenerative impact attestation, shared identity primitives across multiple production products, real-user pilot data (Season One gardens on Arbitrum mainnet), evaluator/operator role separation as a governance pattern.

Prior grant work to reference (do not duplicate, iterate): NLnet NGI Zero Commons "Evidence Commons", Octant proposal packs, OSV Grant proposal (Drive), and any Drive docs under grants/proposals.
Prior grant *materials* to reference for reuse (iterate, do not duplicate): the NLnet NGI Zero Commons draft(s), Octant proposal packs, the OSV Grant proposal, and any Drive docs under grants/proposals. **These are application materials, not awards — never describe them as won, completed, delivered, or as a prior funding relationship unless verified (see Guardrails).** Authoritative funding status lives in the grants ledger (`database-export.csv`, Drive `Funding database export` folder): only rows marked **Completed** are wins. As of 2026-05-31: **NLnet = Applied / pending, never awarded** (no prior NLnet grant or relationship exists — do not imply one); OSV = submitted/awaiting; completed wins citable as track record = Grant Ships R1/R2, Gitcoin GG20–24, Octant Epoch 5 & 10 (Epoch 12 accepted), ReFi-in-Arbitrum, Arbitrum DAO "Building Regenerative Impact".
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.

2 participants