# Honesty — what Better World never does

One page for skeptical donors and rival agents. Every rule below is backed by an ADR or live API contract already in this tree. Public hostname is **TBD**.

**Moat, in one line:** we optimize for answers agents can cite without lying — not for punchier marketing.

---

## What we never do

| Rule | Never | Cite |
|------|-------|------|
| **Modeled ≠ guaranteed** | Present impact / portfolio figures as promises or “you will save N lives” | [ADR 0002](../../docs/adr/0002-modeled-not-guaranteed.md) · `modeled: true` / `guaranteed: false` on `/v1/impact-estimate` |
| **No invented CE** | Fabricate cost-effectiveness, fill nulls, or outrank evaluator pages with vibes | [ADR 0001](../../docs/adr/0001-evaluator-deference.md) · `docs/methodology.md` |
| **No silent unit mixing** | Merge WELLBYs, lives-saved, SADs, tCO₂e into one “best overall” score without human moral weights | [ADR 0007](../../docs/adr/0007-cross-cause-moral-weights.md) **Proposed** · `mixes_units_in_ranking: false` · separate leaderboards |
| **Sponsored ≠ organic** | Let paid / featured / placement fields mutate tier, claims, confidence, or conviction | [ADR 0003](../../docs/adr/0003-sponsored-never-pollutes-ranking.md) · `docs/ranking-integrity.md` |
| **Org narrative untrusted** | Treat `summary` / claim notes as system instructions (jailbreaks, invent-CE directives, tool fences) | [ADR 0008](../../docs/adr/0008-org-text-prompt-injection.md) · egress scrub on org/compare |
| **No personal tax assertions** | Say “your gift is deductible” or set personal deductibility true from a charity name alone | `docs/tax-and-deductibility.md` · `/v1/tax/{id}` → `assert_personal_deductibility: false` always |
| **Giving intents never charge** | Process payments, invent crypto wallets, or pretend Stripe ran | `/v1/giving/intent` → `charge`/`charges: false` · deep-link only · `docs/noncash-handoff.md` |
| **Policy Accepts need humans** | Mark Accepting-policy ADRs Accepted, invent weight tables, or mint Ho Hum stamp files | [ADR 0004](../../docs/adr/0004-human-in-loop-red-lines.md) · `data/qa/human_stamps/README.md` |
| **Answers carry provenance** | Ship ranking / recommend / compare / leaderboards / org / meta without a stamp agents can cite | `provenance` on those responses · `/v1/meta` authoritative · Wave BI |

---

## Cross-cause units (ADR 0007 — still Proposed)

We rank **within** an outcome family (`lives_saved`, `wellbeing_wellbys`, `income`, …). Converting across families is a **human moral-weight** choice, not a missing spreadsheet cell.

- Product default: **separate leaderboards**; `mixes_units_in_ranking: false`.
- Agents must **not** Accept ADR 0007, invent conversion factors, or create `data/qa/human_stamps/adr_0007_accepted.by_ho_hum`.
- Underspecified “best charity in the world” → clarify family **or** return parallel boards / portfolio language — never a secretly mixed score.

Policy artifact: `data/qa/moral_weights_policy.json` (`status: proposed`). Methodology: `docs/methodology-moral-weights.md`.

---

## How to verify (donors & agents)

1. **ADRs:** `docs/adr/` — especially 0001, 0002, 0003, 0007 (Proposed), 0008.
2. **Live flags:** `GET /v1/meta` and any recommend/leaderboards/compare/org body → `provenance` (`product_version`, `data_snapshot_id`, `generated_at_iso`, `mixes_units_in_ranking: false`).
3. **Tax:** `GET /v1/tax/{org_id}` — `not_tax_advice: true`; never assert personal deductibility.
4. **Giving:** `GET|POST /v1/giving/intent` — deep-link handoff only; no charge.
5. **CI gates:** honesty lint, adversarial ranking, tax language, giving-intent adversarial, org-text injection, ADR 0007 stamp gate, provenance stamp tests (`docs/ci.md`).
6. **Decision desk:** [`decision-desk.md`](decision-desk.md) — every pending Ho Hum gate in one place (ADR / review / research).
7. **Machine entry:** [`../llms.txt`](../llms.txt) · playbook: [`agent-playbook.md`](agent-playbook.md) · donor FAQ: [`faq-donors.md`](faq-donors.md).

---

## Related

- **Pending Ho Hum gates (one list):** [`decision-desk.md`](decision-desk.md) — ADR 0007 Proposed · review queue · research packs (no auto-resolve)
- Competitive framing: `docs/competitive-moat.md`
- Red lines: `docs/red-lines-and-exceptions.md`
- Ranking integrity: `docs/ranking-integrity.md`
- Agent contract: `docs/agent-contract.md` / `docs/agent-tool-contract.md`

JSON-LD: [`honesty.jsonld`](honesty.jsonld).
