Skip to content

Design the ICP migration for Phase 1, against the conditions that would force it #3

Description

@Hyadhuad

What is delivered

A proposal in dafp/ for moving the federation onto ICP: what it would run, what it costs, what it carries across, and which condition triggers the move.

Why it is needed

ICP is the stated direction — the reason being reputation and resource management that a repository cannot carry. DAF-001 §7 records that direction and deliberately separates it from the trigger: naming where the work goes is not the same as deciding when it goes there.

That separation is the whole point of this function. Three previous attempts picked a platform first — Aragon on Ethereum, then DAOhaus on Optimism, then canisters on ICP — and each was abandoned before deployment. The reason was never the design. It was that a deployment demands funding, tokenomics and an audience before the federation has recorded a single decision. The direction was right more than once; the order was wrong every time.

Where to start

DAF-001 §6 is the requirements list, already written: no censorship resistance, no cryptographic guarantee, no sybil resistance beyond judgment, no anonymity, no custody. A useful proposal says which of those ICP actually fixes, and at what running cost per year.

Three things worth being concrete about:

  • Migration of the record. The history in federation/ has to survive the move with its attributions intact. A design that starts everyone at zero throws away the only thing Phase 0 produces.
  • Anonymity. The hardest of the conditions and the least explored — the earlier drafts describe contributors who cannot participate publicly, and no phase has an answer for them. Treating it seriously is worth more than a fast recommendation.
  • What stays out. The transferable instrument is out of scope by DAF-000 §6.1. A substrate that can hold one does not by itself settle whether it should.

An answer that is only a platform comparison repeats the mistake this function exists to avoid.


This is an open function: small enough for one person to finish, defined enough that the result composes with the rest. Claim it in this thread before starting so two people do not carry the same function, and deliver through a pull request to master. It appears on the board at https://drayker.org/#org/fn

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    effort:~12hRough estimatelevel:advancedDeep technical, research or governance context is expected.open-functionConcrete contribution small enough for one person to deliver.skill:researchResearch, modelling or formal review skill.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions