Skip to the page

Invented example · built on Kindling · Why Kindling · The library · The spec · The Circular

Late Supperintroductions by a matchmaker who has met you

Under the hood

How Late Supper is built

Late Supper is a Kindling Pool host with three Pools on one domain: one public list of matchmakers, and two unlisted tables. Here is every setting, every file, and what the v0.1 schema cannot say yet.

Settings

What we chose, and why

SettingValueSpecWhy Late Supper chose it
Consent model, all three Poolscurator-only-adds§3.2 §5.4Only a matchmaker proposes. Each person still says yes or no, and can leave in a minute; a stricter model may add steps and may never remove those.
Pre-handshake stepa real meeting, in person or on video§5.4Nadia invites only people she has met. The step is ours: stricter models may add steps before the handshake, as long as the person can still decline or leave.
Visibility, Matchmakerspublic§3.2 §8.1So anyone can find a matchmaker and ask for a first conversation.
Visibility, both tablesunlisted§3.2 §8.2Their addresses travel from Nadia, by word of mouth, and nowhere else.
Well-known filelists the Matchmakers Pool only§8.3 §10.1Crawlers can find the matchmakers. The tables are left out on purpose.
Registriesnone; the tables are not submitted§8.4 §8.5Listing is the curator’s choice. Nadia chooses not to.
Curator verificationoauth§4.3Nadia signs in with OAuth. Cryptographic identity is planned for v0.2 (§4.6).
Entry verificationcurator-vouched, local to each table§4.4 §4.5Nadia vouches only after meeting someone, and her vouching counts at that table and nowhere else.
Pool minimum sender verificationoauth (both tables)§7.1 §7.2A high floor for anyone writing in from outside. Inside the table, vouched members pass (§7.1).
Each member’s accept_fromvouched§7.2Only people vouched for at the same table can write at all.
Each member’s no_cold_messagestrue§7.2Nobody writes first until both have said yes to an introduction.
Block listsKindling public · Circular consortium§7.3Shared lists catch what one small service would not see.
Handshake window14 days, in each request’s expires_at§5.2The default. v0.1 has no manifest field for it, so each request carries it.
Auto-acceptnone; no member has a rule§5.5Every seat at a table is a decision someone made that day.
Withdrawalone button, processed at once§5.3The spec allows sixty seconds. Leaving should never wait on us.
Introductionsintro message, via_pool, email§6.1 §6.2 §6.3Sent only after both said yes: one envelope to each person.
Proposals and answerssystem message; reply§6.3v0.1 has no proposal type. See below.
kindling_noindexfalse for every member§2.7What privacy a table has comes from its visibility, never from noindex, which means “not in any Pool at all”.
Moneynone at the connection layer§1.3Nobody pays to join or to be introduced. Thanks, if any, come after an introduction worked, never before.

The files

Every document, validated

Each file below validates against the repository’s JSON Schemas.

Discovery

The well-known file

/.well-known/kindling-pool

File: .well-known/kindling-pool · operator Late Supper, introductions by matchmakers who have met you, table@latesupper.example

It lists one Pool. The Tuesday Table and Second Chapters are left out on purpose, and are in no registry §8.3 §8.4.

PoolVisibilityStatusIntentUpdated
Late Supper Matchmakers
https://latesupper.example/pools/matchmakers.json
publicactivematchmaking, dating1 September 2026
The raw JSON
{
  "schema_version": "0.1",
  "pools": [
    {
      "manifest_url": "https://latesupper.example/pools/matchmakers.json",
      "name": "Late Supper Matchmakers",
      "intent_tags": [
        "matchmaking",
        "dating"
      ],
      "visibility": "public",
      "status": "active",
      "geographic_scope": {
        "city": "Port Ellery",
        "country": "United States"
      },
      "last_updated": "2026-09-01T18:00:00Z"
    }
  ],
  "operator": {
    "name": "Late Supper, introductions by matchmakers who have met you",
    "contact": "table@latesupper.example",
    "url": "https://latesupper.example"
  }
}

Manifests

Three Pools, in readable form

Late Supper Matchmakers

File: pools/matchmakers.json · served at https://latesupper.example/pools/matchmakers.json

schema_version
0.1
id
matchmakers
curator
Nadia Farouk nadia@mail.example Signed in with OAuth
charter
The matchmakers of Late Supper, listed so anyone can find one and ask for a first conversation. A matchmaker is a person who has met you, not a feed.
intent_tags
matchmaking, dating
visibility
public
consent_model
curator-only-adds
curator_contact
table@latesupper.example
geographic_scope
Port Ellery, United States
governance_rules
Late Supper adds its matchmakers; each still accepts, and can leave in a minute. Anyone may write to a matchmaker to ask for a first conversation. The tables are separate, unlisted Pools with their own rules.
messaging_preferences
https://protocol.kindling.foundation/blocklist.json
https://thecircular.example/blocklist.json
minimum_sender_verification: not set
status
active · created 1 April 2026 · updated 1 September 2026
EntryLevelConsent proofAddedTheir messaging
Nadia Farouk
https://nadia-farouk.example
Signed in with OAuthoauth
hs-late-supper-matchmakers-nadia
1 April 2026verified, no cold: false
The raw JSON
{
  "schema_version": "0.1",
  "id": "matchmakers",
  "name": "Late Supper Matchmakers",
  "curator": [
    {
      "identity": "nadia@mail.example",
      "display_name": "Nadia Farouk",
      "verification_level": "oauth",
      "primary": true
    }
  ],
  "intent_tags": [
    "matchmaking",
    "dating"
  ],
  "visibility": "public",
  "consent_model": "curator-only-adds",
  "curator_contact": "table@latesupper.example",
  "charter": "The matchmakers of Late Supper, listed so anyone can find one and ask for a first conversation. A matchmaker is a person who has met you, not a feed.",
  "geographic_scope": {
    "city": "Port Ellery",
    "country": "United States"
  },
  "governance_rules": "Late Supper adds its matchmakers; each still accepts, and can leave in a minute. Anyone may write to a matchmaker to ask for a first conversation. The tables are separate, unlisted Pools with their own rules.",
  "messaging_preferences": {
    "block_list_subscriptions": [
      "https://protocol.kindling.foundation/blocklist.json",
      "https://thecircular.example/blocklist.json"
    ]
  },
  "status": "active",
  "created_at": "2026-04-01T17:00:00Z",
  "updated_at": "2026-09-01T18:00:00Z",
  "entries": [
    {
      "profile_url": "https://nadia-farouk.example",
      "parsed_profile": {
        "schema_version": "0.1",
        "profile_url": "https://nadia-farouk.example",
        "display_name": "Nadia Farouk",
        "pronouns": "she/her",
        "location": {
          "city": "Port Ellery",
          "country": "United States"
        },
        "intent_tags": [
          "matchmaking",
          "curating"
        ],
        "about": "Matchmaker at Late Supper. Twenty years of dinner parties before it had a name. Meets everyone in person first.",
        "contact_methods": [
          {
            "type": "email",
            "value": "nadia@mail.example",
            "label": "Kindling identity"
          }
        ],
        "verification": {
          "level": "oauth",
          "verified_at": "2026-04-01T18:00:00Z",
          "verifier": "google"
        },
        "messaging_preferences": {
          "accept_from": "verified",
          "no_cold_messages": false,
          "minimum_curator_verification": "email"
        },
        "kindling_noindex": false,
        "parsed_at": "2026-04-01T18:00:00Z",
        "parser": "kindling-parser/0.1.1"
      },
      "parsed_at": "2026-04-01T18:00:00Z",
      "consent_proof": {
        "handshake_id": "hs-late-supper-matchmakers-nadia",
        "accepted_at": "2026-04-01T18:00:00Z",
        "method": "oauth"
      },
      "verification_level": "oauth",
      "added_at": "2026-04-01T18:00:00Z",
      "added_by": "nadia@mail.example"
    }
  ]
}

The Tuesday Table

File: pools/tuesday-table.json · served at https://latesupper.example/pools/tuesday-table.json

schema_version
0.1
id
tuesday-table
curator
Nadia Farouk nadia@mail.example Signed in with OAuth
charter
Adults in their forties and fifties in and around Port Ellery who want a partner and are done with apps. Nadia proposes introductions one at a time. Both people say yes, or nothing happens.
intent_tags
dating
visibility
unlisted
consent_model
curator-only-adds
curator_contact
table@latesupper.example
geographic_scope
Port Ellery, United States
governance_rules
Curator-only-adds: only a matchmaker proposes, and only people the matchmaker has met in person or on video. Each person still accepts or declines, and can leave in a minute. Every member keeps no_cold_messages on and accepts messages from vouched people only. Nobody pays to join or to be introduced; people may give thanks after an introduction worked, never before.
messaging_preferences
https://protocol.kindling.foundation/blocklist.json
https://thecircular.example/blocklist.json
minimum_sender_verification: oauth
status
active · created 10 May 2026 · updated 21 September 2026
EntryLevelConsent proofAddedTheir messaging
Marcus Hale
https://marcus-hale.notion.example
Vouched for by the curatorcurator-vouching
hs-late-supper-tuesday-table-marcus
12 May 2026vouched, no cold: true
Irene Takahashi-Cole
https://irene-tc.example
Vouched for by the curatorcurator-vouching
hs-late-supper-tuesday-table-irene
19 May 2026vouched, no cold: true
Soledad “Sol” Ibarra
https://sol-ibarra.carrd.example
Vouched for by the curatorcurator-vouching
hs-late-supper-tuesday-table-sol
2 June 2026vouched, no cold: true
Gideon Park
https://gideon-park.notion.example
Vouched for by the curatorcurator-vouching
hs-late-supper-tuesday-table-gideon
7 July 2026vouched, no cold: true
The raw JSON
{
  "schema_version": "0.1",
  "id": "tuesday-table",
  "name": "The Tuesday Table",
  "curator": [
    {
      "identity": "nadia@mail.example",
      "display_name": "Nadia Farouk",
      "verification_level": "oauth",
      "primary": true
    }
  ],
  "intent_tags": [
    "dating"
  ],
  "visibility": "unlisted",
  "consent_model": "curator-only-adds",
  "curator_contact": "table@latesupper.example",
  "charter": "Adults in their forties and fifties in and around Port Ellery who want a partner and are done with apps. Nadia proposes introductions one at a time. Both people say yes, or nothing happens.",
  "geographic_scope": {
    "city": "Port Ellery",
    "country": "United States"
  },
  "governance_rules": "Curator-only-adds: only a matchmaker proposes, and only people the matchmaker has met in person or on video. Each person still accepts or declines, and can leave in a minute. Every member keeps no_cold_messages on and accepts messages from vouched people only. Nobody pays to join or to be introduced; people may give thanks after an introduction worked, never before.",
  "messaging_preferences": {
    "block_list_subscriptions": [
      "https://protocol.kindling.foundation/blocklist.json",
      "https://thecircular.example/blocklist.json"
    ],
    "minimum_sender_verification": "oauth"
  },
  "status": "active",
  "created_at": "2026-05-10T18:00:00Z",
  "updated_at": "2026-09-21T20:00:00Z",
  "entries": [
    {
      "profile_url": "https://marcus-hale.notion.example",
      "parsed_profile": {
        "schema_version": "0.1",
        "profile_url": "https://marcus-hale.notion.example",
        "display_name": "Marcus Hale",
        "pronouns": "he/him",
        "location": {
          "city": "Port Ellery",
          "country": "United States"
        },
        "intent_tags": [
          "dating"
        ],
        "about": "Carpenter. Builds furniture for people who plan to keep it. Would like to cook for someone again.",
        "contact_methods": [
          {
            "type": "email",
            "value": "marcus@mail.example",
            "label": "Kindling identity"
          }
        ],
        "verification": {
          "level": "curator-vouched",
          "verified_at": "2026-05-12T20:00:00Z",
          "verifier": "nadia@mail.example"
        },
        "messaging_preferences": {
          "accept_from": "vouched",
          "no_cold_messages": true,
          "minimum_curator_verification": "email"
        },
        "kindling_noindex": false,
        "parsed_at": "2026-05-12T20:00:00Z",
        "parser": "kindling-parser/0.1.1"
      },
      "parsed_at": "2026-05-12T20:00:00Z",
      "consent_proof": {
        "handshake_id": "hs-late-supper-tuesday-table-marcus",
        "accepted_at": "2026-05-12T20:00:00Z",
        "method": "curator-vouching"
      },
      "verification_level": "curator-vouched",
      "added_at": "2026-05-12T20:00:00Z",
      "added_by": "nadia@mail.example"
    },
    {
      "profile_url": "https://irene-tc.example",
      "parsed_profile": {
        "schema_version": "0.1",
        "profile_url": "https://irene-tc.example",
        "display_name": "Irene Takahashi-Cole",
        "pronouns": "she/her",
        "location": {
          "city": "Port Ellery",
          "country": "United States"
        },
        "intent_tags": [
          "dating"
        ],
        "about": "Harbor pilot. Early mornings, long weekends off, a dog named Buoy.",
        "contact_methods": [
          {
            "type": "email",
            "value": "irene@mail.example",
            "label": "Kindling identity"
          }
        ],
        "verification": {
          "level": "curator-vouched",
          "verified_at": "2026-05-19T19:10:00Z",
          "verifier": "nadia@mail.example"
        },
        "messaging_preferences": {
          "accept_from": "vouched",
          "no_cold_messages": true,
          "minimum_curator_verification": "email"
        },
        "kindling_noindex": false,
        "parsed_at": "2026-05-19T19:10:00Z",
        "parser": "kindling-parser/0.1.1"
      },
      "parsed_at": "2026-05-19T19:10:00Z",
      "consent_proof": {
        "handshake_id": "hs-late-supper-tuesday-table-irene",
        "accepted_at": "2026-05-19T19:10:00Z",
        "method": "curator-vouching"
      },
      "verification_level": "curator-vouched",
      "added_at": "2026-05-19T19:10:00Z",
      "added_by": "nadia@mail.example"
    },
    {
      "profile_url": "https://sol-ibarra.carrd.example",
      "parsed_profile": {
        "schema_version": "0.1",
        "profile_url": "https://sol-ibarra.carrd.example",
        "display_name": "Soledad “Sol” Ibarra",
        "pronouns": "she/her",
        "location": {
          "city": "Port Ellery",
          "country": "United States"
        },
        "intent_tags": [
          "dating",
          "carpool",
          "friendship"
        ],
        "about": "Public defender. Drives to the coast most Saturdays and would rather not drive alone.",
        "contact_methods": [
          {
            "type": "email",
            "value": "sol@mail.example",
            "label": "Kindling identity"
          }
        ],
        "verification": {
          "level": "curator-vouched",
          "verified_at": "2026-06-02T21:30:00Z",
          "verifier": "nadia@mail.example"
        },
        "messaging_preferences": {
          "accept_from": "vouched",
          "no_cold_messages": true,
          "minimum_curator_verification": "email"
        },
        "kindling_noindex": false,
        "parsed_at": "2026-06-02T21:30:00Z",
        "parser": "kindling-parser/0.1.1"
      },
      "parsed_at": "2026-06-02T21:30:00Z",
      "consent_proof": {
        "handshake_id": "hs-late-supper-tuesday-table-sol",
        "accepted_at": "2026-06-02T21:30:00Z",
        "method": "curator-vouching"
      },
      "verification_level": "curator-vouched",
      "added_at": "2026-06-02T21:30:00Z",
      "added_by": "nadia@mail.example"
    },
    {
      "profile_url": "https://gideon-park.notion.example",
      "parsed_profile": {
        "schema_version": "0.1",
        "profile_url": "https://gideon-park.notion.example",
        "display_name": "Gideon Park",
        "pronouns": "he/him",
        "location": {
          "city": "Port Ellery",
          "country": "United States"
        },
        "intent_tags": [
          "dating"
        ],
        "about": "High school band director on sabbatical. Plays piano at parties if asked twice.",
        "contact_methods": [
          {
            "type": "email",
            "value": "gideon@mail.example",
            "label": "Kindling identity"
          }
        ],
        "verification": {
          "level": "curator-vouched",
          "verified_at": "2026-07-07T20:45:00Z",
          "verifier": "nadia@mail.example"
        },
        "messaging_preferences": {
          "accept_from": "vouched",
          "no_cold_messages": true,
          "minimum_curator_verification": "email"
        },
        "kindling_noindex": false,
        "parsed_at": "2026-07-07T20:45:00Z",
        "parser": "kindling-parser/0.1.1"
      },
      "parsed_at": "2026-07-07T20:45:00Z",
      "consent_proof": {
        "handshake_id": "hs-late-supper-tuesday-table-gideon",
        "accepted_at": "2026-07-07T20:45:00Z",
        "method": "curator-vouching"
      },
      "verification_level": "curator-vouched",
      "added_at": "2026-07-07T20:45:00Z",
      "added_by": "nadia@mail.example"
    }
  ]
}

Second Chapters

File: pools/second-chapters.json · served at https://latesupper.example/pools/second-chapters.json

schema_version
0.1
id
second-chapters
curator
Nadia Farouk nadia@mail.example Signed in with OAuth
charter
For people fifty-five and over, widowed or divorced, who would like company again, whether that means dinner on Fridays or more. Slow is fine here.
intent_tags
dating, second-chapters
visibility
unlisted
consent_model
curator-only-adds
curator_contact
table@latesupper.example
geographic_scope
Port Ellery, United States
governance_rules
Curator-only-adds: only a matchmaker proposes, and only people the matchmaker has met in person or on video. Each person still accepts or declines, and can leave in a minute. Every member keeps no_cold_messages on and accepts messages from vouched people only. Nobody pays to join or to be introduced; people may give thanks after an introduction worked, never before.
messaging_preferences
https://protocol.kindling.foundation/blocklist.json
https://thecircular.example/blocklist.json
minimum_sender_verification: oauth
status
active · created 18 June 2026 · updated 14 September 2026
EntryLevelConsent proofAddedTheir messaging
Carl Jansen
https://carl-jansen.notion.example
Vouched for by the curatorcurator-vouching
hs-late-supper-second-chapters-carl
20 June 2026vouched, no cold: true
Evelyn Marsh
https://evelyn-marsh.carrd.example
Vouched for by the curatorcurator-vouching
hs-late-supper-second-chapters-evelyn
24 June 2026vouched, no cold: true
The raw JSON
{
  "schema_version": "0.1",
  "id": "second-chapters",
  "name": "Second Chapters",
  "curator": [
    {
      "identity": "nadia@mail.example",
      "display_name": "Nadia Farouk",
      "verification_level": "oauth",
      "primary": true
    }
  ],
  "intent_tags": [
    "dating",
    "second-chapters"
  ],
  "visibility": "unlisted",
  "consent_model": "curator-only-adds",
  "curator_contact": "table@latesupper.example",
  "charter": "For people fifty-five and over, widowed or divorced, who would like company again, whether that means dinner on Fridays or more. Slow is fine here.",
  "geographic_scope": {
    "city": "Port Ellery",
    "country": "United States"
  },
  "governance_rules": "Curator-only-adds: only a matchmaker proposes, and only people the matchmaker has met in person or on video. Each person still accepts or declines, and can leave in a minute. Every member keeps no_cold_messages on and accepts messages from vouched people only. Nobody pays to join or to be introduced; people may give thanks after an introduction worked, never before.",
  "messaging_preferences": {
    "block_list_subscriptions": [
      "https://protocol.kindling.foundation/blocklist.json",
      "https://thecircular.example/blocklist.json"
    ],
    "minimum_sender_verification": "oauth"
  },
  "status": "active",
  "created_at": "2026-06-18T15:00:00Z",
  "updated_at": "2026-09-14T17:00:00Z",
  "entries": [
    {
      "profile_url": "https://carl-jansen.notion.example",
      "parsed_profile": {
        "schema_version": "0.1",
        "profile_url": "https://carl-jansen.notion.example",
        "display_name": "Carl Jansen",
        "pronouns": "he/him",
        "location": {
          "city": "Port Ellery",
          "country": "United States"
        },
        "intent_tags": [
          "walking",
          "friendship",
          "dating"
        ],
        "about": "Retired ferry mechanic. Widowed four years. Walks with the Tuesday group and cooks too much soup.",
        "contact_methods": [
          {
            "type": "email",
            "value": "carl@mail.example",
            "label": "Kindling identity"
          }
        ],
        "verification": {
          "level": "curator-vouched",
          "verified_at": "2026-06-20T17:00:00Z",
          "verifier": "nadia@mail.example"
        },
        "messaging_preferences": {
          "accept_from": "vouched",
          "no_cold_messages": true,
          "minimum_curator_verification": "email"
        },
        "kindling_noindex": false,
        "parsed_at": "2026-06-20T17:00:00Z",
        "parser": "kindling-parser/0.1.1"
      },
      "parsed_at": "2026-06-20T17:00:00Z",
      "consent_proof": {
        "handshake_id": "hs-late-supper-second-chapters-carl",
        "accepted_at": "2026-06-20T17:00:00Z",
        "method": "curator-vouching"
      },
      "verification_level": "curator-vouched",
      "added_at": "2026-06-20T17:00:00Z",
      "added_by": "nadia@mail.example"
    },
    {
      "profile_url": "https://evelyn-marsh.carrd.example",
      "parsed_profile": {
        "schema_version": "0.1",
        "profile_url": "https://evelyn-marsh.carrd.example",
        "display_name": "Evelyn Marsh",
        "pronouns": "she/her",
        "location": {
          "city": "Port Ellery",
          "country": "United States"
        },
        "intent_tags": [
          "dating",
          "second-chapters"
        ],
        "about": "Retired schoolteacher, divorced, two grown sons. Reads mysteries, sails small boats, laughs easily.",
        "contact_methods": [
          {
            "type": "email",
            "value": "evelyn@mail.example",
            "label": "Kindling identity"
          }
        ],
        "verification": {
          "level": "curator-vouched",
          "verified_at": "2026-06-24T16:30:00Z",
          "verifier": "nadia@mail.example"
        },
        "messaging_preferences": {
          "accept_from": "vouched",
          "no_cold_messages": true,
          "minimum_curator_verification": "email"
        },
        "kindling_noindex": false,
        "parsed_at": "2026-06-24T16:30:00Z",
        "parser": "kindling-parser/0.1.1"
      },
      "parsed_at": "2026-06-24T16:30:00Z",
      "consent_proof": {
        "handshake_id": "hs-late-supper-second-chapters-evelyn",
        "accepted_at": "2026-06-24T16:30:00Z",
        "method": "curator-vouching"
      },
      "verification_level": "curator-vouched",
      "added_at": "2026-06-24T16:30:00Z",
      "added_by": "nadia@mail.example"
    }
  ]
}

Block lists

The two lists every table subscribes to

Messages and handshakes from anything on these lists are refused §7.3.

Kindling public block list

Copy: blocklist.json · published at https://protocol.kindling.foundation/blocklist.json · version 3, 20 September 2026

The block list the Kindling project will publish under SPEC.md §7.3, for identities and implementations with confirmed abuse. The entries here are illustrative until the registry opens. No personal details are ever published.

TypeTargetReasonDetailAdded
implementationscrapekit/0.3scrapingIgnores kindling-noindex and robots signals.2 July 2026
identitypromo-blast@mail.examplespam14 August 2026

The Circular consortium block list

Copy: circular/blocklist.json · published at https://thecircular.example/blocklist.json · version 8, 27 September 2026

Shared by every member of the Circular consortium. Each member subscribes; any member may propose an entry, and two others must second it.

TypeTargetReasonDetailAdded
curator_identitylisted-them-anyway@mail.exampleconsent_violationSubmitted other people’s pages, a whole household’s among them, to Pools without asking any of them.27 September 2026
pool_urlhttps://free-friends-now.example/pools/everyone.jsonconsent_violationListed profiles that never accepted a handshake.26 September 2026
identitybulk-intros@relay.examplespam3 September 2026
implementationscrapekit/0.3scrapingAlso on the Kindling public list.3 July 2026

Honest limits

What the v0.1 schema can’t say yet

Where the specification text and a schema disagree, our JSON follows the schema. These are the gaps that touch Late Supper.

  1. Level names differ between the text and the schema.

    §4.5 names email-verified, oauth-verified, curator-vouched and unverified. The schemas say email, oauth, curator-vouched, unverified and cryptographic, and a curator can only be email, oauth or cryptographic. Our JSON follows the schemas; our pages use the words.

  2. There is no message type for a proposal, or for answering one.

    §6.3 lists four types; the schema has six, adding withdrawal and system. Neither the text nor the schema has a proposal. We send Nadia’s note as a system message and each answer as a reply to it. The schema accepts both, but another client would not know they are a proposal.

  3. Nothing records that both said yes.

    no_cold_messages needs “confirmed mutual interest” §7.2, but no field carries it. We keep the two replies and check them ourselves before the introduction goes.

  4. An introduction has two people; an intro has one recipient.

    The envelope’s recipient is a single identity, so we send two envelopes, one to each, sharing a thread header.

  5. Curator mail and vouched-only rules.

    Every member here accepts messages from vouched senders only. Nadia is the curator, not vouched, so a strict reading of §7.2 would hold back her own invitations and introductions. We treat mail from a Pool’s curator about that Pool as the Pool’s own, which each member agreed to by saying yes. The protocol does not say.

  6. The Pool’s minimum sender level cannot name vouching.

    minimum_sender_verification allows unverified, email or oauth. §7.1 says a curator-vouched sender passes inside the Pool that vouched for them, but the manifest cannot say how its OAuth floor meets that rule. We apply §7.1 inside the table and the floor to everyone else.

  7. Vouching records who and when, never how.

    A curator-vouched profile carries verifier and verified_at §4.4. That Nadia met each person in person or on video lives only in governance_rules, as prose.

  8. The invitation cannot state the consent model.

    A handshake request’s pool object names the curator, charter, intent and visibility §5.2, but not consent_model. Gideon’s letter says “only Nadia proposes” in words; a client reading the JSON could not.

  9. Unlisted is not private.

    The protocol has no access control on a manifest §3.1, and every invitation carries the Pool’s address. Anyone holding the address of the Tuesday Table can read who is seated. “Nobody sees a list” is our promise about our own screens.

  10. The window is configurable in text, not in the manifest.

    §5.2 says the 14-day window is “configurable per Pool”. There is no field for it, so each request carries it in expires_at. We use the default.

  11. Field names in the text and the schemas differ.

    §6.2 calls the Pool reference pool_ref; the schema calls it via_pool. §12.1 names kindling_version; every schema uses schema_version. §10.2 names pool_url and curator_contact; the well-known schema uses manifest_url, with the contact on operator. Our JSON follows the schemas.

  12. No provenance field on parsed profiles.

    §2.3 names extraction_source, but the parsed-profile schema has no such field and forbids extra ones. Our members’ cards cannot say which lines were marked up and which were inferred.

  13. Thanks have no place in v0.1.

    A chargeable surface at the connection layer is a non-goal §1.3. Voluntary gratitude after an introduction is in the v0.2 draft, which says it can never become a paywall. We follow it already, off the protocol: thanks appear in no field, only as a sentence in governance_rules.