Skip to content

SWIP-066: Graffiti wall pattern - #107

Draft
zelig wants to merge 5 commits into
masterfrom
swip-66-graffiti-wall
Draft

SWIP-066: Graffiti wall pattern#107
zelig wants to merge 5 commits into
masterfrom
swip-66-graffiti-wall

Conversation

@zelig

@zelig zelig commented Aug 11, 2026

Copy link
Copy Markdown
Member

The anti-GSOC: permissionless public write-boards (walls) named by any topic, where every entry is signed by its writer's own key — no shared graffiti key, ever. Writers buy wall membership with mining effort instead: an ephemeral owner (the MOC pattern, #80), a bare-index feed over a BPS broker (#104, carriage per #106), or a mined span-index — the feed index written into the span field of an empty-payload wrapped chunk, making the entry self-describing (id = H(T ‖ SPAN), owner recovered from the signature, PO(addr, H(T)) ≥ 16).

Highlights:

  • Motivation enumerates 8 arguments against the shared-key GSOC pattern: the Book's single-owner integrity premise, pull-sync divergence (cf. SWIP-TBA - Chunk checksum for divergent sync #101), the wrapped-address complication in incentives, stamp reuse across versions, closest-node-only retrieval and cache opacity, single-response exhaustion, no censorship resistance, and collisions even on the honest path.
  • Content feeds live one hash deeper: topic H(T) — which equals the anchor — so mined spans can never clash with sequential content ids.
  • Aggregation: a BPS broker on the wall's cohort doubles as the aggregate feed indexer by publishing its own self-indexed (SWIP-065: Self-indexed feeds #106) feed of contributors — after-the-fact reading is a single feed lookup; the broker can withhold but cannot forge.
  • Worked example: tag-based advertising over tag-combination walls.
  • DISC: NO — standard SOC validation, existing PO_MIN rule, arbitrary-span empty-payload wrapped chunks already allowed.

Freestanding pattern in the SWIP-59/60/61/65 family (#103, #104, #105, #106). Work-package format; open guesses are marked (?) in the text and being resolved in dictation rounds.

🤖 Generated with Claude Code

zelig and others added 4 commits August 11, 2026 09:13
Anti-GSOC: own-identity writers mine into the anchor neighbourhood (MOC /
bare-index-over-BPS / mined span-index modes); motivation enumerates 8
arguments against the shared-key GSOC pattern. Guesses marked (?).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… feed (T,O), DISC NO firm, broker as aggregate feed indexer

All 7 round-1 question marks resolved from dictation; motivation glosses
confirmed and unmarked. New aggregation section (broker-side gloss marked ?).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ntent feed topic H(T)=A, broker publishes self-indexed contributors feed

T usually a 32-byte reference; content feeds one hash deeper (no id clash
with mined spans); aggregation concretized per SWIP-65 self-indexing with
withhold-not-forge trust bound. Remaining guesses marked (?).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…tence is the info), mining helpers in client libs, withhold wording confirmed

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@zelig

zelig commented Aug 11, 2026

Copy link
Copy Markdown
Member Author

Round 4 (449a964): restored the accidentally omitted H(A‖C) tag combination; the worked example now states that for this ad type no content feed is needed — the entry's existence gives the information — with a matching MAY-be-absent note in mode 3; mining helpers homed in client libraries (bee-js or other JS libs); withhold-never-forge wording confirmed. Remaining (?): broker contributors-feed parameters and dedup granularity.

🤖 Generated with Claude Code

…r key, topic = H(T))

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@zelig

zelig commented Aug 11, 2026

Copy link
Copy Markdown
Member Author

Broker contributors-feed parameters confirmed: owner = the broker's key, topic = H(T). Last open (?): feed granularity — one update per wall entry observed, or dedup to one per contributor.

🤖 Generated with Claude Code

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.

1 participant