diff --git a/home/roles/development/skills/beads_implement.md b/home/roles/development/skills/beads_implement.md index cbf4843..7182571 100644 --- a/home/roles/development/skills/beads_implement.md +++ b/home/roles/development/skills/beads_implement.md @@ -54,6 +54,8 @@ When this command is invoked: - Read `thoughts/beads-{bead-id}/plan.md` FULLY - Check for any existing checkmarks (- [x]) indicating partial progress - Read any research at `thoughts/beads-{bead-id}/research.md` + - If plan's Success Criteria references contribution guidelines (e.g., "Per CONTRIBUTING.md:"), + verify the original CONTRIBUTING.md still exists and requirements are current 5. **Mark bead in progress** (if not already): ```bash @@ -127,6 +129,10 @@ All phases completed and automated verification passed: - {List manual verification items from plan} Let me know when manual testing is complete so I can close the bead. + +**Contribution guidelines compliance:** +- {List any contribution guideline requirements that were part of Success Criteria} +- {Note if any requirements could not be automated and need manual review} ``` **STOP HERE and wait for user confirmation.** diff --git a/home/roles/development/skills/beads_plan.md b/home/roles/development/skills/beads_plan.md index 2286b8c..871c6c5 100644 --- a/home/roles/development/skills/beads_plan.md +++ b/home/roles/development/skills/beads_plan.md @@ -51,13 +51,32 @@ When this command is invoked: - Any linked tickets or docs - Use Read tool WITHOUT limit/offset -2. **Spawn initial research tasks**: +2. **Check for contribution guidelines**: + + ```bash + # Check standard locations for contribution guidelines + for f in CONTRIBUTING.md .github/CONTRIBUTING.md docs/CONTRIBUTING.md; do + if [ -f "$f" ]; then + echo "Found: $f" + break + fi + done + ``` + + If found: + - Read the file fully + - Extract actionable requirements (testing, code style, documentation, PR conventions) + - These requirements MUST be incorporated into the plan's Success Criteria + + If not found, note "No contribution guidelines found" and proceed. + +3. **Spawn initial research tasks**: - **codebase-locator**: Find all files related to the task - **codebase-analyzer**: Understand current implementation - **codebase-pattern-finder**: Find similar features to model after - **thoughts-locator**: Find any existing plans or decisions -3. **Read all files identified by research**: +4. **Read all files identified by research**: - Read them FULLY into main context - Cross-reference with requirements @@ -273,6 +292,12 @@ Always separate into two categories: - Performance under real conditions - Edge cases hard to automate +**From Contribution Guidelines** (if CONTRIBUTING.md exists): +- Include any testing requirements specified in guidelines +- Include any code style/linting requirements +- Include any documentation requirements +- Reference the guideline: "Per CONTRIBUTING.md: {requirement}" + ## Example Invocation ``` diff --git a/home/roles/development/skills/beads_research.md b/home/roles/development/skills/beads_research.md index cce1fcc..ba05b6f 100644 --- a/home/roles/development/skills/beads_research.md +++ b/home/roles/development/skills/beads_research.md @@ -51,6 +51,18 @@ When this command is invoked: - Use the Read tool WITHOUT limit/offset parameters - Read these files yourself in the main context before spawning sub-tasks +### Step 1.5: Check for contribution guidelines + +Before spawning sub-agents, check if the repository has contribution guidelines: + +```bash +for f in CONTRIBUTING.md .github/CONTRIBUTING.md docs/CONTRIBUTING.md; do + if [ -f "$f" ]; then echo "Found: $f"; break; fi +done +``` + +If found, read the file and note key requirements. These should be included in the research document under a "## Contribution Guidelines" section if relevant to the research question. + ### Step 2: Analyze and decompose the research question - Break down the query into composable research areas - Identify specific components, patterns, or concepts to investigate @@ -143,6 +155,10 @@ status: complete ## Architecture Documentation {Current patterns, conventions found in codebase} +## Contribution Guidelines +{If CONTRIBUTING.md exists, summarize key requirements relevant to the research topic} +{If no guidelines found, omit this section} + ## Historical Context (from thoughts/) {Relevant insights from thoughts/ with references} diff --git a/home/roles/development/skills/parallel_beads.md b/home/roles/development/skills/parallel_beads.md index ab043e1..53e6db8 100644 --- a/home/roles/development/skills/parallel_beads.md +++ b/home/roles/development/skills/parallel_beads.md @@ -68,10 +68,12 @@ Work on bead [BEAD_ID]: [BEAD_TITLE] - Read the plan and find the "Automated Verification" section - Extract each verification command (lines starting with `- [ ]` followed by a command) - Example: `- [ ] Tests pass: \`make test\`` → extract `make test` + - Note any "Per CONTRIBUTING.md:" requirements for additional validation - If no plan exists, use best-effort validation: - Check if `Makefile` exists → try `make test` and `make lint` - Check if `flake.nix` exists → try `nix flake check` - Check if `package.json` exists → try `npm test` + - **Check for CONTRIBUTING.md** → read and extract testing/linting requirements - If none found, note "No validation criteria found" 4. **Implement the changes**: