Skip to content

docs: dapp connectivity research, ADR, and PRD series - #52

Merged
hellno merged 4 commits into
mainfrom
claude/wallet-security-dapps-extension-jzlxj7
Jun 14, 2026
Merged

docs: dapp connectivity research, ADR, and PRD series#52
hellno merged 4 commits into
mainfrom
claude/wallet-security-dapps-extension-jzlxj7

Conversation

@hellno

@hellno hellno commented Jun 14, 2026

Copy link
Copy Markdown
Owner

Add the decision record and execution plan for how Deckard connects to
third-party dapps, grounded in a five-angle deep-research synthesis.

  • docs/research/10-dapp-connectivity.md: cited evidence (extension+bridge,
    WalletConnect, embedded webview, the resolver-auth crux, clear-signing).
  • docs/adr/0001: reject the embedded browser; reuse the key-less-proposer ->
    policy-gating-daemon -> native clear-signing pattern in three phases.
  • docs/prd/01..05: resolver authentication (closes threat-model residual build(gpui): default to the git GPUI pair (Zed + gpui-component) over crates.io #1),
    clear-signing v2 + message-signing intents, curated native integrations,
    WalletConnect transport, per-origin permissions + registry. Each carries a
    Definition of Done tied to the project gates.

https://claude.ai/code/session_01Vp5m1a3P8XePLbyppqzcjN

claude added 4 commits June 14, 2026 10:26
Add the decision record and execution plan for how Deckard connects to
third-party dapps, grounded in a five-angle deep-research synthesis.

- docs/research/10-dapp-connectivity.md: cited evidence (extension+bridge,
  WalletConnect, embedded webview, the resolver-auth crux, clear-signing).
- docs/adr/0001: reject the embedded browser; reuse the key-less-proposer ->
  policy-gating-daemon -> native clear-signing pattern in three phases.
- docs/prd/01..05: resolver authentication (closes threat-model residual #1),
  clear-signing v2 + message-signing intents, curated native integrations,
  WalletConnect transport, per-origin permissions + registry. Each carries a
  Definition of Done tied to the project gates.

https://claude.ai/code/session_01Vp5m1a3P8XePLbyppqzcjN
…nnect

Second-pass requirements: pursue universal dapp reach but own the transport
end-to-end. No embedded browser, no WalletConnect relay, no store as a trust
anchor.

- ADR 0001: Phase 2 becomes a Deckard-native bridge — a first-party, key-less
  connector injecting a standard EIP-1193/6963 provider over a Deckard-owned
  local wire (native messaging). WalletConnect moved to rejected/shelved with
  full rationale; mobile universal-reach recorded as an honest open cost.
- PRD-04 rewritten as the Deckard-native bridge; old WalletConnect PRD kept as
  x-walletconnect-shelved.md (rationale preserved, verbatim original retained).
- PRD-05 + PRD-03 + README cross-refs updated to the bridge; origin trust now
  leans on registry + blocklist + always-clear-signed effects (no relay
  attestation).
- PRD-01 (resolver auth) and PRD-02 (clear-signing) kept unchanged — both stand
  on their own.

https://claude.ai/code/session_01Vp5m1a3P8XePLbyppqzcjN
Per refinement pass:
- Wire (native messaging vs hardened localhost) is now a spike decision, not
  pre-committed; native messaging remains the leading candidate on security.
- Connector distribution: self-distributed + signed first (trust = our
  signature + key-less design, not a store review); target Chromium + Firefox
  together from the start.
- Add spikes/deckard-bridge-spike.md: a self-contained brief (house style) to
  prove the connector -> host -> mock daemon EIP-1193 round-trip on both
  browsers and settle the wire + self-distribution choices before the build.

https://claude.ai/code/session_01Vp5m1a3P8XePLbyppqzcjN
Per the planning-artifacts convention: work items/epics live as GitHub issues
(epic #44 + sub-issues #45-50), research + decision records stay in docs/.

- Remove docs/prd/* and spikes/deckard-bridge-spike.md (content now in issues).
- ADR 0001 + research: repoint PRD/spike links to the issue tracker.
- CLAUDE.md: record the convention (work items -> issues, only open on
  confirmation; research/ADRs/design -> docs/).

https://claude.ai/code/session_01Vp5m1a3P8XePLbyppqzcjN
@hellno
hellno merged commit bc2fe13 into main Jun 14, 2026
5 checks passed
@hellno
hellno deleted the claude/wallet-security-dapps-extension-jzlxj7 branch June 14, 2026 11:02
hellno pushed a commit that referenced this pull request Jun 14, 2026
PR #52 resolved the dapp-connectivity exploration and created canonical
issues (epic #44, PRD-01..05 #45-50) plus an issues-not-files convention.
Reconcile this doc to a rubric + decision record, not a parallel tracker:

- Replace the work-item sequencing backlog and the EIP-7702 spike brief
  (duplicated existing issue #33) with a Tracking & cross-references block
- Fix the now-outdated connection-surface framing: #25 browser integration
  is planned/phased via the owned EIP-6963 bridge (ADR 0001), not 'no dapps';
  #11 isolation maps to per-origin permissions (PRD-05 #48), not a wire token
- Point #3 clear-signing at PRD-02 #46; note PRD-01 #45 resolver-auth
- Update Stages + status notes to match
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