Skip to content

Releases: mmlado/spel-admin-authority

v0.1.3

Choose a tag to compare

@mmlado mmlado released this 12 Sep 05:16
11912be

Changed

  • Pin spel-framework to upstream logos-co/spel, at the commit that merged the extension mechanism (logos-co/spel#257). The samples move to LEZ v0.2.4 with it.
  • Pin spel-authority by its v0.1.1 tag.

Full changelog: v0.1.2...v0.1.3

v0.1.2

Choose a tag to compare

@mmlado mmlado released this 24 Aug 15:18
412de83

Changed

  • Pin spel-authority by its v0.1.0 tag, same content as the settle rev, so a consumer using both authority extensions resolves one copy of the crate.

v0.1.1

Choose a tag to compare

@mmlado mmlado released this 21 Aug 05:07
3397373

Changed

  • The samples' gated fns take their injected params instead of declaring them.
  • Versions inherit from the workspace, the samples move in lockstep with the libraries.
  • The audit policy lives at .cargo/audit.toml, the location cargo-audit reads.

v0.1.0

Choose a tag to compare

@mmlado mmlado released this 19 Aug 11:48
3457437

First release.

Added

  • Three management instructions: admin_initialize creates the Config PDA and installs the caller by self-election, admin_transfer hands the role to a new signer or PDA with candidate validation, and admin_renounce zeroes the admin permanently with no recovery path by design.
  • The #[require_admin] gate: consumers annotate instructions, the framework injects the config and caller params unless already declared, and the check rejects a non-admin caller before the handler runs. Param names are overridable by kwarg, and an alignment self-test keeps the macro's kwargs and the inject metadata from drifting.
  • Embedded mode: the AdminConfig slot can live inside one of the consumer's own accounts at a declared byte offset instead of a dedicated PDA. The #[admin_slot] field marker keeps the layout honest, the consumer's account-creating instruction carries the bootstrap so the slot is born initialized in the transaction that creates the account, and a program whose slot would ship born renounced refuses to compile. Offsets compile into the program and never appear in the IDL or a transaction.
  • Three consumer samples: the plain integration, a manual integration without the marker, and the embedded layout.
  • Contract tests, IDL pin tests resolving the sample's own dependency graph, dry-run byte compares in CI, and fixture jobs running --locked.
  • Docs packet: CONTEXT.md vocabulary, the account model and authority lifecycle, and ADRs for every design decision.

The spel-framework dependency pins a fork revision for now. Version 1.0.0 lands when the extension mechanism reaches an upstream release (logos-co/spel#257) and the pin moves to it.