Vouch for a funding.json manifest, when this relay is configured to #259

Merged
extant2000git merged 4 commits from feat/funding-manifest-urls into main 2026-10-15 20:28:03 +00:00
Owner

funding.json is how FLOSS/fund takes applications: a manifest in the repository rather than a proposal, submitted to their public directory by URL. Their provenance rule is that a manifest served from a code host while claiming a hostname needs that hostname to confirm it, which is what .well-known/funding-manifest-urls exists for.

FN_FUNDING_MANIFESTS holds the URLs, whitespace or comma separated. Anything not beginning with https:// is dropped at config time.

Unset means the route 404s, for the same reason the contact addresses render as nothing when unconfigured: a relay somebody else runs must never tell a funder that donations for it reach us. The manifest itself carries a legal name, a contact address and bank details, so it stays in the repository and out of this binary.

state result
FN_FUNDING_MANIFESTS unset HTTP 404
set with one https:// and one http:// URL HTTP 200, only the https URL in the body

Verified against a locally built relay on port 18099, both ways.

Second commit ignores .claude/. Seven .claude/worktrees/agent-* directories reached the index during this change: they are other sessions' checkouts of this same repository, so they commit as gitlinks pointing at commits no clone can fetch.

🤖 Generated with Claude Code

`funding.json` is how FLOSS/fund takes applications: a manifest in the repository rather than a proposal, submitted to their public directory by URL. Their provenance rule is that a manifest served from a code host while claiming a hostname needs that hostname to confirm it, which is what `.well-known/funding-manifest-urls` exists for. `FN_FUNDING_MANIFESTS` holds the URLs, whitespace or comma separated. Anything not beginning with `https://` is dropped at config time. **Unset means the route 404s**, for the same reason the contact addresses render as nothing when unconfigured: a relay somebody else runs must never tell a funder that donations for it reach us. The manifest itself carries a legal name, a contact address and bank details, so it stays in the repository and out of this binary. | state | result | |---|---| | `FN_FUNDING_MANIFESTS` unset | HTTP 404 | | set with one `https://` and one `http://` URL | HTTP 200, only the https URL in the body | Verified against a locally built relay on port 18099, both ways. Second commit ignores `.claude/`. Seven `.claude/worktrees/agent-*` directories reached the index during this change: they are other sessions' checkouts of this same repository, so they commit as gitlinks pointing at commits no clone can fetch. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
extant2000git added 2 commits 2026-10-15 20:04:49 +00:00
funding.json is how FLOSS/fund takes applications: a manifest in the repository
rather than a proposal, submitted to their directory by URL. Its provenance rule
is that a manifest served from a code host while claiming a hostname needs that
hostname to confirm it, which is what .well-known/funding-manifest-urls is for.

FN_FUNDING_MANIFESTS holds the URLs, whitespace or comma separated, and anything
not beginning with https:// is dropped at config time. Unset means the route
404s, for the same reason the contact addresses render as nothing when
unconfigured: a relay somebody else runs must never tell a funder that
donations for it reach us. The manifest itself carries a legal name, a contact
address and bank details, so it stays in the repository and out of this binary.

Verified against a local relay: 404 with the variable unset, 200 with it set,
and an http:// entry passed alongside an https:// one was filtered out rather
than served.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Ignore agent worktrees, which git add -A turned into gitlinks
ci / checks (pull_request) Failing after 11s
ci / swift (pull_request) Successful in 8m56s
ci / image (pull_request) Skipped
ci / deploy (pull_request) Skipped
0d06092a28
Seven .claude/worktrees/agent-* directories reached the index on 2026-10-15.
They are other sessions' checkouts of this repository, so they commit as
gitlinks pointing at commits no clone can fetch.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
extant2000git added 1 commit 2026-10-15 20:14:45 +00:00
Document FN_FUNDING_MANIFESTS, which CONFIGURATION.md promises to list
ci / checks (pull_request) Failing after 10s
ci / image (pull_request) Skipped
ci / deploy (pull_request) Skipped
ci / swift (pull_request) Failing after 8m6s
3ab3e8af03
check-configuration-doc.py failed the PR: that file says it lists every
variable the relay reads, and the new one was missing.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
extant2000git added 1 commit 2026-10-15 20:16:48 +00:00
Regenerate configuration.leaf, which is the page people actually read
ci / checks (pull_request) Successful in 24s
ci / swift (pull_request) Successful in 8m43s
ci / image (pull_request) Successful in 1m52s
ci / deploy (pull_request) Skipped
a07e0a86ce
Scripts/check-doc-pages.py failed the PR: configuration.leaf is generated from
docs/CONFIGURATION.md and hashed against it, so documenting a variable without
rebuilding the page leaves the served page saying something older.

Build with FLAMENET_E2E_DIR pointed at the engine AT THE PIN in .e2e-ref. With
a sibling checkout on the engine's main instead, spec.leaf and engine.leaf
regenerate from unpinned content and the check fails on two more pages.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
extant2000git merged commit 9fbe8045d4 into main 2026-10-15 20:28:03 +00:00
Sign in to join this conversation.