Skip to content

fix: use boolean notification flags (SPEC-F03) - #206

Merged
3alpha merged 1 commit into
masterfrom
fix/spec-f03-notification-types
Nov 9, 2026
Merged

3alpha merged 1 commit into
masterfrom
fix/spec-f03-notification-types

Conversation

@3alpha

@3alpha 3alpha commented Nov 9, 2026

Copy link
Copy Markdown
Member

Context

Correct SPEC-F03 from the package specification checks.

Stacked on #205 (base fix/spec-m08-repository-url). Merge the base PR first; this diff contains only the next focused fix.

Approach

Write all four isBanner flags as booleans so the notification source already matches the validated release object.

Test instructions

Run the SDK package-spec validation on this branch for all package variants.

Verified locally:

  • SDK loading and manifest/optional-asset schemas pass for all 1 variant.
  • Release-file generation, avatar verification and docker compose config --quiet pass for every variant.
  • Compared effective service settings, image/version pins and package identities with the parent: preserved.
  • git diff --check and replay of the complete PR stack pass.
  • The notification object equals the parent after schema validation, with all four isBanner flags already typed as booleans.

Full container images were not built locally.

@tropibot

tropibot Bot commented Nov 9, 2026

Copy link
Copy Markdown
Contributor

Dappnode bot has built and pinned the built packages to an IPFS node, for commit: 5e85cb7

This is a development version and should only be installed for testing purposes.

  1. Package dms.dnp.dappnode.eth

Install link

Hash: /ipfs/QmYoHteZq3phzMKYueXNmkdUZpdH4P5mzCT9eemuYq8CQ6

(by dappnodebot/build-action)

Base automatically changed from fix/spec-m08-repository-url to master November 9, 2026 12:26
@3alpha
3alpha merged commit 7629383 into master Nov 9, 2026
1 check passed
@3alpha
3alpha deleted the fix/spec-f03-notification-types branch November 9, 2026 12:26
@tropibot

tropibot Bot commented Nov 9, 2026

Copy link
Copy Markdown
Contributor

✅ Package harness passed

Baseline and candidate containers became stably running

Package Verdict Reason Duration Cleanup
dms.dnp.dappnode.eth ✅ Passed Candidate containers stable (candidate_containers_stable) 6m 35s ✅ Passed

Run overview

Context Value
Pull request dappnode/DAppNodePackage-DMS#206
Tested commit 5e85cb7760a0
Candidate artifact Install on DAppNode · /ipfs/QmYoHteZq3phzMKYueXNmkdUZpdH4P5mzCT9eemuYq8CQ6
Baseline request automatic
Worker dappnode-near-5
Run ID gh-pr-206-5e85cb7760a0-c5d720d724d29501
Execution 2026-11-09T13:03:38.689373122+00:00 → 2026-11-09T13:10:14.251186798+00:00 (✅ Completed)

Baseline vs candidate

Check Baseline Candidate
Version 2.0.3 2.0.4
Install ✅ Passed · 2m 21s ✅ Passed · 3m 9s
Hard check ✅ Passed · 3 stable samples ✅ Passed · 3 stable samples
Containers 7 observed 7 observed
Stabilization 10s 10s
Log collection ✅ Passed · 7 containers ✅ Passed · 7 containers

Container comparison

  • Added: none
  • Removed: none
  • Baseline inventory: DAppNodePackage-cadvisor.dms.dnp.dappnode.eth, DAppNodePackage-grafana.dms.dnp.dappnode.eth, DAppNodePackage-loki.dms.dnp.dappnode.eth, DAppNodePackage-manager.dms.dnp.dappnode.eth, DAppNodePackage-node-exporter.dms.dnp.dappnode.eth, DAppNodePackage-prometheus.dms.dnp.dappnode.eth, DAppNodePackage-stakers-metrics.dms.dnp.dappnode.eth
  • Candidate inventory: DAppNodePackage-cadvisor.dms.dnp.dappnode.eth, DAppNodePackage-grafana.dms.dnp.dappnode.eth, DAppNodePackage-loki.dms.dnp.dappnode.eth, DAppNodePackage-manager.dms.dnp.dappnode.eth, DAppNodePackage-node-exporter.dms.dnp.dappnode.eth, DAppNodePackage-prometheus.dms.dnp.dappnode.eth, DAppNodePackage-stakers-metrics.dms.dnp.dappnode.eth
  • Baseline non-running states: none
  • Candidate non-running states: none
  • Deterministic regressions: ✅ none
Container inventory

Baseline

Container Service State Image Created
DAppNodePackage-manager.dms.dnp.dappnode.eth manager ✅ Running manager.dms.dnp.dappnode.eth:2.0.3 1794229519
DAppNodePackage-stakers-metrics.dms.dnp.dappnode.eth stakers-metrics ✅ Running stakers-metrics.dms.dnp.dappnode.eth:2.0.3 1794229518
DAppNodePackage-prometheus.dms.dnp.dappnode.eth prometheus ✅ Running prometheus.dms.dnp.dappnode.eth:2.0.3 1794229518
DAppNodePackage-node-exporter.dms.dnp.dappnode.eth node-exporter ✅ Running node-exporter.dms.dnp.dappnode.eth:2.0.3 1794229518
DAppNodePackage-loki.dms.dnp.dappnode.eth loki ✅ Running loki.dms.dnp.dappnode.eth:2.0.3 1794229518
DAppNodePackage-grafana.dms.dnp.dappnode.eth grafana ✅ Running grafana.dms.dnp.dappnode.eth:2.0.3 1794229518
DAppNodePackage-cadvisor.dms.dnp.dappnode.eth cadvisor ✅ Running cadvisor.dms.dnp.dappnode.eth:2.0.3 1794229518

Candidate

Container Service State Image Created
DAppNodePackage-manager.dms.dnp.dappnode.eth manager ✅ Running manager.dms.dnp.dappnode.eth:2.0.4 1794229735
DAppNodePackage-cadvisor.dms.dnp.dappnode.eth cadvisor ✅ Running cadvisor.dms.dnp.dappnode.eth:2.0.4 1794229732
DAppNodePackage-prometheus.dms.dnp.dappnode.eth prometheus ✅ Running prometheus.dms.dnp.dappnode.eth:2.0.4 1794229732
DAppNodePackage-grafana.dms.dnp.dappnode.eth grafana ✅ Running grafana.dms.dnp.dappnode.eth:2.0.4 1794229732
DAppNodePackage-node-exporter.dms.dnp.dappnode.eth node-exporter ✅ Running node-exporter.dms.dnp.dappnode.eth:2.0.4 1794229732
DAppNodePackage-loki.dms.dnp.dappnode.eth loki ✅ Running loki.dms.dnp.dappnode.eth:2.0.4 1794229732
DAppNodePackage-stakers-metrics.dms.dnp.dappnode.eth stakers-metrics ✅ Running stakers-metrics.dms.dnp.dappnode.eth:2.0.4 1794229732

Runtime analysis advisory

⚪ Inconclusive — Heuristic and Nexus analysis: No likely new runtime regression is visible in the candidate cAdvisor logs, whose startup behavior matches the baseline. A candidate-wide comparison is not possible because the supplied candidate evidence is truncated after cAdvisor and does not expose the other containers.

Analyzer Status Summary
Composite ⚪ Inconclusive Heuristic and Nexus analysis: No likely new runtime regression is visible in the candidate cAdvisor logs, whose startup behavior matches the baseline. A candidate-wide comparison is not possible because the supplied candidate evidence is truncated after cAdvisor and does not expose the other containers.
Heuristic ✅ Clean No configured candidate-only suspicious signature was found
Nexus ⚪ Inconclusive No likely new runtime regression is visible in the candidate cAdvisor logs, whose startup behavior matches the baseline. A candidate-wide comparison is not possible because the supplied candidate evidence is truncated after cAdvisor and does not expose the other containers.
Baseline evidence ✅ Clean No configured suspicious signature was found
Candidate evidence ✅ Clean No configured suspicious signature was found

✅ No new runtime findings were reported.

Cleanup and diagnostics

Check Result
Cleanup ✅ Passed
Leftover packages none
Cleanup error none

✅ No run errors were recorded.


Deterministic checks decide the verdict. Runtime log analysis is advisory. TropiBot publishes bounded summaries and never posts raw logs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant