From bcae7d2c1f350412ca01f6c1da7d86a835a4f1f9 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 10 Aug 2026 12:06:39 +1000 Subject: [PATCH 01/20] Add LP-0018: Logos Wallet prize Covers LEZ + blockchain asset ownership/transfer, token program support, staking, chain<->zone bridging, multi-zone/sequencer config, multi-account (incl. public/private LEZ accounts), a developer SDK with wallet-selection/approval flow, watch addresses, and testnet 0.3 support, with adoption metrics modeled on the lambda-prize forward plan's V0.3 testnet framework. --- README.md | 1 + prizes/LP-0018.md | 128 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 129 insertions(+) create mode 100644 prizes/LP-0018.md diff --git a/README.md b/README.md index d4ad00d..72588d2 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,7 @@ All prizes live in the `[prizes/](prizes/)` directory. Each prize is a markdown | [LP-0015](prizes/LP-0015.md) | General cross-program calls via tail calls | Large | Closed | | [LP-0016](prizes/LP-0016.md) | Anonymous Forum with Threshold Moderation | Large | Closed ([Solution](solutions/LP-0016.md)) | | [LP-0017](prizes/LP-0017.md) | Whistleblower: document upload and indexing Basecamp app | Medium | Closed ([Solution](solutions/LP-0017.md)) | +| [LP-0018](prizes/LP-0018.md) | Logos Wallet | Large | Draft | ### Proposing a New Prize diff --git a/prizes/LP-0018.md b/prizes/LP-0018.md new file mode 100644 index 0000000..3ae6e3a --- /dev/null +++ b/prizes/LP-0018.md @@ -0,0 +1,128 @@ + + +--- +dependencies: [] +--- + +# LP-0018: Logos Wallet [DRAFT] + +**`Logos Circle: N/A`** + +## Overview + +This prize is for a Logos wallet module: a single wallet experience that manages assets across the Logos blockchain and any number of Logos Execution Zones (LEZ), including the token program, staking, bridging between chain and zones, multi-zone/sequencer configuration, multiple accounts, and a developer-facing SDK with wallet selection and approval flows for third-party dApps. + +## Motivation + +Logos' architecture separates a base blockchain from programmable execution zones, and expects users to interact with multiple zones, each potentially served by a different sequencer. Without a unified wallet, every zone and dApp would need to reinvent key management, asset display, staking, and bridging — fragmenting UX and increasing the risk of key-handling bugs. A single, well-tested wallet module gives every other Logos app a common, trustworthy foundation for asset custody and movement, and a standard SDK/approval flow lets third-party dApp developers integrate with that wallet instead of building their own. + +## Success Criteria + +### Functionality + +- [ ] **LEZ assets**: own, send, and receive native and token-program assets on a LEZ zone, including shielded balances. +- [ ] **Blockchain assets**: own, send, and receive assets on the Logos blockchain. +- [ ] **Token program**: create/query token mints and accounts, and transfer token-program assets, on LEZ. +- [ ] **Staking**: stake, unstake, and claim/cash out rewards on the Logos blockchain. +- [ ] **Bridging**: move assets from the Logos blockchain into a LEZ zone and back, with clear pending/settled status while a bridge transaction is in flight. +- [ ] **Multi-zone configuration**: add, remove, and switch between multiple configured LEZ zones. +- [ ] **Sequencer configuration**: configure which sequencer endpoint is used per zone, and switch sequencers without losing wallet state. +- [ ] **Multiple accounts (LEZ)**: create and manage multiple accounts per zone, including both public and private (shielded) accounts, and switch between them. +- [ ] **Multiple accounts (blockchain)**: create and manage multiple accounts on the Logos blockchain. +- [ ] **Developer SDK**: a documented SDK that lets a third-party dApp request account access, read balances/state, and propose transactions (blockchain and LEZ) against the wallet. +- [ ] **Wallet selection & approval flow**: when a dApp requests a connection or a transaction, the user is shown a selection prompt (which account to use) and an approval prompt (what is being signed/sent) before anything is signed or submitted. +- [ ] **Testnet 0.3**: the wallet operates end-to-end against Logos testnet 0.3 (blockchain + at least one LEZ zone). +- [ ] **Watch addresses**: add a read-only (watch-only) address for the blockchain or a LEZ zone and view its balances/activity without holding its keys. + +### Usability + +- [ ] Provide a module/SDK usable by other Logos modules and third-party dApps to query balances, request account access, and request transfers. +- [ ] Provide a Logos Basecamp app GUI with local build instructions and loadable assets. +- [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account, and (for transactions) the asset, amount, and destination. + +### Reliability + +- [ ] Wallet state (keys, accounts, configured zones/sequencers, watch addresses) survives restarts and sequencer switches without corruption. +- [ ] Bridge and staking operations that fail or are interrupted leave the wallet in a recoverable, clearly-reported state (no silently lost funds or stuck state). +- [ ] A dApp cannot sign or submit a transaction, or read a private/shielded account's balance, without an explicit user approval for that account. + +### Performance + +- [ ] Document compute unit usage for LEZ-side operations (transfer, token transfer, bridge in/out). + +### Supportability + +- [ ] Deployed and tested against Logos testnet 0.3 (blockchain and LEZ). +- [ ] End-to-end integration tests run against a real sequencer (standalone mode) and are included in CI; CI is green on the default branch. +- [ ] README documents setup, zone/sequencer configuration, account management, and step-by-step usage via CLI and Basecamp app. +- [ ] SDK documentation includes a minimal example dApp demonstrating connect → account selection → approval → transaction. +- [ ] A reproducible end-to-end demo script works against a real local sequencer with `RISC0_DEV_MODE=0`. +- [ ] A narrated video demo of the end-to-end flow is included, showing terminal output confirming `RISC0_DEV_MODE=0`. + +### Testnet Adoption Metrics + +> Modeled on the λPrize forward plan's phased testnet framework: V0.3 prioritizes "deployed and maintained," V0.4-style phases prioritize usage volume. The wallet targets V0.3 now; metrics below are what evaluators will check, not gated cash thresholds like the flagship adoption prizes. + +- [ ] Wallet is deployed and continuously reachable on Logos testnet 0.3 for the evaluation window (uptime/liveness). +- [ ] At least 3 independent accounts (mix of blockchain and LEZ, including at least one private/shielded LEZ account) are created and used to transact during the demo period. +- [ ] At least 1 full bridge round-trip (blockchain → zone → blockchain) is completed and verifiable on testnet. +- [ ] At least 1 full stake → unstake → claim cycle is completed and verifiable on testnet. +- [ ] At least 2 distinct LEZ zones (each with its own sequencer configuration) are used within the same wallet instance. +- [ ] At least 1 third-party example dApp integrates the SDK and completes a connect → approve → transact flow against the wallet, evidenced in the demo. + +## Scope + +### In Scope + +- Wallet module (key management, multi-account, asset display, transfers) for both the Logos blockchain and LEZ zones, including public and private LEZ accounts. +- Token program support on LEZ. +- Staking/unstaking/reward claim flows on the Logos blockchain. +- Bidirectional bridge flow between blockchain and zone. +- Multi-zone and per-zone sequencer configuration. +- Watch-only addresses. +- Developer SDK with account-access, state-read, and transaction-proposal APIs. +- Wallet-selection and transaction-approval UX flow for third-party dApp requests. +- CLI and Basecamp app GUI. + +### Out of Scope + +- Designing or implementing the bridge or staking protocol itself — the wallet integrates with existing/reference implementations. +- Hardware wallet integration. +- Portfolio analytics, price feeds, or fiat on/off-ramps. +- A dApp discovery/marketplace layer beyond the minimal SDK example. + +## Prize Structure + +- **Total Prize:** $X +- **Effort:** Large + +## Eligibility + +Open to any individual or team. Submissions must be original work. Teams must hold the rights to all submitted code and agree to license it under MIT or Apache-2.0. + +## Submission Requirements + +- Public repository with the wallet module, SDK, CLI, and Basecamp app GUI under MIT or Apache-2.0. +- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), sending/receiving on both blockchain and a LEZ zone, token program usage, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and a third-party example dApp performing connect → account selection → approval → transaction via the SDK. +- FURPS self-assessment as part of the solution (see [solution template](../solutions/LP-0000.md)). + +## Evaluation Process + +Submissions are evaluated first-come-first-served against the success criteria. The first submission that meets all criteria wins. + +Evaluators will independently clone the repository and run the demo script from a clean environment; the script must succeed without modification. Evaluators may also ask technical follow-up questions to verify authorship and understanding of the implementation. + +The following policies apply to all prizes (see [evaluation policies](../README.md#evaluation-policies)): + +- **Submissions:** each builder (or team) is allowed a maximum of **3 submissions** per prize, with at most **one submission/review per week**. +- **Feedback:** initial evaluation feedback is limited to a pass/fail indication against the success criteria. + +## Resources + +- [Logos Execution Zone repo](https://github.com/logos-blockchain/logos-execution-zone/) +- [LP-0013](LP-0013.md) — Token program improvements (authorities) +- [LP-0014](LP-0014.md) — Token program improvements (ATAs + wallet tooling) + +## Potential for Subsequent λ Prizes + +This prize targets Logos testnet 0.3. Should a future testnet version (e.g., V0.4) introduce breaking changes to staking, bridging, or the token program, or should the program move to volume-based adoption incentives for wallet usage, a subsequent λ Prize may be opened to cover adaptation. From b1bc11c4252f9aecd219343f6b2235e95779274f Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 10 Aug 2026 12:26:11 +1000 Subject: [PATCH 02/20] LP-0018: replace testnet metrics with attributable adoption criteria Generic on-chain activity cannot be traced back to the wallet software that produced it, so the previous metrics measured nothing specific to a challenger's submission. Replace them with traction attributable to the wallet itself: 10 independent third-party SDK integrations with genuine commit history, 100 repo stars, 100 on-chain inscriptions via a designated zone, and 20 Discord + 20 Twitter/X testimonials. All are required and evaluation is discretionary, with commit and account histories inspected, per the forward plan's ETH-Global-style criteria. Framed as the first tranche, with a follow-up LP expected. --- prizes/LP-0018.md | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/prizes/LP-0018.md b/prizes/LP-0018.md index 3ae6e3a..32e502b 100644 --- a/prizes/LP-0018.md +++ b/prizes/LP-0018.md @@ -59,16 +59,19 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] A reproducible end-to-end demo script works against a real local sequencer with `RISC0_DEV_MODE=0`. - [ ] A narrated video demo of the end-to-end flow is included, showing terminal output confirming `RISC0_DEV_MODE=0`. -### Testnet Adoption Metrics +### Adoption (first tranche) -> Modeled on the λPrize forward plan's phased testnet framework: V0.3 prioritizes "deployed and maintained," V0.4-style phases prioritize usage volume. The wallet targets V0.3 now; metrics below are what evaluators will check, not gated cash thresholds like the flagship adoption prizes. +> These metrics measure traction attributable to *this wallet* — not generic on-chain activity, which cannot be traced back to the wallet software that produced it. +> +> **All of the following are required.** Evaluation is **discretionary**: we publish the dimensions we look at, but the final call rests with the evaluators, so that hitting a raw number is not by itself sufficient. Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured — fresh accounts, coordinated bursts, purchased engagement — does not count, regardless of the headline number. -- [ ] Wallet is deployed and continuously reachable on Logos testnet 0.3 for the evaluation window (uptime/liveness). -- [ ] At least 3 independent accounts (mix of blockchain and LEZ, including at least one private/shielded LEZ account) are created and used to transact during the demo period. -- [ ] At least 1 full bridge round-trip (blockchain → zone → blockchain) is completed and verifiable on testnet. -- [ ] At least 1 full stake → unstake → claim cycle is completed and verifiable on testnet. -- [ ] At least 2 distinct LEZ zones (each with its own sequencer configuration) are used within the same wallet instance. -- [ ] At least 1 third-party example dApp integrates the SDK and completes a connect → approve → transact flow against the wallet, evidenced in the demo. +- [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history — development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. +- [ ] **100 stars** on the wallet repository. +- [ ] **100 on-chain inscriptions** on the Logos blockchain reading `I use this wallet`, submitted through a zone designated by the evaluators. Inscriptions from addresses with no prior unrelated testnet activity carry little weight. +- [ ] **20 testimonials on Discord** vouching for the wallet. Testimonials should describe what the person actually used the wallet for; account history will be checked. +- [ ] **20 testimonials on Twitter/X** vouching for the wallet, subject to the same standard and the same account-history check. + +> **Subsequent tranches.** This is the first adoption tranche. A follow-up λPrize is expected for the next tranche, with higher thresholds and metrics adapted to the phase the network is in at that time (see [Potential for Subsequent λ Prizes](#potential-for-subsequent-λ-prizes)). ## Scope @@ -125,4 +128,6 @@ The following policies apply to all prizes (see [evaluation policies](../README. ## Potential for Subsequent λ Prizes -This prize targets Logos testnet 0.3. Should a future testnet version (e.g., V0.4) introduce breaking changes to staking, bridging, or the token program, or should the program move to volume-based adoption incentives for wallet usage, a subsequent λ Prize may be opened to cover adaptation. +This prize covers the **first adoption tranche**. A follow-up λPrize is expected for the next tranche, raising the adoption thresholds and adapting the metrics to the network phase at that time. + +This prize also targets Logos testnet 0.3. Should a future testnet version (e.g., V0.4) introduce breaking changes to staking, bridging, or the token program, a subsequent λ Prize may be opened to cover adaptation. From 27174db40cdd76ab2725eee9c4e34008ff14dd88 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 10 Aug 2026 12:33:37 +1000 Subject: [PATCH 03/20] LP-0018: add testimonial mini app, UX signal, and module requirements - Testimonial mini app: reference SDK integration that inscribes "I use this wallet" on both the blockchain and the official Logos zone. Doubles as the canonical example for third-party devs and the tool that produces the adoption criteria's on-chain inscriptions. - Name the official zone by sequencer endpoint rather than a number: zones are identified by ChannelId/endpoint, not sequentially, so there is no zone number to cite. Testnet 0.3 endpoint TBC at open. - Discretionary UX-quality criterion, per the forward plan's "volume + usability/UX signal" dimension. - No mandatory external services: any third-party service (e.g. price API) must be disclosed, disableable, and non-essential. - Adopt the Supportability requirements from PR #67 (cross-platform build, mkLogosModule, module catalog publishing), since that template change is not yet merged and so is not inherited. --- prizes/LP-0018.md | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/prizes/LP-0018.md b/prizes/LP-0018.md index 32e502b..e5a94b8 100644 --- a/prizes/LP-0018.md +++ b/prizes/LP-0018.md @@ -31,6 +31,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] **Multiple accounts (blockchain)**: create and manage multiple accounts on the Logos blockchain. - [ ] **Developer SDK**: a documented SDK that lets a third-party dApp request account access, read balances/state, and propose transactions (blockchain and LEZ) against the wallet. - [ ] **Wallet selection & approval flow**: when a dApp requests a connection or a transaction, the user is shown a selection prompt (which account to use) and an approval prompt (what is being signed/sent) before anything is signed or submitted. +- [ ] **Testimonial mini app**: a small reference application, built on the SDK, that lets any user inscribe a testimonial (`I use this wallet`) on **both** the Logos blockchain and the official Logos zone, going through the full connect → account selection → approval → transaction flow. It serves as the canonical SDK integration example for third-party developers, and is the tool used to produce the on-chain inscriptions in the adoption criteria below. - [ ] **Testnet 0.3**: the wallet operates end-to-end against Logos testnet 0.3 (blockchain + at least one LEZ zone). - [ ] **Watch addresses**: add a read-only (watch-only) address for the blockchain or a LEZ zone and view its balances/activity without holding its keys. @@ -39,12 +40,14 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] Provide a module/SDK usable by other Logos modules and third-party dApps to query balances, request account access, and request transfers. - [ ] Provide a Logos Basecamp app GUI with local build instructions and loadable assets. - [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account, and (for transactions) the asset, amount, and destination. +- [ ] **UX quality (discretionary).** The wallet must be polished, functional, and usable by a non-expert: coherent navigation across accounts and zones, comprehensible transaction previews, and clear error/pending states. This is judged discretionarily rather than against a checklist — evaluators will use the wallet as a normal user would. ### Reliability - [ ] Wallet state (keys, accounts, configured zones/sequencers, watch addresses) survives restarts and sequencer switches without corruption. - [ ] Bridge and staking operations that fail or are interrupted leave the wallet in a recoverable, clearly-reported state (no silently lost funds or stuck state). - [ ] A dApp cannot sign or submit a transaction, or read a private/shielded account's balance, without an explicit user approval for that account. +- [ ] **No mandatory external services.** Beyond the user's configured sequencer(s) and Logos blockchain node, the wallet must not depend on any third-party web service to function. If one is used (e.g. a price API), then: it is disclosed to the user, the user can disable it, and the wallet remains fully functional with it disabled — no degraded key management, balances, or transaction flows. The wallet must never transmit addresses, balances, or transaction contents to a third party without explicit opt-in. ### Performance @@ -53,6 +56,9 @@ Logos' architecture separates a base blockchain from programmable execution zone ### Supportability - [ ] Deployed and tested against Logos testnet 0.3 (blockchain and LEZ). +- [ ] The submission builds and runs end-to-end on both **macOS (Apple Silicon)** and **Linux (x86_64)**. The demo script must succeed without modification on both platforms from a clean clone. +- [ ] Logos Basecamp modules are built with [`logos-module-builder`](https://github.com/logos-co/logos-module-builder) (`mkLogosModule`). +- [ ] Logos Basecamp modules are published to a module catalog: a fork of [`logos-modules-release-base`](https://github.com/logos-co/logos-modules-release-base), publishing releases via [`logos-modules-release-action`](https://github.com/logos-co/logos-modules-release-action). The catalog's `logos-repo.json` URL must be included in the submission so evaluators can install the module through the package-manager UI / `lgpd`. - [ ] End-to-end integration tests run against a real sequencer (standalone mode) and are included in CI; CI is green on the default branch. - [ ] README documents setup, zone/sequencer configuration, account management, and step-by-step usage via CLI and Basecamp app. - [ ] SDK documentation includes a minimal example dApp demonstrating connect → account selection → approval → transaction. @@ -67,7 +73,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history — development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. - [ ] **100 stars** on the wallet repository. -- [ ] **100 on-chain inscriptions** on the Logos blockchain reading `I use this wallet`, submitted through a zone designated by the evaluators. Inscriptions from addresses with no prior unrelated testnet activity carry little weight. +- [ ] **100 on-chain inscriptions** reading `I use this wallet`, submitted by users through the testimonial mini app on **both** the Logos blockchain and the official Logos zone. Zones are identified by their sequencer endpoint, not by a number — the official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. Inscriptions from addresses with no prior unrelated testnet activity carry little weight. - [ ] **20 testimonials on Discord** vouching for the wallet. Testimonials should describe what the person actually used the wallet for; account history will be checked. - [ ] **20 testimonials on Twitter/X** vouching for the wallet, subject to the same standard and the same account-history check. @@ -85,6 +91,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - Watch-only addresses. - Developer SDK with account-access, state-read, and transaction-proposal APIs. - Wallet-selection and transaction-approval UX flow for third-party dApp requests. +- Testimonial mini app: reference SDK integration that inscribes on both the blockchain and a LEZ zone. - CLI and Basecamp app GUI. ### Out of Scope @@ -92,7 +99,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - Designing or implementing the bridge or staking protocol itself — the wallet integrates with existing/reference implementations. - Hardware wallet integration. - Portfolio analytics, price feeds, or fiat on/off-ramps. -- A dApp discovery/marketplace layer beyond the minimal SDK example. +- A dApp discovery/marketplace layer beyond the SDK example apps. ## Prize Structure @@ -105,8 +112,9 @@ Open to any individual or team. Submissions must be original work. Teams must ho ## Submission Requirements -- Public repository with the wallet module, SDK, CLI, and Basecamp app GUI under MIT or Apache-2.0. -- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), sending/receiving on both blockchain and a LEZ zone, token program usage, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and a third-party example dApp performing connect → account selection → approval → transaction via the SDK. +- Public repository with the wallet module, SDK, CLI, testimonial mini app, and Basecamp app GUI under MIT or Apache-2.0. +- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), sending/receiving on both blockchain and a LEZ zone, token program usage, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and the testimonial mini app performing connect → account selection → approval → inscription on both the blockchain and the official Logos zone via the SDK. +- Evidence for each adoption criterion: links to the 10 third-party SDK apps and their repositories, the wallet repository, the on-chain inscriptions, and the Discord and Twitter/X testimonials. - FURPS self-assessment as part of the solution (see [solution template](../solutions/LP-0000.md)). ## Evaluation Process From a7ea57379d3245b4c79485864b6b4247972d4a49 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 10 Aug 2026 12:35:17 +1000 Subject: [PATCH 04/20] LP-0018: set prize to $6,000 Above the live build-LP bands (L = $1,200, XL ~ $2,000) to reflect that this prize couples a large build with a first adoption tranche requiring sustained ecosystem outreach, not just delivery. --- prizes/LP-0018.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prizes/LP-0018.md b/prizes/LP-0018.md index e5a94b8..12e8653 100644 --- a/prizes/LP-0018.md +++ b/prizes/LP-0018.md @@ -103,7 +103,7 @@ Logos' architecture separates a base blockchain from programmable execution zone ## Prize Structure -- **Total Prize:** $X +- **Total Prize:** $6,000 - **Effort:** Large ## Eligibility From 762a1afd118e480e231e23b1ef73ae6b89eb1734 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 10 Aug 2026 12:37:42 +1000 Subject: [PATCH 05/20] LP-0018: add faucet mini app as second SDK reference integration Requests testnet funds from both the Logos blockchain and LEZ faucets with SDK-driven account selection. Unified app preferred; a split is allowed if the faucet backends differ enough to contort one flow. Gives the SDK a second worked example and gives the 100 inscribers a supported way to fund accounts on both layers before inscribing. --- prizes/LP-0018.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/prizes/LP-0018.md b/prizes/LP-0018.md index 12e8653..8a0bcf5 100644 --- a/prizes/LP-0018.md +++ b/prizes/LP-0018.md @@ -32,6 +32,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] **Developer SDK**: a documented SDK that lets a third-party dApp request account access, read balances/state, and propose transactions (blockchain and LEZ) against the wallet. - [ ] **Wallet selection & approval flow**: when a dApp requests a connection or a transaction, the user is shown a selection prompt (which account to use) and an approval prompt (what is being signed/sent) before anything is signed or submitted. - [ ] **Testimonial mini app**: a small reference application, built on the SDK, that lets any user inscribe a testimonial (`I use this wallet`) on **both** the Logos blockchain and the official Logos zone, going through the full connect → account selection → approval → transaction flow. It serves as the canonical SDK integration example for third-party developers, and is the tool used to produce the on-chain inscriptions in the adoption criteria below. +- [ ] **Faucet mini app**: a reference application, built on the SDK, that requests testnet funds from **both** the Logos blockchain faucet and the LEZ faucet, using the SDK to let the user select which account receives them. A single app covering both layers is preferred; two separate apps are acceptable if the faucet backends differ enough that one flow would be contorted. It must report success/failure per layer and handle faucet rate-limiting gracefully. - [ ] **Testnet 0.3**: the wallet operates end-to-end against Logos testnet 0.3 (blockchain + at least one LEZ zone). - [ ] **Watch addresses**: add a read-only (watch-only) address for the blockchain or a LEZ zone and view its balances/activity without holding its keys. @@ -61,7 +62,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] Logos Basecamp modules are published to a module catalog: a fork of [`logos-modules-release-base`](https://github.com/logos-co/logos-modules-release-base), publishing releases via [`logos-modules-release-action`](https://github.com/logos-co/logos-modules-release-action). The catalog's `logos-repo.json` URL must be included in the submission so evaluators can install the module through the package-manager UI / `lgpd`. - [ ] End-to-end integration tests run against a real sequencer (standalone mode) and are included in CI; CI is green on the default branch. - [ ] README documents setup, zone/sequencer configuration, account management, and step-by-step usage via CLI and Basecamp app. -- [ ] SDK documentation includes a minimal example dApp demonstrating connect → account selection → approval → transaction. +- [ ] SDK documentation covers the reference mini apps (testimonial and faucet) as worked examples of connect → account selection → approval → transaction. - [ ] A reproducible end-to-end demo script works against a real local sequencer with `RISC0_DEV_MODE=0`. - [ ] A narrated video demo of the end-to-end flow is included, showing terminal output confirming `RISC0_DEV_MODE=0`. @@ -91,7 +92,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - Watch-only addresses. - Developer SDK with account-access, state-read, and transaction-proposal APIs. - Wallet-selection and transaction-approval UX flow for third-party dApp requests. -- Testimonial mini app: reference SDK integration that inscribes on both the blockchain and a LEZ zone. +- Reference SDK mini apps: a testimonial app that inscribes on both the blockchain and the official Logos zone, and a faucet app that requests testnet funds on both layers with SDK-driven account selection. - CLI and Basecamp app GUI. ### Out of Scope @@ -112,8 +113,8 @@ Open to any individual or team. Submissions must be original work. Teams must ho ## Submission Requirements -- Public repository with the wallet module, SDK, CLI, testimonial mini app, and Basecamp app GUI under MIT or Apache-2.0. -- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), sending/receiving on both blockchain and a LEZ zone, token program usage, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and the testimonial mini app performing connect → account selection → approval → inscription on both the blockchain and the official Logos zone via the SDK. +- Public repository with the wallet module, SDK, CLI, reference mini apps (testimonial and faucet), and Basecamp app GUI under MIT or Apache-2.0. +- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app on both layers, sending/receiving on both blockchain and a LEZ zone, token program usage, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and the testimonial mini app performing connect → account selection → approval → inscription on both the blockchain and the official Logos zone via the SDK. - Evidence for each adoption criterion: links to the 10 third-party SDK apps and their repositories, the wallet repository, the on-chain inscriptions, and the Discord and Twitter/X testimonials. - FURPS self-assessment as part of the solution (see [solution template](../solutions/LP-0000.md)). From b4b3e2f62efb7767f2e79832b861b258e76b6b14 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 10 Aug 2026 12:52:13 +1000 Subject: [PATCH 06/20] LP-0018: address PR review comments - Retitle to "Blockchain and Zone Wallet and SDK" (+ README table). - Drop token minting; scope token program to owning/transferring from public and private accounts. - Say "private and public accounts" rather than "shielded balances". - Testimonial mini app: specify a LEZ smart contract holds the testimonials; custom text, optional username, and a unique identifier per LP submission. - SDK covers smart contract interactions, not just transfers. - Move module-catalog publishing from Supportability to Usability. - Wallet state survives network drops. - External-services criterion covers analytics: opt-in only. - Adoption: rename section, retitle intro to traction attributable to a submission, note it applies in addition to FURPS, allow custom inscription text, encourage screenshots with X testimonials. - Remove the Out of Scope section. - Drop the duplicated RISC0_DEV_MODE video criterion from Supportability. The narrated demo stays in Submission Requirements since the README mandates one for every prize. --- README.md | 2 +- prizes/LP-0018.md | 44 +++++++++++++++++--------------------------- 2 files changed, 18 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 72588d2..3da43bf 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ All prizes live in the `[prizes/](prizes/)` directory. Each prize is a markdown | [LP-0015](prizes/LP-0015.md) | General cross-program calls via tail calls | Large | Closed | | [LP-0016](prizes/LP-0016.md) | Anonymous Forum with Threshold Moderation | Large | Closed ([Solution](solutions/LP-0016.md)) | | [LP-0017](prizes/LP-0017.md) | Whistleblower: document upload and indexing Basecamp app | Medium | Closed ([Solution](solutions/LP-0017.md)) | -| [LP-0018](prizes/LP-0018.md) | Logos Wallet | Large | Draft | +| [LP-0018](prizes/LP-0018.md) | Blockchain and Zone Wallet and SDK | Large | Draft | ### Proposing a New Prize diff --git a/prizes/LP-0018.md b/prizes/LP-0018.md index 8a0bcf5..9138f31 100644 --- a/prizes/LP-0018.md +++ b/prizes/LP-0018.md @@ -4,7 +4,7 @@ dependencies: [] --- -# LP-0018: Logos Wallet [DRAFT] +# LP-0018: Blockchain and Zone Wallet and SDK [DRAFT] **`Logos Circle: N/A`** @@ -20,35 +20,36 @@ Logos' architecture separates a base blockchain from programmable execution zone ### Functionality -- [ ] **LEZ assets**: own, send, and receive native and token-program assets on a LEZ zone, including shielded balances. +- [ ] **LEZ assets**: own, send, and receive native and token-program assets on a LEZ zone, for both private and public accounts. - [ ] **Blockchain assets**: own, send, and receive assets on the Logos blockchain. -- [ ] **Token program**: create/query token mints and accounts, and transfer token-program assets, on LEZ. +- [ ] **Token program**: own and transfer token-program assets on LEZ, from both public and private accounts. - [ ] **Staking**: stake, unstake, and claim/cash out rewards on the Logos blockchain. - [ ] **Bridging**: move assets from the Logos blockchain into a LEZ zone and back, with clear pending/settled status while a bridge transaction is in flight. - [ ] **Multi-zone configuration**: add, remove, and switch between multiple configured LEZ zones. - [ ] **Sequencer configuration**: configure which sequencer endpoint is used per zone, and switch sequencers without losing wallet state. -- [ ] **Multiple accounts (LEZ)**: create and manage multiple accounts per zone, including both public and private (shielded) accounts, and switch between them. +- [ ] **Multiple accounts (LEZ)**: create and manage multiple accounts per zone, including both public and private accounts, and switch between them. - [ ] **Multiple accounts (blockchain)**: create and manage multiple accounts on the Logos blockchain. - [ ] **Developer SDK**: a documented SDK that lets a third-party dApp request account access, read balances/state, and propose transactions (blockchain and LEZ) against the wallet. - [ ] **Wallet selection & approval flow**: when a dApp requests a connection or a transaction, the user is shown a selection prompt (which account to use) and an approval prompt (what is being signed/sent) before anything is signed or submitted. -- [ ] **Testimonial mini app**: a small reference application, built on the SDK, that lets any user inscribe a testimonial (`I use this wallet`) on **both** the Logos blockchain and the official Logos zone, going through the full connect → account selection → approval → transaction flow. It serves as the canonical SDK integration example for third-party developers, and is the tool used to produce the on-chain inscriptions in the adoption criteria below. +- [ ] **Testimonial mini app**: a small reference application, built on the SDK, that lets any user publish a testimonial on **both** the Logos blockchain and the official Logos zone, going through the full connect → account selection → approval → transaction flow. On the zone this means **a LEZ smart contract that holds the testimonials**. A testimonial carries custom text, an optional username, and a unique identifier for the given LP submission, so that testimonials can be attributed to the submission that produced them. It serves as the canonical SDK integration example for third-party developers, and is the tool used to produce the on-chain inscriptions in the adoption criteria below. - [ ] **Faucet mini app**: a reference application, built on the SDK, that requests testnet funds from **both** the Logos blockchain faucet and the LEZ faucet, using the SDK to let the user select which account receives them. A single app covering both layers is preferred; two separate apps are acceptable if the faucet backends differ enough that one flow would be contorted. It must report success/failure per layer and handle faucet rate-limiting gracefully. -- [ ] **Testnet 0.3**: the wallet operates end-to-end against Logos testnet 0.3 (blockchain + at least one LEZ zone). +- [ ] **Testnet 0.3**: the wallet operates end-to-end against Logos testnet 0.3 (blockchain + the Logos LEZ zone). - [ ] **Watch addresses**: add a read-only (watch-only) address for the blockchain or a LEZ zone and view its balances/activity without holding its keys. ### Usability -- [ ] Provide a module/SDK usable by other Logos modules and third-party dApps to query balances, request account access, and request transfers. +- [ ] Provide a module/SDK usable by other Logos modules and third-party dApps to query balances, request account access, and request transfers and smart contract interactions. - [ ] Provide a Logos Basecamp app GUI with local build instructions and loadable assets. +- [ ] Logos Basecamp modules are published to a module catalog: a fork of [`logos-modules-release-base`](https://github.com/logos-co/logos-modules-release-base), publishing releases via [`logos-modules-release-action`](https://github.com/logos-co/logos-modules-release-action). The catalog's `logos-repo.json` URL must be included in the submission so evaluators can install the module through the package-manager UI / `lgpd`. - [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account, and (for transactions) the asset, amount, and destination. - [ ] **UX quality (discretionary).** The wallet must be polished, functional, and usable by a non-expert: coherent navigation across accounts and zones, comprehensible transaction previews, and clear error/pending states. This is judged discretionarily rather than against a checklist — evaluators will use the wallet as a normal user would. ### Reliability -- [ ] Wallet state (keys, accounts, configured zones/sequencers, watch addresses) survives restarts and sequencer switches without corruption. +- [ ] Wallet state (keys, accounts, configured zones/sequencers, watch addresses) survives restarts, network drops, and sequencer switches without corruption. - [ ] Bridge and staking operations that fail or are interrupted leave the wallet in a recoverable, clearly-reported state (no silently lost funds or stuck state). - [ ] A dApp cannot sign or submit a transaction, or read a private/shielded account's balance, without an explicit user approval for that account. -- [ ] **No mandatory external services.** Beyond the user's configured sequencer(s) and Logos blockchain node, the wallet must not depend on any third-party web service to function. If one is used (e.g. a price API), then: it is disclosed to the user, the user can disable it, and the wallet remains fully functional with it disabled — no degraded key management, balances, or transaction flows. The wallet must never transmit addresses, balances, or transaction contents to a third party without explicit opt-in. +- [ ] **No mandatory external services.** Beyond the user's configured sequencer(s) and Logos blockchain node, the wallet must not depend on any third-party web service to function. If one is used (e.g. a price API), then: it is disclosed to the user, the user can disable it, and the wallet remains fully functional with it disabled — no degraded key management, balances, or transaction flows. This includes analytics servers: if any analytics are collected, they must be strictly opt-in. The wallet must never transmit addresses, balances, or transaction contents to a third party without explicit opt-in. ### Performance @@ -59,31 +60,27 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] Deployed and tested against Logos testnet 0.3 (blockchain and LEZ). - [ ] The submission builds and runs end-to-end on both **macOS (Apple Silicon)** and **Linux (x86_64)**. The demo script must succeed without modification on both platforms from a clean clone. - [ ] Logos Basecamp modules are built with [`logos-module-builder`](https://github.com/logos-co/logos-module-builder) (`mkLogosModule`). -- [ ] Logos Basecamp modules are published to a module catalog: a fork of [`logos-modules-release-base`](https://github.com/logos-co/logos-modules-release-base), publishing releases via [`logos-modules-release-action`](https://github.com/logos-co/logos-modules-release-action). The catalog's `logos-repo.json` URL must be included in the submission so evaluators can install the module through the package-manager UI / `lgpd`. - [ ] End-to-end integration tests run against a real sequencer (standalone mode) and are included in CI; CI is green on the default branch. - [ ] README documents setup, zone/sequencer configuration, account management, and step-by-step usage via CLI and Basecamp app. - [ ] SDK documentation covers the reference mini apps (testimonial and faucet) as worked examples of connect → account selection → approval → transaction. - [ ] A reproducible end-to-end demo script works against a real local sequencer with `RISC0_DEV_MODE=0`. -- [ ] A narrated video demo of the end-to-end flow is included, showing terminal output confirming `RISC0_DEV_MODE=0`. -### Adoption (first tranche) +### Adoption -> These metrics measure traction attributable to *this wallet* — not generic on-chain activity, which cannot be traced back to the wallet software that produced it. +> These metrics measure traction attributable to a given submission for this prize. > -> **All of the following are required.** Evaluation is **discretionary**: we publish the dimensions we look at, but the final call rests with the evaluators, so that hitting a raw number is not by itself sufficient. Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured — fresh accounts, coordinated bursts, purchased engagement — does not count, regardless of the headline number. +> **All of the following are required in addition to the FURPS criteria above.** Evaluation is **discretionary**: we publish the dimensions we look at, but the final call rests with the evaluators, so that hitting a raw number is not by itself sufficient. Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured — fresh accounts, coordinated bursts, purchased engagement — does not count, regardless of the headline number. - [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history — development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. - [ ] **100 stars** on the wallet repository. -- [ ] **100 on-chain inscriptions** reading `I use this wallet`, submitted by users through the testimonial mini app on **both** the Logos blockchain and the official Logos zone. Zones are identified by their sequencer endpoint, not by a number — the official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. Inscriptions from addresses with no prior unrelated testnet activity carry little weight. +- [ ] **100 on-chain inscriptions** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on **both** the Logos blockchain and the official Logos zone. Zones are identified by their sequencer endpoint, not by a number — the official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. Inscriptions from addresses with no prior unrelated testnet activity carry little weight. - [ ] **20 testimonials on Discord** vouching for the wallet. Testimonials should describe what the person actually used the wallet for; account history will be checked. -- [ ] **20 testimonials on Twitter/X** vouching for the wallet, subject to the same standard and the same account-history check. +- [ ] **20 testimonials on Twitter/X** vouching for the wallet, subject to the same standard and the same account-history check. Sharing screenshots of the wallet in use is encouraged. -> **Subsequent tranches.** This is the first adoption tranche. A follow-up λPrize is expected for the next tranche, with higher thresholds and metrics adapted to the phase the network is in at that time (see [Potential for Subsequent λ Prizes](#potential-for-subsequent-λ-prizes)). +> A follow-up λPrize is expected with higher adoption thresholds, adapted to the phase the network is in at that time (see [Potential for Subsequent λ Prizes](#potential-for-subsequent-λ-prizes)). ## Scope -### In Scope - - Wallet module (key management, multi-account, asset display, transfers) for both the Logos blockchain and LEZ zones, including public and private LEZ accounts. - Token program support on LEZ. - Staking/unstaking/reward claim flows on the Logos blockchain. @@ -95,13 +92,6 @@ Logos' architecture separates a base blockchain from programmable execution zone - Reference SDK mini apps: a testimonial app that inscribes on both the blockchain and the official Logos zone, and a faucet app that requests testnet funds on both layers with SDK-driven account selection. - CLI and Basecamp app GUI. -### Out of Scope - -- Designing or implementing the bridge or staking protocol itself — the wallet integrates with existing/reference implementations. -- Hardware wallet integration. -- Portfolio analytics, price feeds, or fiat on/off-ramps. -- A dApp discovery/marketplace layer beyond the SDK example apps. - ## Prize Structure - **Total Prize:** $6,000 @@ -114,7 +104,7 @@ Open to any individual or team. Submissions must be original work. Teams must ho ## Submission Requirements - Public repository with the wallet module, SDK, CLI, reference mini apps (testimonial and faucet), and Basecamp app GUI under MIT or Apache-2.0. -- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app on both layers, sending/receiving on both blockchain and a LEZ zone, token program usage, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and the testimonial mini app performing connect → account selection → approval → inscription on both the blockchain and the official Logos zone via the SDK. +- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app on both layers, sending/receiving on both blockchain and a LEZ zone, token program usage, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and the testimonial mini app performing connect → account selection → approval → inscription on both the blockchain and the official Logos zone via the SDK. (A narrated demo is required for every prize — see [demo requirements](../README.md#evaluation-policies).) - Evidence for each adoption criterion: links to the 10 third-party SDK apps and their repositories, the wallet repository, the on-chain inscriptions, and the Discord and Twitter/X testimonials. - FURPS self-assessment as part of the solution (see [solution template](../solutions/LP-0000.md)). From 3b61d3a48bdca8593174659def95138f5f0d925e Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 10 Aug 2026 12:54:21 +1000 Subject: [PATCH 07/20] LP-0018: require Logos Storage for any remote persistence If remote data persistence is needed for reliability (backup, cross-device recovery), it must use Logos Storage rather than a centralised provider, with client-side encryption. --- prizes/LP-0018.md | 1 + 1 file changed, 1 insertion(+) diff --git a/prizes/LP-0018.md b/prizes/LP-0018.md index 9138f31..936c617 100644 --- a/prizes/LP-0018.md +++ b/prizes/LP-0018.md @@ -50,6 +50,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] Bridge and staking operations that fail or are interrupted leave the wallet in a recoverable, clearly-reported state (no silently lost funds or stuck state). - [ ] A dApp cannot sign or submit a transaction, or read a private/shielded account's balance, without an explicit user approval for that account. - [ ] **No mandatory external services.** Beyond the user's configured sequencer(s) and Logos blockchain node, the wallet must not depend on any third-party web service to function. If one is used (e.g. a price API), then: it is disclosed to the user, the user can disable it, and the wallet remains fully functional with it disabled — no degraded key management, balances, or transaction flows. This includes analytics servers: if any analytics are collected, they must be strictly opt-in. The wallet must never transmit addresses, balances, or transaction contents to a third party without explicit opt-in. +- [ ] **Remote storage uses Logos Storage.** If remote data persistence is needed for reliability (e.g. backup or cross-device recovery of wallet configuration), it must use **Logos Storage** — not a centralised provider. Any data leaving the device must be encrypted client-side. ### Performance From b6401272384171f17c69da57b260d3398f38b0cd Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 10 Aug 2026 12:56:14 +1000 Subject: [PATCH 08/20] LP-0018: remove AI writing tells from prose Replace nine prose em-dashes with commas, colons, parentheses, or sentence breaks, keeping only the two Resources list separators that match the convention in other prize files. Demote one reflexive three-item list to two. --- prizes/LP-0018.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/prizes/LP-0018.md b/prizes/LP-0018.md index 936c617..8106a87 100644 --- a/prizes/LP-0018.md +++ b/prizes/LP-0018.md @@ -14,7 +14,7 @@ This prize is for a Logos wallet module: a single wallet experience that manages ## Motivation -Logos' architecture separates a base blockchain from programmable execution zones, and expects users to interact with multiple zones, each potentially served by a different sequencer. Without a unified wallet, every zone and dApp would need to reinvent key management, asset display, staking, and bridging — fragmenting UX and increasing the risk of key-handling bugs. A single, well-tested wallet module gives every other Logos app a common, trustworthy foundation for asset custody and movement, and a standard SDK/approval flow lets third-party dApp developers integrate with that wallet instead of building their own. +Logos' architecture separates a base blockchain from programmable execution zones, and expects users to interact with multiple zones, each potentially served by a different sequencer. Without a unified wallet, every zone and dApp would need to reinvent key management, asset display, staking, and bridging. That fragments UX and increases the risk of key-handling bugs. A single, well-tested wallet module gives every other Logos app a common, trustworthy foundation for asset custody and movement, and a standard SDK/approval flow lets third-party dApp developers integrate with that wallet instead of building their own. ## Success Criteria @@ -42,15 +42,15 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] Provide a Logos Basecamp app GUI with local build instructions and loadable assets. - [ ] Logos Basecamp modules are published to a module catalog: a fork of [`logos-modules-release-base`](https://github.com/logos-co/logos-modules-release-base), publishing releases via [`logos-modules-release-action`](https://github.com/logos-co/logos-modules-release-action). The catalog's `logos-repo.json` URL must be included in the submission so evaluators can install the module through the package-manager UI / `lgpd`. - [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account, and (for transactions) the asset, amount, and destination. -- [ ] **UX quality (discretionary).** The wallet must be polished, functional, and usable by a non-expert: coherent navigation across accounts and zones, comprehensible transaction previews, and clear error/pending states. This is judged discretionarily rather than against a checklist — evaluators will use the wallet as a normal user would. +- [ ] **UX quality (discretionary).** The wallet must be polished, functional, and usable by a non-expert: coherent navigation across accounts and zones, comprehensible transaction previews, and clear error/pending states. This is judged discretionarily rather than against a checklist: evaluators will use the wallet as a normal user would. ### Reliability - [ ] Wallet state (keys, accounts, configured zones/sequencers, watch addresses) survives restarts, network drops, and sequencer switches without corruption. - [ ] Bridge and staking operations that fail or are interrupted leave the wallet in a recoverable, clearly-reported state (no silently lost funds or stuck state). - [ ] A dApp cannot sign or submit a transaction, or read a private/shielded account's balance, without an explicit user approval for that account. -- [ ] **No mandatory external services.** Beyond the user's configured sequencer(s) and Logos blockchain node, the wallet must not depend on any third-party web service to function. If one is used (e.g. a price API), then: it is disclosed to the user, the user can disable it, and the wallet remains fully functional with it disabled — no degraded key management, balances, or transaction flows. This includes analytics servers: if any analytics are collected, they must be strictly opt-in. The wallet must never transmit addresses, balances, or transaction contents to a third party without explicit opt-in. -- [ ] **Remote storage uses Logos Storage.** If remote data persistence is needed for reliability (e.g. backup or cross-device recovery of wallet configuration), it must use **Logos Storage** — not a centralised provider. Any data leaving the device must be encrypted client-side. +- [ ] **No mandatory external services.** Beyond the user's configured sequencer(s) and Logos blockchain node, the wallet must not depend on any third-party web service to function. If one is used (e.g. a price API), then: it is disclosed to the user, the user can disable it, and the wallet remains fully functional with it disabled, with no degraded key management, balances, or transaction flows. This includes analytics servers: if any analytics are collected, they must be strictly opt-in. The wallet must never transmit addresses, balances, or transaction contents to a third party without explicit opt-in. +- [ ] **Remote storage uses Logos Storage.** If remote data persistence is needed for reliability (e.g. backup or cross-device recovery of wallet configuration), it must use **Logos Storage**, not a centralised provider. Any data leaving the device must be encrypted client-side. ### Performance @@ -70,11 +70,11 @@ Logos' architecture separates a base blockchain from programmable execution zone > These metrics measure traction attributable to a given submission for this prize. > -> **All of the following are required in addition to the FURPS criteria above.** Evaluation is **discretionary**: we publish the dimensions we look at, but the final call rests with the evaluators, so that hitting a raw number is not by itself sufficient. Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured — fresh accounts, coordinated bursts, purchased engagement — does not count, regardless of the headline number. +> **All of the following are required in addition to the FURPS criteria above.** Evaluation is **discretionary**: we publish the dimensions we look at, but the final call rests with the evaluators, so that hitting a raw number is not by itself sufficient. Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured (fresh accounts, purchased engagement) does not count, regardless of the headline number. -- [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history — development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. +- [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history: development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. - [ ] **100 stars** on the wallet repository. -- [ ] **100 on-chain inscriptions** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on **both** the Logos blockchain and the official Logos zone. Zones are identified by their sequencer endpoint, not by a number — the official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. Inscriptions from addresses with no prior unrelated testnet activity carry little weight. +- [ ] **100 on-chain inscriptions** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on **both** the Logos blockchain and the official Logos zone. Zones are identified by their sequencer endpoint, not by a number. The official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. Inscriptions from addresses with no prior unrelated testnet activity carry little weight. - [ ] **20 testimonials on Discord** vouching for the wallet. Testimonials should describe what the person actually used the wallet for; account history will be checked. - [ ] **20 testimonials on Twitter/X** vouching for the wallet, subject to the same standard and the same account-history check. Sharing screenshots of the wallet in use is encouraged. @@ -105,7 +105,7 @@ Open to any individual or team. Submissions must be original work. Teams must ho ## Submission Requirements - Public repository with the wallet module, SDK, CLI, reference mini apps (testimonial and faucet), and Basecamp app GUI under MIT or Apache-2.0. -- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app on both layers, sending/receiving on both blockchain and a LEZ zone, token program usage, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and the testimonial mini app performing connect → account selection → approval → inscription on both the blockchain and the official Logos zone via the SDK. (A narrated demo is required for every prize — see [demo requirements](../README.md#evaluation-policies).) +- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app on both layers, sending/receiving on both blockchain and a LEZ zone, token program usage, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and the testimonial mini app performing connect → account selection → approval → inscription on both the blockchain and the official Logos zone via the SDK. (A narrated demo is required for every prize: see [demo requirements](../README.md#evaluation-policies).) - Evidence for each adoption criterion: links to the 10 third-party SDK apps and their repositories, the wallet repository, the on-chain inscriptions, and the Discord and Twitter/X testimonials. - FURPS self-assessment as part of the solution (see [solution template](../solutions/LP-0000.md)). From c7ffa04315e88881c464dc60372c616ffcc67cd4 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 10 Aug 2026 13:01:46 +1000 Subject: [PATCH 09/20] LP-0018: set prize to $20,000 --- prizes/LP-0018.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prizes/LP-0018.md b/prizes/LP-0018.md index 8106a87..f668812 100644 --- a/prizes/LP-0018.md +++ b/prizes/LP-0018.md @@ -95,7 +95,7 @@ Logos' architecture separates a base blockchain from programmable execution zone ## Prize Structure -- **Total Prize:** $6,000 +- **Total Prize:** $20,000 - **Effort:** Large ## Eligibility From 1cd410176f7fa0c66f15b0204d6a401699d9b07f Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 10 Aug 2026 13:08:42 +1000 Subject: [PATCH 10/20] LP-0018: strengthen adoption criteria for the $20,000 prize - SDK integrations 10 -> 15, with at least 3 non-trivial apps that exist to do something other than demonstrate the SDK. - Inscriptions 100 -> 250, from at least 250 distinct accounts. - Add a sustained-activity criterion: inscriptions must span at least 2 months with 50+ in each month, so a single burst does not qualify. Verifiable from chain data via the submission's unique identifier. - Testimonials 20 -> 50 on each of Discord and Twitter/X. - Note in Evaluation Process that a submission cannot qualify before the two-month adoption window has elapsed. --- prizes/LP-0018.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/prizes/LP-0018.md b/prizes/LP-0018.md index f668812..4006f7f 100644 --- a/prizes/LP-0018.md +++ b/prizes/LP-0018.md @@ -72,11 +72,12 @@ Logos' architecture separates a base blockchain from programmable execution zone > > **All of the following are required in addition to the FURPS criteria above.** Evaluation is **discretionary**: we publish the dimensions we look at, but the final call rests with the evaluators, so that hitting a raw number is not by itself sufficient. Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured (fresh accounts, purchased engagement) does not count, regardless of the headline number. -- [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history: development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. +- [ ] **15 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history: development spread over time by a real contributor, not a single bulk import. The 15 developers must be independent of each other and of the submitting team. **At least 3 of the applications must be non-trivial**, meaning they exist to do something other than demonstrate the SDK. - [ ] **100 stars** on the wallet repository. -- [ ] **100 on-chain inscriptions** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on **both** the Logos blockchain and the official Logos zone. Zones are identified by their sequencer endpoint, not by a number. The official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. Inscriptions from addresses with no prior unrelated testnet activity carry little weight. -- [ ] **20 testimonials on Discord** vouching for the wallet. Testimonials should describe what the person actually used the wallet for; account history will be checked. -- [ ] **20 testimonials on Twitter/X** vouching for the wallet, subject to the same standard and the same account-history check. Sharing screenshots of the wallet in use is encouraged. +- [ ] **250 on-chain inscriptions** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on **both** the Logos blockchain and the official Logos zone. They must come from **at least 250 distinct accounts**, and accounts with no prior unrelated testnet activity carry little weight. Zones are identified by their sequencer endpoint, not by a number. The official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. +- [ ] **Sustained inscription activity**: the 250 inscriptions must be spread over **at least 2 months**, with **at least 50 new inscriptions in each of those months**. A single burst of activity does not qualify, however large. Inscriptions carry the submission's unique identifier and are timestamped on-chain, so this is verified directly from chain data. +- [ ] **50 testimonials on Discord** vouching for the wallet. Testimonials should describe what the person actually used the wallet for; account history will be checked. +- [ ] **50 testimonials on Twitter/X** vouching for the wallet, subject to the same standard and the same account-history check. Sharing screenshots of the wallet in use is encouraged. > A follow-up λPrize is expected with higher adoption thresholds, adapted to the phase the network is in at that time (see [Potential for Subsequent λ Prizes](#potential-for-subsequent-λ-prizes)). @@ -106,13 +107,15 @@ Open to any individual or team. Submissions must be original work. Teams must ho - Public repository with the wallet module, SDK, CLI, reference mini apps (testimonial and faucet), and Basecamp app GUI under MIT or Apache-2.0. - Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app on both layers, sending/receiving on both blockchain and a LEZ zone, token program usage, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and the testimonial mini app performing connect → account selection → approval → inscription on both the blockchain and the official Logos zone via the SDK. (A narrated demo is required for every prize: see [demo requirements](../README.md#evaluation-policies).) -- Evidence for each adoption criterion: links to the 10 third-party SDK apps and their repositories, the wallet repository, the on-chain inscriptions, and the Discord and Twitter/X testimonials. +- Evidence for each adoption criterion: links to the 15 third-party SDK apps and their repositories, the wallet repository, the on-chain inscriptions (with the submission identifier and per-month counts so the sustained-activity criterion can be verified), and the Discord and Twitter/X testimonials. - FURPS self-assessment as part of the solution (see [solution template](../solutions/LP-0000.md)). ## Evaluation Process Submissions are evaluated first-come-first-served against the success criteria. The first submission that meets all criteria wins. +Because the adoption criteria require sustained activity over at least two months, a submission cannot qualify until that window has elapsed. Builders are encouraged to ship early and start accruing adoption while continuing to develop, rather than treating the build and the adoption push as sequential. + Evaluators will independently clone the repository and run the demo script from a clean environment; the script must succeed without modification. Evaluators may also ask technical follow-up questions to verify authorship and understanding of the implementation. The following policies apply to all prizes (see [evaluation policies](../README.md#evaluation-policies)): From 7194b65623228b1fa922d6ee5e9b843f813ce6d1 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 10 Aug 2026 14:16:10 +1000 Subject: [PATCH 11/20] LP-0021: renumber from LP-0018 to avoid PR collision Four other open PRs (#36, #71, #75, #90) already claimed LP-0018, all opened before this one. LP-0021 is the first number claimed by neither a merged prize nor an open PR. Co-Authored-By: Claude Opus 5 (1M context) --- README.md | 2 +- prizes/{LP-0018.md => LP-0021.md} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename prizes/{LP-0018.md => LP-0021.md} (99%) diff --git a/README.md b/README.md index 3da43bf..28bfb87 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ All prizes live in the `[prizes/](prizes/)` directory. Each prize is a markdown | [LP-0015](prizes/LP-0015.md) | General cross-program calls via tail calls | Large | Closed | | [LP-0016](prizes/LP-0016.md) | Anonymous Forum with Threshold Moderation | Large | Closed ([Solution](solutions/LP-0016.md)) | | [LP-0017](prizes/LP-0017.md) | Whistleblower: document upload and indexing Basecamp app | Medium | Closed ([Solution](solutions/LP-0017.md)) | -| [LP-0018](prizes/LP-0018.md) | Blockchain and Zone Wallet and SDK | Large | Draft | +| [LP-0021](prizes/LP-0021.md) | Blockchain and Zone Wallet and SDK | Large | Draft | ### Proposing a New Prize diff --git a/prizes/LP-0018.md b/prizes/LP-0021.md similarity index 99% rename from prizes/LP-0018.md rename to prizes/LP-0021.md index 4006f7f..8525319 100644 --- a/prizes/LP-0018.md +++ b/prizes/LP-0021.md @@ -4,7 +4,7 @@ dependencies: [] --- -# LP-0018: Blockchain and Zone Wallet and SDK [DRAFT] +# LP-0021: Blockchain and Zone Wallet and SDK [DRAFT] **`Logos Circle: N/A`** From 5310b272432fe0c363c81bcb0e6c62e56ff0a9a8 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Wed, 12 Aug 2026 14:24:01 +1000 Subject: [PATCH 12/20] Split LP-0021 into LEZ-only wallet and LP-0022 combined wallet LP-0021 now scopes to a single LEZ zone (wallet, SDK, approval flow, testimonial + faucet mini apps) so a team can ship and start adoption without being blocked on blockchain-level features. LP-0022 extends that foundation to the Logos blockchain, staking, bridging, and multi-zone configuration, with its own incremental adoption tranche. Both priced at $20,000. Co-Authored-By: Claude Sonnet 5 --- README.md | 3 +- prizes/LP-0021.md | 78 ++++++++++++------------- prizes/LP-0022.md | 141 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 182 insertions(+), 40 deletions(-) create mode 100644 prizes/LP-0022.md diff --git a/README.md b/README.md index 28bfb87..28c9397 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,8 @@ All prizes live in the `[prizes/](prizes/)` directory. Each prize is a markdown | [LP-0015](prizes/LP-0015.md) | General cross-program calls via tail calls | Large | Closed | | [LP-0016](prizes/LP-0016.md) | Anonymous Forum with Threshold Moderation | Large | Closed ([Solution](solutions/LP-0016.md)) | | [LP-0017](prizes/LP-0017.md) | Whistleblower: document upload and indexing Basecamp app | Medium | Closed ([Solution](solutions/LP-0017.md)) | -| [LP-0021](prizes/LP-0021.md) | Blockchain and Zone Wallet and SDK | Large | Draft | +| [LP-0021](prizes/LP-0021.md) | LEZ Zone Wallet and SDK | Large | Draft | +| [LP-0022](prizes/LP-0022.md) | Combined Blockchain and Zone Wallet | Large | Draft | ### Proposing a New Prize diff --git a/prizes/LP-0021.md b/prizes/LP-0021.md index 8525319..1b85364 100644 --- a/prizes/LP-0021.md +++ b/prizes/LP-0021.md @@ -4,37 +4,30 @@ dependencies: [] --- -# LP-0021: Blockchain and Zone Wallet and SDK [DRAFT] +# LP-0021: LEZ Zone Wallet and SDK [DRAFT] **`Logos Circle: N/A`** ## Overview -This prize is for a Logos wallet module: a single wallet experience that manages assets across the Logos blockchain and any number of Logos Execution Zones (LEZ), including the token program, staking, bridging between chain and zones, multi-zone/sequencer configuration, multiple accounts, and a developer-facing SDK with wallet selection and approval flows for third-party dApps. +This prize is for a Logos wallet module scoped to a single Logos Execution Zone (LEZ): a wallet experience that manages assets on a LEZ zone, including the token program, multiple accounts (public and private), and a developer-facing SDK with wallet selection and approval flows for third-party dApps. This is the first of two wallet prizes: it establishes the LEZ-side wallet, SDK, and approval UX that a follow-up prize ([LP-0022](LP-0022.md)) will extend to cover the Logos blockchain, staking, bridging, and multi-zone configuration. ## Motivation -Logos' architecture separates a base blockchain from programmable execution zones, and expects users to interact with multiple zones, each potentially served by a different sequencer. Without a unified wallet, every zone and dApp would need to reinvent key management, asset display, staking, and bridging. That fragments UX and increases the risk of key-handling bugs. A single, well-tested wallet module gives every other Logos app a common, trustworthy foundation for asset custody and movement, and a standard SDK/approval flow lets third-party dApp developers integrate with that wallet instead of building their own. +Logos Execution Zones (LEZ) are the programmable environment where Logos dApps run, and every zone needs a wallet before it can have users or third-party integrations. Without a shared wallet and SDK, every dApp on a zone would need to reinvent key management, asset display, and approval UX. Scoping this first prize to a single zone lets a winning team ship a complete, adoption-ready wallet quickly, rather than being blocked on blockchain-level features (staking, bridging, multi-zone config) that are only needed once a base of zone-side users and dApps already exists. The wallet SDK and approval flow built here become the foundation LP-0022 extends to the blockchain and multi-zone case. ## Success Criteria ### Functionality - [ ] **LEZ assets**: own, send, and receive native and token-program assets on a LEZ zone, for both private and public accounts. -- [ ] **Blockchain assets**: own, send, and receive assets on the Logos blockchain. - [ ] **Token program**: own and transfer token-program assets on LEZ, from both public and private accounts. -- [ ] **Staking**: stake, unstake, and claim/cash out rewards on the Logos blockchain. -- [ ] **Bridging**: move assets from the Logos blockchain into a LEZ zone and back, with clear pending/settled status while a bridge transaction is in flight. -- [ ] **Multi-zone configuration**: add, remove, and switch between multiple configured LEZ zones. -- [ ] **Sequencer configuration**: configure which sequencer endpoint is used per zone, and switch sequencers without losing wallet state. -- [ ] **Multiple accounts (LEZ)**: create and manage multiple accounts per zone, including both public and private accounts, and switch between them. -- [ ] **Multiple accounts (blockchain)**: create and manage multiple accounts on the Logos blockchain. -- [ ] **Developer SDK**: a documented SDK that lets a third-party dApp request account access, read balances/state, and propose transactions (blockchain and LEZ) against the wallet. +- [ ] **Multiple accounts (LEZ)**: create and manage multiple accounts on the zone, including both public and private accounts, and switch between them. +- [ ] **Developer SDK**: a documented SDK that lets a third-party dApp request account access, read balances/state, and propose transactions against the wallet. - [ ] **Wallet selection & approval flow**: when a dApp requests a connection or a transaction, the user is shown a selection prompt (which account to use) and an approval prompt (what is being signed/sent) before anything is signed or submitted. -- [ ] **Testimonial mini app**: a small reference application, built on the SDK, that lets any user publish a testimonial on **both** the Logos blockchain and the official Logos zone, going through the full connect → account selection → approval → transaction flow. On the zone this means **a LEZ smart contract that holds the testimonials**. A testimonial carries custom text, an optional username, and a unique identifier for the given LP submission, so that testimonials can be attributed to the submission that produced them. It serves as the canonical SDK integration example for third-party developers, and is the tool used to produce the on-chain inscriptions in the adoption criteria below. -- [ ] **Faucet mini app**: a reference application, built on the SDK, that requests testnet funds from **both** the Logos blockchain faucet and the LEZ faucet, using the SDK to let the user select which account receives them. A single app covering both layers is preferred; two separate apps are acceptable if the faucet backends differ enough that one flow would be contorted. It must report success/failure per layer and handle faucet rate-limiting gracefully. -- [ ] **Testnet 0.3**: the wallet operates end-to-end against Logos testnet 0.3 (blockchain + the Logos LEZ zone). -- [ ] **Watch addresses**: add a read-only (watch-only) address for the blockchain or a LEZ zone and view its balances/activity without holding its keys. +- [ ] **Testimonial mini app**: a small reference application, built on the SDK, that lets any user publish a testimonial on the official Logos zone, going through the full connect → account selection → approval → transaction flow. This means **a LEZ smart contract that holds the testimonials**. A testimonial carries custom text, an optional username, and a unique identifier for the given LP submission, so that testimonials can be attributed to the submission that produced them. It serves as the canonical SDK integration example for third-party developers, and is the tool used to produce the on-chain inscriptions in the adoption criteria below. +- [ ] **Faucet mini app**: a reference application, built on the SDK, that requests testnet funds from the LEZ faucet, using the SDK to let the user select which account receives them. It must report success/failure and handle faucet rate-limiting gracefully. A wallet that cannot be funded is not usable, so this ships alongside the wallet, not as an afterthought. +- [ ] **Testnet 0.3**: the wallet operates end-to-end against the Logos LEZ zone on Logos testnet 0.3. ### Usability @@ -42,27 +35,26 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] Provide a Logos Basecamp app GUI with local build instructions and loadable assets. - [ ] Logos Basecamp modules are published to a module catalog: a fork of [`logos-modules-release-base`](https://github.com/logos-co/logos-modules-release-base), publishing releases via [`logos-modules-release-action`](https://github.com/logos-co/logos-modules-release-action). The catalog's `logos-repo.json` URL must be included in the submission so evaluators can install the module through the package-manager UI / `lgpd`. - [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account, and (for transactions) the asset, amount, and destination. -- [ ] **UX quality (discretionary).** The wallet must be polished, functional, and usable by a non-expert: coherent navigation across accounts and zones, comprehensible transaction previews, and clear error/pending states. This is judged discretionarily rather than against a checklist: evaluators will use the wallet as a normal user would. +- [ ] **UX quality (discretionary).** The wallet must be polished, functional, and usable by a non-expert: coherent navigation across accounts, comprehensible transaction previews, and clear error/pending states. This is judged discretionarily rather than against a checklist: evaluators will use the wallet as a normal user would. ### Reliability -- [ ] Wallet state (keys, accounts, configured zones/sequencers, watch addresses) survives restarts, network drops, and sequencer switches without corruption. -- [ ] Bridge and staking operations that fail or are interrupted leave the wallet in a recoverable, clearly-reported state (no silently lost funds or stuck state). +- [ ] Wallet state (keys, accounts) survives restarts and network drops without corruption. - [ ] A dApp cannot sign or submit a transaction, or read a private/shielded account's balance, without an explicit user approval for that account. -- [ ] **No mandatory external services.** Beyond the user's configured sequencer(s) and Logos blockchain node, the wallet must not depend on any third-party web service to function. If one is used (e.g. a price API), then: it is disclosed to the user, the user can disable it, and the wallet remains fully functional with it disabled, with no degraded key management, balances, or transaction flows. This includes analytics servers: if any analytics are collected, they must be strictly opt-in. The wallet must never transmit addresses, balances, or transaction contents to a third party without explicit opt-in. +- [ ] **No mandatory external services.** Beyond the user's configured sequencer and Logos LEZ node, the wallet must not depend on any third-party web service to function. If one is used (e.g. a price API), then: it is disclosed to the user, the user can disable it, and the wallet remains fully functional with it disabled, with no degraded key management, balances, or transaction flows. This includes analytics servers: if any analytics are collected, they must be strictly opt-in. The wallet must never transmit addresses, balances, or transaction contents to a third party without explicit opt-in. - [ ] **Remote storage uses Logos Storage.** If remote data persistence is needed for reliability (e.g. backup or cross-device recovery of wallet configuration), it must use **Logos Storage**, not a centralised provider. Any data leaving the device must be encrypted client-side. ### Performance -- [ ] Document compute unit usage for LEZ-side operations (transfer, token transfer, bridge in/out). +- [ ] Document compute unit usage for LEZ-side operations (transfer, token transfer). ### Supportability -- [ ] Deployed and tested against Logos testnet 0.3 (blockchain and LEZ). +- [ ] Deployed and tested against Logos testnet 0.3 (the Logos LEZ zone). - [ ] The submission builds and runs end-to-end on both **macOS (Apple Silicon)** and **Linux (x86_64)**. The demo script must succeed without modification on both platforms from a clean clone. - [ ] Logos Basecamp modules are built with [`logos-module-builder`](https://github.com/logos-co/logos-module-builder) (`mkLogosModule`). - [ ] End-to-end integration tests run against a real sequencer (standalone mode) and are included in CI; CI is green on the default branch. -- [ ] README documents setup, zone/sequencer configuration, account management, and step-by-step usage via CLI and Basecamp app. +- [ ] README documents setup, account management, and step-by-step usage via CLI and Basecamp app. - [ ] SDK documentation covers the reference mini apps (testimonial and faucet) as worked examples of connect → account selection → approval → transaction. - [ ] A reproducible end-to-end demo script works against a real local sequencer with `RISC0_DEV_MODE=0`. @@ -72,28 +64,35 @@ Logos' architecture separates a base blockchain from programmable execution zone > > **All of the following are required in addition to the FURPS criteria above.** Evaluation is **discretionary**: we publish the dimensions we look at, but the final call rests with the evaluators, so that hitting a raw number is not by itself sufficient. Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured (fresh accounts, purchased engagement) does not count, regardless of the headline number. -- [ ] **15 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history: development spread over time by a real contributor, not a single bulk import. The 15 developers must be independent of each other and of the submitting team. **At least 3 of the applications must be non-trivial**, meaning they exist to do something other than demonstrate the SDK. -- [ ] **100 stars** on the wallet repository. -- [ ] **250 on-chain inscriptions** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on **both** the Logos blockchain and the official Logos zone. They must come from **at least 250 distinct accounts**, and accounts with no prior unrelated testnet activity carry little weight. Zones are identified by their sequencer endpoint, not by a number. The official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. -- [ ] **Sustained inscription activity**: the 250 inscriptions must be spread over **at least 2 months**, with **at least 50 new inscriptions in each of those months**. A single burst of activity does not qualify, however large. Inscriptions carry the submission's unique identifier and are timestamped on-chain, so this is verified directly from chain data. -- [ ] **50 testimonials on Discord** vouching for the wallet. Testimonials should describe what the person actually used the wallet for; account history will be checked. -- [ ] **50 testimonials on Twitter/X** vouching for the wallet, subject to the same standard and the same account-history check. Sharing screenshots of the wallet in use is encouraged. +- [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history: development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. **At least 2 of the applications must be non-trivial**, meaning they exist to do something other than demonstrate the SDK. +- [ ] **75 stars** on the wallet repository. +- [ ] **150 on-chain inscriptions** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on the official Logos zone. They must come from **at least 150 distinct accounts**, and accounts with no prior unrelated testnet activity carry little weight. Zones are identified by their sequencer endpoint, not by a number. The official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. +- [ ] **Sustained inscription activity**: the 150 inscriptions must be spread over **at least 2 months**, with **at least 30 new inscriptions in each of those months**. A single burst of activity does not qualify, however large. Inscriptions carry the submission's unique identifier and are timestamped on-chain, so this is verified directly from chain data. +- [ ] **30 testimonials on Discord** vouching for the wallet. Testimonials should describe what the person actually used the wallet for; account history will be checked. +- [ ] **30 testimonials on Twitter/X** vouching for the wallet, subject to the same standard and the same account-history check. Sharing screenshots of the wallet in use is encouraged. -> A follow-up λPrize is expected with higher adoption thresholds, adapted to the phase the network is in at that time (see [Potential for Subsequent λ Prizes](#potential-for-subsequent-λ-prizes)). +> A follow-up λPrize ([LP-0022](LP-0022.md)) extends this wallet to the Logos blockchain, staking, bridging, and multi-zone configuration, with its own incremental adoption tranche. ## Scope -- Wallet module (key management, multi-account, asset display, transfers) for both the Logos blockchain and LEZ zones, including public and private LEZ accounts. +### In Scope + +- Wallet module (key management, multi-account, asset display, transfers) for a single LEZ zone, including public and private accounts. - Token program support on LEZ. -- Staking/unstaking/reward claim flows on the Logos blockchain. -- Bidirectional bridge flow between blockchain and zone. -- Multi-zone and per-zone sequencer configuration. -- Watch-only addresses. - Developer SDK with account-access, state-read, and transaction-proposal APIs. - Wallet-selection and transaction-approval UX flow for third-party dApp requests. -- Reference SDK mini apps: a testimonial app that inscribes on both the blockchain and the official Logos zone, and a faucet app that requests testnet funds on both layers with SDK-driven account selection. +- Reference SDK mini apps: a testimonial app that inscribes on the official Logos zone, and a faucet app that requests testnet funds on that zone with SDK-driven account selection. - CLI and Basecamp app GUI. +### Out of Scope + +- The Logos blockchain wallet, staking, bridging, and multi-zone/sequencer configuration — covered by [LP-0022](LP-0022.md). +- Watch-only addresses — covered by LP-0022. +- Designing or implementing the token program itself — the wallet integrates with the existing/reference implementation. +- Hardware wallet integration. +- Portfolio analytics, price feeds, or fiat on/off-ramps. +- A dApp discovery/marketplace layer beyond the SDK example apps. + ## Prize Structure - **Total Prize:** $20,000 @@ -106,8 +105,8 @@ Open to any individual or team. Submissions must be original work. Teams must ho ## Submission Requirements - Public repository with the wallet module, SDK, CLI, reference mini apps (testimonial and faucet), and Basecamp app GUI under MIT or Apache-2.0. -- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app on both layers, sending/receiving on both blockchain and a LEZ zone, token program usage, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and the testimonial mini app performing connect → account selection → approval → inscription on both the blockchain and the official Logos zone via the SDK. (A narrated demo is required for every prize: see [demo requirements](../README.md#evaluation-policies).) -- Evidence for each adoption criterion: links to the 15 third-party SDK apps and their repositories, the wallet repository, the on-chain inscriptions (with the submission identifier and per-month counts so the sustained-activity criterion can be verified), and the Discord and Twitter/X testimonials. +- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app, sending/receiving on the LEZ zone, token program usage, adding a watch address (if implemented), and the testimonial mini app performing connect → account selection → approval → inscription via the SDK. (A narrated demo is required for every prize: see [demo requirements](../README.md#evaluation-policies).) +- Evidence for each adoption criterion: links to the 10 third-party SDK apps and their repositories, the wallet repository, the on-chain inscriptions (with the submission identifier and per-month counts so the sustained-activity criterion can be verified), and the Discord and Twitter/X testimonials. - FURPS self-assessment as part of the solution (see [solution template](../solutions/LP-0000.md)). ## Evaluation Process @@ -128,9 +127,10 @@ The following policies apply to all prizes (see [evaluation policies](../README. - [Logos Execution Zone repo](https://github.com/logos-blockchain/logos-execution-zone/) - [LP-0013](LP-0013.md) — Token program improvements (authorities) - [LP-0014](LP-0014.md) — Token program improvements (ATAs + wallet tooling) +- [LP-0022](LP-0022.md) — Combined blockchain + zone wallet (follow-up) ## Potential for Subsequent λ Prizes -This prize covers the **first adoption tranche**. A follow-up λPrize is expected for the next tranche, raising the adoption thresholds and adapting the metrics to the network phase at that time. +This prize covers the **first adoption tranche** for the LEZ-only wallet. [LP-0022](LP-0022.md) extends the wallet to the Logos blockchain and multi-zone use, with its own adoption tranche. A further follow-up λPrize is expected with higher adoption thresholds, adapted to the phase the network is in at that time. -This prize also targets Logos testnet 0.3. Should a future testnet version (e.g., V0.4) introduce breaking changes to staking, bridging, or the token program, a subsequent λ Prize may be opened to cover adaptation. +This prize also targets Logos testnet 0.3. Should a future testnet version (e.g., V0.4) introduce breaking changes to the token program, a subsequent λ Prize may be opened to cover adaptation. diff --git a/prizes/LP-0022.md b/prizes/LP-0022.md new file mode 100644 index 0000000..64ffe5d --- /dev/null +++ b/prizes/LP-0022.md @@ -0,0 +1,141 @@ + + +--- +dependencies: + - id: LP-0021 + reason: extends the LEZ-only wallet and SDK to the Logos blockchain, staking, bridging, and multi-zone configuration +--- + +# LP-0022: Combined Blockchain and Zone Wallet [DRAFT] + +**`Logos Circle: N/A`** + +## Overview + +This prize extends the LEZ-only wallet from [LP-0021](LP-0021.md) into a single wallet experience that manages assets across the Logos blockchain **and** any number of Logos Execution Zones (LEZ): staking, bridging between chain and zones, multi-zone/sequencer configuration, watch-only addresses, and the corresponding SDK and mini-app extensions. + +## Motivation + +Logos' architecture separates a base blockchain from programmable execution zones, and expects users to interact with multiple zones, each potentially served by a different sequencer. LP-0021 established a wallet, SDK, and approval UX for a single zone; this prize builds on that foundation once it exists, adding the blockchain layer, staking, bridging, and multi-zone support that only matter once a base of zone-side users and dApps is already in place. Splitting the two lets a team ship and start accruing zone-side adoption early, then extend to the full cross-chain wallet without re-doing the SDK and approval-flow work. + +## Success Criteria + +### Functionality + +- [ ] **Blockchain assets**: own, send, and receive assets on the Logos blockchain. +- [ ] **Staking**: stake, unstake, and claim/cash out rewards on the Logos blockchain. +- [ ] **Bridging**: move assets from the Logos blockchain into a LEZ zone and back, with clear pending/settled status while a bridge transaction is in flight. +- [ ] **Multi-zone configuration**: add, remove, and switch between multiple configured LEZ zones. +- [ ] **Sequencer configuration**: configure which sequencer endpoint is used per zone, and switch sequencers without losing wallet state. +- [ ] **Multiple accounts (blockchain)**: create and manage multiple accounts on the Logos blockchain. +- [ ] **Developer SDK extension**: extend the LP-0021 SDK so third-party dApps can request account access, read balances/state, and propose transactions against the Logos blockchain and across multiple configured zones, not just the single zone LP-0021 supported. +- [ ] **Watch addresses**: add a read-only (watch-only) address for the blockchain or a LEZ zone and view its balances/activity without holding its keys. +- [ ] **Testimonial mini app extension**: extend the LP-0021 testimonial mini app so it also inscribes on the Logos blockchain, going through the same connect → account selection → approval → transaction flow used for the zone. +- [ ] **Faucet mini app extension**: extend the LP-0021 faucet mini app so it also requests testnet funds from the Logos blockchain faucet, using the SDK to let the user select which account receives them. A single app covering both layers is preferred; a separate app is acceptable if the faucet backends differ enough that one flow would be contorted. It must report success/failure per layer and handle faucet rate-limiting gracefully. +- [ ] **Testnet 0.3**: the wallet operates end-to-end against Logos testnet 0.3 (blockchain + at least two LEZ zones, to demonstrate multi-zone configuration). + +### Usability + +- [ ] The SDK continues to be usable by other Logos modules and third-party dApps to query balances, request account access, and request transfers and smart contract interactions, now across the blockchain and multiple zones. +- [ ] The Basecamp app GUI and CLI are extended to cover blockchain accounts, staking, bridging, multi-zone/sequencer configuration, and watch addresses. +- [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account (including which chain/zone), and (for transactions) the asset, amount, and destination. +- [ ] **UX quality (discretionary).** The extended wallet must remain polished and usable by a non-expert across chains and zones: coherent navigation, comprehensible transaction previews (including bridge and staking flows), and clear error/pending states. This is judged discretionarily rather than against a checklist: evaluators will use the wallet as a normal user would. + +### Reliability + +- [ ] Wallet state (keys, accounts, configured zones/sequencers, watch addresses) survives restarts, network drops, and sequencer switches without corruption. +- [ ] Bridge and staking operations that fail or are interrupted leave the wallet in a recoverable, clearly-reported state (no silently lost funds or stuck state). +- [ ] A dApp cannot sign or submit a transaction, or read a private/shielded account's balance, without an explicit user approval for that account, on any supported chain or zone. +- [ ] **No mandatory external services.** Beyond the user's configured sequencer(s) and Logos blockchain node, the wallet must not depend on any third-party web service to function. If one is used (e.g. a price API), then: it is disclosed to the user, the user can disable it, and the wallet remains fully functional with it disabled, with no degraded key management, balances, or transaction flows. This includes analytics servers: if any analytics are collected, they must be strictly opt-in. The wallet must never transmit addresses, balances, or transaction contents to a third party without explicit opt-in. +- [ ] **Remote storage uses Logos Storage.** If remote data persistence is needed for reliability (e.g. backup or cross-device recovery of wallet configuration), it must use **Logos Storage**, not a centralised provider. Any data leaving the device must be encrypted client-side. + +### Performance + +- [ ] Document compute unit usage for LEZ-side operations (transfer, token transfer, bridge in/out). + +### Supportability + +- [ ] Deployed and tested against Logos testnet 0.3 (blockchain and multiple LEZ zones). +- [ ] The submission builds and runs end-to-end on both **macOS (Apple Silicon)** and **Linux (x86_64)**. The demo script must succeed without modification on both platforms from a clean clone. +- [ ] Logos Basecamp modules are built with [`logos-module-builder`](https://github.com/logos-co/logos-module-builder) (`mkLogosModule`). +- [ ] End-to-end integration tests run against a real sequencer (standalone mode) and are included in CI; CI is green on the default branch. +- [ ] README documents setup, zone/sequencer configuration, account management, and step-by-step usage via CLI and Basecamp app. +- [ ] SDK documentation covers the extended reference mini apps (testimonial and faucet) as worked examples of connect → account selection → approval → transaction across chain and zones. +- [ ] A reproducible end-to-end demo script works against a real local sequencer with `RISC0_DEV_MODE=0`. + +### Adoption + +> These metrics measure traction attributable to a given submission for this prize, incremental to whatever the underlying LP-0021 wallet already accrued. Re-citing LP-0021's numbers does not satisfy this section. +> +> **All of the following are required in addition to the FURPS criteria above.** Evaluation is **discretionary**: we publish the dimensions we look at, but the final call rests with the evaluators, so that hitting a raw number is not by itself sufficient. Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured (fresh accounts, purchased engagement) does not count, regardless of the headline number. + +- [ ] **5 third-party developers**, independent of each other and of the submitting team, have each shipped a functional application that uses the blockchain, staking, bridging, or multi-zone additions from this prize's SDK extension (not merely the LP-0021 zone SDK). Each app must be publicly hosted on a mainstream forge with a clear, genuine commit history. +- [ ] **25 additional stars** on the wallet repository, beyond the count already attributed to LP-0021. +- [ ] **100 on-chain inscriptions** submitted via the extended testimonial mini app **on the Logos blockchain**, from **at least 100 distinct accounts**, with the same anti-Sybil standard as LP-0021. +- [ ] **Sustained inscription activity**: the 100 blockchain inscriptions must be spread over **at least 2 months**, with **at least 20 new inscriptions in each of those months**. +- [ ] **20 testimonials on Discord** and **20 on Twitter/X** specifically describing use of the bridging, staking, or multi-zone features. Sharing screenshots of the wallet in use is encouraged. + +> A follow-up λPrize is expected with higher adoption thresholds, adapted to the phase the network is in at that time (see [Potential for Subsequent λ Prizes](#potential-for-subsequent-λ-prizes)). + +## Scope + +### In Scope + +- Extending the LP-0021 wallet module to the Logos blockchain: multi-account, asset display, transfers. +- Staking/unstaking/reward claim flows on the Logos blockchain. +- Bidirectional bridge flow between blockchain and zone. +- Multi-zone and per-zone sequencer configuration. +- Watch-only addresses (blockchain and LEZ). +- Extending the LP-0021 SDK to cover blockchain and multi-zone account-access, state-read, and transaction-proposal APIs. +- Extending the LP-0021 testimonial and faucet mini apps to the blockchain layer. +- Extending the CLI and Basecamp app GUI to the above. + +### Out of Scope + +- The base LEZ wallet, SDK, and single-zone approval flow — covered by [LP-0021](LP-0021.md); this prize assumes that foundation exists and builds on it. +- Designing or implementing the bridge or staking protocol itself — the wallet integrates with existing/reference implementations. +- Hardware wallet integration. +- Portfolio analytics, price feeds, or fiat on/off-ramps. +- A dApp discovery/marketplace layer beyond the SDK example apps. + +## Prize Structure + +- **Total Prize:** $20,000 +- **Effort:** Large + +## Eligibility + +Open to any individual or team. A submission must build on a merged LP-0021 solution (the team's own, or another team's), but need not come from the same team that won LP-0021. Submissions must be original work. Teams must hold the rights to all submitted code and agree to license it under MIT or Apache-2.0. + +## Submission Requirements + +- Public repository with the extended wallet module, SDK, CLI, extended reference mini apps (testimonial and faucet), and Basecamp app GUI under MIT or Apache-2.0. +- Narrated video walkthrough demonstrating: blockchain multi-account setup, funding accounts via the extended faucet mini app on both layers, sending/receiving on the blockchain, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and the extended testimonial mini app performing connect → account selection → approval → inscription on the blockchain via the SDK. (A narrated demo is required for every prize: see [demo requirements](../README.md#evaluation-policies).) +- Evidence for each adoption criterion: links to the 5 third-party SDK apps and their repositories, the wallet repository, the on-chain blockchain inscriptions (with the submission identifier and per-month counts so the sustained-activity criterion can be verified), and the Discord and Twitter/X testimonials. +- FURPS self-assessment as part of the solution (see [solution template](../solutions/LP-0000.md)). + +## Evaluation Process + +Submissions are evaluated first-come-first-served against the success criteria. The first submission that meets all criteria wins. + +A submission must build on a merged LP-0021 solution. Because the adoption criteria require sustained activity over at least two months, a submission cannot qualify until that window has elapsed. Builders are encouraged to ship early and start accruing adoption while continuing to develop, rather than treating the build and the adoption push as sequential. + +Evaluators will independently clone the repository and run the demo script from a clean environment; the script must succeed without modification. Evaluators may also ask technical follow-up questions to verify authorship and understanding of the implementation. + +The following policies apply to all prizes (see [evaluation policies](../README.md#evaluation-policies)): + +- **Submissions:** each builder (or team) is allowed a maximum of **3 submissions** per prize, with at most **one submission/review per week**. +- **Feedback:** initial evaluation feedback is limited to a pass/fail indication against the success criteria. + +## Resources + +- [Logos Execution Zone repo](https://github.com/logos-blockchain/logos-execution-zone/) +- [LP-0021](LP-0021.md) — LEZ zone wallet and SDK (prerequisite) +- [LP-0013](LP-0013.md) — Token program improvements (authorities) +- [LP-0014](LP-0014.md) — Token program improvements (ATAs + wallet tooling) + +## Potential for Subsequent λ Prizes + +This prize covers the **second adoption tranche**, extending [LP-0021](LP-0021.md) to the blockchain and multi-zone case. A follow-up λPrize is expected for the next tranche, raising the adoption thresholds and adapting the metrics to the network phase at that time. + +This prize also targets Logos testnet 0.3. Should a future testnet version (e.g., V0.4) introduce breaking changes to staking, bridging, or the token program, a subsequent λ Prize may be opened to cover adaptation. From 02d61c190da42602a8eecf8b9f09dd016753954f Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 17 Aug 2026 13:34:54 +1000 Subject: [PATCH 13/20] LP-0022: reprice to $10,000 Co-Authored-By: Claude Sonnet 5 --- prizes/LP-0022.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prizes/LP-0022.md b/prizes/LP-0022.md index 64ffe5d..1766f27 100644 --- a/prizes/LP-0022.md +++ b/prizes/LP-0022.md @@ -100,7 +100,7 @@ Logos' architecture separates a base blockchain from programmable execution zone ## Prize Structure -- **Total Prize:** $20,000 +- **Total Prize:** $10,000 - **Effort:** Large ## Eligibility From 6ef893bc529c3bc9a562c36fcfee15aa1f386ef4 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 17 Aug 2026 14:52:15 +1000 Subject: [PATCH 14/20] LP-0021, LP-0022: mark NFTs out of scope, link lez-programs, fix LEZ terminology Token program covers both fungible and non-fungible assets; both LPs scope to fungible only and call NFTs out explicitly. Add the lez-programs repo (github.com/logos-blockchain/lez-programs) to Resources in both. In LP-0021, replace "inscription" with "testimonial PDA" for LEZ-side testimonials, since inscription is a Bitcoin/blockchain term and this is a standard LEZ program with PDAs; LP-0022's blockchain-layer testimonials keep "inscription". Co-Authored-By: Claude Sonnet 5 --- prizes/LP-0021.md | 14 ++++++++------ prizes/LP-0022.md | 2 ++ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/prizes/LP-0021.md b/prizes/LP-0021.md index 1b85364..af3617f 100644 --- a/prizes/LP-0021.md +++ b/prizes/LP-0021.md @@ -21,11 +21,11 @@ Logos Execution Zones (LEZ) are the programmable environment where Logos dApps r ### Functionality - [ ] **LEZ assets**: own, send, and receive native and token-program assets on a LEZ zone, for both private and public accounts. -- [ ] **Token program**: own and transfer token-program assets on LEZ, from both public and private accounts. +- [ ] **Token program**: own and transfer fungible token-program assets on LEZ, from both public and private accounts. Non-fungible (NFT) assets are out of scope — see [Out of Scope](#out-of-scope). - [ ] **Multiple accounts (LEZ)**: create and manage multiple accounts on the zone, including both public and private accounts, and switch between them. - [ ] **Developer SDK**: a documented SDK that lets a third-party dApp request account access, read balances/state, and propose transactions against the wallet. - [ ] **Wallet selection & approval flow**: when a dApp requests a connection or a transaction, the user is shown a selection prompt (which account to use) and an approval prompt (what is being signed/sent) before anything is signed or submitted. -- [ ] **Testimonial mini app**: a small reference application, built on the SDK, that lets any user publish a testimonial on the official Logos zone, going through the full connect → account selection → approval → transaction flow. This means **a LEZ smart contract that holds the testimonials**. A testimonial carries custom text, an optional username, and a unique identifier for the given LP submission, so that testimonials can be attributed to the submission that produced them. It serves as the canonical SDK integration example for third-party developers, and is the tool used to produce the on-chain inscriptions in the adoption criteria below. +- [ ] **Testimonial mini app**: a small reference application, built on the SDK, that lets any user publish a testimonial on the official Logos zone, going through the full connect → account selection → approval → transaction flow. This means **a standard LEZ program that stores each testimonial in its own PDA**. A testimonial carries custom text, an optional username, and a unique identifier for the given LP submission, so that testimonials can be attributed to the submission that produced them. It serves as the canonical SDK integration example for third-party developers, and is the tool used to produce the on-chain testimonial PDAs counted in the adoption criteria below. - [ ] **Faucet mini app**: a reference application, built on the SDK, that requests testnet funds from the LEZ faucet, using the SDK to let the user select which account receives them. It must report success/failure and handle faucet rate-limiting gracefully. A wallet that cannot be funded is not usable, so this ships alongside the wallet, not as an afterthought. - [ ] **Testnet 0.3**: the wallet operates end-to-end against the Logos LEZ zone on Logos testnet 0.3. @@ -66,8 +66,8 @@ Logos Execution Zones (LEZ) are the programmable environment where Logos dApps r - [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history: development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. **At least 2 of the applications must be non-trivial**, meaning they exist to do something other than demonstrate the SDK. - [ ] **75 stars** on the wallet repository. -- [ ] **150 on-chain inscriptions** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on the official Logos zone. They must come from **at least 150 distinct accounts**, and accounts with no prior unrelated testnet activity carry little weight. Zones are identified by their sequencer endpoint, not by a number. The official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. -- [ ] **Sustained inscription activity**: the 150 inscriptions must be spread over **at least 2 months**, with **at least 30 new inscriptions in each of those months**. A single burst of activity does not qualify, however large. Inscriptions carry the submission's unique identifier and are timestamped on-chain, so this is verified directly from chain data. +- [ ] **150 on-chain testimonial PDAs** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on the official Logos zone. They must come from **at least 150 distinct accounts**, and accounts with no prior unrelated testnet activity carry little weight. Zones are identified by their sequencer endpoint, not by a number. The official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. +- [ ] **Sustained testimonial activity**: the 150 testimonial PDAs must be spread over **at least 2 months**, with **at least 30 new testimonials in each of those months**. A single burst of activity does not qualify, however large. Each PDA carries the submission's unique identifier and is timestamped on-chain, so this is verified directly from chain data. - [ ] **30 testimonials on Discord** vouching for the wallet. Testimonials should describe what the person actually used the wallet for; account history will be checked. - [ ] **30 testimonials on Twitter/X** vouching for the wallet, subject to the same standard and the same account-history check. Sharing screenshots of the wallet in use is encouraged. @@ -89,6 +89,7 @@ Logos Execution Zones (LEZ) are the programmable environment where Logos dApps r - The Logos blockchain wallet, staking, bridging, and multi-zone/sequencer configuration — covered by [LP-0022](LP-0022.md). - Watch-only addresses — covered by LP-0022. - Designing or implementing the token program itself — the wallet integrates with the existing/reference implementation. +- **Non-fungible (NFT) assets.** The token program covers both fungible and non-fungible assets, but this prize covers fungible token support only; owning, transferring, or displaying NFTs is out of scope. - Hardware wallet integration. - Portfolio analytics, price feeds, or fiat on/off-ramps. - A dApp discovery/marketplace layer beyond the SDK example apps. @@ -105,8 +106,8 @@ Open to any individual or team. Submissions must be original work. Teams must ho ## Submission Requirements - Public repository with the wallet module, SDK, CLI, reference mini apps (testimonial and faucet), and Basecamp app GUI under MIT or Apache-2.0. -- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app, sending/receiving on the LEZ zone, token program usage, adding a watch address (if implemented), and the testimonial mini app performing connect → account selection → approval → inscription via the SDK. (A narrated demo is required for every prize: see [demo requirements](../README.md#evaluation-policies).) -- Evidence for each adoption criterion: links to the 10 third-party SDK apps and their repositories, the wallet repository, the on-chain inscriptions (with the submission identifier and per-month counts so the sustained-activity criterion can be verified), and the Discord and Twitter/X testimonials. +- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app, sending/receiving on the LEZ zone, token program usage, adding a watch address (if implemented), and the testimonial mini app performing connect → account selection → approval → PDA creation via the SDK. (A narrated demo is required for every prize: see [demo requirements](../README.md#evaluation-policies).) +- Evidence for each adoption criterion: links to the 10 third-party SDK apps and their repositories, the wallet repository, the on-chain testimonial PDAs (with the submission identifier and per-month counts so the sustained-activity criterion can be verified), and the Discord and Twitter/X testimonials. - FURPS self-assessment as part of the solution (see [solution template](../solutions/LP-0000.md)). ## Evaluation Process @@ -125,6 +126,7 @@ The following policies apply to all prizes (see [evaluation policies](../README. ## Resources - [Logos Execution Zone repo](https://github.com/logos-blockchain/logos-execution-zone/) +- [LEZ programs repo](https://github.com/logos-blockchain/lez-programs/) — includes the token program - [LP-0013](LP-0013.md) — Token program improvements (authorities) - [LP-0014](LP-0014.md) — Token program improvements (ATAs + wallet tooling) - [LP-0022](LP-0022.md) — Combined blockchain + zone wallet (follow-up) diff --git a/prizes/LP-0022.md b/prizes/LP-0022.md index 1766f27..67fa401 100644 --- a/prizes/LP-0022.md +++ b/prizes/LP-0022.md @@ -94,6 +94,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - The base LEZ wallet, SDK, and single-zone approval flow — covered by [LP-0021](LP-0021.md); this prize assumes that foundation exists and builds on it. - Designing or implementing the bridge or staking protocol itself — the wallet integrates with existing/reference implementations. +- **Non-fungible (NFT) assets.** The token program covers both fungible and non-fungible assets, but this prize covers fungible token support only; owning, transferring, or displaying NFTs is out of scope. - Hardware wallet integration. - Portfolio analytics, price feeds, or fiat on/off-ramps. - A dApp discovery/marketplace layer beyond the SDK example apps. @@ -130,6 +131,7 @@ The following policies apply to all prizes (see [evaluation policies](../README. ## Resources - [Logos Execution Zone repo](https://github.com/logos-blockchain/logos-execution-zone/) +- [LEZ programs repo](https://github.com/logos-blockchain/lez-programs/) — includes the token program - [LP-0021](LP-0021.md) — LEZ zone wallet and SDK (prerequisite) - [LP-0013](LP-0013.md) — Token program improvements (authorities) - [LP-0014](LP-0014.md) — Token program improvements (ATAs + wallet tooling) From 9b213857c92c8588454af249d000f9949347cc12 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 17 Aug 2026 14:54:50 +1000 Subject: [PATCH 15/20] LP-0021, LP-0022: drop redundant "discretionary" framing TERMS.md already establishes the whole program is discretionary (sole discretion over evaluation, winner selection, and award). Calling out "Evaluation is discretionary" per-criterion, and tagging UX quality as "(discretionary)" specifically, wrongly implied other criteria are binding guarantees. Point to TERMS instead and keep the substantive guidance (dimensions considered, anti-Sybil rules). Co-Authored-By: Claude Sonnet 5 --- prizes/LP-0021.md | 4 ++-- prizes/LP-0022.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/prizes/LP-0021.md b/prizes/LP-0021.md index af3617f..37652fc 100644 --- a/prizes/LP-0021.md +++ b/prizes/LP-0021.md @@ -35,7 +35,7 @@ Logos Execution Zones (LEZ) are the programmable environment where Logos dApps r - [ ] Provide a Logos Basecamp app GUI with local build instructions and loadable assets. - [ ] Logos Basecamp modules are published to a module catalog: a fork of [`logos-modules-release-base`](https://github.com/logos-co/logos-modules-release-base), publishing releases via [`logos-modules-release-action`](https://github.com/logos-co/logos-modules-release-action). The catalog's `logos-repo.json` URL must be included in the submission so evaluators can install the module through the package-manager UI / `lgpd`. - [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account, and (for transactions) the asset, amount, and destination. -- [ ] **UX quality (discretionary).** The wallet must be polished, functional, and usable by a non-expert: coherent navigation across accounts, comprehensible transaction previews, and clear error/pending states. This is judged discretionarily rather than against a checklist: evaluators will use the wallet as a normal user would. +- [ ] **UX quality.** The wallet must be polished, functional, and usable by a non-expert: coherent navigation across accounts, comprehensible transaction previews, and clear error/pending states. This is judged against overall impression rather than a checklist: evaluators will use the wallet as a normal user would. ### Reliability @@ -62,7 +62,7 @@ Logos Execution Zones (LEZ) are the programmable environment where Logos dApps r > These metrics measure traction attributable to a given submission for this prize. > -> **All of the following are required in addition to the FURPS criteria above.** Evaluation is **discretionary**: we publish the dimensions we look at, but the final call rests with the evaluators, so that hitting a raw number is not by itself sufficient. Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured (fresh accounts, purchased engagement) does not count, regardless of the headline number. +> **All of the following are required in addition to the FURPS criteria above.** We publish the dimensions we look at, but hitting a raw number is not by itself sufficient (see [Terms & Conditions](../TERMS.md) for the evaluation policy that applies to all prizes). Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured (fresh accounts, purchased engagement) does not count, regardless of the headline number. - [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history: development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. **At least 2 of the applications must be non-trivial**, meaning they exist to do something other than demonstrate the SDK. - [ ] **75 stars** on the wallet repository. diff --git a/prizes/LP-0022.md b/prizes/LP-0022.md index 67fa401..34f9612 100644 --- a/prizes/LP-0022.md +++ b/prizes/LP-0022.md @@ -39,7 +39,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] The SDK continues to be usable by other Logos modules and third-party dApps to query balances, request account access, and request transfers and smart contract interactions, now across the blockchain and multiple zones. - [ ] The Basecamp app GUI and CLI are extended to cover blockchain accounts, staking, bridging, multi-zone/sequencer configuration, and watch addresses. - [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account (including which chain/zone), and (for transactions) the asset, amount, and destination. -- [ ] **UX quality (discretionary).** The extended wallet must remain polished and usable by a non-expert across chains and zones: coherent navigation, comprehensible transaction previews (including bridge and staking flows), and clear error/pending states. This is judged discretionarily rather than against a checklist: evaluators will use the wallet as a normal user would. +- [ ] **UX quality.** The extended wallet must remain polished and usable by a non-expert across chains and zones: coherent navigation, comprehensible transaction previews (including bridge and staking flows), and clear error/pending states. This is judged against overall impression rather than a checklist: evaluators will use the wallet as a normal user would. ### Reliability @@ -67,7 +67,7 @@ Logos' architecture separates a base blockchain from programmable execution zone > These metrics measure traction attributable to a given submission for this prize, incremental to whatever the underlying LP-0021 wallet already accrued. Re-citing LP-0021's numbers does not satisfy this section. > -> **All of the following are required in addition to the FURPS criteria above.** Evaluation is **discretionary**: we publish the dimensions we look at, but the final call rests with the evaluators, so that hitting a raw number is not by itself sufficient. Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured (fresh accounts, purchased engagement) does not count, regardless of the headline number. +> **All of the following are required in addition to the FURPS criteria above.** We publish the dimensions we look at, but hitting a raw number is not by itself sufficient (see [Terms & Conditions](../TERMS.md) for the evaluation policy that applies to all prizes). Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured (fresh accounts, purchased engagement) does not count, regardless of the headline number. - [ ] **5 third-party developers**, independent of each other and of the submitting team, have each shipped a functional application that uses the blockchain, staking, bridging, or multi-zone additions from this prize's SDK extension (not merely the LP-0021 zone SDK). Each app must be publicly hosted on a mainstream forge with a clear, genuine commit history. - [ ] **25 additional stars** on the wallet repository, beyond the count already attributed to LP-0021. From 227ceae8bf023c9a004d5f5939f9f194bdd41261 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 17 Aug 2026 14:55:09 +1000 Subject: [PATCH 16/20] LP-0021: drop non-trivial-app sub-requirement from adoption criteria Co-Authored-By: Claude Sonnet 5 --- prizes/LP-0021.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prizes/LP-0021.md b/prizes/LP-0021.md index 37652fc..524bfa4 100644 --- a/prizes/LP-0021.md +++ b/prizes/LP-0021.md @@ -64,7 +64,7 @@ Logos Execution Zones (LEZ) are the programmable environment where Logos dApps r > > **All of the following are required in addition to the FURPS criteria above.** We publish the dimensions we look at, but hitting a raw number is not by itself sufficient (see [Terms & Conditions](../TERMS.md) for the evaluation policy that applies to all prizes). Evaluators will inspect commit histories and the posting history of vouching accounts. Volume that is clearly manufactured (fresh accounts, purchased engagement) does not count, regardless of the headline number. -- [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history: development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. **At least 2 of the applications must be non-trivial**, meaning they exist to do something other than demonstrate the SDK. +- [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history: development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. - [ ] **75 stars** on the wallet repository. - [ ] **150 on-chain testimonial PDAs** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on the official Logos zone. They must come from **at least 150 distinct accounts**, and accounts with no prior unrelated testnet activity carry little weight. Zones are identified by their sequencer endpoint, not by a number. The official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. - [ ] **Sustained testimonial activity**: the 150 testimonial PDAs must be spread over **at least 2 months**, with **at least 30 new testimonials in each of those months**. A single burst of activity does not qualify, however large. Each PDA carries the submission's unique identifier and is timestamped on-chain, so this is verified directly from chain data. From 9fa1578ce35bc46419dfb85dfc18cc01d4bdea31 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 17 Aug 2026 14:55:34 +1000 Subject: [PATCH 17/20] LP-0021: remove zone-identification aside from adoption criteria Co-Authored-By: Claude Sonnet 5 --- prizes/LP-0021.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prizes/LP-0021.md b/prizes/LP-0021.md index 524bfa4..00f8869 100644 --- a/prizes/LP-0021.md +++ b/prizes/LP-0021.md @@ -66,7 +66,7 @@ Logos Execution Zones (LEZ) are the programmable environment where Logos dApps r - [ ] **10 third-party developers** have each shipped a functional application that uses the wallet SDK. Each app must be publicly hosted on a mainstream forge (GitHub, GitLab, Codeberg, etc.) with a clear, genuine commit history: development spread over time by a real contributor, not a single bulk import. The 10 developers must be independent of each other and of the submitting team. - [ ] **75 stars** on the wallet repository. -- [ ] **150 on-chain testimonial PDAs** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on the official Logos zone. They must come from **at least 150 distinct accounts**, and accounts with no prior unrelated testnet activity carry little weight. Zones are identified by their sequencer endpoint, not by a number. The official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. +- [ ] **150 on-chain testimonial PDAs** reading `I use this wallet` or other custom text, submitted by users through the testimonial mini app on the official Logos zone. They must come from **at least 150 distinct accounts**, and accounts with no prior unrelated testnet activity carry little weight. The official testnet zone is `https://testnet.lez.logos.co` (explorer: `https://explorer.testnet.lez.logos.co/`); the exact endpoint for testnet 0.3 will be confirmed when this prize opens. - [ ] **Sustained testimonial activity**: the 150 testimonial PDAs must be spread over **at least 2 months**, with **at least 30 new testimonials in each of those months**. A single burst of activity does not qualify, however large. Each PDA carries the submission's unique identifier and is timestamped on-chain, so this is verified directly from chain data. - [ ] **30 testimonials on Discord** vouching for the wallet. Testimonials should describe what the person actually used the wallet for; account history will be checked. - [ ] **30 testimonials on Twitter/X** vouching for the wallet, subject to the same standard and the same account-history check. Sharing screenshots of the wallet in use is encouraged. From da4d583cb76b2a226c931e845046c30383025daf Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 17 Aug 2026 14:57:23 +1000 Subject: [PATCH 18/20] LP-0021, LP-0022: remove watch-only addresses from scope Co-Authored-By: Claude Sonnet 5 --- prizes/LP-0021.md | 3 +-- prizes/LP-0022.md | 10 ++++------ 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/prizes/LP-0021.md b/prizes/LP-0021.md index 00f8869..644cd13 100644 --- a/prizes/LP-0021.md +++ b/prizes/LP-0021.md @@ -87,7 +87,6 @@ Logos Execution Zones (LEZ) are the programmable environment where Logos dApps r ### Out of Scope - The Logos blockchain wallet, staking, bridging, and multi-zone/sequencer configuration — covered by [LP-0022](LP-0022.md). -- Watch-only addresses — covered by LP-0022. - Designing or implementing the token program itself — the wallet integrates with the existing/reference implementation. - **Non-fungible (NFT) assets.** The token program covers both fungible and non-fungible assets, but this prize covers fungible token support only; owning, transferring, or displaying NFTs is out of scope. - Hardware wallet integration. @@ -106,7 +105,7 @@ Open to any individual or team. Submissions must be original work. Teams must ho ## Submission Requirements - Public repository with the wallet module, SDK, CLI, reference mini apps (testimonial and faucet), and Basecamp app GUI under MIT or Apache-2.0. -- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app, sending/receiving on the LEZ zone, token program usage, adding a watch address (if implemented), and the testimonial mini app performing connect → account selection → approval → PDA creation via the SDK. (A narrated demo is required for every prize: see [demo requirements](../README.md#evaluation-policies).) +- Narrated video walkthrough demonstrating: key/multi-account setup (including a private LEZ account), funding accounts via the faucet mini app, sending/receiving on the LEZ zone, token program usage, and the testimonial mini app performing connect → account selection → approval → PDA creation via the SDK. (A narrated demo is required for every prize: see [demo requirements](../README.md#evaluation-policies).) - Evidence for each adoption criterion: links to the 10 third-party SDK apps and their repositories, the wallet repository, the on-chain testimonial PDAs (with the submission identifier and per-month counts so the sustained-activity criterion can be verified), and the Discord and Twitter/X testimonials. - FURPS self-assessment as part of the solution (see [solution template](../solutions/LP-0000.md)). diff --git a/prizes/LP-0022.md b/prizes/LP-0022.md index 34f9612..896ca3c 100644 --- a/prizes/LP-0022.md +++ b/prizes/LP-0022.md @@ -12,7 +12,7 @@ dependencies: ## Overview -This prize extends the LEZ-only wallet from [LP-0021](LP-0021.md) into a single wallet experience that manages assets across the Logos blockchain **and** any number of Logos Execution Zones (LEZ): staking, bridging between chain and zones, multi-zone/sequencer configuration, watch-only addresses, and the corresponding SDK and mini-app extensions. +This prize extends the LEZ-only wallet from [LP-0021](LP-0021.md) into a single wallet experience that manages assets across the Logos blockchain **and** any number of Logos Execution Zones (LEZ): staking, bridging between chain and zones, multi-zone/sequencer configuration, and the corresponding SDK and mini-app extensions. ## Motivation @@ -29,7 +29,6 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] **Sequencer configuration**: configure which sequencer endpoint is used per zone, and switch sequencers without losing wallet state. - [ ] **Multiple accounts (blockchain)**: create and manage multiple accounts on the Logos blockchain. - [ ] **Developer SDK extension**: extend the LP-0021 SDK so third-party dApps can request account access, read balances/state, and propose transactions against the Logos blockchain and across multiple configured zones, not just the single zone LP-0021 supported. -- [ ] **Watch addresses**: add a read-only (watch-only) address for the blockchain or a LEZ zone and view its balances/activity without holding its keys. - [ ] **Testimonial mini app extension**: extend the LP-0021 testimonial mini app so it also inscribes on the Logos blockchain, going through the same connect → account selection → approval → transaction flow used for the zone. - [ ] **Faucet mini app extension**: extend the LP-0021 faucet mini app so it also requests testnet funds from the Logos blockchain faucet, using the SDK to let the user select which account receives them. A single app covering both layers is preferred; a separate app is acceptable if the faucet backends differ enough that one flow would be contorted. It must report success/failure per layer and handle faucet rate-limiting gracefully. - [ ] **Testnet 0.3**: the wallet operates end-to-end against Logos testnet 0.3 (blockchain + at least two LEZ zones, to demonstrate multi-zone configuration). @@ -37,13 +36,13 @@ Logos' architecture separates a base blockchain from programmable execution zone ### Usability - [ ] The SDK continues to be usable by other Logos modules and third-party dApps to query balances, request account access, and request transfers and smart contract interactions, now across the blockchain and multiple zones. -- [ ] The Basecamp app GUI and CLI are extended to cover blockchain accounts, staking, bridging, multi-zone/sequencer configuration, and watch addresses. +- [ ] The Basecamp app GUI and CLI are extended to cover blockchain accounts, staking, bridging, and multi-zone/sequencer configuration. - [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account (including which chain/zone), and (for transactions) the asset, amount, and destination. - [ ] **UX quality.** The extended wallet must remain polished and usable by a non-expert across chains and zones: coherent navigation, comprehensible transaction previews (including bridge and staking flows), and clear error/pending states. This is judged against overall impression rather than a checklist: evaluators will use the wallet as a normal user would. ### Reliability -- [ ] Wallet state (keys, accounts, configured zones/sequencers, watch addresses) survives restarts, network drops, and sequencer switches without corruption. +- [ ] Wallet state (keys, accounts, configured zones/sequencers) survives restarts, network drops, and sequencer switches without corruption. - [ ] Bridge and staking operations that fail or are interrupted leave the wallet in a recoverable, clearly-reported state (no silently lost funds or stuck state). - [ ] A dApp cannot sign or submit a transaction, or read a private/shielded account's balance, without an explicit user approval for that account, on any supported chain or zone. - [ ] **No mandatory external services.** Beyond the user's configured sequencer(s) and Logos blockchain node, the wallet must not depend on any third-party web service to function. If one is used (e.g. a price API), then: it is disclosed to the user, the user can disable it, and the wallet remains fully functional with it disabled, with no degraded key management, balances, or transaction flows. This includes analytics servers: if any analytics are collected, they must be strictly opt-in. The wallet must never transmit addresses, balances, or transaction contents to a third party without explicit opt-in. @@ -85,7 +84,6 @@ Logos' architecture separates a base blockchain from programmable execution zone - Staking/unstaking/reward claim flows on the Logos blockchain. - Bidirectional bridge flow between blockchain and zone. - Multi-zone and per-zone sequencer configuration. -- Watch-only addresses (blockchain and LEZ). - Extending the LP-0021 SDK to cover blockchain and multi-zone account-access, state-read, and transaction-proposal APIs. - Extending the LP-0021 testimonial and faucet mini apps to the blockchain layer. - Extending the CLI and Basecamp app GUI to the above. @@ -111,7 +109,7 @@ Open to any individual or team. A submission must build on a merged LP-0021 solu ## Submission Requirements - Public repository with the extended wallet module, SDK, CLI, extended reference mini apps (testimonial and faucet), and Basecamp app GUI under MIT or Apache-2.0. -- Narrated video walkthrough demonstrating: blockchain multi-account setup, funding accounts via the extended faucet mini app on both layers, sending/receiving on the blockchain, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, adding a watch address, and the extended testimonial mini app performing connect → account selection → approval → inscription on the blockchain via the SDK. (A narrated demo is required for every prize: see [demo requirements](../README.md#evaluation-policies).) +- Narrated video walkthrough demonstrating: blockchain multi-account setup, funding accounts via the extended faucet mini app on both layers, sending/receiving on the blockchain, stake/unstake/claim, a full bridge round-trip, adding a second zone with its own sequencer, and the extended testimonial mini app performing connect → account selection → approval → inscription on the blockchain via the SDK. (A narrated demo is required for every prize: see [demo requirements](../README.md#evaluation-policies).) - Evidence for each adoption criterion: links to the 5 third-party SDK apps and their repositories, the wallet repository, the on-chain blockchain inscriptions (with the submission identifier and per-month counts so the sustained-activity criterion can be verified), and the Discord and Twitter/X testimonials. - FURPS self-assessment as part of the solution (see [solution template](../solutions/LP-0000.md)). From 4718cce9d24ca200c818db40096751118f7fb2a9 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 17 Aug 2026 15:06:48 +1000 Subject: [PATCH 19/20] LP-0021, LP-0022: require human-readable decoding of smart-contract calls in approval prompts Cross-referenced against research on existing self-custody wallets (Rabby, MetaMask): decoding what a contract call actually does (balance/approval changes) rather than showing raw calldata is the most-cited defense against drainer and unlimited-approval exploits. The prior wording only required asset/amount/destination for plain transfers, leaving smart-contract interactions (approvals, staking, bridging) undecoded. Co-Authored-By: Claude Sonnet 5 --- prizes/LP-0021.md | 2 +- prizes/LP-0022.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/prizes/LP-0021.md b/prizes/LP-0021.md index 644cd13..cec543b 100644 --- a/prizes/LP-0021.md +++ b/prizes/LP-0021.md @@ -34,7 +34,7 @@ Logos Execution Zones (LEZ) are the programmable environment where Logos dApps r - [ ] Provide a module/SDK usable by other Logos modules and third-party dApps to query balances, request account access, and request transfers and smart contract interactions. - [ ] Provide a Logos Basecamp app GUI with local build instructions and loadable assets. - [ ] Logos Basecamp modules are published to a module catalog: a fork of [`logos-modules-release-base`](https://github.com/logos-co/logos-modules-release-base), publishing releases via [`logos-modules-release-action`](https://github.com/logos-co/logos-modules-release-action). The catalog's `logos-repo.json` URL must be included in the submission so evaluators can install the module through the package-manager UI / `lgpd`. -- [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account, and (for transactions) the asset, amount, and destination. +- [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account, and (for transactions) the asset, amount, and destination. **For smart-contract interactions** (including token approvals), the prompt must show a human-readable summary of the call's effects — assets/approvals granted or moved and to which program/account — not just raw calldata, so the user can catch unexpected outflows or unlimited approvals before signing. - [ ] **UX quality.** The wallet must be polished, functional, and usable by a non-expert: coherent navigation across accounts, comprehensible transaction previews, and clear error/pending states. This is judged against overall impression rather than a checklist: evaluators will use the wallet as a normal user would. ### Reliability diff --git a/prizes/LP-0022.md b/prizes/LP-0022.md index 896ca3c..ab039c3 100644 --- a/prizes/LP-0022.md +++ b/prizes/LP-0022.md @@ -37,7 +37,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] The SDK continues to be usable by other Logos modules and third-party dApps to query balances, request account access, and request transfers and smart contract interactions, now across the blockchain and multiple zones. - [ ] The Basecamp app GUI and CLI are extended to cover blockchain accounts, staking, bridging, and multi-zone/sequencer configuration. -- [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account (including which chain/zone), and (for transactions) the asset, amount, and destination. +- [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account (including which chain/zone), and (for transactions) the asset, amount, and destination. **For smart-contract interactions** (including token approvals, staking, and bridging), the prompt must show a human-readable summary of the call's effects — assets/approvals granted or moved and to which program/account — not just raw calldata, so the user can catch unexpected outflows or unlimited approvals before signing. - [ ] **UX quality.** The extended wallet must remain polished and usable by a non-expert across chains and zones: coherent navigation, comprehensible transaction previews (including bridge and staking flows), and clear error/pending states. This is judged against overall impression rather than a checklist: evaluators will use the wallet as a normal user would. ### Reliability From e5bf8f25fead6a88a7aef112edae6e8df32a3ff7 Mon Sep 17 00:00:00 2001 From: fryorcraken Date: Mon, 17 Aug 2026 15:10:47 +1000 Subject: [PATCH 20/20] LP-0021, LP-0022: note planned program source-verification registry MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A separate, not-yet-written λPrize will cover a registry mapping deployed program bytecode to source. Note it near the smart-contract approval-decoding criterion and in Resources: the wallet MAY use it if available by submission time, but it is not a requirement since the registry LP doesn't exist yet. Co-Authored-By: Claude Sonnet 5 --- prizes/LP-0021.md | 3 ++- prizes/LP-0022.md | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/prizes/LP-0021.md b/prizes/LP-0021.md index cec543b..85e0c6c 100644 --- a/prizes/LP-0021.md +++ b/prizes/LP-0021.md @@ -34,7 +34,7 @@ Logos Execution Zones (LEZ) are the programmable environment where Logos dApps r - [ ] Provide a module/SDK usable by other Logos modules and third-party dApps to query balances, request account access, and request transfers and smart contract interactions. - [ ] Provide a Logos Basecamp app GUI with local build instructions and loadable assets. - [ ] Logos Basecamp modules are published to a module catalog: a fork of [`logos-modules-release-base`](https://github.com/logos-co/logos-modules-release-base), publishing releases via [`logos-modules-release-action`](https://github.com/logos-co/logos-modules-release-action). The catalog's `logos-repo.json` URL must be included in the submission so evaluators can install the module through the package-manager UI / `lgpd`. -- [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account, and (for transactions) the asset, amount, and destination. **For smart-contract interactions** (including token approvals), the prompt must show a human-readable summary of the call's effects — assets/approvals granted or moved and to which program/account — not just raw calldata, so the user can catch unexpected outflows or unlimited approvals before signing. +- [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account, and (for transactions) the asset, amount, and destination. **For smart-contract interactions** (including token approvals), the prompt must show a human-readable summary of the call's effects — assets/approvals granted or moved and to which program/account — not just raw calldata, so the user can catch unexpected outflows or unlimited approvals before signing. A separate λPrize for a program source-verification registry (bytecode-to-source, not yet written) is planned; if available by the time of submission, the wallet MAY use it to show verified source for a program being called, but this is not required. - [ ] **UX quality.** The wallet must be polished, functional, and usable by a non-expert: coherent navigation across accounts, comprehensible transaction previews, and clear error/pending states. This is judged against overall impression rather than a checklist: evaluators will use the wallet as a normal user would. ### Reliability @@ -129,6 +129,7 @@ The following policies apply to all prizes (see [evaluation policies](../README. - [LP-0013](LP-0013.md) — Token program improvements (authorities) - [LP-0014](LP-0014.md) — Token program improvements (ATAs + wallet tooling) - [LP-0022](LP-0022.md) — Combined blockchain + zone wallet (follow-up) +- A λPrize for a program source-verification registry (bytecode-to-source) is planned but not yet written. If it lands before this prize is submitted, the wallet MAY use it to show verified source for called programs; not a requirement. ## Potential for Subsequent λ Prizes diff --git a/prizes/LP-0022.md b/prizes/LP-0022.md index ab039c3..5a53a7f 100644 --- a/prizes/LP-0022.md +++ b/prizes/LP-0022.md @@ -37,7 +37,7 @@ Logos' architecture separates a base blockchain from programmable execution zone - [ ] The SDK continues to be usable by other Logos modules and third-party dApps to query balances, request account access, and request transfers and smart contract interactions, now across the blockchain and multiple zones. - [ ] The Basecamp app GUI and CLI are extended to cover blockchain accounts, staking, bridging, and multi-zone/sequencer configuration. -- [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account (including which chain/zone), and (for transactions) the asset, amount, and destination. **For smart-contract interactions** (including token approvals, staking, and bridging), the prompt must show a human-readable summary of the call's effects — assets/approvals granted or moved and to which program/account — not just raw calldata, so the user can catch unexpected outflows or unlimited approvals before signing. +- [ ] Account selection and transaction approval prompts clearly identify the requesting dApp, the target account (including which chain/zone), and (for transactions) the asset, amount, and destination. **For smart-contract interactions** (including token approvals, staking, and bridging), the prompt must show a human-readable summary of the call's effects — assets/approvals granted or moved and to which program/account — not just raw calldata, so the user can catch unexpected outflows or unlimited approvals before signing. A separate λPrize for a program source-verification registry (bytecode-to-source, not yet written) is planned; if available by the time of submission, the wallet MAY use it to show verified source for a program being called, but this is not required. - [ ] **UX quality.** The extended wallet must remain polished and usable by a non-expert across chains and zones: coherent navigation, comprehensible transaction previews (including bridge and staking flows), and clear error/pending states. This is judged against overall impression rather than a checklist: evaluators will use the wallet as a normal user would. ### Reliability @@ -133,6 +133,7 @@ The following policies apply to all prizes (see [evaluation policies](../README. - [LP-0021](LP-0021.md) — LEZ zone wallet and SDK (prerequisite) - [LP-0013](LP-0013.md) — Token program improvements (authorities) - [LP-0014](LP-0014.md) — Token program improvements (ATAs + wallet tooling) +- A λPrize for a program source-verification registry (bytecode-to-source) is planned but not yet written. If it lands before this prize is submitted, the wallet MAY use it to show verified source for called programs; not a requirement. ## Potential for Subsequent λ Prizes