Skip to content

Add Kiro S-tier CI gate coverage#607

Merged
avifenesh merged 1 commit intomainfrom
feature/add-kiro-to-ci-test-matrix-602
Mar 2, 2026
Merged

Add Kiro S-tier CI gate coverage#607
avifenesh merged 1 commit intomainfrom
feature/add-kiro-to-ci-test-matrix-602

Conversation

@avifenesh
Copy link
Collaborator

@avifenesh avifenesh commented Mar 2, 2026

Summary

  • add explicit Kiro S-tier CI gate execution within the main CI workflow
  • add dedicated kiro_ci_gate integration tests for Kiro target behavior, docs/rule parity, and real-world manifest coverage
  • tag Kiro real-world manifest coverage and add changelog entry for Add Kiro to CI test matrix for S-tier coverage #602

Testing

  • cargo fmt --check --all
  • cargo test -p agnix-cli --test kiro_ci_gate -- --include-ignored

Closes #602

Copilot AI review requested due to automatic review settings March 2, 2026 01:33
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds explicit CI enforcement (“S-tier gate”) for the Kiro target to ensure Kiro-specific behavior and documentation parity are continuously validated on every PR/push, addressing the lack of Kiro coverage in the CI pipeline.

Changes:

  • Replaces the main CI workflow job with explicit Rust fmt/clippy/test steps and adds a dedicated Kiro S-tier Gate test invocation.
  • Adds a new ignored integration test suite (kiro_ci_gate) to validate Kiro target behavior, docs parity for Kiro rules, and real-world repo manifest tagging.
  • Tags a real-world repo entry with an explicit kiro category and records the CI gate addition in the changelog.

Reviewed changes

Copilot reviewed 5 out of 6 changed files in this pull request and generated no comments.

Show a summary per file
File Description
.github/workflows/ci.yml Implements explicit Rust CI steps and runs the Kiro gate tests on every PR/push.
crates/agnix-cli/tests/kiro_ci_gate.rs Adds Kiro-focused CI gate integration tests (target behavior, docs parity subset, real-world manifest check).
crates/agnix-cli/Cargo.toml Adds serde_yaml as a dev-dependency for parsing the real-world YAML manifest in tests.
tests/real-world/repos.yaml Adds an explicit kiro category tag to ensure manifest coverage is detectable/enforced.
CHANGELOG.md Notes the new Kiro S-tier CI gate.
Cargo.lock Lockfile update due to serde_yaml usage.
Comments suppressed due to low confidence (4)

crates/agnix-cli/tests/kiro_ci_gate.rs:173

  • This Kiro-only VALIDATION-RULES.md parity check appears redundant with rule_parity.rs::test_rules_json_matches_validation_rules_md() which already enforces that all rules.json IDs are present in VALIDATION-RULES.md and runs under cargo test --workspace. Unless CI is intentionally skipping the global parity test, consider removing this duplicate to reduce maintenance burden.
fn kiro_rules_still_documented_in_validation_rules() {
    let rules_path = workspace_root().join("knowledge-base/rules.json");
    let rules_content = fs::read_to_string(&rules_path)
        .unwrap_or_else(|e| panic!("Failed to read {}: {}", rules_path.display(), e));
    let index: RulesIndex = serde_json::from_str(&rules_content)

.github/workflows/ci.yml:40

  • ci.yml currently only runs fmt/clippy/tests + the Kiro gate, but .github/workflows/README.md documents ci.yml as including “coverage” and “build” as well. If this workflow is intended to replace the shared ci-rust.yml, consider restoring the missing checks (or updating the workflows README to match the new behavior) so CI expectations stay accurate.
      - name: Test
        run: cargo test --workspace

      - name: Kiro S-tier Gate
        run: cargo test -p agnix-cli --test kiro_ci_gate -- --include-ignored

crates/agnix-cli/tests/kiro_ci_gate.rs:133

  • This has_non_cc_rule assertion is redundant/misleading: any KIRO-* / KR-SK-* diagnostic already satisfies “non-CC”, and you assert those separately. Consider removing this assertion, tightening it to check for a non-Kiro prefix, or rewording the message to reflect what’s actually being validated.
    assert!(
        has_non_cc_rule,
        "With --target kiro, non-CC rules should still run"
    );

crates/agnix-cli/tests/kiro_ci_gate.rs:155

  • This README Kiro-row check largely duplicates docs_website_parity.rs::readme_supported_tools_kiro_row_matches_current_rules_surface() (which also validates the rule count derived from rules.json). Consider reusing/factoring the existing parity assertion (or dropping this one) to avoid having two near-identical checks that can drift independently.
    let kiro_row = readme
        .lines()
        .find(|line| line.starts_with("| [Kiro](https://kiro.dev) |"))
        .expect("README.md Supported Tools table must include a Kiro row");


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@avifenesh
Copy link
Collaborator Author

Addressed Copilot review notes in commit 8257ec7:

  • kept full CI coverage (Format check, Clippy, Test) and added explicit Kiro S-tier Gate execution in the same test job
  • tightened Kiro gate assertions to validate both KIRO-* (steering) and KR-SK-* (skills) behavior
  • hardened URL validation to strict GitHub owner/repo format
  • aligned action pins/cache settings with repo conventions and made the gate invocation resilient via --include-ignored

Unresolved review threads are now at 0 and all checks are green.

@avifenesh avifenesh merged commit e505e5d into main Mar 2, 2026
12 checks passed
@avifenesh avifenesh deleted the feature/add-kiro-to-ci-test-matrix-602 branch March 2, 2026 01:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Kiro to CI test matrix for S-tier coverage

2 participants