-
Notifications
You must be signed in to change notification settings - Fork 45
Specification: Deploy-Time Modularity - Level 1 (init-container) #192
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
6f3ff68 to
ea43b14
Compare
3e1a0e5 to
d75d7b9
Compare
| - Challenge patterns that diverge without good reason | ||
|
|
||
| --- | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How does this work for PRs that do not use AI (maybe a small change/update), is there a way to ensure these rules are validated?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's a good question. The ideal solution would to add this project-level constitution.md to the automated coderabbit review, not sure though which customization hooks are offered by corerabbit.
|
@mergify rebase |
✅ Branch has been successfully rebased |
d75d7b9 to
2e8e8cc
Compare
|
@mergify rebase |
Add comprehensive specification for deploy-time modularity enabling users to inject custom and third-party provider implementations without rebuilding distribution images. Key components: - Complete specification (spec.md) with 32 functional requirements, 5 NFRs - Implementation plan (plan.md) with 7 development phases - Task breakdown (tasks.md) with 110 tasks organized by user story - Container startup sequence with mermaid diagram showing 5 runtime phases - Security considerations and forward compatibility planning - Constitution updates for git commit guidelines and DCO sign-off Technical approach: - Init container architecture for provider installation - Config merge using extra-providers.yaml schema - Forward compatible with future LlamaStack native support - Comprehensive error handling and status reporting Documentation: - Preflight validation specification (lls-preflight-spec.md) - Complete CRD structure with validation tags - Detailed error message formats - Provider image packaging contract Constitution updates (v1.4): - Git commit message conventions - AI-assisted commit guidelines (Assisted-by trailer format) - Commit sign-off requirement (DCO) - Commit hygiene standards Assisted-by: Claude Code Signed-off-by: Roland Huß <rhuss@redhat.com>
✅ Branch has been successfully rebased |
2e8e8cc to
a8bd2ef
Compare
Note: This PR and the code have been created with spec-kit, and its a test balloon for SDD. Feel free to shortcut the review, but this kind of spec-oriented reviews are at the heart of spec driven development, so its also good to get an initial feeling about that methodology. Feel free to comment also about the process in general below. No bits and bytes have been harmed until now, this here is only the result of the initial specification step. See this nice diagram about a first look on SDD. See the section "About SDD" for another quick intro into the SDD review process.
Overview
This PR implements the specification phase for the External Provider Injection feature, as described in the design document: https://hackmd.io/@7FIgxbJfSliRvRtcYpoXFw/SyswYGr6le/edit
🎯 Key Architectural Decisions
What's in This PR
This PR introduces comprehensive specification documents generated using
spec-kit:📋 Core Specification Documents
spec.md⭐ - Primary review focus: Core requirements, user stories, and acceptance criteria (32 functional requirements)plan.md- Implementation approach with two-phase init container architecturetasks.md- Breakdown of 110 tasks across 7 implementation phasesintegration-points.md- Detailed integration with existing codebase (10 integration points)extra-providers-schema.md- Forward-compatible schema for future LlamaStack supportpr-strategy.md- 8-PR breakdown strategy to manage implementation complexity📖 Review Roadmap
Recommended Review Order (30-45 minutes total)
Follow this order for an efficient and thorough review:
Roadmap for doing this PR review
Step 1: Quick Context (5 minutes)
spec.mdStep 2: Deep Dive - Requirements (15 minutes) ⭐ MOST IMPORTANT
Read
spec.md- Functional RequirementsRead
spec.md- User Story Acceptance ScenariosStep 3: Architecture Validation (10 minutes)
Skim
integration-points.md- Init Container ArchitectureRead
spec.md- Extra Providers ConfigurationRead
spec.md- Merge Order and PrecedenceStep 4: Implementation Planning (5-10 minutes) - OPTIONAL
Skim
pr-strategy.mdSkim
tasks.mdStep 5: Edge Cases & Error Handling (5 minutes)
Read
spec.md- Edge CasesRead
spec.md- Error Message Requirements🎯 Key Review Questions
As you review, consider:
Requirements (spec.md):
Architecture (integration-points.md):
Planning (tasks.md, pr-strategy.md):
Process:
Review Guidance
🔍 What to Focus On
Primary review areas (in order of importance):
spec.md- User stories, functional requirements, and acceptance criteriaUse cases and edge cases (in
spec.md)integration-points.md- Does the integration strategy make sense?Secondary review areas (optional deep dive):
plan.md- Implementation approach and code examplestasks.md- Task organization and dependenciespr-strategy.md- PR breakdown strategy📚 Understanding the Spec-Kit Structure
The specifications follow a structured format:
About SDD (Specification-Driven Development)
This PR demonstrates the SDD workflow where we:
🤔 SDD Review Process
This may be different from typical code reviews:
We're all learning this process, so feedback on the SDD approach itself is equally welcome!
Questions for Reviewers
Next Steps
After this PR is approved:
pr-strategy.md)Related Links
specs/001-deploy-time-providers-l1/