• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Alan-Jowett / sonde / 25838120792
81%

Build:
DEFAULT BRANCH: main
Ran 14 May 2026 02:42AM UTC
Jobs 1
Files 124
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

14 May 2026 02:29AM UTC coverage: 83.027% (-0.1%) from 83.13%
25838120792

push

github

web-flow
feat: ingest inline ELF from DESIRED_STATE with full Prevail verification (#904)

* fix(docker): update azure-cli image digest to valid 2.86.0 manifest

The previous digest (sha256:2b798554...) was a tag manifest digest
that doesn't resolve as a content-addressable image reference.
Replace with the correct manifest list digest (sha256:925b5871...)
obtained from the Docker-Content-Digest header for the
2.86.0-azurelinux3.0 tag.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>

* feat: ingest inline ELF from DESIRED_STATE with full Prevail verification

When the Azure handler detects program divergence during node
reconciliation, it now embeds the original ELF binary (not the CBOR
image) in the DESIRED_STATE message. The gateway extracts the ELF,
runs full Prevail verification via ProgramLibrary::ingest_elf(), and
stores the verified program locally before applying the desired state.

Azure handler changes:
- ProgramImageRow gains elf_image field; original ELF stored alongside
  CBOR in the programs Azure Table during ProgramIngest
- load_program_image returns full ProgramImageRow (not just CBOR bytes)
- encode_desired_state embeds ELF at key 5, verification_profile at
  key 6, source_filename at key 7, abi_version at key 8
- Legacy rows without elf_image cause a warning and omit key 5

Gateway connector changes:
- ConnectorService gains ProgramLibrary for ELF verification
- apply_node_desired_state extracts keys 5-8; if key 5 is present,
  runs ingest_elf() with the profile from key 6 (default Resident)
- Validates ingested program hash matches declared assigned_program_hash
  (key 1); rejects on mismatch
- Stores verified program via Storage::store_program() before the
  existing validate_program_exists check

Specification updates:
- gateway-companion-api.md: key 5 renamed to assigned_program_elf;
  keys 6-8 added for metadata
- gateway-design.md: new section 13A.2.1 inline E... (continued)

42 of 102 new or added lines in 2 files covered. (41.18%)

34276 of 41283 relevant lines covered (83.03%)

194.39 hits per line

Uncovered Changes

Lines Coverage ∆ File
50
85.45
-8.72% crates/sonde-gateway/src/connector.rs
10
90.17
-0.23% crates/sonde-azure-handler/src/lib.rs
Jobs
ID Job ID Ran Files Coverage
1 25838120792.1 14 May 2026 02:42AM UTC 124
83.03
GitHub Action Run
Source Files on build 25838120792
  • Tree
  • List 124
  • Changed 4
  • Source Changed 4
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25838120792
  • c97ca077 on github
  • Prev Build on main (#25834850517)
  • Next Build on main (#25877501608)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc