Skip to content

build(release): package MIInfer v0.2.0 baseline - #3

Merged
GionaGranchelli merged 3 commits into
mainfrom
rewrite/v2-0047-release-packaging
Oct 1, 2026
Merged

GionaGranchelli merged 3 commits into
mainfrom
rewrite/v2-0047-release-packaging

Conversation

@GionaGranchelli

Copy link
Copy Markdown
Owner

Summary

  • Isolate research benchmarks/tools from standard Release packaging.
  • Add the documented CPack TGZ install path and package/first-run smoke checks.
  • Preserve V2-0047 qualification evidence.

Validation

  • V2-0047 PASS evidence is committed in experiments/V2-0047-release-packaging.md.
  • Branch head is 919dd64c9603ab539d81b285928cfde3ca3a81f2.
  • Diff contains packaging, documentation, graph output, and release smoke-test changes; no inference-performance source changes.
  • Existing untracked gpucore.3330886 is intentionally excluded.

Copilot AI balanced review requested due to automatic review settings October 1, 2026 10:36
@GionaGranchelli
GionaGranchelli merged commit 0032bb5 into main Oct 1, 2026
2 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🔵 Needs a closer look

The non-trivial CMake EXCLUDE_FROM_ALL build-graph logic determines exactly what ships in the release package, so a human should confirm release contents before approval despite no defects being found.

Review effort: Balanced
Findings: None

What changed in this PR

This PR packages the MIInfer v0.2.0 release by separating research/benchmark build targets from the standard release build, curating the installed file set, and hardening the package and first-run smoke tests. It supports the project's packaging milestone without changing any inference, kernel, numerical, or public CLI behavior.

Changes:

  • Adds MIINFER_BUILD_BENCHMARKS/MIINFER_BUILD_RESEARCH_TOOLS/MIINFER_BUILD_TESTS options and excludes bench/tools/non-release-test executables from the default all target, so a broken GCC‑16 benchmark no longer blocks cmake --target package; also curates the install manifest to two binaries, installer, license, README, and three docs.
  • Strengthens scripts/test-package.sh (exact file-manifest allowlist, --version identity checks, default-prefix + repeat-install verification, host-only CTest gate that skips before the archive exists) and scripts/test-cli-first-run.sh (/healthz + /v1/models checks, .gguf-stripped model_id, unauthenticated non-loopback rejection check).
  • Adds docs/release.md, a V2-0047 experiment record, and updates README.md/developer-guide.md/graph output to match the new release/docs layout.
File Description
CMakeLists.txt New build-graph options and EXCLUDE_FROM_ALL logic to isolate research targets; curated install list; registers package-archive CTest gate.
scripts/​test-package.sh Adds manifest allowlist, version/identity checks, default + repeat install verification, diagnostics-retaining cleanup, and SKIP-before-built behavior.
scripts/​test-cli-first-run.sh Adds /healthz and /v1/models assertions, stem-based model_id, and an unauthenticated LAN-serving rejection check.
docs/​release.md New install/build-from-source instructions and qualified V2‑0045 performance scope table.
README.md Updates install steps (extract + run installer) and points to the new release/hardware/CLI docs.
developer-guide.md Documents the new CMake build-graph options.
experiments/​V2-0047-release-packaging.md Records the packaging qualification evidence and verification transcript.
graphify-out/​manifest.json, graphify-out/​GRAPH_REPORT.md Regenerated knowledge-graph artifacts reflecting the doc/build changes.

I verified the key correctness points: the test-package.sh allowlist matches the curated install(...) destinations (share/doc/MIInfer/...), the version parse matches CPACK_PACKAGE_FILE_NAME for the gfx906/Linux target, the CMake exclusion regex relies on relative source paths (which all add_executable calls use) with correct exemptions for miinfer/miinfer-device-info/miinfer-m12-gdn-oracle, the model_id stem matches the server's std::filesystem::path(model_path).stem(), the /healthz//readyz response strings match the assertions, and the docs/release.md numbers match the V2-0045 qualification record. I found no concrete, objective defects to comment on.


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

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.

2 participants