Canonical truth
PortfolioRegistry
Owns
Project identity, release proof, lifecycle status
Refuses
Transfers, silent history rewrites, unbounded page reads
Portfolio Protocol V2
The architecture separates canonical project truth, visitor intent, and engagement proof. Each contract owns one responsibility and exposes the assumptions a reviewer should inspect.
Contract boundaries
Project identity, release proof, lifecycle status
Transfers, silent history rewrites, unbounded page reads
Decision receipt, result counter, response nonce
Unknown projects, duplicate responses, stale signatures
Non-transferable achievement balances
Transfers, duplicate issuance, unknown achievement types
Reviewed guarantees
Try the interface