Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
3c4e8f7
Token launchpads and vesting
fryorcraken Mar 27, 2026
db8684e
define all the way to mainnet
fryorcraken Apr 1, 2026
02f55f9
improve motivation sections
fryorcraken Apr 1, 2026
b8b2d01
reduce content
fryorcraken Apr 1, 2026
6ecf256
reduce content
fryorcraken Apr 1, 2026
dafb347
fix sources
fryorcraken Apr 1, 2026
a00d3b2
open RFP
fryorcraken Apr 1, 2026
9f23fef
remove vesting
fryorcraken Apr 1, 2026
d16af8f
remove blocke
fryorcraken Apr 1, 2026
edc2e64
move curve formula to a recommendation
fryorcraken Apr 1, 2026
54885a3
tokens go to token vesting at end of sale
fryorcraken Apr 1, 2026
8337c74
creator collateral vesting option is a hard requirement
fryorcraken Apr 1, 2026
acba292
clarify rounding
fryorcraken Apr 1, 2026
2ab5814
make time closure a hard requirement
fryorcraken Apr 1, 2026
8d00bfd
request documentation of privacy and anonymity properties
fryorcraken Apr 2, 2026
2b43459
add per block sales limit
fryorcraken Apr 2, 2026
2ffa328
fix sale reserve maths
fryorcraken Apr 2, 2026
7a6af3f
fix Vt
fryorcraken Apr 2, 2026
f0c555d
refund
fryorcraken Apr 2, 2026
f818748
Remove refund
fryorcraken Apr 2, 2026
2f1da2f
use trading volume, not TVL
fryorcraken Apr 2, 2026
c3ac0e6
start appendix
fryorcraken Apr 7, 2026
46f73e6
address PR #24 review comments: fee structure, allowlist privacy, LBP…
fryorcraken Apr 7, 2026
c34d995
lbp: ensure all claims and design choicesare supported
fryorcraken Apr 8, 2026
df4e925
ignore llm files
fryorcraken Apr 8, 2026
1fc7303
bonding curve: ensure all claims are backed
fryorcraken Apr 8, 2026
6464fbd
RFP-001 & RFP-002: ask for libraries, not PoCs
fryorcraken Mar 31, 2026
69b0b5e
match to template
fryorcraken Mar 31, 2026
69eb7d7
freeze per account
fryorcraken Apr 1, 2026
00111aa
RFP-18: Tiered Sale Launchpad
fryorcraken Apr 8, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,6 @@
.obsidian/
CLAUDE.md
research/
agents/
scripts/
templates/
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,10 +58,12 @@ Click an RFP to view details. Use the Submit Proposal button to apply.
<!-- RFP_TABLE_START -->
| ID | Title | Tier | Funding | Status | Category | Submit Proposal |
|---------|----------------------------------------------------------------------------|------|---------|--------|------------------------------------|-------------------------------------------------------------------------------------|
| RFP-001 | [Admin Authority](RFPs/RFP-001-admin-authority-poc.md) | XS | $XXXXX | open | Developer Tooling & Infrastructure | [Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml) |
| RFP-002 | [Freeze Authority](RFPs/RFP-002-freeze-authority-poc.md) | XS | $XXXXX | open | Developer Tooling & Infrastructure | [Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml) |
| RFP-003 | [Atomic Swaps with LEZ](RFPs/RFP-003-atomic-swaps.md) | XL | $TBD | open | Applications & Integrations | [Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml) |
| RFP-001 | [Admin Authority Library](RFPs/RFP-001-admin-authority-lib.md) | XS | $XXXXX | open | Developer Tooling & Infrastructure | [Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml) |
| RFP-002 | [Freeze Authority Library](RFPs/RFP-002-freeze-authority-lib.md) | XS | $XXXXX | open | Developer Tooling & Infrastructure | [Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml) |
| RFP-003 | [Atomic Swaps with LEZ](RFPs/RFP-003-atomic-swaps.md) | XL | $TBD | draft | Applications & Integrations | |
| RFP-004 | [Privacy-Preserving DEX](RFPs/RFP-004-privacy-preserving-dex.md) | XL | $XXXXX | open | Applications & Integrations | [Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml) |
| RFP-015 | [Token Launchpad: Bonding Curve](RFPs/RFP-015-bonding-curve-launchpad.md) | L | $XXXXX | open | Applications & Integrations | [Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml) |
| RFP-016 | [Token Launchpad: LBP](RFPs/RFP-016-lbp-launchpad.md) | XL | $XXXXX | open | Applications & Integrations | [Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml) |
| RFP-008 | [Lending & Borrowing Protocol](RFPs/RFP-008-lending-borrowing-protocol.md) | XL | $XXXXX | open | Applications & Integrations | [Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml) |
| RFP-012 | [Advanced Lending Features](RFPs/RFP-012-advanced-lending-features.md) | L | $XXXXX | open | Applications & Integrations | [Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml) |
<!-- RFP_TABLE_END -->
Expand Down
7 changes: 7 additions & 0 deletions RFPs/RFP-000-template.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,13 @@ Standard requirements (adapt as needed):
5. A README documents end-to-end usage: deployment steps, program
addresses, and step-by-step instructions for interacting with the
program via CLI and mini-app.
6. Provide a privacy and anonymisation properties document covering:
what on-chain state and transaction data is visible to observers;
what data is protected when the private account path is used;
trust assumptions, specifying which guarantees are enforced by
the on-chain program and which depend on correct client
behaviour; and what happens if a user bypasses the expected
interaction path.

### Soft Requirements

Expand Down
113 changes: 113 additions & 0 deletions RFPs/RFP-001-admin-authority-lib.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
---
id: RFP-001
title: Admin Authority Library
tier: XS
funding: $XXXXX
status: open
category: Developer Tooling & Infrastructure
---


# RFP-001 — Admin Authority Library

## 🧭 Overview

Build a reusable library that provides standardised access control for LEE
programs, where privileged functions, including the ability to transfer or
renounce authority, can only be called by an admin authority.

The library must be integrated into the SPEL framework and ship with
documentation and usage examples so teams can enable the pattern with
minimal boilerplate.

## 🔥 Why This Matters

As the Logos ecosystem grows, programs deployed on LEZ need foundational
security primitives from day one. Without standardised access control,
every team must design their own — leading to inconsistent implementations,
duplicated effort, and a higher risk of critical vulnerabilities.

Delivering this as a shared library lowers the barrier for developers building
on LEE. Teams can focus on application logic rather than re-inventing admin
authority patterns, accelerating the pace at which new programs ship.

## ✅ Scope of Work

### Hard Requirements

#### Functionality

1. Admin authority is set at program initialisation.
2. Admin authority can transfer admin authority to a new signer.
3. Admin authority can revoke admin authority, effectively renouncing
admin control.
4. Admin authority is the only one that can call privileged instructions
exposed by the library (demonstrated via a gated `config` PDA update).

#### Usability

1. The library is integrated into the [SPEL framework](https://github.com/logos-co/spel)
so that programs using SPEL can enable admin authority with minimal
boilerplate — ideally a single annotation or configuration flag.
2. There can only be one admin authority (signer) at a time.
3. Documentation includes at least one end-to-end usage example showing
how a SPEL program gates its own instructions behind the admin authority.

#### Performance

No compute budget constraints are expected for this library. Document the
additional transaction size overhead introduced by the admin authority
check on any gated instruction.

#### Supportability

1. CI must be green on the default branch.
2. Every hard requirement in Functionality, Usability, and Reliability has
at least one corresponding test.
3. A README documents how to add the library as a dependency and integrate
it into a SPEL program, including a step-by-step example.
4. A sample program that imports the library is included to validate the
integration path and serve as a reference for consumers.

### Soft Requirements

If possible.

#### Reliability

1. Admin authority can only be set to a valid new signer (on-curve key
or deployed PDA), when set or initialised.

## 👤 Recommended Team Profile

Developer experienced with:

- Solana or SVM program development (Anchor or native)
- Access control and authority patterns in on-chain programs
- PDA derivation and account validation
- Writing and running on-chain tests (e.g. Bankrun, Anchor tests)
- Library/crate packaging and documentation

## ⏱ Timeline Expectations

Estimated duration: **4 weeks**


## 🌍 Open Source Requirement

All code must be released under the **MIT+Apache2.0 License**.


## Resources

- [SPEL framework](https://github.com/logos-co/spel)
- TODO: LEE official doc

## ✏️ How to Apply

👉 Submit a proposal using the Issue form:

**[Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml)**

We typically respond within **14 days**. For clarification questions,
please use **Discussions**.
94 changes: 0 additions & 94 deletions RFPs/RFP-001-admin-authority-poc.md

This file was deleted.

123 changes: 123 additions & 0 deletions RFPs/RFP-002-freeze-authority-lib.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
---
id: RFP-002
title: Freeze Authority Library
tier: XS
funding: $XXXXX
status: open
category: Developer Tooling & Infrastructure
---


# RFP-002 — Freeze Authority Library

## 🧭 Overview

Build a reusable library that provides a standardised freeze mechanism for
LEE programs, allowing an authorised account to disable all (or selected)
interactions as a circuit breaker when an issue is discovered.

The library must be integrated into the SPEL framework and ship with
documentation and usage examples so teams can enable the pattern with
minimal boilerplate.

## 🔥 Why This Matters

As the Logos ecosystem grows, programs deployed on LEZ need foundational
security primitives from day one. Without a standardised emergency stop
mechanism, every team must design their own — leading to inconsistent
implementations, duplicated effort, and a higher risk of critical
vulnerabilities.

Delivering this as a shared library lowers the barrier for developers
building on LEE. Teams can focus on application logic rather than
re-inventing freeze patterns, accelerating the pace at which new programs
ship. As more programs begin handling real value, the ability to freeze a
compromised program is the difference between a contained incident and a
catastrophic loss.

## ✅ Scope of Work

### Hard Requirements

#### Functionality

1. Freeze authority can be set at program initialisation.
2. Freeze authority can be changed by admin authority.
3. Freeze authority can freeze the program, rejecting any attempt to interact
with it; apart from unfreezing or changing the freeze authority.
4. Freeze authority can un-freeze the program, re-enabling interactions.
5. Freeze authority can be revoked by admin authority.
6. Freeze authority can freeze a specific account by `AccountId`, preventing
it from interacting with the program while leaving the rest of the program
operational.
7. Freeze authority can un-freeze a specific account, re-enabling its
interactions with the program.

#### Usability

1. The library is integrated into the [SPEL framework](https://github.com/logos-co/spel)
so that programs using SPEL can enable freeze authority with minimal
boilerplate — ideally a single annotation or configuration flag.
2. There can only be one freeze authority (signer) at a time.
3. Documentation includes at least one end-to-end usage example showing
how a SPEL program integrates the freeze check.

#### Performance

No compute budget constraints are expected for this library. Document the
additional transaction size overhead introduced by the freeze check on any
gated instruction.

#### Supportability

1. CI must be green on the default branch.
2. Every hard requirement in Functionality, Usability, and Reliability has
at least one corresponding test.
3. A README documents how to add the library as a dependency and integrate
it into a SPEL program, including a step-by-step example.
4. A sample program that imports the library is included to validate the
integration path and serve as a reference for consumers.

### Soft Requirements

If possible.

#### Reliability

1. Freeze authority can only be set to a valid new signer (on-curve key
or deployed PDA), when set or initialised.


## 👤 Recommended Team Profile

Developer experienced with:

- Solana or SVM program development (Anchor or native)
- Access control and authority patterns in on-chain programs
- PDA derivation and account validation
- Writing and running on-chain tests (e.g. Bankrun, Anchor tests)
- Library/crate packaging and documentation

## ⏱ Timeline Expectations

Estimated duration: **4 weeks**


## 🌍 Open Source Requirement

All code must be released under the **MIT+Apache2.0 License**.


## Resources

- [SPEL framework](https://github.com/logos-co/spel)
- TODO: LEE official doc

## ✏️ How to Apply

👉 Submit a proposal using the Issue form:

**[Submit Proposal](https://github.com/logos-co/rfp/issues/new?template=proposal.yml)**

We typically respond within **14 days**. For clarification questions,
please use **Discussions**.
Loading