Skip to content

Support standalone v1/platform builds - #1370

Open
jrray wants to merge 3 commits into
mainfrom
support-standalone-v1-platform-builds
Open

Support standalone v1/platform builds#1370
jrray wants to merge 3 commits into
mainfrom
support-standalone-v1-platform-builds

Conversation

@jrray

@jrray jrray commented May 26, 2026

Copy link
Copy Markdown
Collaborator

This PR now sits on top of the standalone spfstest, resolvo, and step-solver fixes so it can stay focused on the v1/platform feature itself. With those prerequisites separated out, this PR just teaches the shared loading path to accept standalone v1/platform recipes and keeps the end-to-end coverage that proves those recipes work outside a workspace.

Summary

  • teach shared spec parsing to recognize v1/platform recipes
  • keep schema coverage for rendered v1/platform specs
  • keep make-binary coverage for standalone platform builds
  • keep the downstream v1/platform integration regression with the feature it validates

Testing

  • make format
  • cargo test -p spk-schema test_template_render_supports_v1_platform_recipes -- --nocapture
  • cargo test -p spk-cmd-make-binary build_a_platform -- --nocapture
  • cargo test --workspace --features server,spfs/server test_build_package_with_v1_platform_pins_frombuildenv_and_solves_binary_compatible_runtime -- --nocapture

@jrray jrray self-assigned this May 26, 2026
@jrray jrray added enhancement New feature or request pr-chain This PR doesn't target the main branch, don't merge! AI Code authored with AI assistance. labels May 26, 2026
@jrray
jrray force-pushed the support-standalone-v1-platform-builds branch 2 times, most recently from 1acf909 to 324c8b9 Compare May 26, 2026 23:34
@codecov

codecov Bot commented May 26, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 66.66667% with 3 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
crates/spk-schema/src/spec.rs 66.66% 3 Missing ⚠️

📢 Thoughts on this report? Let us know!

@jrray
jrray force-pushed the resolvo-build-component-constraints branch from a1aab9c to ef4b8ee Compare May 27, 2026 00:21
@jrray
jrray force-pushed the support-standalone-v1-platform-builds branch from 324c8b9 to 33534b4 Compare May 27, 2026 00:21
@jrray
jrray changed the base branch from resolvo-build-component-constraints to fix-step-build-request-handling May 27, 2026 00:21
@jrray
jrray force-pushed the fix-step-build-request-handling branch from f69bb3b to 0893bc0 Compare May 27, 2026 00:25
@jrray
jrray force-pushed the support-standalone-v1-platform-builds branch from 33534b4 to 431fbe5 Compare May 27, 2026 00:25
@jrray
jrray force-pushed the fix-step-build-request-handling branch from 0893bc0 to 16fe8cb Compare May 27, 2026 00:50
@jrray
jrray force-pushed the support-standalone-v1-platform-builds branch from 431fbe5 to 7001692 Compare May 27, 2026 00:50
@jrray
jrray force-pushed the fix-step-build-request-handling branch from 16fe8cb to 34c5709 Compare May 27, 2026 00:53
@jrray
jrray force-pushed the support-standalone-v1-platform-builds branch 2 times, most recently from 8e7ef04 to c571f4c Compare May 27, 2026 00:58
@jrray
jrray force-pushed the fix-step-build-request-handling branch 2 times, most recently from 5cde10c to 5969a59 Compare May 27, 2026 01:33
Add a solver regression that isolates build-component
IfAlreadyPresent requirements without relying on v1/platform.
Update resolvo to preserve those component-scoped constraints and
to interpret unqualified package requirements from build components
in build context so they constrain build selections correctly.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: J Robert Ray <jrray@imageworks.com>
@jrray
jrray force-pushed the fix-step-build-request-handling branch from 5969a59 to 747d0b7 Compare May 27, 2026 04:37
jrray and others added 2 commits May 26, 2026 22:26
Keep build-component requests in build context and let the step
solver invalidate stale resolved candidates by backtracking instead
of mutating State. This preserves resolver assumptions when a later
IfAlreadyPresent request tightens an already-resolved package and
covers the dependent-package regression that exposed the issue.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: J Robert Ray <jrray@imageworks.com>
Teach shared spec parsing to recognize v1/platform recipes so the
existing make-binary paths can build them outside a workspace.
Keep regression coverage at the schema, make-binary, and spk-build
layers so both the standalone flow and the downstream platform
pinning scenario stay exercised on top of the generic solver fix.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: J Robert Ray <jrray@imageworks.com>
@jrray
jrray force-pushed the support-standalone-v1-platform-builds branch from c571f4c to 5166e16 Compare May 27, 2026 05:43
@jrray
jrray force-pushed the fix-step-build-request-handling branch from 747d0b7 to c600c26 Compare May 27, 2026 05:43
@jrray
jrray force-pushed the fix-step-build-request-handling branch 3 times, most recently from 718c92e to f00adeb Compare June 4, 2026 22:26
Base automatically changed from fix-step-build-request-handling to main June 5, 2026 01:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AI Code authored with AI assistance. enhancement New feature or request pr-chain This PR doesn't target the main branch, don't merge!

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants