flow-change-acceptance

Validates changes to shared IC design flow gates, runners, and verdict rules with bidirectional controls.

26|8|Updated Jun 13, 2026
One-click install
npx skills add https://github.com/vibeic/vibe-ic --skill flow-change-acceptance-vibeic
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: flow-change-acceptance
Source: https://github.com/vibeic/vibe-ic/tree/main/vibe-ic-marketplace/plugins/vibe-ic/skills/flow-change-acceptance
Command: npx skills add https://github.com/vibeic/vibe-ic --skill flow-change-acceptance-vibeic

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Changes to a shared IC design flow affect every design that runs through it, yet a broken gate that silently passes or fails without blocking is indistinguishable from a working one. This Skill defines the acceptance standard for landing flow-level changes so that gates actually block, degrade loudly, and stay chip-agnostic. ## Core Features & Use Cases - Six measured acceptance criteria: bidirectional negative controls, corpus sweeps with zero false positives, prove-by-run evidence for blocking gates, no design/PDK/vendor literals, explicit BLOCKING or ADVISORY declaration, and named records for every decline path. - Compliance contract: ships compliance.yaml with regex-based requirements and a pytest suite (tests/test_compliance.py) to validate report-pattern machinery when the contract changes. - Program-first enforcement: maps criteria to existing checkers such as flow_gate_enforcement_audit, silent_decline_audit, source_chip_agnostic_check, and control_substance_check composed by gatekeeper_review. - Use Case: Before merging a new supply-intent gate into the vibe-ic plugin, run the pre-fix control through pytest, feed the JUnit XML to control_substance_check, sweep the corpus for false positives, and confirm the gate stops the flow by running it. ## Quick Start Ask the AI to review your flow-level change against the flow-change-acceptance criteria and verify the negative control fails pre-fix and passes post-fix.

Frequently Asked Questions about flow-change-acceptance

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I validate a change to a shared design flow gate?▼

Write a negative control that fails against the pre-fix code and passes post-fix, asserting both directions explicitly. Then run a corpus sweep over real existing runs to confirm zero false positives, and if the gate is blocking, prove by execution that the flow actually stopped.

What is a bidirectional negative control in test verification?▼

It is a test pair where one assertion fails on the pre-fix code and its sibling passes after the fix. A clears-the-finding assertion alone passes vacuously when the check does not exist yet, so it is only meaningful paired with its fires counterpart.

Why does a gate that returns FAIL still not block the flow?▼

A gate only blocks if the flow wiring acts on its verdict; an audit found 62 of 72 gates returned FAIL without stopping anything. Declare BLOCKING or ADVISORY explicitly in the gate and prove blocking by running it, not by reading the code.

Can flow-level programs reference specific chip or PDK names?▼

No. Flow-level code must drive decisions from design-supplied inputs like LEF USE records, constraint files, and port lists, never hardcoded pin, cell, PDK, or vendor names. This is enforced in CI by source_chip_agnostic_check.

When should I add a new global release gate versus a local regression test?▼

Prefer fixing the producer or extending the existing behavioral test at the owning boundary. A global gate is justified only by a cross-cutting risk that cannot be covered locally, after reviewing overlap, execution cost, and maintenance ownership.