AIG-631 Add M0 agentic TDD workflow and README positioning#46
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (9)
✅ Files skipped from review due to trivial changes (1)
🚧 Files skipped from review as they are similar to previous changes (8)
📝 WalkthroughWalkthroughThis PR adds an M0 agentic TDD workflow template and quick-start docs, aggregates parallel child errors into parent step errors in the DSL executor, updates README/API/HLD positioning and usage examples to emphasize local adversarial review loops, and adds unit tests for the workflow and README content. ChangesM0 TDD Workflow Feature
Sequence Diagram(s)sequenceDiagram
participant Issue
participant Intake
participant Discovery
participant TestPlan
participant RedTests
participant Implement
participant Verify
participant AdversarialReview
participant PeerReview
participant Docs
participant ReleaseCheck
Issue->>Intake: scope M0 issue
Intake->>Discovery: emit contract
par ParallelDiscovery
Discovery->>Discovery: product brief
Discovery->>Discovery: technical map
Discovery->>Discovery: test brief
end
Discovery->>TestPlan: merge outputs
TestPlan->>RedTests: emit TDD plan
loop Red-first cycle
RedTests->>TestPlan: on_reject
RedTests->>Implement: failing tests
end
loop Verify-implement loop
Implement->>Verify: code changes
Verify->>Implement: on_reject
end
Implement->>AdversarialReview: implementation
loop Adversarial loop
AdversarialReview->>Implement: on_reject
end
AdversarialReview->>PeerReview: results
loop Peer loop
PeerReview->>Implement: on_reject
end
PeerReview->>Docs: approval
Docs->>ReleaseCheck: handoff notes
ReleaseCheck->>Issue: final checklist
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
tests/unit/readme-positioning.test.tsParsing error: "parserOptions.project" has been provided for tests/unit/workflows/dsl/executor.test.tsParsing error: "parserOptions.project" has been provided for tests/unit/workflows/dsl/templates.test.tsParsing error: "parserOptions.project" has been provided for Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@tests/unit/readme-positioning.test.ts`:
- Line 9: The current computation of aboveFold (const aboveFold =
readme.slice(0, readme.indexOf('---'))) misbehaves when readme.indexOf('---')
=== -1; explicitly compute const sepIndex = readme.indexOf('---') and then set
aboveFold = readme.slice(0, sepIndex === -1 ? readme.length : sepIndex) (or use
the full readme as the fallback) so the slice doesn't drop the last character
when the separator is missing; update the aboveFold declaration to use sepIndex
and add a brief comment explaining the fallback.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: d0d95637-10cb-4b71-abe4-606d95e69925
📒 Files selected for processing (9)
README.mddocs/API.mddocs/HLD.mddocs/WORKFLOW_DSL.mdsrc/workflows/dsl/executor.tstemplates/workflows/m0-agentic-tdd.yamltests/unit/readme-positioning.test.tstests/unit/workflows/dsl/executor.test.tstests/unit/workflows/dsl/templates.test.ts
ef1b73b to
8c80029
Compare
There was a problem hiding this comment.
🧹 Nitpick comments (2)
README.md (2)
71-81: 💤 Low valueConsider specifying language for fenced code block.
The code fence at line 71 lacks a language identifier. While this is a text example rather than code, specifying
textor leaving it as plain backticks improves markdown consistency.📝 Proposed fix
-``` +```text You ask: "Create a login API endpoint with tests"🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@README.md` around lines 71 - 81, The fenced code block containing the line You ask: "Create a login API endpoint with tests" should include a language identifier for consistency; update the opening fence from ``` to ```text so the block is explicitly marked as plain text (search for the exact quoted line to find the block and change the opening backticks only).
523-530: ⚡ Quick winClarify relationship between MCP note and DSL workflow example.
The note at lines 523-524 states that review loops aren't MCP tools and directs users to TypeScript/REST APIs. However, the DSL template example immediately following (lines 526-530) shows a third way to run review loops via workflow templates. While technically correct, this sequencing might confuse readers about which approach to use.
Consider either:
- Moving the DSL example before the MCP note, or
- Updating the note to acknowledge DSL workflows as a third option
📝 Proposed clarification
Review loops are not registered as MCP tools yet. Use MCP for agents, memory, tasks, -identity, consensus, sessions, system status, and GitHub tools. +identity, consensus, sessions, system status, and GitHub tools. For review loops, +use the TypeScript API, REST/web API, or DSL workflow templates.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@README.md` around lines 523 - 530, The README's sequencing is potentially confusing: the MCP note ("review loops are not registered as MCP tools") appears before a DSL workflow example ("npx `@blackms/aistack` workflow run templates/workflows/adversarial-review.yaml..."), which can mislead readers; update the README so the relationship is explicit by either moving the DSL example above the MCP note or by editing the MCP note to explicitly acknowledge a third option — DSL workflow templates — and briefly state when to choose MCP vs DSL vs TypeScript/REST APIs; refer to the MCP note text and the DSL example command string to locate and update the content.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@README.md`:
- Around line 71-81: The fenced code block containing the line You ask: "Create
a login API endpoint with tests" should include a language identifier for
consistency; update the opening fence from ``` to ```text so the block is
explicitly marked as plain text (search for the exact quoted line to find the
block and change the opening backticks only).
- Around line 523-530: The README's sequencing is potentially confusing: the MCP
note ("review loops are not registered as MCP tools") appears before a DSL
workflow example ("npx `@blackms/aistack` workflow run
templates/workflows/adversarial-review.yaml..."), which can mislead readers;
update the README so the relationship is explicit by either moving the DSL
example above the MCP note or by editing the MCP note to explicitly acknowledge
a third option — DSL workflow templates — and briefly state when to choose MCP
vs DSL vs TypeScript/REST APIs; refer to the MCP note text and the DSL example
command string to locate and update the content.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 695115bd-9814-493d-9d3c-4fc3c2b65f25
📒 Files selected for processing (9)
README.mddocs/API.mddocs/HLD.mddocs/WORKFLOW_DSL.mdsrc/workflows/dsl/executor.tstemplates/workflows/m0-agentic-tdd.yamltests/unit/readme-positioning.test.tstests/unit/workflows/dsl/executor.test.tstests/unit/workflows/dsl/templates.test.ts
✅ Files skipped from review due to trivial changes (2)
- docs/WORKFLOW_DSL.md
- docs/HLD.md
🚧 Files skipped from review as they are similar to previous changes (6)
- docs/API.md
- templates/workflows/m0-agentic-tdd.yaml
- src/workflows/dsl/executor.ts
- tests/unit/workflows/dsl/templates.test.ts
- tests/unit/workflows/dsl/executor.test.ts
- tests/unit/readme-positioning.test.ts
8c80029 to
08f16ee
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@README.md`:
- Line 5: The README uses an h3 heading "Claude Code's adversarial layer for
code that survives review." immediately after the h1, causing a heading-level
jump (MD001); update that line by changing the leading "###" to "##" (or convert
the line to plain paragraph text) so the heading level increments properly and
satisfies the markdown lint rule.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: fd0f1cad-0469-43a9-a0a9-15d059996826
📒 Files selected for processing (9)
README.mddocs/API.mddocs/HLD.mddocs/WORKFLOW_DSL.mdsrc/workflows/dsl/executor.tstemplates/workflows/m0-agentic-tdd.yamltests/unit/readme-positioning.test.tstests/unit/workflows/dsl/executor.test.tstests/unit/workflows/dsl/templates.test.ts
✅ Files skipped from review due to trivial changes (2)
- docs/HLD.md
- docs/API.md
🚧 Files skipped from review as they are similar to previous changes (6)
- tests/unit/readme-positioning.test.ts
- docs/WORKFLOW_DSL.md
- src/workflows/dsl/executor.ts
- tests/unit/workflows/dsl/executor.test.ts
- templates/workflows/m0-agentic-tdd.yaml
- tests/unit/workflows/dsl/templates.test.ts
08f16ee to
e08586d
Compare
Summary
Verification
Linear
Refs AIG-631. Related M0 workflow/process hardening for AIG-629 follow-up.
Summary by CodeRabbit
New Features
Documentation
Tests