2.2 KiB
ksp-program-api
ksp-program-api est la façade publique ouverte du domaine Program KSP. Elle est destinée aux implémentations officielles futures comme aux crates Program externes et ne possède pas les implémentations concrètes.
La tranche initiale 0.2.14-pre.002 matérialise uniquement le scaffold et les types déjà possédés par les couches fondatrices. Aucun trait decoder n'est encore publié.
Ownership
La crate dépend uniquement de :
ksp-program-api
├── ksp-core-lib
└── ksp-interface-lib
└── ksp-core-lib
Core reste propriétaire de :
Error
ErrorCode
ErrorContext
Result
Pubkey
Interface reste propriétaire de :
ProgramAccountMeta
ProgramInstruction
ksp-program-api les réexporte depuis son crate-root pour offrir une façade de consommation stable sans dupliquer leurs types ni transférer leur ownership.
Surface de scaffold
La façade pre.002 expose exactement :
Error
ErrorCode
ErrorContext
Result
Pubkey
ProgramAccountMeta
ProgramInstruction
Aucun module interne n'est public.
Les contrats suivants restent réservés aux tranches suivantes :
ProgramInstructionRecognition pre.003
ProgramInstructionDecodeOutcome<T> pre.003
ProgramInstructionDecoder pre.004
Frontières
La foundation ne contient pas :
ksp-program-lib
registry runtime
identity/version/coverage de decoder
payload canonique D3
ProgramAccountDecoder
ProgramEventDecoder
ProgramReturnDataDecoder
ProgramExecutionPreparer
serde / serde_json
borsh / wincode / bincode
solana-instruction
network / async runtime
logging / tracing
Wallet / Transport / Store / Materializer / Config / Tauri
L'absence de ces surfaces est volontaire : ksp-program-api reste une API déclarative, ouverte et indépendante des implémentations/runtime supérieurs.