Skip to content

test: check the nightly image test keeps the starter template and a hung build's errors - #778

Merged
danathar-atomic-hive[bot] merged 1 commit into
mainfrom
quality/test-local-build-template-and-timeout-stderr
Oct 20, 2026
Merged

danathar-atomic-hive[bot] merged 1 commit into
mainfrom
quality/test-local-build-template-and-timeout-stderr

Conversation

@danathar-atomic-hive

Copy link
Copy Markdown
Contributor

Summary: The nightly check that builds and boots sample images had two blind spots in its tests. If the sample project stopped including the starter template files, or if a hung build's error messages were dropped or crashed the check, every test still passed. This adds tests that fail in both cases.


Test Improvement

Adds three tests to tests/test_variant_boot_test.py:

  • test_the_project_starts_from_the_bundled_template: for a Containerfile slot and a BlueBuild slot, every file the bundled template snapshot ships (minus .template-source and renovate.json5, which copy_template_snapshot() ignores) is in the generated context.
  • test_every_path_the_containerfile_copies_is_in_the_project: each COPY source in the generated Containerfile is a directory in the context.
  • test_a_timed_out_build_keeps_its_stderr_and_bytes_that_are_not_utf8: a TimeoutExpired with both output= and stderr=, the stderr holding \xff; the log starts with stdout then stderr, with the byte as U+FFFD.

Closes #777

Evidence

Mutants over the lines #769 and #771 changed, each run against test_variant_boot_test.py and test_atomic_image_builder.py: 11/16 caught on main (4080b64), 15/16 with this PR. Newly caught: seed step dropped, stderr dropped, streams swapped, strict decode. Left: include_workflow=True in write_local_build_context(), which podman never reads (reason in #777).

  • python3 -m unittest discover -s tests: Ran 2619, OK (skipped=50).
  • ruff check (0.16.5): all checks passed.

No production code changes.


Filed by quality agent (ACMM L4/L6 — full mode)

🤖 Generated with Claude Code

— hive: agent=quality backend=claude model=claude-opus-5-5 effort=high claude=2.1.304

The nightly boot test builds its project through
App.write_local_build_context(), and its timeout branches decode what the
command printed through timed_out_output(). Nothing failed when the seed
step was dropped from the first, or when the second lost stderr, swapped
the streams or decoded strictly.

Check that the generated context holds every file the bundled template
ships and every path its Containerfile copies, and that a timed-out
build's log keeps stdout then stderr with a byte that is not UTF-8
replaced.

Closes #777

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: quality <320561496+danathar-atomic-hive[bot]@users.noreply.github.com>
@danathar-atomic-hive danathar-atomic-hive Bot added author/hive This repository's own hive (the App or one of its agent lanes) authored this PR dco All commits are DCO signed-off role/trusted Author is trusted for unattended merge (trusted-author role or registry/claim tier in require_tiers) stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Oct 20, 2026
@danathar-atomic-hive
danathar-atomic-hive Bot merged commit e7dfee6 into main Oct 20, 2026
6 checks passed
@danathar-atomic-hive

Copy link
Copy Markdown
Contributor Author
Evidence bundle `#7784163e51` sha256:246b6586521e7882552dbae8a2f37f00232f50ae3ae70a6c021234db614f1f9c — download from the dashboard or `hivectl review evidence #778`.

@danathar-atomic-hive danathar-atomic-hive Bot removed role/trusted Author is trusted for unattended merge (trusted-author role or registry/claim tier in require_tiers) stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Oct 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author/hive This repository's own hive (the App or one of its agent lanes) authored this PR dco All commits are DCO signed-off

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[quality] Nightly image check: tests miss a sample project without the starter template, and lost error output when a build hangs

0 participants