@ccoalm/ccl-skills 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (561) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +49 -0
  3. package/dist/assets/marketplace/.agents/plugins/marketplace.json +12 -0
  4. package/dist/assets/marketplace/.claude-plugin/marketplace.json +13 -0
  5. package/dist/assets/marketplace/marketplace-manifest.json +12 -0
  6. package/dist/assets/marketplace/plugins/ccl-skills/.claude-plugin/marketplace.json +16 -0
  7. package/dist/assets/marketplace/plugins/ccl-skills/.claude-plugin/plugin.json +5 -0
  8. package/dist/assets/marketplace/plugins/ccl-skills/.codex-plugin/plugin.json +5 -0
  9. package/dist/assets/marketplace/plugins/ccl-skills/.worktree-only +3 -0
  10. package/dist/assets/marketplace/plugins/ccl-skills/agent-context/session-start.md +45 -0
  11. package/dist/assets/marketplace/plugins/ccl-skills/agent-context/subagent-start.md +12 -0
  12. package/dist/assets/marketplace/plugins/ccl-skills/hooks/AGENTS.md +19 -0
  13. package/dist/assets/marketplace/plugins/ccl-skills/hooks/guard-delegation-owner.sh +125 -0
  14. package/dist/assets/marketplace/plugins/ccl-skills/hooks/guard-edit-isolation.sh +102 -0
  15. package/dist/assets/marketplace/plugins/ccl-skills/hooks/guard-merge-authorization.sh +1156 -0
  16. package/dist/assets/marketplace/plugins/ccl-skills/hooks/hooks.json +131 -0
  17. package/dist/assets/marketplace/plugins/ccl-skills/hooks/merge-authorization-prompt.sh +142 -0
  18. package/dist/assets/marketplace/plugins/ccl-skills/hooks/owner-dispatch-guard.sh +12 -0
  19. package/dist/assets/marketplace/plugins/ccl-skills/hooks/owner-dispatch-stop.sh +13 -0
  20. package/dist/assets/marketplace/plugins/ccl-skills/hooks/remind-post-merge-cleanup.sh +144 -0
  21. package/dist/assets/marketplace/plugins/ccl-skills/hooks/session-context.sh +87 -0
  22. package/dist/assets/marketplace/plugins/ccl-skills/hooks/session-start.sh +86 -0
  23. package/dist/assets/marketplace/plugins/ccl-skills/hooks/skill-extraction-gate-stop.sh +69 -0
  24. package/dist/assets/marketplace/plugins/ccl-skills/hooks/subagent-start.sh +26 -0
  25. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_guard_delegation_owner.sh +329 -0
  26. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_guard_edit_isolation.sh +322 -0
  27. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_guard_merge_authorization.sh +902 -0
  28. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_merge_authorization_prompt.sh +178 -0
  29. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_remind_post_merge_cleanup.sh +121 -0
  30. package/dist/assets/marketplace/plugins/ccl-skills/hooks/test_session_start.sh +170 -0
  31. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/AGENTS.md +17 -0
  32. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/ccl-skills.ts +564 -0
  33. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/commands/ccl-install-skills.md +14 -0
  34. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/commands/ccl-update-skills.md +44 -0
  35. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/commands/ccl-verify-skills.md +109 -0
  36. package/dist/assets/marketplace/plugins/ccl-skills/packages/opencode-plugin/commands/ccl-worktree-check.md +36 -0
  37. package/dist/assets/marketplace/plugins/ccl-skills/scripts/owner-dispatch/AGENTS.md +28 -0
  38. package/dist/assets/marketplace/plugins/ccl-skills/scripts/owner-dispatch/README.md +276 -0
  39. package/dist/assets/marketplace/plugins/ccl-skills/scripts/owner-dispatch/owner-dispatch.example.json +10 -0
  40. package/dist/assets/marketplace/plugins/ccl-skills/scripts/owner-dispatch/owner-dispatch.sh +1307 -0
  41. package/dist/assets/marketplace/plugins/ccl-skills/scripts/owner-dispatch/test.sh +941 -0
  42. package/dist/assets/marketplace/plugins/ccl-skills/skills/agents-file-coverage-gate/SKILL.md +45 -0
  43. package/dist/assets/marketplace/plugins/ccl-skills/skills/agents-file-coverage-gate/agents/openai.yaml +4 -0
  44. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/SKILL.md +188 -0
  45. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/agents/openai.yaml +4 -0
  46. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/android-dev.md +92 -0
  47. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/flutter-dev.md +80 -0
  48. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/ios-dev.md +72 -0
  49. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/kotlin-multiplatform.md +93 -0
  50. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/mobile-platform-boundaries.md +77 -0
  51. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/mobile-quality-release.md +77 -0
  52. package/dist/assets/marketplace/plugins/ccl-skills/skills/app-cross-platform-dev/references/source-evidence-map.md +64 -0
  53. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/SKILL.md +353 -0
  54. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/agents/openai.yaml +4 -0
  55. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/references/client-routing.md +419 -0
  56. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/references/manual-invocation-and-prompts.md +126 -0
  57. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/references/staged-review-contract.md +197 -0
  58. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/references/timeout-auth-and-capabilities.md +179 -0
  59. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/AGENTS.md +98 -0
  60. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/classify_envelope.py +93 -0
  61. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/classify_timeout_exit.sh +15 -0
  62. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/claude_review.sh +1438 -0
  63. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/codex_review.sh +324 -0
  64. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/concern_excerpt.py +295 -0
  65. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/egress_schema.py +214 -0
  66. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/init_policy_matrix.py +642 -0
  67. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/kimi_packet_mcp.py +181 -0
  68. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/kimi_review.sh +1165 -0
  69. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/opencode_review.sh +1190 -0
  70. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/parse_cli_review.py +946 -0
  71. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/parse_opencode_review.py +474 -0
  72. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/parse_probe_result.py +1899 -0
  73. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/parse_review_json.py +200 -0
  74. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/review_gate.py +2845 -0
  75. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/review_gate.sh +6 -0
  76. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/run_claude_capture.py +71 -0
  77. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/runtime-surface-verification-design.md +53 -0
  78. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_classify_envelope.sh +68 -0
  79. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_claude_review_probe.sh +2311 -0
  80. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_cli_review_wrappers.sh +1832 -0
  81. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_code_review_identity.sh +73 -0
  82. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_concern_excerpt.sh +245 -0
  83. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_egress_schema.sh +177 -0
  84. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_init_policy_matrix.sh +272 -0
  85. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_kimi_packet_mcp.py +195 -0
  86. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_opencode_review_concurrency.sh +120 -0
  87. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_opencode_review_retry.sh +1005 -0
  88. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_parse_opencode_review.sh +258 -0
  89. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_parse_probe_result.sh +574 -0
  90. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_parse_review_json.sh +349 -0
  91. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_review_client_compat.py +434 -0
  92. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_review_client_order.sh +264 -0
  93. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/test_review_gate.sh +2412 -0
  94. package/dist/assets/marketplace/plugins/ccl-skills/skills/code-review/scripts/verify_native_skill_binding.py +123 -0
  95. package/dist/assets/marketplace/plugins/ccl-skills/skills/defect-diagnosis/SKILL.md +153 -0
  96. package/dist/assets/marketplace/plugins/ccl-skills/skills/defect-diagnosis/agents/openai.yaml +4 -0
  97. package/dist/assets/marketplace/plugins/ccl-skills/skills/defect-diagnosis/references/diagnosis-playbook.md +54 -0
  98. package/dist/assets/marketplace/plugins/ccl-skills/skills/defect-diagnosis/references/prevention-routing.md +36 -0
  99. package/dist/assets/marketplace/plugins/ccl-skills/skills/feature-risk-router/SKILL.md +69 -0
  100. package/dist/assets/marketplace/plugins/ccl-skills/skills/feature-risk-router/agents/openai.yaml +4 -0
  101. package/dist/assets/marketplace/plugins/ccl-skills/skills/feature-risk-router/references/security-review-gate.md +41 -0
  102. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/SKILL.md +165 -0
  103. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/agents/openai.yaml +4 -0
  104. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/api-security-boundaries.md +47 -0
  105. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/architecture-playbook.md +160 -0
  106. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/artifact-generation-architecture.md +37 -0
  107. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/audit-history-architecture.md +29 -0
  108. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/bulk-workflow-architecture.md +33 -0
  109. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/config-rule-routing-architecture.md +34 -0
  110. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/cross-cutting-concerns.md +72 -0
  111. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/data-modeling-and-migrations.md +79 -0
  112. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/data-platform-architecture.md +210 -0
  113. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/dependency-platform.md +105 -0
  114. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/developer-tooling-architecture.md +38 -0
  115. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/error-contract-architecture.md +36 -0
  116. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/event-driven-architecture.md +260 -0
  117. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/http-gateway-architecture.md +74 -0
  118. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/mq-consumer-architecture.md +38 -0
  119. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/multi-tenant-isolation.md +275 -0
  120. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/notification-architecture.md +25 -0
  121. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/ops-checklist.md +57 -0
  122. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/performance-capacity-architecture.md +38 -0
  123. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/protobuf-contract-architecture.md +119 -0
  124. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/redis-cache-coordination.md +93 -0
  125. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/release-runtime-readiness.md +65 -0
  126. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/replay-comparison-architecture.md +26 -0
  127. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/runtime-observability.md +94 -0
  128. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/service-scaffold.md +76 -0
  129. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/source-evidence-map.md +55 -0
  130. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-architecture/references/workflow-state-architecture.md +38 -0
  131. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/SKILL.md +159 -0
  132. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/agents/openai.yaml +4 -0
  133. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/artifact-generation-patterns.md +37 -0
  134. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/audit-history-patterns.md +28 -0
  135. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/bulk-import-export-patterns.md +56 -0
  136. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/config-rule-routing-patterns.md +38 -0
  137. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/data-access-patterns.md +55 -0
  138. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/db-schema-and-dal-patterns.md +109 -0
  139. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/dependency-client-patterns.md +130 -0
  140. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/developer-tooling-patterns.md +70 -0
  141. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/domain-feature-patterns.md +78 -0
  142. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/engineering-patterns.md +119 -0
  143. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/error-contract-patterns.md +55 -0
  144. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/feature-playbook.md +61 -0
  145. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/http-gateway-client-patterns.md +76 -0
  146. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/mq-consumer-patterns.md +55 -0
  147. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/notification-patterns.md +42 -0
  148. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/observability-implementation-patterns.md +101 -0
  149. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/performance-capacity-patterns.md +44 -0
  150. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/protobuf-contract-patterns.md +72 -0
  151. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/public-api-integration-patterns.md +56 -0
  152. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/quality-and-testing-patterns.md +91 -0
  153. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/redis-cache-lock-patterns.md +123 -0
  154. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/release-ops-patterns.md +112 -0
  155. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/reliability-patterns.md +83 -0
  156. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/replay-comparison-patterns.md +32 -0
  157. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/scaffold-and-codegen.md +86 -0
  158. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/source-evidence-map.md +54 -0
  159. package/dist/assets/marketplace/plugins/ccl-skills/skills/go-microservice-dev/references/state-machine-task-patterns.md +45 -0
  160. package/dist/assets/marketplace/plugins/ccl-skills/skills/grill-me/SKILL.md +80 -0
  161. package/dist/assets/marketplace/plugins/ccl-skills/skills/grill-me/agents/openai.yaml +4 -0
  162. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/SKILL.md +117 -0
  163. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/agents/openai.yaml +4 -0
  164. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-approval-auto-reviewer.md +106 -0
  165. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-command-sandbox.md +441 -0
  166. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-context-freshness.md +47 -0
  167. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-credentials-auth.md +13 -0
  168. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-extensions-skills.md +13 -0
  169. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-file-edit-protocol.md +129 -0
  170. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-ide-integration.md +5 -0
  171. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-input-ingestion.md +13 -0
  172. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-instruction-composition.md +13 -0
  173. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-lifecycle-hooks.md +92 -0
  174. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-messaging.md +5 -0
  175. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-runtime-bootstrap.md +5 -0
  176. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-session-persistence.md +448 -0
  177. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-task-orchestration.md +13 -0
  178. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-tool-dispatch.md +123 -0
  179. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/agent-turn-lifecycle.md +131 -0
  180. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/inference-capacity-operations.md +162 -0
  181. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/llm-client-gateway.md +156 -0
  182. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/model-prompt-evaluation.md +146 -0
  183. package/dist/assets/marketplace/plugins/ccl-skills/skills/llm-inference-integration/references/retrieval-agent-safety.md +273 -0
  184. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/SKILL.md +202 -0
  185. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/agents/openai.yaml +4 -0
  186. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/contracts-and-state.md +62 -0
  187. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/cross-stack-alignment.md +94 -0
  188. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/framework-choice.md +76 -0
  189. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/online-practice-uptake.md +56 -0
  190. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/platform-capabilities.md +91 -0
  191. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/product-page-checklist.md +40 -0
  192. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/qa-release.md +72 -0
  193. package/dist/assets/marketplace/plugins/ccl-skills/skills/miniapp-product-dev/references/source-evidence-map.md +82 -0
  194. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-agent-delegation/SKILL.md +103 -0
  195. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-agent-delegation/agents/openai.yaml +5 -0
  196. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-agent-delegation/references/multi-agent-delegation-playbook.md +100 -0
  197. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/SKILL.md +70 -0
  198. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/agents/openai.yaml +4 -0
  199. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/references/public-data-acquisition.md +549 -0
  200. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/references/public-disclosure-channels.md +97 -0
  201. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/references/research-prompts.md +66 -0
  202. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/scripts/AGENTS.md +32 -0
  203. package/dist/assets/marketplace/plugins/ccl-skills/skills/multi-perspective-research/scripts/test-public-data-acquisition-recipes.sh +379 -0
  204. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/SKILL.md +244 -0
  205. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/agents/openai.yaml +4 -0
  206. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/alerting-and-on-call.md +76 -0
  207. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/framework-middleware-checklist.md +142 -0
  208. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/infra-component-deployment.md +268 -0
  209. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/log-correlation-recipe.md +124 -0
  210. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/log-schema-canonical.md +208 -0
  211. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/metrics-conventions.md +105 -0
  212. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/obs-stack-architecture.md +107 -0
  213. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/sli-slo-design.md +95 -0
  214. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-observability/references/source-register.md +11 -0
  215. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/SKILL.md +303 -0
  216. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/agents/openai.yaml +4 -0
  217. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/canary-and-rollout-strategy.md +163 -0
  218. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/config-center-via-etcd.md +245 -0
  219. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/custom-control-plane-boundary.md +298 -0
  220. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/deploy-cli-concrete-recipe.md +312 -0
  221. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/deploy-pipeline.md +165 -0
  222. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/env-and-lane-matrix.md +126 -0
  223. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/lane-orchestration-control-plane.md +383 -0
  224. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/multi-region-and-cluster.md +135 -0
  225. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/promotion-gate-and-review.md +149 -0
  226. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/python-package-registry-release.md +462 -0
  227. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/rollback-playbook.md +123 -0
  228. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/secret-and-config-management.md +231 -0
  229. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-release-engineering/references/version-authority-and-deprecation.md +21 -0
  230. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/SKILL.md +276 -0
  231. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/agents/openai.yaml +4 -0
  232. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/dual-sidecar-and-traffic-config-center.md +127 -0
  233. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/framework-middleware.md +143 -0
  234. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/grpc-authority-workaround.md +90 -0
  235. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/http-response-envelope-contract.md +24 -0
  236. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/mesh-architecture.md +127 -0
  237. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/multi-env-routing.md +192 -0
  238. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/protobuf-http-contract-signals.md +64 -0
  239. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/retry-timeout-circuit-breaker.md +124 -0
  240. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/rpc-framework-recipe.md +494 -0
  241. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/service-discovery-choice.md +113 -0
  242. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/service-discovery-migration-playbook.md +231 -0
  243. package/dist/assets/marketplace/plugins/ccl-skills/skills/platform-service-connectivity/references/service-discovery-recipe.md +131 -0
  244. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/SKILL.md +235 -0
  245. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/agents/openai.yaml +4 -0
  246. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/adr-convention.md +146 -0
  247. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/algorithm-launch-checklist.md +30 -0
  248. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/algorithm-launch-evaluation-report-template.md +25 -0
  249. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/algorithm-launch-execution-spec.md +108 -0
  250. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/algorithm-launch-sop.md +457 -0
  251. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/algorithm-launch-templates.md +24 -0
  252. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/artifact-egress-confidentiality.md +58 -0
  253. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/code-review-checklist.md +86 -0
  254. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/cross-repo-coordination.md +46 -0
  255. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/delivery-lifecycle.md +192 -0
  256. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/design-review-gate-mechanics.md +62 -0
  257. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/design-routing-and-readiness.md +45 -0
  258. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/diagnostic-spec-match-gate.md +36 -0
  259. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/dispatch-owner-skills.md +35 -0
  260. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/dormant-code-activation.md +47 -0
  261. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/existing-project-assessment-report.md +223 -0
  262. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/external-skill-augmentation.md +46 -0
  263. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/feature-deprecation-cascade.md +15 -0
  264. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/high-risk-resilience-gates.md +73 -0
  265. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/implementation-completeness-and-minimality.md +120 -0
  266. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/implementation-entry-reentry-gate.md +122 -0
  267. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/modular-monolith-heuristic.md +105 -0
  268. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/pre-final-continuation-gate.md +115 -0
  269. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/problem-resolution-and-learning.md +62 -0
  270. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/quality-attributes.md +112 -0
  271. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/quality-remediation-program.md +88 -0
  272. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/rd-standards-doc-family-checklist.md +27 -0
  273. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/refactoring-discipline.md +52 -0
  274. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/review-reception.md +34 -0
  275. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/shared-gate-artifact-classification.md +76 -0
  276. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/source-evidence-map.md +31 -0
  277. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/status-tracker-sync.md +77 -0
  278. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/sync-spec-repo-contract.md +25 -0
  279. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/verify-developer-experience.md +34 -0
  280. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/references/worktree-mechanics.md +55 -0
  281. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/scripts/AGENTS.md +18 -0
  282. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-rd-workflow/scripts/check-agent-contract-coverage.sh +213 -0
  283. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/SKILL.md +136 -0
  284. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/agents/openai.yaml +9 -0
  285. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/analytics-visualization-interactions.md +206 -0
  286. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/behavioral-aesthetic-logic.md +108 -0
  287. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/complex-creation-interactions.md +194 -0
  288. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/design-execution-checklist.md +214 -0
  289. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/design-impl-naming-and-versioning.md +53 -0
  290. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/design-intake-and-acceptance.md +129 -0
  291. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/design-system-source-of-truth.md +97 -0
  292. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/external-ui-ux-quality-benchmarks.md +79 -0
  293. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/frontend-code-evidence-map.md +63 -0
  294. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/interaction-design-patterns.md +146 -0
  295. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/layout-recipes-and-screenshot-acceptance.md +250 -0
  296. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/multi-project-token-consistency.md +237 -0
  297. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/multi-stack-strategy.md +65 -0
  298. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/operational-processing-workflows.md +237 -0
  299. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/platform-mobile-patterns.md +324 -0
  300. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/platform-web-desktop-patterns.md +456 -0
  301. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/product-lifecycle-acceptance-and-iteration.md +114 -0
  302. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/product-surface-patterns.md +79 -0
  303. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/resource-management-interactions.md +113 -0
  304. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/scenario-community-patterns.md +133 -0
  305. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/source-map.md +130 -0
  306. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/tokens-and-components.md +47 -0
  307. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/trust-sensitive-ai-and-data-patterns.md +96 -0
  308. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/ui-ux-audit.md +106 -0
  309. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/ui-ux-design-development.md +176 -0
  310. package/dist/assets/marketplace/plugins/ccl-skills/skills/product-ui-ux-design/references/visual-craft.md +111 -0
  311. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/SKILL.md +157 -0
  312. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/agents/openai.yaml +4 -0
  313. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/ai-service-integration-boundaries.md +57 -0
  314. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/api-contract-and-schema.md +62 -0
  315. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/api-security-boundaries.md +39 -0
  316. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/architecture-playbook.md +46 -0
  317. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/async-execution-model.md +24 -0
  318. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/background-jobs-and-scheduling.md +18 -0
  319. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/batch-and-pipeline-architecture.md +11 -0
  320. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/config-secrets-runtime.md +22 -0
  321. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/data-modeling-and-migrations.md +64 -0
  322. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/data-platform-architecture.md +211 -0
  323. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/event-driven-architecture.md +263 -0
  324. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/multi-tenant-isolation.md +281 -0
  325. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/observability-and-ops.md +26 -0
  326. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/packaging-runtime-readiness.md +20 -0
  327. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/redis-cache-coordination.md +41 -0
  328. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/reliability-and-error-contract.md +17 -0
  329. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/source-evidence-map.md +55 -0
  330. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-architecture/references/web-framework-boundaries.md +26 -0
  331. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/SKILL.md +143 -0
  332. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/agents/openai.yaml +4 -0
  333. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/ai-service-wiring-patterns.md +16 -0
  334. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/async-and-worker-patterns.md +24 -0
  335. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/background-job-patterns.md +18 -0
  336. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/batch-and-artifact-patterns.md +13 -0
  337. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/dependency-client-patterns.md +39 -0
  338. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/error-handling-patterns.md +26 -0
  339. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/feature-playbook.md +43 -0
  340. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/observability-implementation-patterns.md +31 -0
  341. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/project-structure-and-tooling.md +24 -0
  342. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/public-api-security-patterns.md +52 -0
  343. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/redis-cache-lock-patterns.md +78 -0
  344. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/schema-and-validation-patterns.md +23 -0
  345. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/source-evidence-map.md +56 -0
  346. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/sqlalchemy-and-migrations-patterns.md +99 -0
  347. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/testing-and-quality-patterns.md +61 -0
  348. package/dist/assets/marketplace/plugins/ccl-skills/skills/python-service-dev/references/web-framework-patterns.md +35 -0
  349. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/SKILL.md +91 -0
  350. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/agents/openai.yaml +4 -0
  351. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/config-runtime-readback.md +20 -0
  352. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/mr-merge-authorization.md +31 -0
  353. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/post-release-env-reset.md +31 -0
  354. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/release-closeout-evidence.md +20 -0
  355. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/release-scope-confirmation.md +21 -0
  356. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/tag-and-prod-pipeline-gate.md +20 -0
  357. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/test-scope-prompt.md +24 -0
  358. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-coordination/references/watcher-discipline.md +14 -0
  359. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-doc-writer/SKILL.md +64 -0
  360. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-doc-writer/agents/openai.yaml +4 -0
  361. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-doc-writer/references/comment-safe-release-doc.md +19 -0
  362. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-doc-writer/references/release-evidence-workflow.md +23 -0
  363. package/dist/assets/marketplace/plugins/ccl-skills/skills/release-doc-writer/references/release-testing-scope-section.md +15 -0
  364. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-baseline/SKILL.md +87 -0
  365. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-baseline/agents/openai.yaml +4 -0
  366. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-doc-writer/SKILL.md +130 -0
  367. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-doc-writer/agents/openai.yaml +4 -0
  368. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-doc-writer/references/prd-composition-contract.md +35 -0
  369. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-doc-writer/references/requirement-closure-contract.md +86 -0
  370. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-doc-writer/references/security-four-questions.md +38 -0
  371. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-intent/SKILL.md +91 -0
  372. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-intent/agents/openai.yaml +4 -0
  373. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-scope/SKILL.md +88 -0
  374. package/dist/assets/marketplace/plugins/ccl-skills/skills/requirement-scope/agents/openai.yaml +4 -0
  375. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/SKILL.md +337 -0
  376. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/agents/openai.yaml +4 -0
  377. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/analysis-parse-fix-test-challenge-replay.md +47 -0
  378. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/attribution-verification.md +69 -0
  379. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/bootstrap-slim-c3-obligation-table.md +112 -0
  380. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/coverage-exhaustion-traps.md +45 -0
  381. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/description-authoring.md +162 -0
  382. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/dual-track-review-gate.md +507 -0
  383. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/eval-routing.md +86 -0
  384. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/evidence-card-template.md +51 -0
  385. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/example-domain-preselect.md +79 -0
  386. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/external-practice-controls.md +57 -0
  387. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/extraction-lifecycle-handoff.md +65 -0
  388. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/extraction-quickstart.md +194 -0
  389. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/firing-point-placement.md +75 -0
  390. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/harness-patterns-and-eval.md +286 -0
  391. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/incident-postmortem-extraction.md +190 -0
  392. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/l0-l1-l2-routing.md +114 -0
  393. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/online-skill-review.md +47 -0
  394. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/parallel-stack-references-pattern.md +164 -0
  395. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/r0-leakage-audit.md +90 -0
  396. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/recurring-anti-patterns-checklist.md +320 -0
  397. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/resume-paused-delivery.md +16 -0
  398. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/review-feedback-mining.md +33 -0
  399. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/review-finding-standards.md +57 -0
  400. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/review-rubric.md +40 -0
  401. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/rule-consolidation.md +118 -0
  402. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/skill-listing-budget.md +19 -0
  403. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/source-register.md +254 -0
  404. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/source-to-skill-extraction.md +658 -0
  405. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/two-source-extraction-pattern.md +167 -0
  406. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/uiux-judgment-extraction.md +179 -0
  407. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/uiux-routing-map.md +51 -0
  408. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/references/validation-and-landing.md +180 -0
  409. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/AGENTS.md +18 -0
  410. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/check-ccl-skills.sh +1452 -0
  411. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/check-evidence-card-leak.sh +491 -0
  412. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/check-mr-target-freshness.sh +173 -0
  413. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/check-size-budget.sh +488 -0
  414. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/check-sync-pointers.sh +419 -0
  415. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/eval-golden-trace.rb +197 -0
  416. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/eval-health.rb +327 -0
  417. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/eval-routing-bank.rb +401 -0
  418. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/eval-routing.rb +248 -0
  419. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/generic-r0-leak-scan.sh +282 -0
  420. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/governing-chain-diff.py +321 -0
  421. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/impact-chain-gate.rb +964 -0
  422. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/register-firing-path-resolution.rb +708 -0
  423. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/skill-behavior-eval.py +540 -0
  424. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/source-register-lifecycle.rb +51 -0
  425. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/source-register-pending-status.rb +55 -0
  426. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_ai_coding_implementation_gates.sh +829 -0
  427. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_impact_chain_refscripts.sh +1203 -0
  428. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_r0_status.sh +75 -0
  429. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_register_pending_exclusion.sh +137 -0
  430. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_regressions.sh +173 -0
  431. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_route_drift.sh +377 -0
  432. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_size_budget.sh +833 -0
  433. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_skill_catalog.sh +491 -0
  434. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_ccl_source_register_lifecycle.sh +114 -0
  435. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_mr_target_freshness.sh +261 -0
  436. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_check_sync_pointers.sh +538 -0
  437. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_controlled_escalation_pins.sh +154 -0
  438. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_eval_routing_bank_grader_diagnostics.sh +190 -0
  439. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_eval_routing_bank_surface_binding.sh +178 -0
  440. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_eval_routing_prose_target.sh +86 -0
  441. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_generic_r0_leak_scan.sh +131 -0
  442. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_git_identity_predicate_gate.sh +243 -0
  443. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_governing_chain_diff.sh +419 -0
  444. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_impact_chain_gate_dateless_host.sh +120 -0
  445. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_register_firing_path_resolution.sh +724 -0
  446. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_register_firing_path_wiring.sh +414 -0
  447. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_regression_runner_registration.sh +34 -0
  448. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_routing_bank_integrity.sh +205 -0
  449. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_routing_pointer_integrity.sh +194 -0
  450. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_validate_skill_credential_cwd.sh +61 -0
  451. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_validate_skill_cross_refs.sh +111 -0
  452. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/test_validate_skill_root_depth.sh +53 -0
  453. package/dist/assets/marketplace/plugins/ccl-skills/skills/skill-extraction-workflow/scripts/validate-skill.sh +257 -0
  454. package/dist/assets/marketplace/plugins/ccl-skills/skills/terminal-cli-dev/SKILL.md +98 -0
  455. package/dist/assets/marketplace/plugins/ccl-skills/skills/terminal-cli-dev/agents/openai.yaml +4 -0
  456. package/dist/assets/marketplace/plugins/ccl-skills/skills/terminal-cli-dev/references/input-state-machines.md +36 -0
  457. package/dist/assets/marketplace/plugins/ccl-skills/skills/terminal-cli-dev/references/streaming-rich-output.md +130 -0
  458. package/dist/assets/marketplace/plugins/ccl-skills/skills/terminal-cli-dev/references/terminal-side-channels.md +96 -0
  459. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/SKILL.md +408 -0
  460. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/agents/openai.yaml +4 -0
  461. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/AGENTS.md +18 -0
  462. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/bitable-setup.md +573 -0
  463. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/ci_templates/README.md +120 -0
  464. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/ci_templates/github-actions.yml +119 -0
  465. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/ci_templates/gitlab-ci.yml +76 -0
  466. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/ci_templates/jenkins.Jenkinsfile +106 -0
  467. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/classical-test-design-techniques.md +279 -0
  468. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/gen_report.py +2807 -0
  469. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/makefile-template.md +200 -0
  470. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/report-config-schema.md +272 -0
  471. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/run_pytestless.py +475 -0
  472. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/source-to-case-workflows.md +258 -0
  473. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc-marker-conventions.md +316 -0
  474. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc-review-and-prioritization.md +145 -0
  475. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc_helpers/AGENTS.md +16 -0
  476. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc_helpers/tc.dart +129 -0
  477. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc_helpers/tc.go +197 -0
  478. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc_helpers/tc.py +135 -0
  479. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/tc_helpers/tc.ts +285 -0
  480. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/test_gen_report.py +2144 -0
  481. package/dist/assets/marketplace/plugins/ccl-skills/skills/test-artifact-management/references/update-lifecycle.md +62 -0
  482. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/SKILL.md +212 -0
  483. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/agents/openai.yaml +4 -0
  484. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/ci-fixtures-and-flake-control.md +75 -0
  485. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/client-runtime-test-matrices.md +50 -0
  486. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/data-and-workflow-testing.md +34 -0
  487. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/design-closed-contract-oracles.md +31 -0
  488. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/e2e-real-flow-testing.md +71 -0
  489. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/fitness-functions.md +240 -0
  490. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/integration-contract-testing.md +235 -0
  491. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/non-functional-specialized-scenarios.md +296 -0
  492. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/rd-testing-standard-template.md +126 -0
  493. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/run-killing-mutation-walk.md +43 -0
  494. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/scenario-testing.md +136 -0
  495. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/source-evidence-map.md +59 -0
  496. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/structured-tc-input-translation.md +67 -0
  497. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/test-code-authoring-patterns.md +392 -0
  498. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/test-data-and-determinism.md +39 -0
  499. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/test-topology-and-commands.md +92 -0
  500. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/unit-testing.md +46 -0
  501. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/vendored-contract-drift-checklist.md +64 -0
  502. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/references/verify-enforcement-mechanisms.md +18 -0
  503. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/AGENTS.md +17 -0
  504. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/client-terminal-ansi-check.py +140 -0
  505. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/client-terminal-ansi-check.test.sh +75 -0
  506. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/lang-basics-ast-check.py +170 -0
  507. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/lang-basics-ast-check.test.sh +87 -0
  508. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/lang-basics-go-check.go +198 -0
  509. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/lang-basics-go-check.test.sh +109 -0
  510. package/dist/assets/marketplace/plugins/ccl-skills/skills/testing-strategy/scripts/test_mutation_backup_recipe.sh +237 -0
  511. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/SKILL.md +184 -0
  512. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/agents/openai.yaml +4 -0
  513. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/references/comment-safe-feishu.md +93 -0
  514. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/references/cross-model-co-review.md +3 -0
  515. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/references/delivery-face-closeout.md +60 -0
  516. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/references/doc-charter-first.md +17 -0
  517. package/dist/assets/marketplace/plugins/ccl-skills/skills/tighten-doc/references/session-vantage-leakage.md +58 -0
  518. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/SKILL.md +126 -0
  519. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/agents/openai.yaml +4 -0
  520. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/complex-workspace-patterns.md +47 -0
  521. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/embedded-h5-in-host.md +87 -0
  522. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/react-architecture.md +194 -0
  523. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/source-evidence-map.md +60 -0
  524. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/web-quality-release.md +190 -0
  525. package/dist/assets/marketplace/plugins/ccl-skills/skills/web-react-dev/references/web-ui-quality.md +83 -0
  526. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/SKILL.md +179 -0
  527. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/agents/openai.yaml +4 -0
  528. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/references/shared-branch-rebase.md +25 -0
  529. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/scripts/AGENTS.md +23 -0
  530. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/scripts/test_worktree_status.sh +207 -0
  531. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/scripts/test_worktree_sweep.sh +481 -0
  532. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/scripts/worktree-status.sh +325 -0
  533. package/dist/assets/marketplace/plugins/ccl-skills/skills/worktree-isolation/scripts/worktree-sweep.sh +245 -0
  534. package/dist/assets/release.json +2797 -0
  535. package/dist/claude-adapter.d.ts +9 -0
  536. package/dist/claude-adapter.js +240 -0
  537. package/dist/cli-worker.d.ts +1 -0
  538. package/dist/cli-worker.js +32 -0
  539. package/dist/cli.d.ts +22 -0
  540. package/dist/cli.js +214 -0
  541. package/dist/codex-host.d.ts +30 -0
  542. package/dist/codex-host.js +162 -0
  543. package/dist/fs-safe.d.ts +21 -0
  544. package/dist/fs-safe.js +241 -0
  545. package/dist/index.d.ts +2 -0
  546. package/dist/index.js +1 -0
  547. package/dist/manifest.d.ts +8 -0
  548. package/dist/manifest.js +135 -0
  549. package/dist/opencode-adapter.d.ts +10 -0
  550. package/dist/opencode-adapter.js +416 -0
  551. package/dist/operations.d.ts +3 -0
  552. package/dist/operations.js +956 -0
  553. package/dist/paths.d.ts +20 -0
  554. package/dist/paths.js +4 -0
  555. package/dist/types.d.ts +58 -0
  556. package/dist/types.js +1 -0
  557. package/dist/unified.d.ts +4 -0
  558. package/dist/unified.js +64 -0
  559. package/dist/version.d.ts +2 -0
  560. package/dist/version.js +5 -0
  561. package/package.json +35 -0
@@ -0,0 +1,491 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ # Caller Git routing must never override any fixture `git -C` operation. The
5
+ # c12 hostile-context wrapper reintroduces synthetic values only around checker
6
+ # subprocesses, then restores this clean baseline before later ref mutations.
7
+ unset GIT_DIR GIT_WORK_TREE GIT_INDEX_FILE GIT_OBJECT_DIRECTORY \
8
+ GIT_ALTERNATE_OBJECT_DIRECTORIES GIT_COMMON_DIR GIT_CEILING_DIRECTORIES \
9
+ GIT_NAMESPACE
10
+
11
+ # Catalog contract gate. docs/SKILLS.md is the single authoritative human catalog,
12
+ # and agent-context/session-start.md is the always-on entry routing layer. Nothing
13
+ # stops those two from drifting apart on the next skill added, so the gate below is
14
+ # the reason the catalog is allowed to exist at all (a hand-maintained skill index
15
+ # that can drift is exactly the artifact skill-extraction-workflow forbids).
16
+ #
17
+ # Cases:
18
+ # c1 a skill missing from the catalog => skill_catalog_map_mismatch
19
+ # c2 a "don't use" pointer naming a non-skill => skill_catalog_dangling_pointer
20
+ # c3 a catalog entry with no "don't use" line => skill_catalog_missing_skip_line
21
+ # c4 an `entry` skill absent from the routing region => skill_bootstrap_entry_uncovered
22
+ # c5 the routing region naming a non-skill => skill_bootstrap_dangling_pointer
23
+ # c6 the pristine tree => passes
24
+ # c7 a catalog with no entry/leaf rows => skill_catalog_missing_markers
25
+ # c8 near-miss tokens in a 不用 line (precision) => must NOT block
26
+ # c9 the routing layer file is absent => unevaluated, never contract_ok
27
+ # c10 a row whose only clause is a redirect => skill_catalog_missing_use_line
28
+ # c11 a leaf routed in the always-on layer => skill_bootstrap_leaf_in_region
29
+ # c12 unset base override covers upstream/fallback x empty/changed diff
30
+
31
+ SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd -P)"
32
+ REPO_ROOT="$(git -C "$SCRIPT_DIR" rev-parse --show-toplevel)"
33
+ TEST_ROOT="$(mktemp -d "${TMPDIR:-/tmp}/ccl-skill-catalog.XXXXXX")"
34
+ trap 'rm -rf "$TEST_ROOT"' EXIT
35
+
36
+ CASE_INDEX=0
37
+
38
+ # Each case gets its own clone so a mutation cannot leak into the next one.
39
+ new_case() {
40
+ CASE_INDEX=$((CASE_INDEX + 1))
41
+ CASE_DIR="$TEST_ROOT/case$CASE_INDEX"
42
+ git clone --quiet --no-local "$REPO_ROOT" "$CASE_DIR"
43
+ # This suite owns catalog mutations, not the source repo's accumulated
44
+ # impact-chain diff. Pin each clone to the exact source tree so unrelated
45
+ # branch ancestry cannot make the pristine catalog case red.
46
+ source_head="$(git -C "$REPO_ROOT" rev-parse HEAD)"
47
+ git -C "$CASE_DIR" fetch --quiet --no-tags "$REPO_ROOT" HEAD
48
+ [ "$(git -C "$CASE_DIR" rev-parse FETCH_HEAD)" = "$source_head" ] || {
49
+ echo "catalog fixture fetched the wrong source HEAD" >&2
50
+ exit 1
51
+ }
52
+ git -C "$CASE_DIR" update-ref refs/heads/ccl-test-base FETCH_HEAD
53
+ # The clone carries the default branch; copy the working-tree versions of the
54
+ # three files under test so the gate runs against what is about to land.
55
+ cp "$REPO_ROOT/docs/SKILLS.md" "$CASE_DIR/docs/SKILLS.md"
56
+ cp "$REPO_ROOT/agent-context/session-start.md" "$CASE_DIR/agent-context/session-start.md"
57
+ cp "$REPO_ROOT/skills/skill-extraction-workflow/scripts/check-ccl-skills.sh" \
58
+ "$CASE_DIR/skills/skill-extraction-workflow/scripts/check-ccl-skills.sh"
59
+ }
60
+
61
+ run_case() {
62
+ set +e
63
+ CASE_OUTPUT="$(
64
+ unset GIT_DIR GIT_WORK_TREE GIT_INDEX_FILE GIT_OBJECT_DIRECTORY \
65
+ GIT_ALTERNATE_OBJECT_DIRECTORIES GIT_COMMON_DIR GIT_CEILING_DIRECTORIES \
66
+ GIT_NAMESPACE
67
+ CCL_SKILL_BASE_REF=ccl-test-base \
68
+ bash "$CASE_DIR/skills/skill-extraction-workflow/scripts/check-ccl-skills.sh" "$CASE_DIR" 2>&1
69
+ )"
70
+ CASE_STATUS=$?
71
+ set -e
72
+ }
73
+
74
+ run_case_with_default_base() {
75
+ set +e
76
+ CASE_OUTPUT="$(
77
+ unset CCL_SKILL_BASE_REF GIT_DIR GIT_WORK_TREE GIT_INDEX_FILE \
78
+ GIT_OBJECT_DIRECTORY GIT_ALTERNATE_OBJECT_DIRECTORIES GIT_COMMON_DIR \
79
+ GIT_CEILING_DIRECTORIES GIT_NAMESPACE
80
+ bash "$CASE_DIR/skills/skill-extraction-workflow/scripts/check-ccl-skills.sh" "$CASE_DIR" 2>&1
81
+ )"
82
+ CASE_STATUS=$?
83
+ set -e
84
+ return "$CASE_STATUS"
85
+ }
86
+
87
+ run_case_with_base() {
88
+ local base="$1"
89
+ set +e
90
+ CASE_OUTPUT="$(
91
+ unset GIT_DIR GIT_WORK_TREE GIT_INDEX_FILE GIT_OBJECT_DIRECTORY \
92
+ GIT_ALTERNATE_OBJECT_DIRECTORIES GIT_COMMON_DIR GIT_CEILING_DIRECTORIES \
93
+ GIT_NAMESPACE
94
+ CCL_SKILL_BASE_REF="$base" \
95
+ bash "$CASE_DIR/skills/skill-extraction-workflow/scripts/check-ccl-skills.sh" "$CASE_DIR" 2>&1
96
+ )"
97
+ CASE_STATUS=$?
98
+ set -e
99
+ return "$CASE_STATUS"
100
+ }
101
+
102
+ run_with_hostile_git_context() {
103
+ local git_dir_was_set="${GIT_DIR+x}" git_dir_before="${GIT_DIR-}"
104
+ local git_work_tree_was_set="${GIT_WORK_TREE+x}" git_work_tree_before="${GIT_WORK_TREE-}"
105
+ local git_index_was_set="${GIT_INDEX_FILE+x}" git_index_before="${GIT_INDEX_FILE-}"
106
+ local status
107
+
108
+ export GIT_DIR="$HOSTILE_GIT_DIR"
109
+ export GIT_WORK_TREE="$HOSTILE_GIT_WORK_TREE"
110
+ export GIT_INDEX_FILE="$HOSTILE_GIT_INDEX"
111
+ if "$@"; then
112
+ status=0
113
+ else
114
+ status=$?
115
+ fi
116
+
117
+ if [ "$git_dir_was_set" = x ]; then export GIT_DIR="$git_dir_before"; else unset GIT_DIR; fi
118
+ if [ "$git_work_tree_was_set" = x ]; then export GIT_WORK_TREE="$git_work_tree_before"; else unset GIT_WORK_TREE; fi
119
+ if [ "$git_index_was_set" = x ]; then export GIT_INDEX_FILE="$git_index_before"; else unset GIT_INDEX_FILE; fi
120
+ return "$status"
121
+ }
122
+
123
+ retain_only_ref_at_oid() {
124
+ local oid="$1" expected_ref="$2" label="$3"
125
+ local refs_at_oid expected_label ref_name
126
+ refs_at_oid="$(git -C "$CASE_DIR" for-each-ref --points-at "$oid" --format='%(refname)')"
127
+ while read -r ref_name; do
128
+ if [ -n "$ref_name" ] && [ "$ref_name" != "$expected_ref" ]; then
129
+ git -C "$CASE_DIR" update-ref --no-deref -d "$ref_name"
130
+ fi
131
+ done <<<"$refs_at_oid"
132
+ refs_at_oid="$(git -C "$CASE_DIR" for-each-ref --points-at "$oid" --format='%(refname)')"
133
+ expected_label="${expected_ref:-no ref}"
134
+ [ "$refs_at_oid" = "$expected_ref" ] || {
135
+ echo "FAIL[$label]: expected $expected_label at the fixture base" >&2
136
+ printf '%s\n' "$refs_at_oid" >&2
137
+ exit 1
138
+ }
139
+ }
140
+
141
+ seed_base_alias_tags() {
142
+ local oid="$1" label="$2"
143
+ git -C "$CASE_DIR" \
144
+ -c user.name='CCL Fixture' \
145
+ -c user.email=fixture@example.invalid \
146
+ tag -a "catalog-fixture-annotated-$label" \
147
+ -m "catalog fixture annotated alias $label" "$oid"
148
+ git -C "$CASE_DIR" \
149
+ -c advice.nestedTag=false \
150
+ -c user.name='CCL Fixture' \
151
+ -c user.email=fixture@example.invalid \
152
+ tag -a "catalog-fixture-nested-$label" \
153
+ -m "catalog fixture nested alias $label" \
154
+ "refs/tags/catalog-fixture-annotated-$label"
155
+ }
156
+
157
+ expect_base_alias_tags_removed() {
158
+ local label="$1" ref
159
+ for ref in \
160
+ "refs/tags/catalog-fixture-annotated-$label" \
161
+ "refs/tags/catalog-fixture-nested-$label"; do
162
+ if git -C "$CASE_DIR" show-ref --verify --quiet "$ref"; then
163
+ echo "FAIL[$label]: peeled fixture alias survived ref cleanup: $ref" >&2
164
+ exit 1
165
+ fi
166
+ done
167
+ }
168
+
169
+ expect_changed_entrypoint_warning() {
170
+ local label="$1" skill="$2"
171
+ [ "$CASE_STATUS" -eq 0 ] || {
172
+ echo "FAIL[$label]: checker failed before the changed-entrypoint oracle" >&2
173
+ printf '%s\n' "$CASE_OUTPUT" >&2
174
+ exit 1
175
+ }
176
+ grep -q \
177
+ "$skill: entrypoint_body_above_recommended_for_changed_file" \
178
+ <<<"$CASE_OUTPUT" || {
179
+ echo "FAIL[$label]: changed-entrypoint warning missing" >&2
180
+ printf '%s\n' "$CASE_OUTPUT" >&2
181
+ exit 1
182
+ }
183
+ }
184
+
185
+ expect_no_changed_entrypoint_warning() {
186
+ local label="$1" skill="$2"
187
+ [ "$CASE_STATUS" -eq 0 ] || {
188
+ echo "FAIL[$label]: checker failed before the unchanged-entrypoint oracle" >&2
189
+ printf '%s\n' "$CASE_OUTPUT" >&2
190
+ exit 1
191
+ }
192
+ if grep -q \
193
+ "$skill: entrypoint_body_above_recommended_for_changed_file" \
194
+ <<<"$CASE_OUTPUT"; then
195
+ echo "FAIL[$label]: unchanged entrypoint was reported as changed" >&2
196
+ printf '%s\n' "$CASE_OUTPUT" >&2
197
+ exit 1
198
+ fi
199
+ }
200
+
201
+ expect_block() {
202
+ local label="$1" token="$2"
203
+ [ "$CASE_STATUS" -ne 0 ] || {
204
+ echo "FAIL[$label]: gate passed but should have blocked" >&2
205
+ printf '%s\n' "$CASE_OUTPUT" >&2
206
+ exit 1
207
+ }
208
+ printf '%s\n' "$CASE_OUTPUT" | grep -q "$token" || {
209
+ echo "FAIL[$label]: gate blocked without naming $token" >&2
210
+ printf '%s\n' "$CASE_OUTPUT" >&2
211
+ exit 1
212
+ }
213
+ }
214
+
215
+ # c1 — a skill present in skills/ but absent from the catalog.
216
+ new_case
217
+ sed -i.bak '/^- `product-rd-workflow`/,+1d' "$CASE_DIR/docs/SKILLS.md"
218
+ run_case
219
+ expect_block c1 'missing_in_catalog=.*product-rd-workflow'
220
+
221
+ # c2 — a "don't use" line redirecting to a skill that does not exist. Without this
222
+ # the catalog can send a reader to a name nobody owns; the pre-existing
223
+ # `extra = mentioned - skills` check could never catch it because `mentioned` was
224
+ # already filtered down to real skills, so it was dead code.
225
+ new_case
226
+ sed -i.bak 's|^\( *- 不用:.*\)`defect-diagnosis`|\1`defect-diagnoser`|' "$CASE_DIR/docs/SKILLS.md"
227
+ run_case
228
+ expect_block c2 'skill_catalog_dangling_pointer'
229
+
230
+ # c3 — an entry that says when to use it but never when not to. The "when not to"
231
+ # line is the whole point of the catalog: that information already exists in each
232
+ # description's Skip clause and was the part humans could not see.
233
+ new_case
234
+ sed -i.bak '/^- `tighten-doc` `entry`/{n;d;}' "$CASE_DIR/docs/SKILLS.md"
235
+ run_case
236
+ expect_block c3 'skill_catalog_missing_skip_line'
237
+
238
+ # c4 — a skill marked `entry` in the catalog but not reachable from the always-on
239
+ # routing layer. `leaf` skills are deliberately absent from that layer.
240
+ new_case
241
+ sed -i.bak 's|\*\*feature-risk-router\*\*|feature-risk-router|' \
242
+ "$CASE_DIR/agent-context/session-start.md"
243
+ run_case
244
+ expect_block c4 'skill_bootstrap_entry_uncovered'
245
+
246
+ # c5 — the routing region pointing at a name that is not an installed skill.
247
+ new_case
248
+ sed -i.bak 's|\*\*tighten-doc\*\*|**tighten-docs**|' \
249
+ "$CASE_DIR/agent-context/session-start.md"
250
+ run_case
251
+ expect_block c5 'skill_bootstrap_dangling_pointer'
252
+
253
+ # c6 — the tree as it will land. Guards against a gate that can only ever fail.
254
+ new_case
255
+ run_case
256
+ [ "$CASE_STATUS" -eq 0 ] || {
257
+ echo "FAIL[c6]: pristine tree did not pass" >&2
258
+ printf '%s\n' "$CASE_OUTPUT" >&2
259
+ exit 1
260
+ }
261
+ printf '%s\n' "$CASE_OUTPUT" | grep -q 'skill_catalog_contract_ok' || {
262
+ echo "FAIL[c6]: pristine tree passed without the contract marker" >&2
263
+ printf '%s\n' "$CASE_OUTPUT" >&2
264
+ exit 1
265
+ }
266
+
267
+ # c7 — a catalog with no entry/leaf rows must BLOCK. There is deliberately no
268
+ # legacy fallback: the old loose backtick scan counted a name mentioned in another
269
+ # row as coverage, so keeping it as a compatibility branch would preserve exactly
270
+ # the hole c1 exists to close, with no owner and no expiry date.
271
+ new_case
272
+ {
273
+ echo '# Skill Catalog'
274
+ echo
275
+ for skill in "$REPO_ROOT"/skills/*/; do
276
+ echo "- \`$(basename "$skill")\` — legacy one-line entry"
277
+ done
278
+ } > "$CASE_DIR/docs/SKILLS.md"
279
+ run_case
280
+ expect_block c7 'skill_catalog_missing_markers'
281
+
282
+ # c8 — precision, not just recall. These backticked tokens sit inside 不用 lines and
283
+ # LOOK like the dangling-pointer class: a wildcard family, a phrase with spaces, and a
284
+ # hyphenless word. None is a skill name and none may be reported. Without this row a
285
+ # later tightening of the dangling regex over-fires on the real catalog and the suite
286
+ # still goes green, which is how a guard turns into an outage.
287
+ new_case
288
+ python3 - "$CASE_DIR/docs/SKILLS.md" <<'PY'
289
+ import sys
290
+ path = sys.argv[1]
291
+ text = open(path, encoding="utf-8").read()
292
+ anchor = "- `tighten-doc` `entry` "
293
+ head, sep, tail = text.partition(anchor)
294
+ assert sep, "c8 fixture anchor missing"
295
+ line, nl, rest = tail.partition("\n")
296
+ skip_line, nl2, rest2 = rest.partition("\n")
297
+ assert skip_line.lstrip().startswith("- 不用:"), "c8 expected a 不用 line to extend"
298
+ skip_line += "近邻:`*-architecture` 家族、`visible surface: no` 这类短语、`writer` 这种无连字符的词,都不是技能名。"
299
+ open(path, "w", encoding="utf-8").write(head + anchor + line + nl + skip_line + nl2 + rest2)
300
+ PY
301
+ run_case
302
+ [ "$CASE_STATUS" -eq 0 ] || {
303
+ echo "FAIL[c8]: near-miss tokens in a 不用 line were reported as dangling" >&2
304
+ printf '%s\n' "$CASE_OUTPUT" >&2
305
+ exit 1
306
+ }
307
+
308
+ # c9 — a missing routing layer is a SUPPORTED state (this checker also runs on repos
309
+ # with no always-on layer), so it must not fail the run. What it must not do is read
310
+ # as clean: marking a skill entry claims the layer routes to it, so with no layer that
311
+ # claim was never evaluated. The run stays rc 0 and reports unevaluated; claiming
312
+ # contract_ok over it would be a verdict structurally incapable of being red.
313
+ new_case
314
+ rm -f "$CASE_DIR/agent-context/session-start.md"
315
+ run_case
316
+ printf '%s\n' "$CASE_OUTPUT" | grep -q 'skill_catalog_entry_coverage_unevaluated' || {
317
+ echo "FAIL[c9]: missing routing layer was not reported as unevaluated" >&2
318
+ printf '%s\n' "$CASE_OUTPUT" >&2
319
+ exit 1
320
+ }
321
+ printf '%s\n' "$CASE_OUTPUT" | grep -q 'skill_catalog_contract_ok' && {
322
+ echo "FAIL[c9]: contract_ok claimed while entry coverage was never evaluated" >&2
323
+ printf '%s\n' "$CASE_OUTPUT" >&2
324
+ exit 1
325
+ }
326
+
327
+ # c10 — a row whose only clause is a redirect must NOT satisfy the two-line contract.
328
+ # `用:` is a substring of `不用:`, so a bare include? check passes a row that never
329
+ # says when to USE the skill.
330
+ new_case
331
+ sed -i.bak 's|^\(- `tighten-doc` `entry` \)— 用:|\1— 不用:|' "$CASE_DIR/docs/SKILLS.md"
332
+ run_case
333
+ expect_block c10 'skill_catalog_missing_use_line: tighten-doc'
334
+
335
+ # c11 — a skill marked leaf but routed in the always-on layer contradicts its own
336
+ # mark. The mark is what the catalog tells readers, so it must not be able to lie.
337
+ new_case
338
+ python3 - "$CASE_DIR/docs/SKILLS.md" <<'PYX'
339
+ import sys,re
340
+ p=sys.argv[1]; s=open(p,encoding="utf-8").read()
341
+ s=s.replace("- `tighten-doc` `entry` ","- `tighten-doc` `leaf` ",1)
342
+ open(p,"w",encoding="utf-8").write(s)
343
+ PYX
344
+ run_case
345
+ expect_block c11 'skill_bootstrap_leaf_in_region: tighten-doc'
346
+
347
+ # c12 — exercise both default-base branches without depending on the source
348
+ # repository's ancestry. For upstream and origin/main fallback alike, run an
349
+ # empty-diff arm at H and a changed-diff arm at B. The checker must track that
350
+ # matrix with the override unset; a no-base path that marks everything changed
351
+ # or a wrong-ref path cannot satisfy all four arms.
352
+ new_case
353
+ DEFAULT_CHANGED_SKILL=catalog-default-base-fixture
354
+ mkdir -p "$CASE_DIR/skills/$DEFAULT_CHANGED_SKILL/agents"
355
+ python3 - \
356
+ "$CASE_DIR/skills/$DEFAULT_CHANGED_SKILL/SKILL.md" \
357
+ "$CASE_DIR/skills/$DEFAULT_CHANGED_SKILL/agents/openai.yaml" \
358
+ "$CASE_DIR/docs/SKILLS.md" <<'PYBASE'
359
+ import re
360
+ import sys
361
+
362
+ skill_path, overlay_path, catalog_path = sys.argv[1:]
363
+ body = (
364
+ "# Catalog Default-Base Fixture\n\n"
365
+ "fixture-state-base\n\n"
366
+ + "fixture-line\n" * 420
367
+ )
368
+ assert len(body.encode("utf-8")) > 5000, "c12 baseline body must exceed the warning threshold"
369
+ frontmatter = """---
370
+ name: catalog-default-base-fixture
371
+ description: "Synthetic skill used only inside the catalog default-base regression clone. Skip: never route it in real work."
372
+ ---
373
+ """
374
+ open(skill_path, "w", encoding="utf-8").write(frontmatter + body)
375
+ open(overlay_path, "w", encoding="utf-8").write(
376
+ """interface:
377
+ display_name: "Catalog Default-Base Fixture"
378
+ short_description: "Synthetic default-base regression fixture"
379
+ default_prompt: "Use $catalog-default-base-fixture only inside its generated regression clone."
380
+ """
381
+ )
382
+ catalog_text = open(catalog_path, encoding="utf-8").read()
383
+ anchor = re.search(r"(?m)^- `[a-z0-9-]+` `leaf` ", catalog_text)
384
+ assert anchor, "c12 catalog has no leaf row anchor"
385
+ fixture_row = (
386
+ "- `catalog-default-base-fixture` `leaf` — 用:仅供 catalog default-base 合成回归夹具。\n"
387
+ " - 不用:真实任务一律不路由到这个合成技能。\n"
388
+ )
389
+ open(catalog_path, "w", encoding="utf-8").write(
390
+ catalog_text[: anchor.start()] + fixture_row + catalog_text[anchor.start() :]
391
+ )
392
+ PYBASE
393
+ git -C "$CASE_DIR" add \
394
+ "skills/$DEFAULT_CHANGED_SKILL/SKILL.md" \
395
+ "skills/$DEFAULT_CHANGED_SKILL/agents/openai.yaml" \
396
+ docs/SKILLS.md
397
+ git -C "$CASE_DIR" \
398
+ -c user.name='CCL Fixture' \
399
+ -c user.email=fixture@example.invalid \
400
+ commit --quiet -m 'catalog default-base baseline'
401
+ DEFAULT_BASE_OID="$(git -C "$CASE_DIR" rev-parse HEAD)"
402
+ git -C "$CASE_DIR" update-ref refs/heads/catalog-fixture-base "$DEFAULT_BASE_OID"
403
+ git -C "$CASE_DIR" checkout --quiet -B catalog-default-base "$DEFAULT_BASE_OID"
404
+ git -C "$CASE_DIR" branch --set-upstream-to=catalog-fixture-base catalog-default-base >/dev/null
405
+ python3 - "$CASE_DIR/skills/$DEFAULT_CHANGED_SKILL/SKILL.md" <<'PYBASE'
406
+ import sys
407
+
408
+ path = sys.argv[1]
409
+ text = open(path, encoding="utf-8").read()
410
+ assert text.count("fixture-state-base") == 1, "c12 baseline state marker missing or duplicated"
411
+ updated = text.replace("fixture-state-base", "fixture-state-head")
412
+ assert len(updated.encode("utf-8")) == len(text.encode("utf-8")), "c12 state change must be size neutral"
413
+ open(path, "w", encoding="utf-8").write(updated)
414
+ PYBASE
415
+ git -C "$CASE_DIR" add "skills/$DEFAULT_CHANGED_SKILL/SKILL.md"
416
+ git -C "$CASE_DIR" \
417
+ -c user.name='CCL Fixture' \
418
+ -c user.email='fixture@example.invalid' \
419
+ commit --quiet -m 'catalog default-base fixture'
420
+ DEFAULT_HEAD_OID="$(git -C "$CASE_DIR" rev-parse HEAD)"
421
+ git -C "$CASE_DIR" update-ref refs/remotes/origin/main "$DEFAULT_HEAD_OID"
422
+ HOSTILE_GIT_DIR="$TEST_ROOT/hostile.git"
423
+ HOSTILE_GIT_WORK_TREE="$TEST_ROOT/hostile-worktree"
424
+ HOSTILE_GIT_INDEX="$TEST_ROOT/hostile-index"
425
+ mkdir -p "$HOSTILE_GIT_WORK_TREE"
426
+ git init --bare --quiet "$HOSTILE_GIT_DIR"
427
+
428
+ # Calibrate the observable independently of default discovery. If the size
429
+ # metric or fixture contract changes, fail under this explicit base label
430
+ # instead of misreporting a resolver regression in one of the four arms.
431
+ # The wrapper propagates the checker rc only after restoring Git routing. The
432
+ # next assertion owns the diagnostic and reads the same rc from CASE_STATUS.
433
+ run_with_hostile_git_context run_case_with_base "$DEFAULT_BASE_OID" || :
434
+ expect_changed_entrypoint_warning c12-explicit-base-calibration "$DEFAULT_CHANGED_SKILL"
435
+
436
+ # Upstream, empty diff: the sole configured upstream resolves to H.
437
+ git -C "$CASE_DIR" update-ref refs/heads/catalog-fixture-base "$DEFAULT_HEAD_OID"
438
+ seed_base_alias_tags "$DEFAULT_BASE_OID" c12-upstream-empty
439
+ retain_only_ref_at_oid "$DEFAULT_BASE_OID" '' c12-upstream-empty
440
+ expect_base_alias_tags_removed c12-upstream-empty
441
+ [ "$(git -C "$CASE_DIR" merge-base '@{upstream}' HEAD)" = "$DEFAULT_HEAD_OID" ] || {
442
+ echo 'FAIL[c12]: empty-diff upstream does not resolve to fixture HEAD' >&2
443
+ exit 1
444
+ }
445
+ run_with_hostile_git_context run_case_with_default_base || :
446
+ expect_no_changed_entrypoint_warning c12-upstream-empty "$DEFAULT_CHANGED_SKILL"
447
+
448
+ # Upstream, changed diff: the sole B-valued ref is the configured upstream.
449
+ git -C "$CASE_DIR" update-ref refs/heads/catalog-fixture-base "$DEFAULT_BASE_OID"
450
+ seed_base_alias_tags "$DEFAULT_BASE_OID" c12-upstream-changed
451
+ retain_only_ref_at_oid \
452
+ "$DEFAULT_BASE_OID" refs/heads/catalog-fixture-base c12-upstream-changed
453
+ expect_base_alias_tags_removed c12-upstream-changed
454
+ [ "$(git -C "$CASE_DIR" merge-base '@{upstream}' HEAD)" = "$DEFAULT_BASE_OID" ] || {
455
+ echo 'FAIL[c12]: changed-diff upstream does not resolve to fixture base' >&2
456
+ exit 1
457
+ }
458
+ run_with_hostile_git_context run_case_with_default_base || :
459
+ expect_changed_entrypoint_warning c12-upstream-changed "$DEFAULT_CHANGED_SKILL"
460
+
461
+ # Fallback, empty diff: no upstream exists and origin/main resolves to H.
462
+ git -C "$CASE_DIR" branch --unset-upstream
463
+ git -C "$CASE_DIR" update-ref refs/remotes/origin/main "$DEFAULT_HEAD_OID"
464
+ seed_base_alias_tags "$DEFAULT_BASE_OID" c12-fallback-empty
465
+ retain_only_ref_at_oid "$DEFAULT_BASE_OID" '' c12-fallback-empty
466
+ expect_base_alias_tags_removed c12-fallback-empty
467
+ git -C "$CASE_DIR" rev-parse '@{upstream}' >/dev/null 2>&1 && {
468
+ echo 'FAIL[c12]: fallback arm still has an upstream' >&2
469
+ exit 1
470
+ }
471
+ [ "$(git -C "$CASE_DIR" merge-base origin/main HEAD)" = "$DEFAULT_HEAD_OID" ] || {
472
+ echo 'FAIL[c12]: empty-diff origin/main does not resolve to fixture HEAD' >&2
473
+ exit 1
474
+ }
475
+ run_with_hostile_git_context run_case_with_default_base || :
476
+ expect_no_changed_entrypoint_warning c12-fallback-empty "$DEFAULT_CHANGED_SKILL"
477
+
478
+ # Fallback, changed diff: the sole B-valued ref is origin/main.
479
+ git -C "$CASE_DIR" update-ref refs/remotes/origin/main "$DEFAULT_BASE_OID"
480
+ seed_base_alias_tags "$DEFAULT_BASE_OID" c12-fallback-changed
481
+ retain_only_ref_at_oid \
482
+ "$DEFAULT_BASE_OID" refs/remotes/origin/main c12-fallback-changed
483
+ expect_base_alias_tags_removed c12-fallback-changed
484
+ [ "$(git -C "$CASE_DIR" merge-base origin/main HEAD)" = "$DEFAULT_BASE_OID" ] || {
485
+ echo 'FAIL[c12]: changed-diff origin/main does not resolve to fixture base' >&2
486
+ exit 1
487
+ }
488
+ run_with_hostile_git_context run_case_with_default_base || :
489
+ expect_changed_entrypoint_warning c12-fallback-changed "$DEFAULT_CHANGED_SKILL"
490
+
491
+ echo "test_check_ccl_skill_catalog: ok"
@@ -0,0 +1,114 @@
1
+ #!/usr/bin/env bash
2
+ # Regression tests for the non-blocking source-register lifecycle advisory in
3
+ # check-ccl-skills.sh. Uses a temp clone with a tiny synthetic register so
4
+ # assertions do not depend on the real shared ledger's line numbers or current rows.
5
+ set -euo pipefail
6
+
7
+ SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd -P)"
8
+ CHECK_SCRIPT="$SCRIPT_DIR/check-ccl-skills.sh"
9
+ LIFECYCLE_GATE="$SCRIPT_DIR/source-register-lifecycle.rb"
10
+ ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd -P)"
11
+ [ -f "$CHECK_SCRIPT" ] || { echo "FAIL: checker not found: $CHECK_SCRIPT" >&2; exit 1; }
12
+ [ -f "$LIFECYCLE_GATE" ] || { echo "FAIL: lifecycle gate not found: $LIFECYCLE_GATE" >&2; exit 1; }
13
+ [ -d "$ROOT/skills" ] || { echo "FAIL: repo root has no skills/ dir: $ROOT" >&2; exit 1; }
14
+
15
+ TMP="$(mktemp -d "${TMPDIR:-/tmp}/source-register-lifecycle.XXXXXX")"
16
+ trap 'rm -rf "$TMP"' EXIT
17
+
18
+ fail() { echo "FAIL: $*" >&2; exit 1; }
19
+ assert_rc() { [ "$1" = "$2" ] || fail "expected rc=$2 got rc=$1${3:+ ($3)}"; }
20
+ assert_contains() { case "$2" in *"$1"*) : ;; *) fail "expected output to contain: $1${3:+ ($3)}";; esac; }
21
+ assert_not_contains() { case "$2" in *"$1"*) fail "expected output NOT to contain: $1${3:+ ($3)}";; *) : ;; esac; }
22
+
23
+ REPO="$TMP/repo"
24
+ git clone -q "$ROOT" "$REPO"
25
+ git -C "$REPO" config user.email test@example.invalid
26
+ git -C "$REPO" config user.name "Test User"
27
+ git -C "$REPO" branch fixture-base HEAD
28
+ git -C "$REPO" switch -q -c fixture-work
29
+ git -C "$REPO" branch --set-upstream-to=fixture-base fixture-work >/dev/null
30
+ REGISTER="$REPO/skills/skill-extraction-workflow/references/source-register.md"
31
+
32
+ write_register() {
33
+ marker="$1"
34
+ cat > "$REGISTER" <<EOF
35
+ # Source Register Lifecycle Fixture
36
+
37
+ Methodology prose must not be counted: supersedes: prose-only revalidate-when: prose-only revalidate-by: 1999-01-01.
38
+
39
+ | Upstream rule | Downstream owner | Expected executable behavior | Status | Evidence |
40
+ | --- | --- | --- | --- | --- |
41
+ | Lifecycle fixture | skill-extraction-workflow | supersedes: earlier fixture; revalidate-when: external fixture event; $marker | \`updated\` | source-register lifecycle fixture |
42
+ EOF
43
+ }
44
+
45
+ full_check_runs=0
46
+ gate_runs=0
47
+ # This fixture REPLACES the register with a synthetic lifecycle ledger, so none
48
+ # of the real repository's waiver-bearing rows are present. The firing-path gate
49
+ # binds each anchored EXEMPT entry to its citing row and fails closed when that
50
+ # row is missing, which is correct for production and a false RED here. Declare
51
+ # the truth about this ledger instead of weakening the gate: an empty digest
52
+ # table means this register binds no waivers.
53
+ EMPTY_DIGEST_TABLE="$TMP/empty-exempt-digests.json"
54
+ printf '{}\n' > "$EMPTY_DIGEST_TABLE"
55
+
56
+ run_full_check() {
57
+ full_check_runs=$((full_check_runs + 1))
58
+ set +e
59
+ out="$(env -u ALIAS_AUDIT_CMD -u CCL_SKILL_BASE_REF \
60
+ REGISTER_FIRING_PATH_EXEMPT_DIGESTS="$EMPTY_DIGEST_TABLE" \
61
+ bash "$CHECK_SCRIPT" "$REPO" 2>&1)"
62
+ rc=$?
63
+ set -e
64
+ }
65
+ run_gate() {
66
+ gate_runs=$((gate_runs + 1))
67
+ set +e
68
+ out="$(ruby "$LIFECYCLE_GATE" "$REGISTER" 2>&1)"
69
+ rc=$?
70
+ set -e
71
+ }
72
+
73
+ # past date: overdue is advisory only, rc remains 0.
74
+ write_register "revalidate-by: 2000-01-01"
75
+ run_full_check
76
+ assert_rc "$rc" 0 "past revalidate-by must remain non-blocking"
77
+ assert_contains "revalidate_overdue: source-register has revalidate-by 2000-01-01" "$out" "past date reported"
78
+ assert_contains "source_register_lifecycle_advisory: supersedes=1 revalidate_when=1 revalidate_by=1 overdue=1" "$out" "summary counts table-row cues only"
79
+ assert_contains "revalidate_check_advisory: 1 overdue marker(s) above" "$out" "existing overdue advisory retained"
80
+ assert_contains "ccl_skill_check_interim_ok" "$out" "public fallback still succeeds"
81
+
82
+ # future date: counted, no overdue line.
83
+ write_register "revalidate-by: 2999-01-01"
84
+ run_gate
85
+ assert_rc "$rc" 0 "future revalidate-by should pass"
86
+ assert_not_contains "revalidate_overdue:" "$out" "future date is not overdue"
87
+ assert_contains "source_register_lifecycle_advisory: supersedes=1 revalidate_when=1 revalidate_by=1 overdue=0" "$out" "future date counted without overdue"
88
+ assert_contains "revalidate_check_ok" "$out" "existing clean marker retained"
89
+
90
+ # placeholder: ignored by the date matcher and does not crash.
91
+ write_register "revalidate-by: <date>"
92
+ run_gate
93
+ assert_rc "$rc" 0 "placeholder revalidate-by should pass"
94
+ assert_not_contains "revalidate_overdue:" "$out" "placeholder is not overdue"
95
+ assert_contains "source_register_lifecycle_advisory: supersedes=1 revalidate_when=1 revalidate_by=0 overdue=0" "$out" "placeholder is not counted as a real date"
96
+
97
+ # invalid date: ignored by Date.strptime and does not crash.
98
+ write_register "revalidate-by: 2020-99-99"
99
+ run_gate
100
+ assert_rc "$rc" 0 "invalid revalidate-by should pass"
101
+ assert_not_contains "revalidate_overdue:" "$out" "invalid date is not overdue"
102
+ assert_contains "source_register_lifecycle_advisory: supersedes=1 revalidate_when=1 revalidate_by=0 overdue=0" "$out" "invalid date is not counted"
103
+
104
+ # timestamp: rejected by the lookahead and does not partial-match as a date.
105
+ write_register "revalidate-by: 2000-01-01T00:00:00"
106
+ run_gate
107
+ assert_rc "$rc" 0 "timestamp revalidate-by should pass"
108
+ assert_not_contains "revalidate_overdue:" "$out" "timestamp must not partial-match as overdue"
109
+ assert_contains "source_register_lifecycle_advisory: supersedes=1 revalidate_when=1 revalidate_by=0 overdue=0" "$out" "timestamp is not counted as a real date"
110
+
111
+ assert_rc "$full_check_runs" 1 "lifecycle suite must retain exactly one full checker wiring case"
112
+ assert_rc "$gate_runs" 4 "remaining lifecycle cases must run the standalone gate"
113
+
114
+ echo "test_check_ccl_source_register_lifecycle: ok"