Skip to content

Releases

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 16 Oct 22:45
v0.2.0
0a1229f

What's Changed

  • docs: state the first release and the found cause of the Windows module by @lusoris in #7
  • chore: configure the update bot with the family preset and license its file by @lusoris in #9
  • fix: skip the module byte comparison on a macOS host under the dated entry by @lusoris in #12
  • chore(deps): update rust crate thiserror to v2.0.21 by @renovate[bot] in #10
  • chore: name the shared CI repository by its new address in the update bot file by @lusoris in #13
  • ci: build the gate engine from Praetor 6622361940dc by @lusoris in #14
  • test: fail a Go test whose engine does not close cleanly by @lusoris in #15
  • ci: build the gate engine from Praetor 3bbde07342bd and scan for secrets by @lusoris in #16
  • test: plant a defect for every gate check that was never seen failing by @lusoris in #17
  • test: hold the checkpoint hook scripts to the pinned engine and its tests by @lusoris in #18
  • ci: hold changed settings to their source on the pull request by @lusoris in #19
  • test: hold the wasm crate's public pieces and the Go engine's edges directly by @lusoris in #20
  • test: compile and run the README's Go blocks in a consumer module by @lusoris in #22
  • test: replay a chain the v0.1.0 module stored by @lusoris in #23
  • test: hold a trap of the module to a blocked engine by @lusoris in #24
  • ci: hold the Go that runs the binding's tests to its declared minimum by @lusoris in #26
  • test: hold the two modes to their speed and their architectures by @lusoris in #27
  • ci: pack the library crate in the gate as the release does by @lusoris in #25
  • chore(deps): update rust crate serde_json to v1.0.152 by @renovate[bot] in #21
  • ci: declare the pinned toolchain as the workspace rust-version by @lusoris in #28
  • feat: adopt the Praetor docs:seo-portal facet by @lusoris in #30
  • feat: compare the committed module up to function order by @lusoris in #31
  • ci: build the gate engine from Praetor 82cd4ed60de9 by @lusoris in #33
  • chore: extend the public horistes presets in renovate.json by @lusoris in #34
  • chore(agents): give the engine personas their model tier by @lusoris in #36
  • chore: take Rust 1.99.0 from the settings source by @lusoris in #37
  • chore(deps): update rust crate wasmparser to v0.261.0 by @renovate[bot] in #32
  • fix: drop milestone and decision numbers from crate sources by @lusoris in #38
  • chore(deps): update rust crate wasmparser to v0.262.0 by @renovate[bot] in #40
  • chore(deps): update rust crate serde_json to v1.0.154 by @renovate[bot] in #35
  • chore(deps): update rust crate sha2 to v0.11.1 by @renovate[bot] in #39
  • ci: regenerate the module and notices on dependency updates by @lusoris in #41
  • ci(release): read the files back with the shared read-back by @lusoris in #42
  • chore(deps): update dependency sigstore/cosign to v2.6.5 by @renovate[bot] in #43
  • chore(deps): update dependency sigstore/cosign to v3 by @renovate[bot] in #44
  • ci: lint the Go binding with golangci-lint and its complexity checks by @lusoris in #45
  • ci: run semgrep and trivy in the gate with planted findings by @lusoris in #46
  • refactor(tools): share the check helpers in one module by @lusoris in #50
  • ci: keep the semgrep lock coherent by @lusoris in #53
  • ci: give gosec its pinned configuration and clear its findings by @lusoris in #54
  • ci(release): publish both crates to crates.io and tag the Go module by @lusoris in #56
  • ci: hold the semgrep interpreter at the newest Python semgrep supports by @lusoris in #57
  • chore(exceptions): name the measured cause of the Windows module gap by @lusoris in #58
  • chore: pin the Praetor engine for hooks and CI, refresh adopted files by @lusoris in #59
  • test: adopt cargo-mutants on changed code and close the survivors by @lusoris in #60
  • refactor(tests): read the dependency closure through cargo_metadata by @lusoris in #61
  • ci(semgrep): write the lock header in the form Renovate parses by @lusoris in #62
  • ci: hold the public Rust API to the last release with cargo-semver-checks by @lusoris in #63
  • build(wasm): build the Windows data section, retire its exception by @lusoris in #64
  • chore: take Rust 1.99.1 from the settings source by @lusoris in #66
  • chore(release): set the workspace version to 0.2.0 by @lusoris in #65
  • fix(release): fetch the crates of every platform before the module check by @lusoris in #67

New Contributors

Full Changelog: v0.1.0...v0.2.0

v0.2.0-rc.1

v0.2.0-rc.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Oct 22:39
v0.2.0-rc.1
0a1229f

What's Changed

  • docs: state the first release and the found cause of the Windows module by @lusoris in #7
  • chore: configure the update bot with the family preset and license its file by @lusoris in #9
  • fix: skip the module byte comparison on a macOS host under the dated entry by @lusoris in #12
  • chore(deps): update rust crate thiserror to v2.0.21 by @renovate[bot] in #10
  • chore: name the shared CI repository by its new address in the update bot file by @lusoris in #13
  • ci: build the gate engine from Praetor 6622361940dc by @lusoris in #14
  • test: fail a Go test whose engine does not close cleanly by @lusoris in #15
  • ci: build the gate engine from Praetor 3bbde07342bd and scan for secrets by @lusoris in #16
  • test: plant a defect for every gate check that was never seen failing by @lusoris in #17
  • test: hold the checkpoint hook scripts to the pinned engine and its tests by @lusoris in #18
  • ci: hold changed settings to their source on the pull request by @lusoris in #19
  • test: hold the wasm crate's public pieces and the Go engine's edges directly by @lusoris in #20
  • test: compile and run the README's Go blocks in a consumer module by @lusoris in #22
  • test: replay a chain the v0.1.0 module stored by @lusoris in #23
  • test: hold a trap of the module to a blocked engine by @lusoris in #24
  • ci: hold the Go that runs the binding's tests to its declared minimum by @lusoris in #26
  • test: hold the two modes to their speed and their architectures by @lusoris in #27
  • ci: pack the library crate in the gate as the release does by @lusoris in #25
  • chore(deps): update rust crate serde_json to v1.0.152 by @renovate[bot] in #21
  • ci: declare the pinned toolchain as the workspace rust-version by @lusoris in #28
  • feat: adopt the Praetor docs:seo-portal facet by @lusoris in #30
  • feat: compare the committed module up to function order by @lusoris in #31
  • ci: build the gate engine from Praetor 82cd4ed60de9 by @lusoris in #33
  • chore: extend the public horistes presets in renovate.json by @lusoris in #34
  • chore(agents): give the engine personas their model tier by @lusoris in #36
  • chore: take Rust 1.99.0 from the settings source by @lusoris in #37
  • chore(deps): update rust crate wasmparser to v0.261.0 by @renovate[bot] in #32
  • fix: drop milestone and decision numbers from crate sources by @lusoris in #38
  • chore(deps): update rust crate wasmparser to v0.262.0 by @renovate[bot] in #40
  • chore(deps): update rust crate serde_json to v1.0.154 by @renovate[bot] in #35
  • chore(deps): update rust crate sha2 to v0.11.1 by @renovate[bot] in #39
  • ci: regenerate the module and notices on dependency updates by @lusoris in #41
  • ci(release): read the files back with the shared read-back by @lusoris in #42
  • chore(deps): update dependency sigstore/cosign to v2.6.5 by @renovate[bot] in #43
  • chore(deps): update dependency sigstore/cosign to v3 by @renovate[bot] in #44
  • ci: lint the Go binding with golangci-lint and its complexity checks by @lusoris in #45
  • ci: run semgrep and trivy in the gate with planted findings by @lusoris in #46
  • refactor(tools): share the check helpers in one module by @lusoris in #50
  • ci: keep the semgrep lock coherent by @lusoris in #53
  • ci: give gosec its pinned configuration and clear its findings by @lusoris in #54
  • ci(release): publish both crates to crates.io and tag the Go module by @lusoris in #56
  • ci: hold the semgrep interpreter at the newest Python semgrep supports by @lusoris in #57
  • chore(exceptions): name the measured cause of the Windows module gap by @lusoris in #58
  • chore: pin the Praetor engine for hooks and CI, refresh adopted files by @lusoris in #59
  • test: adopt cargo-mutants on changed code and close the survivors by @lusoris in #60
  • refactor(tests): read the dependency closure through cargo_metadata by @lusoris in #61
  • ci(semgrep): write the lock header in the form Renovate parses by @lusoris in #62
  • ci: hold the public Rust API to the last release with cargo-semver-checks by @lusoris in #63
  • build(wasm): build the Windows data section, retire its exception by @lusoris in #64
  • chore: take Rust 1.99.1 from the settings source by @lusoris in #66
  • chore(release): set the workspace version to 0.2.0 by @lusoris in #65
  • fix(release): fetch the crates of every platform before the module check by @lusoris in #67

New Contributors

Full Changelog: v0.1.0...v0.2.0-rc.1

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 11 Oct 15:14
v0.1.0
c98aea0

First release of amussis-decision: a decision engine that gives a proposed action a risk level, holds it for a second person's approval where the level asks for one, writes every decision to a tamper-evident log, and has a kill switch.

Amussis is Latin for the mason's levelling board (ad amussim: "exactly"), pronounced ah-MOOS-sis. The engine comes from the operating-system repository cordanaLLM/Aegis-OS, where it is the crate aegis-justitia.

Use it

The files are on this page and on no package registry. Depend on the tag from Rust:

[dependencies]
amussis-decision = { git = "https://github.com/plurano/amussis", tag = "v0.1.0" }

The Go binding embeds the engine as a WebAssembly module and needs no cgo. It has no module tag yet, so depend on the commit of this release:

go get github.com/plurano/amussis/bindings/go@c98aea06b6e12b93dde36c790e4a43ea2ec4e508

Both lines were built and run against this release on Linux amd64 (Go 1.27.1, fetched directly from the forge).

Files

File What it is
amussis-decision-0.1.0.crate The library as cargo package packs it.
amussis-decision-0.1.0.wasm The module the Go binding embeds, rebuilt from the tag and compared byte for byte.
amussis-decision-0.1.0.wasm.third-party-notices.txt The notices of every crate the module links and of the Rust standard library.
amussis-decision-0.1.0.cyclonedx.json, .spdx.json The dependencies of the packed crate.
checksums.txt, checksums.txt.sigstore.json The SHA-256 of the five files above, and the signature over that list.

Check the files

sha256sum --check --strict checksums.txt
cosign verify-blob \
  --certificate-identity https://github.com/plurano/amussis/.github/workflows/release-build.yml@refs/tags/v0.1.0 \
  --certificate-oidc-issuer https://token.actions.githubusercontent.com \
  --bundle checksums.txt.sigstore.json checksums.txt
gh attestation verify amussis-decision-0.1.0.crate --repo plurano/amussis \
  --signer-workflow plurano/amussis/.github/workflows/release-build.yml

The release run made the same three checks before it stored the files: each once on the file as built, and once on a changed copy or against the wrong workflow, which had to be refused.

Limits

  • The library ships no durable store: the host supplies the sink, the signer and the clock. A file-backed store is planned for 0.2.0.
  • Actions an earlier engine held are not carried over a restart from the stored log.
  • A running engine has no call that lifts a halt; a halt is released by a restart from the stored log with an approval.
  • The Go binding has run on Linux amd64, macOS arm64 and Windows amd64 only. A Windows host cannot rebuild the bytes of the committed module (#2).

The README has the interface, the tests behind each statement and the full list of limits.

v0.1.0-rc.1

v0.1.0-rc.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 11 Oct 14:54
v0.1.0-rc.1
c98aea0

What's Changed

  • ci: run the gate on Linux, macOS and Windows as three required checks by @lusoris in #3
  • ci: record the module build on three hosts to find why Windows differs by @lusoris in #4

New Contributors

Full Changelog: https://github.com/plurano/amussis/commits/v0.1.0-rc.1