Public Blockfrost prerequisites forbid the mnemonic and VDR key the driver requires
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 74/100
- Tipo di issue
- Documentazione
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Ambito
- documentation
Direzione di ricerca
Inizia da documentation/develop/cloud-agent/environment-variables.md alle righe 68, 99, 107 e 109, poi confronta i prerequisiti con le versioni fissate di cloud-agent AppConfig.scala e BlockfrostPrismDriverProvider.scala citate nell’issue. Aggiorna il riferimento alle variabili d’ambiente in modo che corrisponda a entrambi i percorsi di abilitazione di NeoPRISM e ai requisiti di firma PRISM, inclusa l’esclusione della rete privata e della chiave API. Il lavoro è completato quando ogni affermazione corrisponde al comportamento della configurazione e del provider, senza richiedere credenziali o servizi attivi.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
User impact
The environment reference tells operators using a public Blockfrost API key to leave VDR_PRISM_DRIVER_WALLET_MNEMONIC and VDR_PRISM_DRIVER_VDR_PRIVATE_KEY unset. Both are mandatory in the pinned configuration and are consumed on exactly the public-API-key branch, so an operator who follows the table cannot configure a public-Blockfrost PRISM VDR consistently: omitting them leaves required configuration absent, and supplying them contradicts the reference. vdr.md on the same portal requires both values for both network modes, so the two pages disagree. A related row also understates when NEOPRISM_BASE_URL matters.
Affected documentation and ownership
- Page: https://identus.io/documentation/develop/cloud-agent/environment-variables/ — GET 200 after trailing-slash resolution,
Last-Modified: Tue, 27 Oct 2026 12:51:14 GMT, observed 2026-10-29T10:22Z. - Documentation source: environment-variables.md lines 107 and 109, plus line 68 and line 99, revision
fa985dfa33caefa45bf1e9009e1f6f5a445344fb. - Editable owning source: the same Markdown file (ordinary committed source, not generated).
- Intended component version: Identus Cloud Agent
2.2.1-SNAPSHOT. The docs revision pins itscloud-agentsubmodule ateee1ff7, whoseversion.sbtandapplication.confare identical to the comparison revision24faccbelow; thecomparecontains only CI-workflow and client-generator lockfile changes. These unversioned pages document that main configuration.
Observed versus expected
Documented rows:
107: | VDR_PRISM_DRIVER_VDR_PRIVATE_KEY | VDR private key for the Prism driver. Must not be present if Blockfrost API key is provided. |
109: | VDR_PRISM_DRIVER_WALLET_MNEMONIC | Wallet mnemonic phrase for DID configuration in the Prism driver. Must not be present if Blockfrost API key is provided. |
Pinned code:
PrismDriverVdrConfigdeclareswalletMnemonic: StringandvdrPrivateKey: String(notOption); itsvalidateonly rejectsblockfrostApiKeytogether withprivateNetwork— the two network options, nothing about the signing fields.BlockfrostPrismDriverProviderbuildsCardanoWalletConfig(config.walletMnemonic)andSecp256k1PrivateKey(config.vdrPrivateKey)after the network branch, i.e. also forSome(apiKey)/public Blockfrost.application.confsupplies no literal default for either variable (lines 348–351), so "not present" is not a supported state.- The same portal's
vdr.mdPRISM Driver section marks both variables✅ Yesfor the public-Blockfrost example, which is the correct requirement.
Related row: NEOPRISM_BASE_URL (line 68) says "Only required when NODE_BACKEND is set to neoprism", while VDR_NEOPRISM_DRIVER_ENABLED (line 99) requires it to be configured and the NeoPRISM VDR client is built independently of the DID node backend (Modules.scala#L185-L189, consuming didNode.neoprism.baseUrl at Modules.scala#L216-L229). Note that application.conf also supplies the default http://localhost:8080 (line 16), so the requirement is about the effective endpoint, not about the variable always being set. The same wording appears in node-backend.md line 47; this issue covers the environment-reference rows, and the node-backend wording is reported separately so both files can be repaired consistently.
Expected: prerequisite statements match the typed configuration and every code path that consumes the values.
Evidence and reproduction
Static comparison at the revisions above, observed 2026-10-29:
gh api repos/hyperledger-identus/docs/contents/documentation/develop/cloud-agent/environment-variables.md \
-q .content | base64 -d | sed -n '68p;99p;107p;109p'
grep -rn "walletMnemonic\|vdrPrivateKey" --include=*.scala .
grep -n "VDR_PRISM_DRIVER_WALLET_MNEMONIC\|VDR_PRISM_DRIVER_VDR_PRIVATE_KEY\|NEOPRISM_BASE_URL" \
cloud-agent/service/server/src/main/resources/application.conf
Limitations: static inspection only. No agent, ledger or Blockfrost service was contacted, and no mnemonic or private key was used; the contradiction is established from the configuration schema and the provider code, not from a live start.
Existing work checked
GitHub issue/PR search across hyperledger-identus/docs and hyperledger-identus/cloud-agent, open and closed (2026-10-29):
VDR_PRISM_DRIVER_WALLET_MNEMONIC→ 0 results;VDR_PRISM_DRIVER_VDR_PRIVATE_KEY→ 0 results;NEOPRISM_BASE_URL→ 0 results;Blockfrost configuration→ 0 results indocs.VDR driverindocs→ docs#230 (open milestone checklist, no prerequisite wording), docs#247 (merged: added the VDR driver documentation), docs#241, docs#228 (closed). None covers the Blockfrost signing prerequisites.
Acceptance criteria
- The public/private Blockfrost prerequisites no longer forbid fields the driver requires, and the private-network/API-key mutual exclusion is stated accurately.
- The
NEOPRISM_BASE_URLrequirement reflects both enabling paths (DID node backend and independently enabled NeoPRISM VDR) and the existing default. - Verification: corrected statements traceable to the same revision's
AppConfig/provider code, without requiring real mnemonics, private keys or ledger operations.
- Lingua principale
- TypeScript
- Stelle
- 15
- Fork
- 8
- Merge medio
- 3g 14h
- PR unite (30g)
- 2
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di hyperledger-identus/docs
-
bug documentation
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
hyperledger-identus/docs#303 ·
-
bug documentation
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
hyperledger-identus/docs#302 ·
-
bug documentation
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
hyperledger-identus/docs#301 ·
-
bug documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
hyperledger-identus/docs#299 ·
-
bug documentation
Difficoltà 1/5 1-3 ore Idoneità per principianti 84/100
hyperledger-identus/docs#297 ·
Tutte le issue di hyperledger-identus/docs
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
CopilotKit/openmuse#215 ·
I maintainer di solito rispondono entro 3 giorni
-
b:minor bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
software-mansion/argent#1698 ·
I maintainer di solito rispondono entro 1 giorno
-
e2e-failure ready-to-code
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
redhat-developer/rhdh-plugin-export-overlays#4624 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno