[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M751ASP0X29DNSP23FPHTKX7":3,"skill-same:01M751ASP0X29DNSP23FPHTKX7":52},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":29,"commitSha":30,"skillDirectory":31,"forksCount":32,"repositoryHtmlUrl":33,"repositoryHomepageUrl":6,"ownerHtmlUrl":34,"ownerBlogUrl":35,"ownerDescription":36,"updatedAt":37,"install":38,"resources":51},"01M751ASP0X29DNSP23FPHTKX7","x-internal-rnf-validate",null,"Validate RNF no-relax markers and justification gate for override inheritance","review-bench\u002Federcnj_ia-dev-environment","review-bench","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F286778065?v=4","01M7517F9NTEPDZDAXJBR30FWT","ReviewBench","01M7517FAC9F4P7TGWCNJ8VYVW",0,"MIT","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fx-internal-rnf-validate\u002FSKILL.md",[],[],"2026-11-12 13:55:43",false,"---\nname: x-internal-rnf-validate\ndescription: Validate RNF no-relax markers and justification gate for override inheritance\nvisibility: internal\nuser-invocable: false\nmodel: haiku\nallowed-tools: [Bash]\nrequires-capabilities: []\n---\n\n> 🔒 **INTERNAL SKILL** — Invoked only by other skills via the Skill tool. Not user-invocable.\n\n# Skill: x-internal-rnf-validate\n\n## Purpose\n\nValidates a list of RNF override specs against the no-relax marker and justification gate rules:\n\n- `SECURITY` and `COMPLIANCE` are **hard-blocked** — cannot be relaxed even with justification.\n- All other categories that are relaxed **require a non-blank justification**.\n- Categories marked `norelax` pass unconditionally.\n\nDelegates to `XInternalRnfValidateCommand` (CLI adapter) and `ValidateRNFNoRelaxUseCase` (application layer) which calls `RNFNoRelaxValidator` (domain).\n\n## Parameters\n\n| Flag | Required | Format | Description |\n| :--- | :--- | :--- | :--- |\n| `--override` | No (repeatable) | See formats below | One RNF override spec per flag |\n| `--dry-run` | No | flag | Parse and report only; always returns exit 0 |\n\n### Override Spec Formats\n\n| Format | Example | Meaning |\n| :--- | :--- | :--- |\n| `CATEGORY:norelax` | `PERFORMANCE:norelax` | RNF carried forward unchanged |\n| `CATEGORY:norelax:originalValue` | `SECURITY:norelax:TLS 1.3` | Same, with original value context |\n| `CATEGORY:relaxed:originalValue:newValue:justification` | `PERFORMANCE:relaxed:P99\u003C200ms:P99\u003C500ms:Batch path` | Relaxed RNF with mandatory justification |\n\n`CATEGORY` must be a valid `RNFCategory` enum value (case-insensitive): `PERFORMANCE`, `SCALABILITY`, `RELIABILITY`, `SECURITY`, `COMPLIANCE`, `OBSERVABILITY`, `DATA_INTEGRITY`, `MAINTAINABILITY`, `PORTABILITY`, `USABILITY`.\n\n## Exit Codes\n\n| Exit | Meaning |\n| :--- | :--- |\n| 0 | All overrides valid (or `--dry-run` mode) |\n| 1 | Validation failure — one or more hard-block or missing-justification violations |\n| 2 | Execution error — malformed spec or unexpected exception |\n\n## Examples\n\n### All no-relax (passes)\n```bash\nx-internal-rnf-validate \\\n  --override PERFORMANCE:norelax:P99\u003C200ms \\\n  --override SECURITY:norelax:TLS1.3\n# exit 0\n```\n\n### Relaxed with justification (passes)\n```bash\nx-internal-rnf-validate \\\n  --override PERFORMANCE:relaxed:P99\u003C200ms:P99\u003C500ms:Batch processing path\n# exit 0\n```\n\n### Hard-blocked category (fails)\n```bash\nx-internal-rnf-validate \\\n  --override SECURITY:relaxed:TLS1.3:TLS1.2:Legacy client\n# exit 1 — Violation: RNF category SECURITY is mandatory and cannot be relaxed\n```\n\n### Relaxed without justification (fails)\n```bash\nx-internal-rnf-validate \\\n  --override PERFORMANCE:relaxed:P99\u003C200ms:P99\u003C1s:\n# exit 1 — Violation: RNF category PERFORMANCE override requires justification\n```\n\n### Dry run with violation (reports but exits 0)\n```bash\nx-internal-rnf-validate --dry-run \\\n  --override COMPLIANCE:relaxed:PCI-DSS-L1:PCI-DSS-L2:Cost reduction\n# exit 0 (violations printed but not blocking)\n```\n\n## Integration Notes\n\n| Caller | Usage |\n| :--- | :--- |\n| `x-refine-story` | Validates RNF inheritance constraints before story refinement is approved |\n| `x-internal-create-story` | Validates override specs declared in epic-level story specs |\n\nImplementation classes:\n- Application: `dev.iadev.application.capability.ValidateRNFNoRelaxUseCase`\n- CLI adapter: `dev.iadev.adapter.inbound.cli.XInternalRnfValidateCommand`\n- Domain: `dev.iadev.domain.capability.RNFNoRelaxValidator`\n\n**Haiku eligibility (Rule 23 §criterion a):** utility command execution — no architectural choices or design reasoning required.\n","> 🔒 **INTERNAL SKILL** — Invoked only by other skills via the Skill tool. Not user-invocable.\n\n# Skill: x-internal-rnf-validate\n\n## Purpose\n\nValidates a list of RNF override specs against the no-relax marker and justification gate rules:\n\n- `SECURITY` and `COMPLIANCE` are **hard-blocked** — cannot be relaxed even with justification.\n- All other categories that are relaxed **require a non-blank justification**.\n- Categories marked `norelax` pass unconditionally.\n\nDelegates to `XInternalRnfValidateCommand` (CLI adapter) and `ValidateRNFNoRelaxUseCase` (application layer) which calls `RNFNoRelaxValidator` (domain).\n\n## Parameters\n\n| Flag | Required | Format | Description |\n| :--- | :--- | :--- | :--- |\n| `--override` | No (repeatable) | See formats below | One RNF override spec per flag |\n| `--dry-run` | No | flag | Parse and report only; always returns exit 0 |\n\n### Override Spec Formats\n\n| Format | Example | Meaning |\n| :--- | :--- | :--- |\n| `CATEGORY:norelax` | `PERFORMANCE:norelax` | RNF carried forward unchanged |\n| `CATEGORY:norelax:originalValue` | `SECURITY:norelax:TLS 1.3` | Same, with original value context |\n| `CATEGORY:relaxed:originalValue:newValue:justification` | `PERFORMANCE:relaxed:P99\u003C200ms:P99\u003C500ms:Batch path` | Relaxed RNF with mandatory justification |\n\n`CATEGORY` must be a valid `RNFCategory` enum value (case-insensitive): `PERFORMANCE`, `SCALABILITY`, `RELIABILITY`, `SECURITY`, `COMPLIANCE`, `OBSERVABILITY`, `DATA_INTEGRITY`, `MAINTAINABILITY`, `PORTABILITY`, `USABILITY`.\n\n## Exit Codes\n\n| Exit | Meaning |\n| :--- | :--- |\n| 0 | All overrides valid (or `--dry-run` mode) |\n| 1 | Validation failure — one or more hard-block or missing-justification violations |\n| 2 | Execution error — malformed spec or unexpected exception |\n\n## Examples\n\n### All no-relax (passes)\n```bash\nx-internal-rnf-validate \\\n  --override PERFORMANCE:norelax:P99\u003C200ms \\\n  --override SECURITY:norelax:TLS1.3\n# exit 0\n```\n\n### Relaxed with justification (passes)\n```bash\nx-internal-rnf-validate \\\n  --override PERFORMANCE:relaxed:P99\u003C200ms:P99\u003C500ms:Batch processing path\n# exit 0\n```\n\n### Hard-blocked category (fails)\n```bash\nx-internal-rnf-validate \\\n  --override SECURITY:relaxed:TLS1.3:TLS1.2:Legacy client\n# exit 1 — Violation: RNF category SECURITY is mandatory and cannot be relaxed\n```\n\n### Relaxed without justification (fails)\n```bash\nx-internal-rnf-validate \\\n  --override PERFORMANCE:relaxed:P99\u003C200ms:P99\u003C1s:\n# exit 1 — Violation: RNF category PERFORMANCE override requires justification\n```\n\n### Dry run with violation (reports but exits 0)\n```bash\nx-internal-rnf-validate --dry-run \\\n  --override COMPLIANCE:relaxed:PCI-DSS-L1:PCI-DSS-L2:Cost reduction\n# exit 0 (violations printed but not blocking)\n```\n\n## Integration Notes\n\n| Caller | Usage |\n| :--- | :--- |\n| `x-refine-story` | Validates RNF inheritance constraints before story refinement is approved |\n| `x-internal-create-story` | Validates override specs declared in epic-level story specs |\n\nImplementation classes:\n- Application: `dev.iadev.application.capability.ValidateRNFNoRelaxUseCase`\n- CLI adapter: `dev.iadev.adapter.inbound.cli.XInternalRnfValidateCommand`\n- Domain: `dev.iadev.domain.capability.RNFNoRelaxValidator`\n\n**Haiku eligibility (Rule 23 §criterion a):** utility command execution — no architectural choices or design reasoning required.\n",{"name":5,"model":24,"visibility":25,"description":7,"allowed-tools":26,"user-invocable":20,"requires-capabilities":28},"haiku","internal",[27],"Bash",[],"main","952a630c6f38d193a349d86fa18db1de8843e837",".claude\u002Fskills\u002Fx-internal-rnf-validate",1,"https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment","https:\u002F\u002Fgithub.com\u002Freview-bench","https:\u002F\u002Freview-bench.ai","An open benchmark for AI code review.","2026-10-27 06:56:37",{"source":8,"skillName":5,"commands":39,"prompt":49,"zipAvailable":50},[40,43,46],{"tool":41,"command":42},"npx","npx skills add review-bench\u002Federcnj_ia-dev-environment --skill x-internal-rnf-validate",{"tool":44,"command":45},"bunx","bunx skills add review-bench\u002Federcnj_ia-dev-environment --skill x-internal-rnf-validate",{"tool":47,"command":48},"pnpm","pnpm dlx skills add review-bench\u002Federcnj_ia-dev-environment --skill x-internal-rnf-validate","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fx-internal-rnf-validate\u002FSKILL.md",true,[],[53,60,67,74,81,88],{"skillNo":54,"name":55,"nameZh":6,"description":56,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":57,"categories":58,"keywords":59,"publishedAt":19},"01M757M8J48TQ1Y3X25GSJBXAS","x-parallel-eval","Detects and classifies file-collision risks between work units (tasks, stories, or epic phases) before parallel execution. Reads ## File Footprint blocks produced by x-task-plan \u002F x-story-plan, applies the parallelism-heuristics knowledge pack (hard \u002F regen \u002F soft categories + hotspot overrides), and emits a collision matrix + serialization recommendation in Markdown (default) or JSON.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fx-parallel-eval\u002FSKILL.md",[],[],{"skillNo":61,"name":62,"nameZh":6,"description":63,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":64,"categories":65,"keywords":66,"publishedAt":19},"01M757M57XMR9546S69466HDWT","parallelism-heuristics","Canonical catalog of file-collision heuristics for parallel task, story, and epic execution. Defines the File Footprint block format, the three Conflict Categories (hard \u002F regen \u002F soft), a hotspot list of high-contention paths, and the degrade-with-warning policy. Consumed by x-task-plan, x-story-plan, x-epic-map, x-parallel-eval, and x-dev-*-implement.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fparallelism-heuristics\u002FSKILL.md",[],[],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":19},"01M757M11SZ8P1VCQABT08QVYA","x-watch-pr-ci","Polls a PR's CI checks and Copilot review status, blocking until checks complete or timeout. Returns one of 8 stable exit codes (SUCCESS=0, CI_PENDING_PROCEED=10, CI_FAILED=20, TIMEOUT=30, PR_ALREADY_MERGED=40, NO_CI_CONFIGURED=50, PR_CLOSED=60, PR_NOT_FOUND=70). Writes a versioned state-file for session resume.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fjava-spring\u002Fplatform-claude-code\u002F.claude\u002Fskills\u002Fx-watch-pr-ci\u002FSKILL.md",[],[],{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":19},"01M757KW53K8KFPGADFB4PH949","x-validate-docs","Documentation freshness gate: validates 6 dimensions (readme, api-specs, grpc-proto, adr, skill-docs, system-architecture) against code changes in a PR. Stack-aware — only validates targets declared\u002Fauto-detected from ProjectConfig.documentation.targets. Returns exit non-zero on staleness; produces structured report.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fjava-spring\u002Fplatform-claude-code\u002F.claude\u002Fskills\u002Fx-validate-docs\u002FSKILL.md",[],[],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":19},"01M757KQZHSA10MKC0CR571D60","x-update-system-architecture","Incrementally updates docs\u002Farchitecture\u002Fsystem.md after an epic completes. Appends new entries to the Decision Log (§11) using x-internal-write-report --append (dedup by ## ID: marker) and surgically inserts component\u002Fintegration changes into sections 1-10 via Edit. Idempotent: re-running with the same epic produces a byte-identical system.md.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fjava-spring\u002Fplatform-claude-code\u002F.claude\u002Fskills\u002Fx-update-system-architecture\u002FSKILL.md",[],[],{"skillNo":89,"name":90,"nameZh":6,"description":91,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":94,"publishedAt":19},"01M757KKBT5Q1SVF8DMJBVF46M","x-update-architecture","Incrementally updates the service architecture document with changes from architecture plans. Adds new components, integrations, flows, and ADR references without rewriting existing content. Use after implementation to keep architecture documentation current.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fjava-spring\u002Fplatform-claude-code\u002F.claude\u002Fskills\u002Fx-update-architecture\u002FSKILL.md",[],[]]