Release 0.5.20 — preflight requires any subject backend#247
Merged
Conversation
…/requirement)
The daemon preflight hard-coded RequiredRole::SubjectKind("task") +
SubjectKind("requirement") as required roles, forcing every deployment to run
those two backends even when it uses a different subject kind (e.g. a song app
with kind=song). That's a design flaw — the daemon needs a valid subject backend
to read/write subjects, but must not dictate which kinds a deployment uses.
Add RequiredRole::AtLeastOneSubjectBackend (satisfied by any installed
subject_backend plugin) and use it in daemon_default() in place of the two
hard-coded SubjectKind roles. SubjectKind(..) stays for callers that genuinely
require a specific kind. Updates the doctor check, flavor assertion, and tests.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
0.5.20
Patch release.
Fix: preflight requires any subject backend, not forced task/requirement kinds
The daemon preflight required-role set hard-coded
subject_kind:taskandsubject_kind:requirement, forcing every deployment to install those two specific backends even when a single custom subject backend (e.g. a Postgreskind=songbackend) was the only subject store in use. The daemon should require a working subject backend, not dictate which kinds it serves.RequiredRole::AtLeastOneSubjectBackendreplaces the hard-codedSubjectKind("task")+SubjectKind("requirement")roles inPluginPreflightSpec::daemon_default(). Preflight now passes when anysubject_backendplugin is installed.animus-subject-default.SubjectKind(_)retained for custom specs but dropped from the daemon default.pluginscheck mirrors the same posture.Verified:
cargo check --workspaceclean, orchestrator-core + plugin_preflight + daemon preflight-lifecycle tests pass, clippy + fmt clean.Merging this
release/v0.5.20branch triggersauto-tag-release→ tagv0.5.20→release.ymlbuilds the linux binary.