bos-auth: 02 gasless wallet publish — bos publish --wallet via NEP-366 relayer
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- typescript
- Domain
- backend-api-design, blockchain, cli
Research direction
Start with the wallet/session surface from #288, then trace the existing bos publish key-based flow and ephemeral relayer configuration. Map where the FastKV config and deploy manifest writes are assembled, and verify the acceptance criteria: one wallet approval, atomic writes, confirmation payload equality, sized relayer limits, and unchanged NEAR_PRIVATE_KEY behavior.
Written by the indexing model from the issue text.
Description
Sprout of #274 (v2 platform services spec); mirrors #282 (gasless publish) with the deploy-service write-back chain decoupled. Built after #288 so the wallet/session surface exists.
What to build
bos publish --wallet submits the FastKV config write as a gasless NEP-366 delegate action through the existing ephemeral relayer:
- Whitelist the FastKV registry contract in the relayer config and size gas/deposit for ~10 KB config writes.
- Build the delegate action for
set_valuesof the config key and the per-deploy manifest key atomically in one transaction — the on-chain ledger mirror of the deploy-service records rides the same write. - Confirmation loop re-reads the registry and verifies payload equality (same semantics as the current key-based publish flow).
- The existing local-key publish path stays byte-compatible for CI/agents —
--walletis additive, never a replacement.
Acceptance criteria
- A human publishes a config to testnet FastKV with one wallet approval and zero locally-stored keys
- The relayer whitelist covers the FastKV registry contract with sized gas/deposit limits
- Config key + deploy manifest key are written atomically
- Confirmation re-read verifies payload equality
- The existing
NEAR_PRIVATE_KEYpublish path still works unchanged - Failure leaves no partial on-chain state (atomic delegate action)
Blocked by
- #288 (bos login — the wallet/session surface)
- Dominant language
- TypeScript
- Stars
- 5
- Forks
- 6
- Avg merge
- 1m
- Merged PRs (30d)
- 1
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from NEARBuilders/everything-dev
-
ready-for-agent
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
NEARBuilders/everything-dev#251 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
NEARBuilders/everything-dev#243 ·
-
ready-for-agent
Difficulty 5/5 Over a week Newbie friendliness 35/100
NEARBuilders/everything-dev#291 ·
-
ready-for-agent
NEARBuilders/everything-dev#288 · 2 comments · 1 assignee ·
-
ready-for-agent
Difficulty 5/5 Over a week Newbie friendliness 25/100
NEARBuilders/everything-dev#287 ·
All issues in NEARBuilders/everything-dev
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug clawsweeper:linked-pr-open clawsweeper:needs-live-repro clawsweeper:no-new-fix-pr impact:message-loss issue-rating: 🐚 platinum hermit P2 regression
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
calcite-components needs triage refactor
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Esri/calcite-design-system#15203 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
danielmiessler/LifeOS#2218 ·