@nebulacomponents/citable 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 (586) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/LICENSE +201 -0
  3. package/README.md +150 -0
  4. package/cli/bin/citable.js +5 -0
  5. package/dist/universal/.agents/skills/citable/SKILL.md +137 -0
  6. package/dist/universal/.agents/skills/citable/VERSION +1 -0
  7. package/dist/universal/.agents/skills/citable/commands/README.md +36 -0
  8. package/dist/universal/.agents/skills/citable/commands/ingest.md +44 -0
  9. package/dist/universal/.agents/skills/citable/commands/measurement.md +49 -0
  10. package/dist/universal/.agents/skills/citable/commands/optimize-page.md +53 -0
  11. package/dist/universal/.agents/skills/citable/commands/page-work.md +48 -0
  12. package/dist/universal/.agents/skills/citable/commands/validate-render.md +24 -0
  13. package/dist/universal/.agents/skills/citable/manifest.json +54 -0
  14. package/dist/universal/.agents/skills/citable/policies/crawler-policy-template.md +47 -0
  15. package/dist/universal/.agents/skills/citable/references/anti-patterns.md +61 -0
  16. package/dist/universal/.agents/skills/citable/rubrics/README.md +30 -0
  17. package/dist/universal/.agents/skills/citable/rubrics/answer-extractability.md +44 -0
  18. package/dist/universal/.agents/skills/citable/rubrics/claim-boundedness.md +36 -0
  19. package/dist/universal/.agents/skills/citable/rubrics/comparison-fairness.md +30 -0
  20. package/dist/universal/.agents/skills/citable/rubrics/conversion-alignment.md +37 -0
  21. package/dist/universal/.agents/skills/citable/rubrics/entity-clarity.md +41 -0
  22. package/dist/universal/.agents/skills/citable/rubrics/evidence-strength.md +53 -0
  23. package/dist/universal/.agents/skills/citable/rubrics/information-gain.md +33 -0
  24. package/dist/universal/.agents/skills/citable/rubrics/intent-alignment.md +41 -0
  25. package/dist/universal/.agents/skills/citable/rubrics/narrative-accuracy.md +46 -0
  26. package/dist/universal/.agents/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  27. package/dist/universal/.agents/skills/citable/rubrics/semantic-clarity.md +42 -0
  28. package/dist/universal/.agents/skills/citable/rubrics/source-authority.md +37 -0
  29. package/dist/universal/.agents/skills/citable/schemas/claim.schema.json +53 -0
  30. package/dist/universal/.agents/skills/citable/schemas/common.defs.json +33 -0
  31. package/dist/universal/.agents/skills/citable/schemas/competitor.schema.json +28 -0
  32. package/dist/universal/.agents/skills/citable/schemas/config.schema.json +41 -0
  33. package/dist/universal/.agents/skills/citable/schemas/crawler.schema.json +33 -0
  34. package/dist/universal/.agents/skills/citable/schemas/detector-quality.schema.json +39 -0
  35. package/dist/universal/.agents/skills/citable/schemas/entity.schema.json +39 -0
  36. package/dist/universal/.agents/skills/citable/schemas/evidence.schema.json +41 -0
  37. package/dist/universal/.agents/skills/citable/schemas/experiment.schema.json +37 -0
  38. package/dist/universal/.agents/skills/citable/schemas/finding.schema.json +101 -0
  39. package/dist/universal/.agents/skills/citable/schemas/page.schema.json +40 -0
  40. package/dist/universal/.agents/skills/citable/schemas/project.schema.json +29 -0
  41. package/dist/universal/.agents/skills/citable/schemas/prompt-result.schema.json +37 -0
  42. package/dist/universal/.agents/skills/citable/schemas/prompt.schema.json +41 -0
  43. package/dist/universal/.agents/skills/citable/schemas/query.schema.json +43 -0
  44. package/dist/universal/.agents/skills/citable/schemas/run.schema.json +36 -0
  45. package/dist/universal/.agents/skills/citable/scripts/README.md +4 -0
  46. package/dist/universal/.agents/skills/citable/templates/finding-review.md +54 -0
  47. package/dist/universal/.claude/skills/citable/SKILL.md +137 -0
  48. package/dist/universal/.claude/skills/citable/VERSION +1 -0
  49. package/dist/universal/.claude/skills/citable/commands/README.md +36 -0
  50. package/dist/universal/.claude/skills/citable/commands/ingest.md +44 -0
  51. package/dist/universal/.claude/skills/citable/commands/measurement.md +49 -0
  52. package/dist/universal/.claude/skills/citable/commands/optimize-page.md +53 -0
  53. package/dist/universal/.claude/skills/citable/commands/page-work.md +48 -0
  54. package/dist/universal/.claude/skills/citable/commands/validate-render.md +24 -0
  55. package/dist/universal/.claude/skills/citable/manifest.json +54 -0
  56. package/dist/universal/.claude/skills/citable/policies/crawler-policy-template.md +47 -0
  57. package/dist/universal/.claude/skills/citable/references/anti-patterns.md +61 -0
  58. package/dist/universal/.claude/skills/citable/rubrics/README.md +30 -0
  59. package/dist/universal/.claude/skills/citable/rubrics/answer-extractability.md +44 -0
  60. package/dist/universal/.claude/skills/citable/rubrics/claim-boundedness.md +36 -0
  61. package/dist/universal/.claude/skills/citable/rubrics/comparison-fairness.md +30 -0
  62. package/dist/universal/.claude/skills/citable/rubrics/conversion-alignment.md +37 -0
  63. package/dist/universal/.claude/skills/citable/rubrics/entity-clarity.md +41 -0
  64. package/dist/universal/.claude/skills/citable/rubrics/evidence-strength.md +53 -0
  65. package/dist/universal/.claude/skills/citable/rubrics/information-gain.md +33 -0
  66. package/dist/universal/.claude/skills/citable/rubrics/intent-alignment.md +41 -0
  67. package/dist/universal/.claude/skills/citable/rubrics/narrative-accuracy.md +46 -0
  68. package/dist/universal/.claude/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  69. package/dist/universal/.claude/skills/citable/rubrics/semantic-clarity.md +42 -0
  70. package/dist/universal/.claude/skills/citable/rubrics/source-authority.md +37 -0
  71. package/dist/universal/.claude/skills/citable/schemas/claim.schema.json +53 -0
  72. package/dist/universal/.claude/skills/citable/schemas/common.defs.json +33 -0
  73. package/dist/universal/.claude/skills/citable/schemas/competitor.schema.json +28 -0
  74. package/dist/universal/.claude/skills/citable/schemas/config.schema.json +41 -0
  75. package/dist/universal/.claude/skills/citable/schemas/crawler.schema.json +33 -0
  76. package/dist/universal/.claude/skills/citable/schemas/detector-quality.schema.json +39 -0
  77. package/dist/universal/.claude/skills/citable/schemas/entity.schema.json +39 -0
  78. package/dist/universal/.claude/skills/citable/schemas/evidence.schema.json +41 -0
  79. package/dist/universal/.claude/skills/citable/schemas/experiment.schema.json +37 -0
  80. package/dist/universal/.claude/skills/citable/schemas/finding.schema.json +101 -0
  81. package/dist/universal/.claude/skills/citable/schemas/page.schema.json +40 -0
  82. package/dist/universal/.claude/skills/citable/schemas/project.schema.json +29 -0
  83. package/dist/universal/.claude/skills/citable/schemas/prompt-result.schema.json +37 -0
  84. package/dist/universal/.claude/skills/citable/schemas/prompt.schema.json +41 -0
  85. package/dist/universal/.claude/skills/citable/schemas/query.schema.json +43 -0
  86. package/dist/universal/.claude/skills/citable/schemas/run.schema.json +36 -0
  87. package/dist/universal/.claude/skills/citable/scripts/README.md +4 -0
  88. package/dist/universal/.claude/skills/citable/templates/finding-review.md +54 -0
  89. package/dist/universal/.cursor/skills/citable/SKILL.md +137 -0
  90. package/dist/universal/.cursor/skills/citable/VERSION +1 -0
  91. package/dist/universal/.cursor/skills/citable/commands/README.md +36 -0
  92. package/dist/universal/.cursor/skills/citable/commands/ingest.md +44 -0
  93. package/dist/universal/.cursor/skills/citable/commands/measurement.md +49 -0
  94. package/dist/universal/.cursor/skills/citable/commands/optimize-page.md +53 -0
  95. package/dist/universal/.cursor/skills/citable/commands/page-work.md +48 -0
  96. package/dist/universal/.cursor/skills/citable/commands/validate-render.md +24 -0
  97. package/dist/universal/.cursor/skills/citable/manifest.json +54 -0
  98. package/dist/universal/.cursor/skills/citable/policies/crawler-policy-template.md +47 -0
  99. package/dist/universal/.cursor/skills/citable/references/anti-patterns.md +61 -0
  100. package/dist/universal/.cursor/skills/citable/rubrics/README.md +30 -0
  101. package/dist/universal/.cursor/skills/citable/rubrics/answer-extractability.md +44 -0
  102. package/dist/universal/.cursor/skills/citable/rubrics/claim-boundedness.md +36 -0
  103. package/dist/universal/.cursor/skills/citable/rubrics/comparison-fairness.md +30 -0
  104. package/dist/universal/.cursor/skills/citable/rubrics/conversion-alignment.md +37 -0
  105. package/dist/universal/.cursor/skills/citable/rubrics/entity-clarity.md +41 -0
  106. package/dist/universal/.cursor/skills/citable/rubrics/evidence-strength.md +53 -0
  107. package/dist/universal/.cursor/skills/citable/rubrics/information-gain.md +33 -0
  108. package/dist/universal/.cursor/skills/citable/rubrics/intent-alignment.md +41 -0
  109. package/dist/universal/.cursor/skills/citable/rubrics/narrative-accuracy.md +46 -0
  110. package/dist/universal/.cursor/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  111. package/dist/universal/.cursor/skills/citable/rubrics/semantic-clarity.md +42 -0
  112. package/dist/universal/.cursor/skills/citable/rubrics/source-authority.md +37 -0
  113. package/dist/universal/.cursor/skills/citable/schemas/claim.schema.json +53 -0
  114. package/dist/universal/.cursor/skills/citable/schemas/common.defs.json +33 -0
  115. package/dist/universal/.cursor/skills/citable/schemas/competitor.schema.json +28 -0
  116. package/dist/universal/.cursor/skills/citable/schemas/config.schema.json +41 -0
  117. package/dist/universal/.cursor/skills/citable/schemas/crawler.schema.json +33 -0
  118. package/dist/universal/.cursor/skills/citable/schemas/detector-quality.schema.json +39 -0
  119. package/dist/universal/.cursor/skills/citable/schemas/entity.schema.json +39 -0
  120. package/dist/universal/.cursor/skills/citable/schemas/evidence.schema.json +41 -0
  121. package/dist/universal/.cursor/skills/citable/schemas/experiment.schema.json +37 -0
  122. package/dist/universal/.cursor/skills/citable/schemas/finding.schema.json +101 -0
  123. package/dist/universal/.cursor/skills/citable/schemas/page.schema.json +40 -0
  124. package/dist/universal/.cursor/skills/citable/schemas/project.schema.json +29 -0
  125. package/dist/universal/.cursor/skills/citable/schemas/prompt-result.schema.json +37 -0
  126. package/dist/universal/.cursor/skills/citable/schemas/prompt.schema.json +41 -0
  127. package/dist/universal/.cursor/skills/citable/schemas/query.schema.json +43 -0
  128. package/dist/universal/.cursor/skills/citable/schemas/run.schema.json +36 -0
  129. package/dist/universal/.cursor/skills/citable/scripts/README.md +4 -0
  130. package/dist/universal/.cursor/skills/citable/templates/finding-review.md +54 -0
  131. package/dist/universal/.gemini/skills/citable/SKILL.md +137 -0
  132. package/dist/universal/.gemini/skills/citable/VERSION +1 -0
  133. package/dist/universal/.gemini/skills/citable/commands/README.md +36 -0
  134. package/dist/universal/.gemini/skills/citable/commands/ingest.md +44 -0
  135. package/dist/universal/.gemini/skills/citable/commands/measurement.md +49 -0
  136. package/dist/universal/.gemini/skills/citable/commands/optimize-page.md +53 -0
  137. package/dist/universal/.gemini/skills/citable/commands/page-work.md +48 -0
  138. package/dist/universal/.gemini/skills/citable/commands/validate-render.md +24 -0
  139. package/dist/universal/.gemini/skills/citable/manifest.json +54 -0
  140. package/dist/universal/.gemini/skills/citable/policies/crawler-policy-template.md +47 -0
  141. package/dist/universal/.gemini/skills/citable/references/anti-patterns.md +61 -0
  142. package/dist/universal/.gemini/skills/citable/rubrics/README.md +30 -0
  143. package/dist/universal/.gemini/skills/citable/rubrics/answer-extractability.md +44 -0
  144. package/dist/universal/.gemini/skills/citable/rubrics/claim-boundedness.md +36 -0
  145. package/dist/universal/.gemini/skills/citable/rubrics/comparison-fairness.md +30 -0
  146. package/dist/universal/.gemini/skills/citable/rubrics/conversion-alignment.md +37 -0
  147. package/dist/universal/.gemini/skills/citable/rubrics/entity-clarity.md +41 -0
  148. package/dist/universal/.gemini/skills/citable/rubrics/evidence-strength.md +53 -0
  149. package/dist/universal/.gemini/skills/citable/rubrics/information-gain.md +33 -0
  150. package/dist/universal/.gemini/skills/citable/rubrics/intent-alignment.md +41 -0
  151. package/dist/universal/.gemini/skills/citable/rubrics/narrative-accuracy.md +46 -0
  152. package/dist/universal/.gemini/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  153. package/dist/universal/.gemini/skills/citable/rubrics/semantic-clarity.md +42 -0
  154. package/dist/universal/.gemini/skills/citable/rubrics/source-authority.md +37 -0
  155. package/dist/universal/.gemini/skills/citable/schemas/claim.schema.json +53 -0
  156. package/dist/universal/.gemini/skills/citable/schemas/common.defs.json +33 -0
  157. package/dist/universal/.gemini/skills/citable/schemas/competitor.schema.json +28 -0
  158. package/dist/universal/.gemini/skills/citable/schemas/config.schema.json +41 -0
  159. package/dist/universal/.gemini/skills/citable/schemas/crawler.schema.json +33 -0
  160. package/dist/universal/.gemini/skills/citable/schemas/detector-quality.schema.json +39 -0
  161. package/dist/universal/.gemini/skills/citable/schemas/entity.schema.json +39 -0
  162. package/dist/universal/.gemini/skills/citable/schemas/evidence.schema.json +41 -0
  163. package/dist/universal/.gemini/skills/citable/schemas/experiment.schema.json +37 -0
  164. package/dist/universal/.gemini/skills/citable/schemas/finding.schema.json +101 -0
  165. package/dist/universal/.gemini/skills/citable/schemas/page.schema.json +40 -0
  166. package/dist/universal/.gemini/skills/citable/schemas/project.schema.json +29 -0
  167. package/dist/universal/.gemini/skills/citable/schemas/prompt-result.schema.json +37 -0
  168. package/dist/universal/.gemini/skills/citable/schemas/prompt.schema.json +41 -0
  169. package/dist/universal/.gemini/skills/citable/schemas/query.schema.json +43 -0
  170. package/dist/universal/.gemini/skills/citable/schemas/run.schema.json +36 -0
  171. package/dist/universal/.gemini/skills/citable/scripts/README.md +4 -0
  172. package/dist/universal/.gemini/skills/citable/templates/finding-review.md +54 -0
  173. package/dist/universal/.github/skills/citable/SKILL.md +137 -0
  174. package/dist/universal/.github/skills/citable/VERSION +1 -0
  175. package/dist/universal/.github/skills/citable/commands/README.md +36 -0
  176. package/dist/universal/.github/skills/citable/commands/ingest.md +44 -0
  177. package/dist/universal/.github/skills/citable/commands/measurement.md +49 -0
  178. package/dist/universal/.github/skills/citable/commands/optimize-page.md +53 -0
  179. package/dist/universal/.github/skills/citable/commands/page-work.md +48 -0
  180. package/dist/universal/.github/skills/citable/commands/validate-render.md +24 -0
  181. package/dist/universal/.github/skills/citable/manifest.json +54 -0
  182. package/dist/universal/.github/skills/citable/policies/crawler-policy-template.md +47 -0
  183. package/dist/universal/.github/skills/citable/references/anti-patterns.md +61 -0
  184. package/dist/universal/.github/skills/citable/rubrics/README.md +30 -0
  185. package/dist/universal/.github/skills/citable/rubrics/answer-extractability.md +44 -0
  186. package/dist/universal/.github/skills/citable/rubrics/claim-boundedness.md +36 -0
  187. package/dist/universal/.github/skills/citable/rubrics/comparison-fairness.md +30 -0
  188. package/dist/universal/.github/skills/citable/rubrics/conversion-alignment.md +37 -0
  189. package/dist/universal/.github/skills/citable/rubrics/entity-clarity.md +41 -0
  190. package/dist/universal/.github/skills/citable/rubrics/evidence-strength.md +53 -0
  191. package/dist/universal/.github/skills/citable/rubrics/information-gain.md +33 -0
  192. package/dist/universal/.github/skills/citable/rubrics/intent-alignment.md +41 -0
  193. package/dist/universal/.github/skills/citable/rubrics/narrative-accuracy.md +46 -0
  194. package/dist/universal/.github/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  195. package/dist/universal/.github/skills/citable/rubrics/semantic-clarity.md +42 -0
  196. package/dist/universal/.github/skills/citable/rubrics/source-authority.md +37 -0
  197. package/dist/universal/.github/skills/citable/schemas/claim.schema.json +53 -0
  198. package/dist/universal/.github/skills/citable/schemas/common.defs.json +33 -0
  199. package/dist/universal/.github/skills/citable/schemas/competitor.schema.json +28 -0
  200. package/dist/universal/.github/skills/citable/schemas/config.schema.json +41 -0
  201. package/dist/universal/.github/skills/citable/schemas/crawler.schema.json +33 -0
  202. package/dist/universal/.github/skills/citable/schemas/detector-quality.schema.json +39 -0
  203. package/dist/universal/.github/skills/citable/schemas/entity.schema.json +39 -0
  204. package/dist/universal/.github/skills/citable/schemas/evidence.schema.json +41 -0
  205. package/dist/universal/.github/skills/citable/schemas/experiment.schema.json +37 -0
  206. package/dist/universal/.github/skills/citable/schemas/finding.schema.json +101 -0
  207. package/dist/universal/.github/skills/citable/schemas/page.schema.json +40 -0
  208. package/dist/universal/.github/skills/citable/schemas/project.schema.json +29 -0
  209. package/dist/universal/.github/skills/citable/schemas/prompt-result.schema.json +37 -0
  210. package/dist/universal/.github/skills/citable/schemas/prompt.schema.json +41 -0
  211. package/dist/universal/.github/skills/citable/schemas/query.schema.json +43 -0
  212. package/dist/universal/.github/skills/citable/schemas/run.schema.json +36 -0
  213. package/dist/universal/.github/skills/citable/scripts/README.md +4 -0
  214. package/dist/universal/.github/skills/citable/templates/finding-review.md +54 -0
  215. package/dist/universal/.kiro/skills/citable/SKILL.md +137 -0
  216. package/dist/universal/.kiro/skills/citable/VERSION +1 -0
  217. package/dist/universal/.kiro/skills/citable/commands/README.md +36 -0
  218. package/dist/universal/.kiro/skills/citable/commands/ingest.md +44 -0
  219. package/dist/universal/.kiro/skills/citable/commands/measurement.md +49 -0
  220. package/dist/universal/.kiro/skills/citable/commands/optimize-page.md +53 -0
  221. package/dist/universal/.kiro/skills/citable/commands/page-work.md +48 -0
  222. package/dist/universal/.kiro/skills/citable/commands/validate-render.md +24 -0
  223. package/dist/universal/.kiro/skills/citable/manifest.json +54 -0
  224. package/dist/universal/.kiro/skills/citable/policies/crawler-policy-template.md +47 -0
  225. package/dist/universal/.kiro/skills/citable/references/anti-patterns.md +61 -0
  226. package/dist/universal/.kiro/skills/citable/rubrics/README.md +30 -0
  227. package/dist/universal/.kiro/skills/citable/rubrics/answer-extractability.md +44 -0
  228. package/dist/universal/.kiro/skills/citable/rubrics/claim-boundedness.md +36 -0
  229. package/dist/universal/.kiro/skills/citable/rubrics/comparison-fairness.md +30 -0
  230. package/dist/universal/.kiro/skills/citable/rubrics/conversion-alignment.md +37 -0
  231. package/dist/universal/.kiro/skills/citable/rubrics/entity-clarity.md +41 -0
  232. package/dist/universal/.kiro/skills/citable/rubrics/evidence-strength.md +53 -0
  233. package/dist/universal/.kiro/skills/citable/rubrics/information-gain.md +33 -0
  234. package/dist/universal/.kiro/skills/citable/rubrics/intent-alignment.md +41 -0
  235. package/dist/universal/.kiro/skills/citable/rubrics/narrative-accuracy.md +46 -0
  236. package/dist/universal/.kiro/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  237. package/dist/universal/.kiro/skills/citable/rubrics/semantic-clarity.md +42 -0
  238. package/dist/universal/.kiro/skills/citable/rubrics/source-authority.md +37 -0
  239. package/dist/universal/.kiro/skills/citable/schemas/claim.schema.json +53 -0
  240. package/dist/universal/.kiro/skills/citable/schemas/common.defs.json +33 -0
  241. package/dist/universal/.kiro/skills/citable/schemas/competitor.schema.json +28 -0
  242. package/dist/universal/.kiro/skills/citable/schemas/config.schema.json +41 -0
  243. package/dist/universal/.kiro/skills/citable/schemas/crawler.schema.json +33 -0
  244. package/dist/universal/.kiro/skills/citable/schemas/detector-quality.schema.json +39 -0
  245. package/dist/universal/.kiro/skills/citable/schemas/entity.schema.json +39 -0
  246. package/dist/universal/.kiro/skills/citable/schemas/evidence.schema.json +41 -0
  247. package/dist/universal/.kiro/skills/citable/schemas/experiment.schema.json +37 -0
  248. package/dist/universal/.kiro/skills/citable/schemas/finding.schema.json +101 -0
  249. package/dist/universal/.kiro/skills/citable/schemas/page.schema.json +40 -0
  250. package/dist/universal/.kiro/skills/citable/schemas/project.schema.json +29 -0
  251. package/dist/universal/.kiro/skills/citable/schemas/prompt-result.schema.json +37 -0
  252. package/dist/universal/.kiro/skills/citable/schemas/prompt.schema.json +41 -0
  253. package/dist/universal/.kiro/skills/citable/schemas/query.schema.json +43 -0
  254. package/dist/universal/.kiro/skills/citable/schemas/run.schema.json +36 -0
  255. package/dist/universal/.kiro/skills/citable/scripts/README.md +4 -0
  256. package/dist/universal/.kiro/skills/citable/templates/finding-review.md +54 -0
  257. package/dist/universal/.opencode/skills/citable/SKILL.md +137 -0
  258. package/dist/universal/.opencode/skills/citable/VERSION +1 -0
  259. package/dist/universal/.opencode/skills/citable/commands/README.md +36 -0
  260. package/dist/universal/.opencode/skills/citable/commands/ingest.md +44 -0
  261. package/dist/universal/.opencode/skills/citable/commands/measurement.md +49 -0
  262. package/dist/universal/.opencode/skills/citable/commands/optimize-page.md +53 -0
  263. package/dist/universal/.opencode/skills/citable/commands/page-work.md +48 -0
  264. package/dist/universal/.opencode/skills/citable/commands/validate-render.md +24 -0
  265. package/dist/universal/.opencode/skills/citable/manifest.json +54 -0
  266. package/dist/universal/.opencode/skills/citable/policies/crawler-policy-template.md +47 -0
  267. package/dist/universal/.opencode/skills/citable/references/anti-patterns.md +61 -0
  268. package/dist/universal/.opencode/skills/citable/rubrics/README.md +30 -0
  269. package/dist/universal/.opencode/skills/citable/rubrics/answer-extractability.md +44 -0
  270. package/dist/universal/.opencode/skills/citable/rubrics/claim-boundedness.md +36 -0
  271. package/dist/universal/.opencode/skills/citable/rubrics/comparison-fairness.md +30 -0
  272. package/dist/universal/.opencode/skills/citable/rubrics/conversion-alignment.md +37 -0
  273. package/dist/universal/.opencode/skills/citable/rubrics/entity-clarity.md +41 -0
  274. package/dist/universal/.opencode/skills/citable/rubrics/evidence-strength.md +53 -0
  275. package/dist/universal/.opencode/skills/citable/rubrics/information-gain.md +33 -0
  276. package/dist/universal/.opencode/skills/citable/rubrics/intent-alignment.md +41 -0
  277. package/dist/universal/.opencode/skills/citable/rubrics/narrative-accuracy.md +46 -0
  278. package/dist/universal/.opencode/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  279. package/dist/universal/.opencode/skills/citable/rubrics/semantic-clarity.md +42 -0
  280. package/dist/universal/.opencode/skills/citable/rubrics/source-authority.md +37 -0
  281. package/dist/universal/.opencode/skills/citable/schemas/claim.schema.json +53 -0
  282. package/dist/universal/.opencode/skills/citable/schemas/common.defs.json +33 -0
  283. package/dist/universal/.opencode/skills/citable/schemas/competitor.schema.json +28 -0
  284. package/dist/universal/.opencode/skills/citable/schemas/config.schema.json +41 -0
  285. package/dist/universal/.opencode/skills/citable/schemas/crawler.schema.json +33 -0
  286. package/dist/universal/.opencode/skills/citable/schemas/detector-quality.schema.json +39 -0
  287. package/dist/universal/.opencode/skills/citable/schemas/entity.schema.json +39 -0
  288. package/dist/universal/.opencode/skills/citable/schemas/evidence.schema.json +41 -0
  289. package/dist/universal/.opencode/skills/citable/schemas/experiment.schema.json +37 -0
  290. package/dist/universal/.opencode/skills/citable/schemas/finding.schema.json +101 -0
  291. package/dist/universal/.opencode/skills/citable/schemas/page.schema.json +40 -0
  292. package/dist/universal/.opencode/skills/citable/schemas/project.schema.json +29 -0
  293. package/dist/universal/.opencode/skills/citable/schemas/prompt-result.schema.json +37 -0
  294. package/dist/universal/.opencode/skills/citable/schemas/prompt.schema.json +41 -0
  295. package/dist/universal/.opencode/skills/citable/schemas/query.schema.json +43 -0
  296. package/dist/universal/.opencode/skills/citable/schemas/run.schema.json +36 -0
  297. package/dist/universal/.opencode/skills/citable/scripts/README.md +4 -0
  298. package/dist/universal/.opencode/skills/citable/templates/finding-review.md +54 -0
  299. package/dist/universal/.pi/agent/skills/citable/SKILL.md +137 -0
  300. package/dist/universal/.pi/agent/skills/citable/VERSION +1 -0
  301. package/dist/universal/.pi/agent/skills/citable/commands/README.md +36 -0
  302. package/dist/universal/.pi/agent/skills/citable/commands/ingest.md +44 -0
  303. package/dist/universal/.pi/agent/skills/citable/commands/measurement.md +49 -0
  304. package/dist/universal/.pi/agent/skills/citable/commands/optimize-page.md +53 -0
  305. package/dist/universal/.pi/agent/skills/citable/commands/page-work.md +48 -0
  306. package/dist/universal/.pi/agent/skills/citable/commands/validate-render.md +24 -0
  307. package/dist/universal/.pi/agent/skills/citable/manifest.json +54 -0
  308. package/dist/universal/.pi/agent/skills/citable/policies/crawler-policy-template.md +47 -0
  309. package/dist/universal/.pi/agent/skills/citable/references/anti-patterns.md +61 -0
  310. package/dist/universal/.pi/agent/skills/citable/rubrics/README.md +30 -0
  311. package/dist/universal/.pi/agent/skills/citable/rubrics/answer-extractability.md +44 -0
  312. package/dist/universal/.pi/agent/skills/citable/rubrics/claim-boundedness.md +36 -0
  313. package/dist/universal/.pi/agent/skills/citable/rubrics/comparison-fairness.md +30 -0
  314. package/dist/universal/.pi/agent/skills/citable/rubrics/conversion-alignment.md +37 -0
  315. package/dist/universal/.pi/agent/skills/citable/rubrics/entity-clarity.md +41 -0
  316. package/dist/universal/.pi/agent/skills/citable/rubrics/evidence-strength.md +53 -0
  317. package/dist/universal/.pi/agent/skills/citable/rubrics/information-gain.md +33 -0
  318. package/dist/universal/.pi/agent/skills/citable/rubrics/intent-alignment.md +41 -0
  319. package/dist/universal/.pi/agent/skills/citable/rubrics/narrative-accuracy.md +46 -0
  320. package/dist/universal/.pi/agent/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  321. package/dist/universal/.pi/agent/skills/citable/rubrics/semantic-clarity.md +42 -0
  322. package/dist/universal/.pi/agent/skills/citable/rubrics/source-authority.md +37 -0
  323. package/dist/universal/.pi/agent/skills/citable/schemas/claim.schema.json +53 -0
  324. package/dist/universal/.pi/agent/skills/citable/schemas/common.defs.json +33 -0
  325. package/dist/universal/.pi/agent/skills/citable/schemas/competitor.schema.json +28 -0
  326. package/dist/universal/.pi/agent/skills/citable/schemas/config.schema.json +41 -0
  327. package/dist/universal/.pi/agent/skills/citable/schemas/crawler.schema.json +33 -0
  328. package/dist/universal/.pi/agent/skills/citable/schemas/detector-quality.schema.json +39 -0
  329. package/dist/universal/.pi/agent/skills/citable/schemas/entity.schema.json +39 -0
  330. package/dist/universal/.pi/agent/skills/citable/schemas/evidence.schema.json +41 -0
  331. package/dist/universal/.pi/agent/skills/citable/schemas/experiment.schema.json +37 -0
  332. package/dist/universal/.pi/agent/skills/citable/schemas/finding.schema.json +101 -0
  333. package/dist/universal/.pi/agent/skills/citable/schemas/page.schema.json +40 -0
  334. package/dist/universal/.pi/agent/skills/citable/schemas/project.schema.json +29 -0
  335. package/dist/universal/.pi/agent/skills/citable/schemas/prompt-result.schema.json +37 -0
  336. package/dist/universal/.pi/agent/skills/citable/schemas/prompt.schema.json +41 -0
  337. package/dist/universal/.pi/agent/skills/citable/schemas/query.schema.json +43 -0
  338. package/dist/universal/.pi/agent/skills/citable/schemas/run.schema.json +36 -0
  339. package/dist/universal/.pi/agent/skills/citable/scripts/README.md +4 -0
  340. package/dist/universal/.pi/agent/skills/citable/templates/finding-review.md +54 -0
  341. package/dist/universal/.qoder/skills/citable/SKILL.md +137 -0
  342. package/dist/universal/.qoder/skills/citable/VERSION +1 -0
  343. package/dist/universal/.qoder/skills/citable/commands/README.md +36 -0
  344. package/dist/universal/.qoder/skills/citable/commands/ingest.md +44 -0
  345. package/dist/universal/.qoder/skills/citable/commands/measurement.md +49 -0
  346. package/dist/universal/.qoder/skills/citable/commands/optimize-page.md +53 -0
  347. package/dist/universal/.qoder/skills/citable/commands/page-work.md +48 -0
  348. package/dist/universal/.qoder/skills/citable/commands/validate-render.md +24 -0
  349. package/dist/universal/.qoder/skills/citable/manifest.json +54 -0
  350. package/dist/universal/.qoder/skills/citable/policies/crawler-policy-template.md +47 -0
  351. package/dist/universal/.qoder/skills/citable/references/anti-patterns.md +61 -0
  352. package/dist/universal/.qoder/skills/citable/rubrics/README.md +30 -0
  353. package/dist/universal/.qoder/skills/citable/rubrics/answer-extractability.md +44 -0
  354. package/dist/universal/.qoder/skills/citable/rubrics/claim-boundedness.md +36 -0
  355. package/dist/universal/.qoder/skills/citable/rubrics/comparison-fairness.md +30 -0
  356. package/dist/universal/.qoder/skills/citable/rubrics/conversion-alignment.md +37 -0
  357. package/dist/universal/.qoder/skills/citable/rubrics/entity-clarity.md +41 -0
  358. package/dist/universal/.qoder/skills/citable/rubrics/evidence-strength.md +53 -0
  359. package/dist/universal/.qoder/skills/citable/rubrics/information-gain.md +33 -0
  360. package/dist/universal/.qoder/skills/citable/rubrics/intent-alignment.md +41 -0
  361. package/dist/universal/.qoder/skills/citable/rubrics/narrative-accuracy.md +46 -0
  362. package/dist/universal/.qoder/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  363. package/dist/universal/.qoder/skills/citable/rubrics/semantic-clarity.md +42 -0
  364. package/dist/universal/.qoder/skills/citable/rubrics/source-authority.md +37 -0
  365. package/dist/universal/.qoder/skills/citable/schemas/claim.schema.json +53 -0
  366. package/dist/universal/.qoder/skills/citable/schemas/common.defs.json +33 -0
  367. package/dist/universal/.qoder/skills/citable/schemas/competitor.schema.json +28 -0
  368. package/dist/universal/.qoder/skills/citable/schemas/config.schema.json +41 -0
  369. package/dist/universal/.qoder/skills/citable/schemas/crawler.schema.json +33 -0
  370. package/dist/universal/.qoder/skills/citable/schemas/detector-quality.schema.json +39 -0
  371. package/dist/universal/.qoder/skills/citable/schemas/entity.schema.json +39 -0
  372. package/dist/universal/.qoder/skills/citable/schemas/evidence.schema.json +41 -0
  373. package/dist/universal/.qoder/skills/citable/schemas/experiment.schema.json +37 -0
  374. package/dist/universal/.qoder/skills/citable/schemas/finding.schema.json +101 -0
  375. package/dist/universal/.qoder/skills/citable/schemas/page.schema.json +40 -0
  376. package/dist/universal/.qoder/skills/citable/schemas/project.schema.json +29 -0
  377. package/dist/universal/.qoder/skills/citable/schemas/prompt-result.schema.json +37 -0
  378. package/dist/universal/.qoder/skills/citable/schemas/prompt.schema.json +41 -0
  379. package/dist/universal/.qoder/skills/citable/schemas/query.schema.json +43 -0
  380. package/dist/universal/.qoder/skills/citable/schemas/run.schema.json +36 -0
  381. package/dist/universal/.qoder/skills/citable/scripts/README.md +4 -0
  382. package/dist/universal/.qoder/skills/citable/templates/finding-review.md +54 -0
  383. package/dist/universal/.rovodev/skills/citable/SKILL.md +137 -0
  384. package/dist/universal/.rovodev/skills/citable/VERSION +1 -0
  385. package/dist/universal/.rovodev/skills/citable/commands/README.md +36 -0
  386. package/dist/universal/.rovodev/skills/citable/commands/ingest.md +44 -0
  387. package/dist/universal/.rovodev/skills/citable/commands/measurement.md +49 -0
  388. package/dist/universal/.rovodev/skills/citable/commands/optimize-page.md +53 -0
  389. package/dist/universal/.rovodev/skills/citable/commands/page-work.md +48 -0
  390. package/dist/universal/.rovodev/skills/citable/commands/validate-render.md +24 -0
  391. package/dist/universal/.rovodev/skills/citable/manifest.json +54 -0
  392. package/dist/universal/.rovodev/skills/citable/policies/crawler-policy-template.md +47 -0
  393. package/dist/universal/.rovodev/skills/citable/references/anti-patterns.md +61 -0
  394. package/dist/universal/.rovodev/skills/citable/rubrics/README.md +30 -0
  395. package/dist/universal/.rovodev/skills/citable/rubrics/answer-extractability.md +44 -0
  396. package/dist/universal/.rovodev/skills/citable/rubrics/claim-boundedness.md +36 -0
  397. package/dist/universal/.rovodev/skills/citable/rubrics/comparison-fairness.md +30 -0
  398. package/dist/universal/.rovodev/skills/citable/rubrics/conversion-alignment.md +37 -0
  399. package/dist/universal/.rovodev/skills/citable/rubrics/entity-clarity.md +41 -0
  400. package/dist/universal/.rovodev/skills/citable/rubrics/evidence-strength.md +53 -0
  401. package/dist/universal/.rovodev/skills/citable/rubrics/information-gain.md +33 -0
  402. package/dist/universal/.rovodev/skills/citable/rubrics/intent-alignment.md +41 -0
  403. package/dist/universal/.rovodev/skills/citable/rubrics/narrative-accuracy.md +46 -0
  404. package/dist/universal/.rovodev/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  405. package/dist/universal/.rovodev/skills/citable/rubrics/semantic-clarity.md +42 -0
  406. package/dist/universal/.rovodev/skills/citable/rubrics/source-authority.md +37 -0
  407. package/dist/universal/.rovodev/skills/citable/schemas/claim.schema.json +53 -0
  408. package/dist/universal/.rovodev/skills/citable/schemas/common.defs.json +33 -0
  409. package/dist/universal/.rovodev/skills/citable/schemas/competitor.schema.json +28 -0
  410. package/dist/universal/.rovodev/skills/citable/schemas/config.schema.json +41 -0
  411. package/dist/universal/.rovodev/skills/citable/schemas/crawler.schema.json +33 -0
  412. package/dist/universal/.rovodev/skills/citable/schemas/detector-quality.schema.json +39 -0
  413. package/dist/universal/.rovodev/skills/citable/schemas/entity.schema.json +39 -0
  414. package/dist/universal/.rovodev/skills/citable/schemas/evidence.schema.json +41 -0
  415. package/dist/universal/.rovodev/skills/citable/schemas/experiment.schema.json +37 -0
  416. package/dist/universal/.rovodev/skills/citable/schemas/finding.schema.json +101 -0
  417. package/dist/universal/.rovodev/skills/citable/schemas/page.schema.json +40 -0
  418. package/dist/universal/.rovodev/skills/citable/schemas/project.schema.json +29 -0
  419. package/dist/universal/.rovodev/skills/citable/schemas/prompt-result.schema.json +37 -0
  420. package/dist/universal/.rovodev/skills/citable/schemas/prompt.schema.json +41 -0
  421. package/dist/universal/.rovodev/skills/citable/schemas/query.schema.json +43 -0
  422. package/dist/universal/.rovodev/skills/citable/schemas/run.schema.json +36 -0
  423. package/dist/universal/.rovodev/skills/citable/scripts/README.md +4 -0
  424. package/dist/universal/.rovodev/skills/citable/templates/finding-review.md +54 -0
  425. package/dist/universal/.trae/skills/citable/SKILL.md +137 -0
  426. package/dist/universal/.trae/skills/citable/VERSION +1 -0
  427. package/dist/universal/.trae/skills/citable/commands/README.md +36 -0
  428. package/dist/universal/.trae/skills/citable/commands/ingest.md +44 -0
  429. package/dist/universal/.trae/skills/citable/commands/measurement.md +49 -0
  430. package/dist/universal/.trae/skills/citable/commands/optimize-page.md +53 -0
  431. package/dist/universal/.trae/skills/citable/commands/page-work.md +48 -0
  432. package/dist/universal/.trae/skills/citable/commands/validate-render.md +24 -0
  433. package/dist/universal/.trae/skills/citable/manifest.json +54 -0
  434. package/dist/universal/.trae/skills/citable/policies/crawler-policy-template.md +47 -0
  435. package/dist/universal/.trae/skills/citable/references/anti-patterns.md +61 -0
  436. package/dist/universal/.trae/skills/citable/rubrics/README.md +30 -0
  437. package/dist/universal/.trae/skills/citable/rubrics/answer-extractability.md +44 -0
  438. package/dist/universal/.trae/skills/citable/rubrics/claim-boundedness.md +36 -0
  439. package/dist/universal/.trae/skills/citable/rubrics/comparison-fairness.md +30 -0
  440. package/dist/universal/.trae/skills/citable/rubrics/conversion-alignment.md +37 -0
  441. package/dist/universal/.trae/skills/citable/rubrics/entity-clarity.md +41 -0
  442. package/dist/universal/.trae/skills/citable/rubrics/evidence-strength.md +53 -0
  443. package/dist/universal/.trae/skills/citable/rubrics/information-gain.md +33 -0
  444. package/dist/universal/.trae/skills/citable/rubrics/intent-alignment.md +41 -0
  445. package/dist/universal/.trae/skills/citable/rubrics/narrative-accuracy.md +46 -0
  446. package/dist/universal/.trae/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  447. package/dist/universal/.trae/skills/citable/rubrics/semantic-clarity.md +42 -0
  448. package/dist/universal/.trae/skills/citable/rubrics/source-authority.md +37 -0
  449. package/dist/universal/.trae/skills/citable/schemas/claim.schema.json +53 -0
  450. package/dist/universal/.trae/skills/citable/schemas/common.defs.json +33 -0
  451. package/dist/universal/.trae/skills/citable/schemas/competitor.schema.json +28 -0
  452. package/dist/universal/.trae/skills/citable/schemas/config.schema.json +41 -0
  453. package/dist/universal/.trae/skills/citable/schemas/crawler.schema.json +33 -0
  454. package/dist/universal/.trae/skills/citable/schemas/detector-quality.schema.json +39 -0
  455. package/dist/universal/.trae/skills/citable/schemas/entity.schema.json +39 -0
  456. package/dist/universal/.trae/skills/citable/schemas/evidence.schema.json +41 -0
  457. package/dist/universal/.trae/skills/citable/schemas/experiment.schema.json +37 -0
  458. package/dist/universal/.trae/skills/citable/schemas/finding.schema.json +101 -0
  459. package/dist/universal/.trae/skills/citable/schemas/page.schema.json +40 -0
  460. package/dist/universal/.trae/skills/citable/schemas/project.schema.json +29 -0
  461. package/dist/universal/.trae/skills/citable/schemas/prompt-result.schema.json +37 -0
  462. package/dist/universal/.trae/skills/citable/schemas/prompt.schema.json +41 -0
  463. package/dist/universal/.trae/skills/citable/schemas/query.schema.json +43 -0
  464. package/dist/universal/.trae/skills/citable/schemas/run.schema.json +36 -0
  465. package/dist/universal/.trae/skills/citable/scripts/README.md +4 -0
  466. package/dist/universal/.trae/skills/citable/templates/finding-review.md +54 -0
  467. package/dist/universal/.trae-cn/skills/citable/SKILL.md +137 -0
  468. package/dist/universal/.trae-cn/skills/citable/VERSION +1 -0
  469. package/dist/universal/.trae-cn/skills/citable/commands/README.md +36 -0
  470. package/dist/universal/.trae-cn/skills/citable/commands/ingest.md +44 -0
  471. package/dist/universal/.trae-cn/skills/citable/commands/measurement.md +49 -0
  472. package/dist/universal/.trae-cn/skills/citable/commands/optimize-page.md +53 -0
  473. package/dist/universal/.trae-cn/skills/citable/commands/page-work.md +48 -0
  474. package/dist/universal/.trae-cn/skills/citable/commands/validate-render.md +24 -0
  475. package/dist/universal/.trae-cn/skills/citable/manifest.json +54 -0
  476. package/dist/universal/.trae-cn/skills/citable/policies/crawler-policy-template.md +47 -0
  477. package/dist/universal/.trae-cn/skills/citable/references/anti-patterns.md +61 -0
  478. package/dist/universal/.trae-cn/skills/citable/rubrics/README.md +30 -0
  479. package/dist/universal/.trae-cn/skills/citable/rubrics/answer-extractability.md +44 -0
  480. package/dist/universal/.trae-cn/skills/citable/rubrics/claim-boundedness.md +36 -0
  481. package/dist/universal/.trae-cn/skills/citable/rubrics/comparison-fairness.md +30 -0
  482. package/dist/universal/.trae-cn/skills/citable/rubrics/conversion-alignment.md +37 -0
  483. package/dist/universal/.trae-cn/skills/citable/rubrics/entity-clarity.md +41 -0
  484. package/dist/universal/.trae-cn/skills/citable/rubrics/evidence-strength.md +53 -0
  485. package/dist/universal/.trae-cn/skills/citable/rubrics/information-gain.md +33 -0
  486. package/dist/universal/.trae-cn/skills/citable/rubrics/intent-alignment.md +41 -0
  487. package/dist/universal/.trae-cn/skills/citable/rubrics/narrative-accuracy.md +46 -0
  488. package/dist/universal/.trae-cn/skills/citable/rubrics/recommendation-eligibility.md +36 -0
  489. package/dist/universal/.trae-cn/skills/citable/rubrics/semantic-clarity.md +42 -0
  490. package/dist/universal/.trae-cn/skills/citable/rubrics/source-authority.md +37 -0
  491. package/dist/universal/.trae-cn/skills/citable/schemas/claim.schema.json +53 -0
  492. package/dist/universal/.trae-cn/skills/citable/schemas/common.defs.json +33 -0
  493. package/dist/universal/.trae-cn/skills/citable/schemas/competitor.schema.json +28 -0
  494. package/dist/universal/.trae-cn/skills/citable/schemas/config.schema.json +41 -0
  495. package/dist/universal/.trae-cn/skills/citable/schemas/crawler.schema.json +33 -0
  496. package/dist/universal/.trae-cn/skills/citable/schemas/detector-quality.schema.json +39 -0
  497. package/dist/universal/.trae-cn/skills/citable/schemas/entity.schema.json +39 -0
  498. package/dist/universal/.trae-cn/skills/citable/schemas/evidence.schema.json +41 -0
  499. package/dist/universal/.trae-cn/skills/citable/schemas/experiment.schema.json +37 -0
  500. package/dist/universal/.trae-cn/skills/citable/schemas/finding.schema.json +101 -0
  501. package/dist/universal/.trae-cn/skills/citable/schemas/page.schema.json +40 -0
  502. package/dist/universal/.trae-cn/skills/citable/schemas/project.schema.json +29 -0
  503. package/dist/universal/.trae-cn/skills/citable/schemas/prompt-result.schema.json +37 -0
  504. package/dist/universal/.trae-cn/skills/citable/schemas/prompt.schema.json +41 -0
  505. package/dist/universal/.trae-cn/skills/citable/schemas/query.schema.json +43 -0
  506. package/dist/universal/.trae-cn/skills/citable/schemas/run.schema.json +36 -0
  507. package/dist/universal/.trae-cn/skills/citable/scripts/README.md +4 -0
  508. package/dist/universal/.trae-cn/skills/citable/templates/finding-review.md +54 -0
  509. package/dist/universal/manifest.json +598 -0
  510. package/package.json +89 -0
  511. package/schemas/claim.schema.json +53 -0
  512. package/schemas/common.defs.json +33 -0
  513. package/schemas/competitor.schema.json +28 -0
  514. package/schemas/config.schema.json +41 -0
  515. package/schemas/crawler.schema.json +33 -0
  516. package/schemas/detector-quality.schema.json +39 -0
  517. package/schemas/entity.schema.json +39 -0
  518. package/schemas/evidence.schema.json +41 -0
  519. package/schemas/experiment.schema.json +37 -0
  520. package/schemas/finding.schema.json +101 -0
  521. package/schemas/page.schema.json +40 -0
  522. package/schemas/project.schema.json +29 -0
  523. package/schemas/prompt-result.schema.json +37 -0
  524. package/schemas/prompt.schema.json +41 -0
  525. package/schemas/query.schema.json +43 -0
  526. package/schemas/run.schema.json +36 -0
  527. package/scripts/build-dist.js +143 -0
  528. package/skill/SKILL.md +137 -0
  529. package/skill/commands/README.md +36 -0
  530. package/skill/commands/ingest.md +44 -0
  531. package/skill/commands/measurement.md +49 -0
  532. package/skill/commands/optimize-page.md +53 -0
  533. package/skill/commands/page-work.md +48 -0
  534. package/skill/commands/validate-render.md +24 -0
  535. package/skill/policies/crawler-policy-template.md +47 -0
  536. package/skill/references/anti-patterns.md +61 -0
  537. package/skill/rubrics/README.md +30 -0
  538. package/skill/rubrics/answer-extractability.md +44 -0
  539. package/skill/rubrics/claim-boundedness.md +36 -0
  540. package/skill/rubrics/comparison-fairness.md +30 -0
  541. package/skill/rubrics/conversion-alignment.md +37 -0
  542. package/skill/rubrics/entity-clarity.md +41 -0
  543. package/skill/rubrics/evidence-strength.md +53 -0
  544. package/skill/rubrics/information-gain.md +33 -0
  545. package/skill/rubrics/intent-alignment.md +41 -0
  546. package/skill/rubrics/narrative-accuracy.md +46 -0
  547. package/skill/rubrics/recommendation-eligibility.md +36 -0
  548. package/skill/rubrics/semantic-clarity.md +42 -0
  549. package/skill/rubrics/source-authority.md +37 -0
  550. package/skill/templates/finding-review.md +54 -0
  551. package/src/cli/index.js +135 -0
  552. package/src/commands/audit.js +111 -0
  553. package/src/commands/compareSnapshots.js +48 -0
  554. package/src/commands/context.js +62 -0
  555. package/src/commands/init.js +111 -0
  556. package/src/commands/inspect.js +61 -0
  557. package/src/commands/mapClaims.js +89 -0
  558. package/src/commands/schemaCmd.js +71 -0
  559. package/src/commands/substantiate.js +121 -0
  560. package/src/commands/validate.js +27 -0
  561. package/src/crawler/fetch.js +31 -0
  562. package/src/crawler/robots.js +67 -0
  563. package/src/crawler/sitemap.js +25 -0
  564. package/src/detectors/ans.js +219 -0
  565. package/src/detectors/arch.js +154 -0
  566. package/src/detectors/claim.js +230 -0
  567. package/src/detectors/crawl.js +143 -0
  568. package/src/detectors/entity.js +202 -0
  569. package/src/detectors/evd.js +164 -0
  570. package/src/detectors/framework.js +137 -0
  571. package/src/detectors/geoReco.js +218 -0
  572. package/src/detectors/index.js +50 -0
  573. package/src/detectors/lifeMeas.js +212 -0
  574. package/src/detectors/link.js +121 -0
  575. package/src/detectors/page.js +202 -0
  576. package/src/detectors/schemaData.js +249 -0
  577. package/src/detectors/tech.js +397 -0
  578. package/src/evidence/run.js +88 -0
  579. package/src/extractor/page.js +125 -0
  580. package/src/extractor/site.js +175 -0
  581. package/src/installer/index.js +1117 -0
  582. package/src/installer/providers.js +164 -0
  583. package/src/registries/index.js +127 -0
  584. package/src/reporting/report.js +82 -0
  585. package/src/shared/io.js +56 -0
  586. package/src/shared/schemaValidator.js +29 -0
@@ -0,0 +1,48 @@
1
+ ---
2
+ command: /citable create-page, answer-block, architect, interlink, consolidate, metadata
3
+ purpose: Page-construction and architecture workflows sharing optimize-page's guardrails.
4
+ ---
5
+
6
+ # create-page
7
+ 1. Preconditions: a registered query/prompt with no existing target (else it's
8
+ ARCH-004 territory — consolidate instead); an assigned content owner; the
9
+ facts the page needs (from registries and operator), never invented.
10
+ 2. Compose per the generative-ready pattern: canonical answer (50–100 words) →
11
+ definition + exclusions → why it matters (operational, not marketing) →
12
+ mechanism → evidence → comparison → boundary conditions → implementation →
13
+ revision metadata → related entities.
14
+ 3. Claims on the page must pre-exist in the claim registry (or be added as
15
+ candidates and pass substantiate + evidence-strength review before launch).
16
+ 4. Register the page; run post-modification validation (build → audit →
17
+ compare-snapshots).
18
+
19
+ # answer-block
20
+ Insert/repair a direct answer block on an existing page. Constraints: the block
21
+ answers the page's principal question, is self-contained (answer-extractability
22
+ rubric), includes in-passage scope, and does not displace the conversion action
23
+ (conversion-alignment rubric). Verify ANS-001/002/008 do not fire afterwards.
24
+
25
+ # architect
26
+ Propose site/topic architecture: one canonical URL per material intent,
27
+ hub-and-spoke relationships, shallow depth for priority pages, separation of
28
+ informational and transactional intents. Output is a written proposal +
29
+ page-registry changes in `draft`; it never mass-moves URLs without a migration
30
+ plan (redirect map, sitemap regeneration, canonical updates) recorded first.
31
+
32
+ # interlink
33
+ Add internal links only where a semantic relationship exists in the registries
34
+ (same topic entities, claim→evidence, spoke→hub, implementation→commercial
35
+ next step). Descriptive anchors; never bulk term-matched insertion (LINK-004).
36
+ Verify LINK-001/002/003 and ARCH-001/002/006 after.
37
+
38
+ # consolidate
39
+ For ARCH-004/005 findings: choose the survivor URL (stronger inbound links +
40
+ better intent fit), merge unique content preserving claim boundaries, 301 the
41
+ losers, update sitemap + canonicals + registry (losers → status retired with
42
+ successor recorded), rerun audit. Never delete content that is the only
43
+ publication surface of an active claim without re-homing the claim.
44
+
45
+ # metadata
46
+ Title/description work: titles identify and differentiate (PAGE-001/002),
47
+ descriptions summarize accurately and never promise absent content. Both are
48
+ derived from page substance — metadata never asserts what the page doesn't say.
@@ -0,0 +1,24 @@
1
+ ---
2
+ command: /citable validate-render
3
+ purpose: Confirm answer-bearing content exists in served HTML, not only after client-side rendering.
4
+ preconditions: [build command known, built output or deployed URL available]
5
+ failure_behaviour: build/render failure → preserve command, exit code, stderr; status incomplete, never success
6
+ ---
7
+
8
+ # Workflow
9
+
10
+ 1. Build with the project's recorded build command. Non-zero exit → stop,
11
+ report failure evidence.
12
+ 2. Run `citable audit technical --target <built-output>`; TECH-011
13
+ (render-dependent primary content) is the primary detector here.
14
+ 3. For each index-target page, compare extracted text of the initial HTML with
15
+ the intended primary content (title, H1, canonical answer, claims). Content
16
+ present only in JS payloads, accordions requiring interaction, images,
17
+ PDFs, or canvas → finding with the specific missing passages.
18
+ 4. If a headless browser is available in the environment, render and diff
19
+ initial vs rendered text to quantify the gap; if not, record
20
+ `incomplete_checks: rendered comparison unavailable in this environment` —
21
+ do not extrapolate.
22
+ 5. Verdict per page: `server_rendered | hybrid_acceptable | render_dependent |
23
+ not_determined`. Never report site-wide success while any check is
24
+ not_determined without listing it.
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "citable",
3
+ "version": "0.1.0",
4
+ "managedBy": "citable-cli",
5
+ "provider": "claude",
6
+ "providerName": "Claude Code",
7
+ "scope": "bundle",
8
+ "sourcePackage": "@nebulacomponents/citable@0.1.0",
9
+ "variantPath": ".claude/skills/citable",
10
+ "files": {
11
+ "commands/ingest.md": "sha256:cf35659aecd9d0e160909003efdbe056864fc5d824c71b4ef0ee801ce07ff598",
12
+ "commands/measurement.md": "sha256:3550b1e747c5a38cdb712016b9bc773d93596bc4d1b49a309f9cddd816c1b662",
13
+ "commands/optimize-page.md": "sha256:35866f3d7cdeef0376ea7a7d7036085a9b9cf95bbb300ecf4bd77610ebd74d85",
14
+ "commands/page-work.md": "sha256:965a66e59bdf7b0da482d26fade53b3d265885ece5d463fe83b0789ebefaef3e",
15
+ "commands/README.md": "sha256:13774e705356b9eafb42aa522cc10337d86dfb973d533976f041a21819fb6cb4",
16
+ "commands/validate-render.md": "sha256:a8e1d04d40b84d57c35039250d98c6a7302cd44a148a8c3b9d9cfb92678c4347",
17
+ "policies/crawler-policy-template.md": "sha256:15c88a4eeb21f53f71e5250dd3eb2d2791a814b304eaefce8bb30e2bdf2e2e59",
18
+ "references/anti-patterns.md": "sha256:de63f8e646af0fbf479b45eb1d050ae62a8637acc320d21b87e4a083fd4c47e7",
19
+ "rubrics/answer-extractability.md": "sha256:c8e741143c34e53afdb3dc7b6976ce7b4485dce13b12d14c193fccb17bacf1da",
20
+ "rubrics/claim-boundedness.md": "sha256:0bab1b85248c252b966175912ebfae13bf18aa7e41573f7466831ac78b5d3e27",
21
+ "rubrics/comparison-fairness.md": "sha256:7afc86903aa4a695060be7b6bca42ba505c106ea7cfa153344189afc5b78a5ba",
22
+ "rubrics/conversion-alignment.md": "sha256:85882736cd15320e5af5a872fd4263b5c40ec202c39023e8eb416848f942905e",
23
+ "rubrics/entity-clarity.md": "sha256:5b8003019fe81cf055757bee059eeb56f92753a683a0f94f7641143b88a29e74",
24
+ "rubrics/evidence-strength.md": "sha256:c9b9ea2454ba9e71e42909060821b24703bf6afe39b9a324e01fe234138af71c",
25
+ "rubrics/information-gain.md": "sha256:97bb02015efeca9b83fc503c7f2e4dadad1358cb47453dfa36d76bc0cac71ceb",
26
+ "rubrics/intent-alignment.md": "sha256:16ca19bfeb4e58ea4910a2e212a935bcfeeaaa06a66b34834f82f2e79439cc87",
27
+ "rubrics/narrative-accuracy.md": "sha256:0e0671175329c4da78855514ac1512d16a22217ca8694ca4a283d4d604b89028",
28
+ "rubrics/README.md": "sha256:d80b94d44b5a4e0fe9b6e1708a2f6d6a156a1aec5b4d4a632669803dd8b67d1e",
29
+ "rubrics/recommendation-eligibility.md": "sha256:38d2055fc5f6ab5e40fd1b48de4e0518fc4382da0b7062ad09c5afebcc673fc3",
30
+ "rubrics/semantic-clarity.md": "sha256:66d9f4843a4a620ea8c00625c5e17c02baeaa373f2b445ce13de6f81d78ec7ba",
31
+ "rubrics/source-authority.md": "sha256:8dbfe46bdcd0b5351f038be503601268c7d0abb9bed83be9ca58bf54dec5a73b",
32
+ "schemas/claim.schema.json": "sha256:70c521e51a24031a1e1f73eca04c2a2650e760f3fdc82e9553eb26c0b5c428e9",
33
+ "schemas/common.defs.json": "sha256:1ae1ae4a9b0babadbcba3288dd3d1adb3e152f87f1e51c08a397a0f29878e95f",
34
+ "schemas/competitor.schema.json": "sha256:7d34c1f131eba23d94404921c4defbdabb402f83bc5a748a1de40fbe89d65cca",
35
+ "schemas/config.schema.json": "sha256:a87f3bb0087de09035b9f2dafea66e32e4fcc2e3e329abcd0fd8a5ec33318f2a",
36
+ "schemas/crawler.schema.json": "sha256:0541de509d0b5de065e1dd3ff52212ba389eaf7f5a9c2309b5e5beb232b4b356",
37
+ "schemas/detector-quality.schema.json": "sha256:5e9e1ac80b1198a0ff8fa17b9f7a543d3ccf3ed3d60196152f6ff095cfdebccd",
38
+ "schemas/entity.schema.json": "sha256:12f9222122255c86059185bc66e528e2828b430f7abc5683e6759774eb555553",
39
+ "schemas/evidence.schema.json": "sha256:a78d39cd1d66c89198b0ecc9af48c8d3d8659c7b5cbb9f96c43d18fcf2b4aeb7",
40
+ "schemas/experiment.schema.json": "sha256:704ea5c14cd4409c3a1806b8b1c124bcd9f2fe9e313dfa93662889bed0cb6441",
41
+ "schemas/finding.schema.json": "sha256:2366bbbd0f6359ecc8d262979b159811ad10d2eaacc4816d5075bc6f7e9efc13",
42
+ "schemas/page.schema.json": "sha256:195d2f91d67550627c7047fd8e98d08dc386bc5858a02239d6c23b99193eaac2",
43
+ "schemas/project.schema.json": "sha256:ea48fdb6480f7047ba4594bd5908bc1f79c1ad6b9a2c204df900959b5f203dc6",
44
+ "schemas/prompt-result.schema.json": "sha256:b55be47d7d58d7b1dd8c3b1e849e24e55216212c592cde7eb836953379b85737",
45
+ "schemas/prompt.schema.json": "sha256:69782525f9de3a9f92649f2bc2fb4a0b2ed4288d6028663b18e39918c9f7fca1",
46
+ "schemas/query.schema.json": "sha256:59829f78461f115d73486e6350dcea5daf5a8e77576013b7a6d25913f240c55d",
47
+ "schemas/run.schema.json": "sha256:46c3178620f3a358d936d535aeadb83454b9b35b551e53e6615cc9862063dacb",
48
+ "scripts/README.md": "sha256:1c3e952950ef353849621b07c5f615bf7cd20cc5654da4635492a7bd6384e747",
49
+ "SKILL.md": "sha256:637bb755bca6a2225c5b69edab0b8be7dff294e784d7ce25cec23546b847324c",
50
+ "templates/finding-review.md": "sha256:b270a83d3f015150aac80249ae9314979c0befea39ff92ec455f9a5aaa73404c",
51
+ "VERSION": "sha256:e9dd8507f4bf0c6f42458e41aea833ad0bd3f6127272335eee9bf4d58541ed67"
52
+ },
53
+ "treeHash": "sha256:7b3f30bfd6e7c79f549a4ca9a2269a32afa899a995437ed9b1b8d7e86d562bf2"
54
+ }
@@ -0,0 +1,47 @@
1
+ # Crawler policy template
2
+
3
+ Access is decided **per crawler and per purpose**. Search-crawler allowance is
4
+ never permission for model training (premise 3.3). Every decision needs an
5
+ owner, business rationale, legal rationale, and review date in
6
+ `.citable/crawlers.yaml`; robots.txt is generated to match (CRAWL-001 verifies
7
+ the two agree).
8
+
9
+ | Crawler | Vendor | Purpose | Decision defaults to |
10
+ | --- | --- | --- | --- |
11
+ | Googlebot | Google | search_indexing (also gates AI features eligibility) | undecided → usually allow |
12
+ | Bingbot | Microsoft | search_indexing (also Copilot surfaces) | undecided |
13
+ | OAI-SearchBot | OpenAI | ai_search_discovery (ChatGPT search citation) | undecided |
14
+ | GPTBot | OpenAI | model_training | undecided — separate decision, legal owner |
15
+ | ChatGPT-User | OpenAI | user_initiated_retrieval | undecided — separate decision |
16
+ | PerplexityBot | Perplexity | ai_search_discovery | undecided |
17
+ | Perplexity-User | Perplexity | user_initiated_retrieval | undecided |
18
+ | ClaudeBot | Anthropic | model_training (verify current vendor docs) | undecided |
19
+
20
+ Rules:
21
+
22
+ 1. `undecided` is a temporary state; CRAWL-006 flags it. A decision requires
23
+ decision_owner + rationale.
24
+ 2. Allowing a vendor's search crawler without recording a training-crawler
25
+ decision for the same vendor is flagged (CRAWL-002).
26
+ 3. Vendor documentation URLs and IP-validation methods are recorded per entry;
27
+ user-agent strings are spoofable and must not be the sole trust basis.
28
+ 4. Robots semantics: robots.txt controls crawling, not indexing. Use `noindex`
29
+ when removal from search results is the objective (TECH-003 remediation).
30
+ 5. Blocked-crawler decisions must state whether the block covers licensed or
31
+ partner access paths too, or only public crawling.
32
+
33
+ Example generated robots.txt for: search allowed, OpenAI search allowed,
34
+ training blocked:
35
+
36
+ ```text
37
+ User-agent: GPTBot
38
+ Disallow: /
39
+
40
+ User-agent: ClaudeBot
41
+ Disallow: /
42
+
43
+ User-agent: *
44
+ Allow: /
45
+
46
+ Sitemap: https://example.com/sitemap.xml
47
+ ```
@@ -0,0 +1,61 @@
1
+ # Citable anti-pattern library
2
+
3
+ Canonical reference used by all commands. When a requested change matches an
4
+ entry, name it, state the risk, and offer the defensible alternative. Entries
5
+ marked ⛔ must be refused outright (premise 3.6), not merely discouraged.
6
+
7
+ ## Content anti-patterns
8
+
9
+ | Anti-pattern | Risk | Defensible alternative |
10
+ | --- | --- | --- |
11
+ | Generic AI introductions ("In today's rapidly evolving landscape…") | Suppresses answer extraction; signals commodity content (ANS-001) | Direct answer in the first 50–100 words |
12
+ | Excessive preamble before the answer | Passage extraction pulls filler instead of the claim | Lead with the canonical answer block |
13
+ | Keyword stuffing | Spam-policy exposure; unreadable prose (PAGE-009) | Semantic coverage driven by explanation needs |
14
+ | Synthetic information gain (rewriting top results) | No citation reason; no durable differentiation | Original data, experience, taxonomy, benchmarks |
15
+ | Repeated conclusions / decorative FAQs | Dilutes extractable claims; FAQ schema risk (SCHEMA-007) | One canonical answer location per question |
16
+ | ⛔ False precision / unsupported statistics | Legal + reputational; CLAIM-004/ANS-005 | Publish numbers only with methodology and period |
17
+ | Circular definitions | Engine cannot anchor the concept (ANS-003) | Genus–differentia definition plus exclusions |
18
+ | ⛔ Fake comparisons / unbounded superlatives | Deceptive-claim exposure (CLAIM-007) | Explicit comparison set, criteria, and evidence |
19
+ | ⛔ Invented expertise / anonymous substantive content | E-E-A-T failure; regulatory exposure | Real named authors with verifiable profiles |
20
+ | Hidden commercial bias | Undisclosed endorsement liability | Disclose commercial relationships |
21
+ | Duplicated programmatic prose | Index bloat, quality dilution | Programmatic pages only with unique data + owner |
22
+
23
+ ## Technical anti-patterns
24
+
25
+ | Anti-pattern | Risk | Defensible alternative |
26
+ | --- | --- | --- |
27
+ | "Index everything" | Crawl waste, quality dilution | Deliberate indexing_intent per page |
28
+ | Schema saturation | Invisible-assertion violations | Schema only for visible, registry-backed facts |
29
+ | Sitemap dumping (redirects, 404s, non-canonicals) | TECH-008/009/010 | Generate sitemaps from the canonical URL set |
30
+ | Canonical misuse (variants → irrelevant page, pagination → page 1) | Signal consolidation failures | One canonical per distinct content object |
31
+ | JavaScript-only primary content | Render-stage failure (TECH-011) | SSR/SSG for answer-bearing content |
32
+ | ⛔ Crawler cloaking / bot-specific deceptive rendering | Spam-policy removal | Serve equivalent content to bots and users |
33
+ | Unbounded faceted URLs | Index bloat, crawl waste | Controlled parameters + canonical rules |
34
+ | Redirect-dependent architecture | Chain latency, signal loss (TECH-013) | Direct links to final URLs |
35
+ | Automated links from term matching alone | Manipulative-link footprint (LINK-004) | Curated contextual links |
36
+ | Evidence only in PDFs/gated files | Retrieval failure for the strongest material | HTML equivalent for every material document |
37
+
38
+ ## AEO anti-patterns
39
+
40
+ | Anti-pattern | Risk | Defensible alternative |
41
+ | --- | --- | --- |
42
+ | Answer blocks that omit limitations | Overgeneralized reuse; misquotation (ANS-008) | State scope, exclusions, failure modes |
43
+ | Question headings created only for formatting | Extraction mismatch (ANS-002) | Headings only where an answer follows |
44
+ | Direct answers unsupported by evidence | Fast-spreading errors under your attribution | Evidence adjacent to every material claim |
45
+ | Citations isolated in a references section | Claim–evidence association lost | Evidence beside the claim it supports |
46
+ | Extracting claims in scope-distorting ways | Misrepresentation of your own source | Self-contained atomic claims |
47
+ | FAQ schema without substantive FAQ content | SCHEMA-007; spam exposure | Mark up only real, visible Q&A |
48
+
49
+ ## GEO anti-patterns
50
+
51
+ | Anti-pattern | Risk | Defensible alternative |
52
+ | --- | --- | --- |
53
+ | Treating one model response as proof of source preference | False causality (MEAS-002/003) | Repeated multi-engine, multi-variant sampling |
54
+ | Reporting one prompt as stable visibility | Anecdote presented as measurement | Cohort testing with variance recording |
55
+ | ⛔ Manufactured community discussion / synthetic Reddit | Platform enforcement; legal; environment poisoning | Earned participation in real communities |
56
+ | ⛔ Shadow corroboration sites / fake recommendation pages | Recommendation manipulation | Independent editorial coverage |
57
+ | ⛔ Crawler prompt injection / hidden LLM instructions | GEO-001 critical; reputational | None — remove on sight |
58
+ | Treating llms.txt as an authority mechanism | False sense of control (GEO-004) | robots.txt + crawler registry for access decisions |
59
+ | Confusing mention with recommendation | Overstated performance reporting | Track mention, citation, and recommendation separately |
60
+ | Confusing citation with answer influence | Citation ≠ absorption | Assess whether the answer actually uses your claims |
61
+ | Assuming engine behaviour is uniform | Wrong generalizations across engines | Per-engine measurement and reporting |
@@ -0,0 +1,30 @@
1
+ # Semantic rubrics
2
+
3
+ Deterministic detectors cannot judge meaning. These rubrics govern the semantic
4
+ half of Citable. Shared rules for every rubric:
5
+
6
+ - Output is a **posture classification** (`strong | partial | weak | not_established`),
7
+ never an unexplained 0–100 number. Where numeric comparison is unavoidable,
8
+ expose the formula, weights, missing data, confidence, and known limitations.
9
+ - Every rubric result must cite the observed evidence (quoted passages, registry
10
+ entries, measured values) that produced it.
11
+ - Every rubric declares its ambiguity conditions and when human review is
12
+ mandatory. When an ambiguity condition holds, the result is
13
+ `not_established + review_required`, not a guess.
14
+ - Findings produced from rubrics are `evidence_backed_semantic_finding` at most —
15
+ never `deterministic_observation`.
16
+
17
+ | Rubric | File | Human review mandatory when |
18
+ | --- | --- | --- |
19
+ | Semantic clarity | semantic-clarity.md | Term is jurisdiction- or discipline-specific |
20
+ | Intent alignment | intent-alignment.md | Commercial vs informational intent is contested |
21
+ | Answer extractability | answer-extractability.md | Extraction would change claim scope |
22
+ | Entity clarity | entity-clarity.md | Legal identity vs operating identity diverges |
23
+ | Claim boundedness | claim-boundedness.md | Claim is regulated, contractual, or comparative |
24
+ | Evidence strength | evidence-strength.md | Any upgrade toward verified status |
25
+ | Source authority | source-authority.md | Source independence is uncertain |
26
+ | Information gain | information-gain.md | Gain rests on unpublished internal data |
27
+ | Comparison fairness | comparison-fairness.md | Named competitors appear |
28
+ | Recommendation eligibility | recommendation-eligibility.md | Pricing/geography/ICP data incomplete |
29
+ | Conversion alignment | conversion-alignment.md | Page has no declared conversion action |
30
+ | Narrative accuracy | narrative-accuracy.md | Contradiction involves legal or security facts |
@@ -0,0 +1,44 @@
1
+ # Rubric: answer extractability
2
+
3
+ Judges whether a page's principal answer survives being lifted out of the page
4
+ without distortion. Complements deterministic ANS-00x detectors.
5
+
6
+ ## Scoring dimensions
7
+
8
+ 1. **Position** — canonical answer within the first 50–100 words after the H1.
9
+ 2. **Self-containment** — passage names its subject explicitly; no deictic
10
+ references ("as shown above"), no pronoun whose referent is outside the passage.
11
+ 3. **Atomicity** — one claim per key sentence; each independently understandable.
12
+ 4. **Scope survival** — if the passage is quoted alone, its conditions and
13
+ exclusions travel with it (in-sentence, not three paragraphs later).
14
+ 5. **Definition quality** — "[Term] is [genus] that [differentia]" plus explicit
15
+ "It does not include…".
16
+ 6. **Structural support** — procedures as ordered steps; comparisons with stated
17
+ basis and prose equivalent of any table.
18
+
19
+ ## Posture
20
+
21
+ - `strong`: dimensions 1–4 all hold for the page's principal question.
22
+ - `partial`: answer present but scope/exclusions live outside the extractable span.
23
+ - `weak`: answer buried after preamble, or dependent on visual context.
24
+ - `not_established`: the page has no identifiable principal question (fix the
25
+ page registry first — this is an intent problem, not a formatting problem).
26
+
27
+ ## Evidence required
28
+
29
+ Quote the exact passage judged, with its position (paragraph index / selector).
30
+
31
+ ## Example / counterexample
32
+
33
+ - Strong: "AI execution governance is the set of enforceable controls that
34
+ determines whether a specific AI-initiated action is authorized at the moment
35
+ of execution. It does not include model training governance."
36
+ - Weak: "This matters more than ever. As we saw above, there are many angles to
37
+ consider before diving into what this means for your organization."
38
+
39
+ ## Ambiguity conditions → human review
40
+
41
+ - Extraction would change the claim's scope (dimension 4 fails in a way that
42
+ affects a registered claim).
43
+ - The principal question is contested between informational and commercial intent.
44
+ - Content is legally qualified language where tightening wording changes meaning.
@@ -0,0 +1,36 @@
1
+ # Rubric: claim boundedness
2
+
3
+ Judges whether a claim's wording stays inside its evidence, scope, and
4
+ exclusions — the semantic complement to CLAIM-00x detectors.
5
+
6
+ ## Scoring dimensions
7
+
8
+ 1. **Scope explicitness** — conditions under which the claim holds are stated
9
+ in the claim or immediately adjacent, not implied.
10
+ 2. **Exclusion honesty** — known non-covered cases stated; material limitations
11
+ not omitted (a limitation the buyer would consider material must appear).
12
+ 3. **Type fidelity** — opinion phrased as opinion, aspiration as aspiration,
13
+ comparison with its comparison set, performance with its conditions.
14
+ 4. **Quantifier discipline** — "all/every/always/never/only" only when evidence
15
+ covers the universal; otherwise scoped quantifiers.
16
+ 5. **Temporal honesty** — version/date-bound facts carry their version or date.
17
+
18
+ ## Posture
19
+
20
+ `strong`, `partial` (scope stated, exclusions thin), `weak` (wording exceeds
21
+ evidence or universal quantifiers uncovered), `not_established` (claim not in
22
+ registry — run `/citable map-claims`).
23
+
24
+ ## Example / counterexample
25
+
26
+ - Bounded: "In configured enforcement deployments, Gatekeeper validates each
27
+ action before execution. Advisory-only deployments are excluded."
28
+ - Unbounded: "Gatekeeper stops every unauthorized AI action." (universal
29
+ quantifier, no scope, no exclusions → `weak`; substantiate outcome at best
30
+ `verified_narrowed` after rewording).
31
+
32
+ ## Ambiguity → human review
33
+
34
+ - Regulated, contractual, security, financial, medical, certification, or
35
+ customer claims (always — mirrors CLAIM-006).
36
+ - Narrowing the wording would change a published commercial commitment.
@@ -0,0 +1,30 @@
1
+ # Rubric: comparison fairness
2
+
3
+ Judges whether a comparison page is legitimate analysis rather than a stacked
4
+ deck. Complements ANS-007 (basis exists) with a judgment of whether the basis
5
+ is honest.
6
+
7
+ ## Scoring dimensions
8
+
9
+ 1. **Criteria legitimacy** — comparison dimensions are ones a buyer would use,
10
+ not dimensions selected because only the author wins them.
11
+ 2. **Alternative completeness** — legitimate alternatives a buyer would
12
+ shortlist are included; excluding the strongest competitor is a fairness
13
+ failure, not an editorial choice.
14
+ 3. **Evidence per cell** — comparative assertions about *other* vendors carry
15
+ sources and retrieval dates (their docs, public pricing), not assumptions.
16
+ 4. **Loss disclosure** — the author's product loses at least where it actually
17
+ loses; a comparison with zero conceded dimensions is presumptively unfair.
18
+ 5. **Currency** — competitor capabilities dated; stale claims about others are
19
+ both unfair and legally risky.
20
+
21
+ ## Posture
22
+
23
+ `strong` (all five), `partial` (fair criteria, thin sourcing), `weak`
24
+ (criteria stacked or no conceded dimensions), `not_established` (competitor
25
+ data unavailable → mark incomplete; never guess competitor capabilities).
26
+
27
+ ## Ambiguity → human review
28
+
29
+ - Any named competitor (legal review of comparative claims — always).
30
+ - Competitor capability changed recently and sources conflict.
@@ -0,0 +1,37 @@
1
+ # Rubric: conversion alignment
2
+
3
+ Judges whether optimization preserved or improved the page's commercial
4
+ function — the guard against "optimized for machines, ruined for buyers"
5
+ (premise 3.7).
6
+
7
+ ## Scoring dimensions
8
+
9
+ 1. **Action preservation** — the registered conversion_action is still present,
10
+ visible, and functional after changes.
11
+ 2. **Stage fit** — the action matches the funnel stage of the mapped
12
+ queries/prompts.
13
+ 3. **Friction honesty** — added answer blocks, definitions, or schema did not
14
+ push the conversion element below the fold on the page's dominant viewport
15
+ class (verify, don't assume).
16
+ 4. **Trust continuity** — limitations and scope statements added for AEO/GEO
17
+ are framed accurately but not self-sabotagingly (state the limitation; don't
18
+ editorialize against your own product).
19
+ 5. **Accessibility preserved** — interactive conversion elements keep their
20
+ labels, focus order, and keyboard operability after edits.
21
+
22
+ ## Posture
23
+
24
+ `strong`, `partial` (action present, stage fit doubtful), `weak` (action lost,
25
+ demoted, or broken), `not_established` (no conversion_action registered —
26
+ that's an inspect/registry finding first).
27
+
28
+ ## Evidence required
29
+
30
+ Before/after presence of the conversion element (selector or line reference)
31
+ and the registry conversion_action row.
32
+
33
+ ## Ambiguity → human review
34
+
35
+ - Page has no declared conversion action but obviously sells something.
36
+ - Optimization requires choosing between answer position and conversion
37
+ position — commercial owner decides, not the optimizer.
@@ -0,0 +1,41 @@
1
+ # Rubric: entity clarity
2
+
3
+ Judges whether an external system can resolve who/what an entity is, what it
4
+ owns, and what category it belongs to — across owned and observed surfaces.
5
+
6
+ ## Scoring dimensions
7
+
8
+ 1. **Identity completeness** — canonical name, type, canonical URL, and (for
9
+ organizations) legal vs operating identity explained.
10
+ 2. **Relationship graph** — ownership and product-family relationships recorded
11
+ and mirrored in structured data (@id references, publisher links).
12
+ 3. **Cross-surface consistency** — same category and description across website,
13
+ profiles, directories, documentation (small wording drift is normal;
14
+ *category contradiction* is the failure).
15
+ 4. **Alias governance** — every name variant in the wild is either registered
16
+ as an alias or scheduled for correction.
17
+ 5. **External anchoring** — sameAs/profiles limited to verified authoritative
18
+ accounts.
19
+
20
+ ## Posture
21
+
22
+ `strong`, `partial` (identity complete, cross-surface unverified),
23
+ `weak` (category contradiction or ownership ambiguity), `not_established`
24
+ (identity fields missing — mark the entity `incomplete`; never invent legal
25
+ names, founders, addresses, or registration status).
26
+
27
+ ## Evidence required
28
+
29
+ Registry entity row, schema blocks, and the exact conflicting descriptions with
30
+ their sources and retrieval dates.
31
+
32
+ ## Counterexample (category contradiction)
33
+
34
+ Website: "AI execution governance platform" / LinkedIn: "ethical AI consulting"
35
+ / directory: "AI marketing automation" → `weak`, with each conflicting surface
36
+ listed as a contradiction finding.
37
+
38
+ ## Ambiguity → human review
39
+
40
+ - Legal identity vs operating identity diverge (renames, acquisitions).
41
+ - Entity shared between organizations (joint ventures, resold products).
@@ -0,0 +1,53 @@
1
+ # Rubric: evidence strength
2
+
3
+ Judges whether attached evidence actually supports a claim *as worded*. This is
4
+ the mandatory semantic gate before any claim moves toward `verified`
5
+ (`citable substantiate` handles only the deterministic preconditions).
6
+
7
+ ## Scoring dimensions
8
+
9
+ 1. **Directness** — does the evidence address the claim's exact proposition, or
10
+ an adjacent one? ("handles 10k rps" is not supported by "architecture is
11
+ horizontally scalable".)
12
+ 2. **Primacy** — primary artifact (test result, specification, certification,
13
+ registration) vs secondary report of one.
14
+ 3. **Methodological completeness** — methodology, test conditions, measurement
15
+ period, population, and environment recorded and appropriate.
16
+ 4. **Currency** — evidence dated within the claim's temporal class (see
17
+ lifecycle table in the AEO source doc §8).
18
+ 5. **Independence** (for comparative/market claims) — at least one source not
19
+ controlled by the claiming organization.
20
+ 6. **Coverage of scope** — evidence covers every deployment/scenario inside the
21
+ claim's declared scope; anything uncovered must appear in exclusions.
22
+
23
+ ## Posture
24
+
25
+ - `strong`: all six dimensions satisfied; claim wording does not exceed evidence.
26
+ - `partial`: directness + currency satisfied, but scope coverage or primacy
27
+ incomplete → outcome is `verified_narrowed` with explicit narrowed scope.
28
+ - `weak`: evidence is adjacent, stale, or secondary-only → `insufficient_evidence`.
29
+ - `not_established`: evidence inaccessible or methodology absent.
30
+
31
+ ## Confidence
32
+
33
+ `confirmed` only when the evidence artifact itself was read (not its registry
34
+ row). `high` when methodology and directness verified. Never above `medium`
35
+ when working from registry metadata alone.
36
+
37
+ ## Example / counterexample
38
+
39
+ - Supported: "Gatekeeper validates actions before execution *in enforcement
40
+ deployments*" ← architecture spec + live validation report covering
41
+ enforcement mode. Scope stated, exclusions stated.
42
+ - Not supported: "reduces compliance costs by 70%" ← a customer quote saying
43
+ "significantly reduced our costs". Quote is directional, not quantitative;
44
+ outcome is `insufficient_evidence` with required_input: baseline, period,
45
+ population, methodology, source.
46
+
47
+ ## Ambiguity conditions → human review
48
+
49
+ - Any upgrade toward `verified`/`verified_narrowed` (always).
50
+ - Evidence in a language or jurisdiction the reviewer cannot assess.
51
+ - Contradictory evidence exists of comparable primacy.
52
+ - Claim is legal/regulatory, security, financial, medical, certification, or
53
+ names a customer — legal/SME review regardless of evidence quality.
@@ -0,0 +1,33 @@
1
+ # Rubric: information gain
2
+
3
+ Judges whether a page contributes information not available elsewhere — the
4
+ difference between a citable source and a summary of other sources.
5
+
6
+ ## Scoring dimensions
7
+
8
+ 1. **Original artifact presence** — at least one of: original data, benchmark,
9
+ controlled experiment, incident analysis, reference architecture,
10
+ proprietary taxonomy (defined, not just named), survey, reproducible
11
+ methodology, first-party operational observation, reusable tool.
12
+ 2. **Non-derivability** — could a competent writer produce this page from the
13
+ current top results alone? If yes, gain is synthetic.
14
+ 3. **Specificity** — concrete versions, numbers-with-methodology, named failure
15
+ modes; not abstract advice.
16
+ 4. **Reproducibility** — methods described well enough to re-run or falsify.
17
+
18
+ ## Posture
19
+
20
+ `strong` (dimension 1 + 2 hold), `partial` (original framing, no original
21
+ artifact), `weak` (restatement of existing sources), `not_established`
22
+ (gain claimed from internal data that is not published — publish it or drop
23
+ the claim of originality).
24
+
25
+ ## Counterexample
26
+
27
+ "10 best practices for AI governance" synthesized from existing articles, with
28
+ an LLM paraphrase pass — scores `weak` regardless of length or formatting.
29
+
30
+ ## Ambiguity → human review
31
+
32
+ - Gain rests on unpublished internal data (publication/licensing decision).
33
+ - Original data involves customers or regulated metrics.
@@ -0,0 +1,41 @@
1
+ # Rubric: intent alignment
2
+
3
+ Judges whether page content actually serves the intent declared in the page
4
+ registry and the queries/prompts mapped to it.
5
+
6
+ ## Scoring dimensions
7
+
8
+ 1. **Declared vs delivered** — a page targeting "vendor evaluation" must contain
9
+ evaluation material (capabilities, limitations, pricing qualification,
10
+ comparison), not a re-titled awareness article.
11
+ 2. **Intent purity** — informational and transactional intents separated unless
12
+ the registry deliberately combines them.
13
+ 3. **Query/prompt fit** — for each mapped query_id/prompt_id, the page contains
14
+ the expected answer components recorded in the registry.
15
+ 4. **Next-step coherence** — the conversion action matches the funnel stage
16
+ (awareness pages don't push "buy now"; selection pages don't end at a blog
17
+ subscription).
18
+
19
+ ## Posture
20
+
21
+ `strong` (all mapped queries served, next step coherent), `partial` (primary
22
+ query served, variants uncovered), `weak` (declared intent contradicted by
23
+ content), `not_established` (no registry mapping — run `/citable map-queries`
24
+ first).
25
+
26
+ ## Evidence required
27
+
28
+ The registry mapping rows plus quoted page passages that do (or fail to) serve
29
+ each expected answer component.
30
+
31
+ ## Counterexample
32
+
33
+ A page registered for "how to implement X" (implementation intent) whose body
34
+ is a category pitch with no steps — flagged by ANS-006 deterministically; this
35
+ rubric additionally judges whether the *substance* matches even when an ordered
36
+ list exists.
37
+
38
+ ## Ambiguity → human review
39
+
40
+ - Commercial vs informational intent contested for a revenue-relevant page.
41
+ - Two registries map conflicting intents to the same URL (also ARCH-004/005).
@@ -0,0 +1,46 @@
1
+ # Rubric: narrative accuracy
2
+
3
+ Judges whether a generated answer (or third-party description) accurately
4
+ represents the entity, against the approved narrative baseline in the entity
5
+ and claim registries. Used by `/citable test-prompts` scoring and
6
+ `/citable monitor-contradictions`.
7
+
8
+ ## Scoring dimensions
9
+
10
+ 1. **Identity accuracy** — right organization, right products, right people;
11
+ no entity confusion with similarly named parties.
12
+ 2. **Category accuracy** — placed in the registry category, not an adjacent one.
13
+ 3. **Claim fidelity** — priority claims reproduced within their scope; scope
14
+ stripping counts as an error even when the words match.
15
+ 4. **Omission materiality** — missing limitations or exclusions that change a
16
+ buyer's conclusion count as inaccuracies, not just absences.
17
+ 5. **Fabrication detection** — asserted facts with no owned or observed source
18
+ (certifications, customers, integrations, breach events) — classify by
19
+ contradiction type: naming, legal identity, category, capability,
20
+ performance, pricing, integration, maturity, customer, founder, security,
21
+ regulatory status, product availability.
22
+
23
+ ## Posture
24
+
25
+ `strong` (identity + category + claims accurate, no material omissions),
26
+ `partial` (accurate identity, minor claim drift), `weak` (category error or
27
+ scope-stripped claims), `not_established` (single observation only — needs
28
+ repeated sampling before any posture is recorded; MEAS-002).
29
+
30
+ ## Evidence required
31
+
32
+ The exact generated output, capture metadata (engine, model, date, locale,
33
+ account state), the registry rows compared, and per-error classification.
34
+
35
+ ## Severity mapping (GEO incident classes)
36
+
37
+ - SEV-1: fabricated breach/regulatory action, false certification claim →
38
+ incident runbook, not just a finding.
39
+ - SEV-2: wrong category across engines, false integration, stale pricing.
40
+ - SEV-3: stale biography, minor wording drift, intermittent omission.
41
+
42
+ ## Ambiguity → human review
43
+
44
+ - Contradiction involves legal or security facts (always).
45
+ - The "error" may reflect a true fact the registries have not caught up with —
46
+ verify internal truth before external correction (runbook step 4).