@nebulacomponents/citable 1.13.1 → 1.15.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.
- package/CHANGELOG.md +312 -0
- package/README.md +44 -6
- package/dist/universal/.agents/skills/citable/SKILL.md +22 -8
- package/dist/universal/.agents/skills/citable/VERSION +1 -1
- package/dist/universal/.agents/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.agents/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.agents/skills/citable/commands/README.md +4 -1
- package/dist/universal/.agents/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.agents/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.agents/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.agents/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.agents/skills/citable/manifest.json +29 -16
- package/dist/universal/.agents/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.agents/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.agents/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.agents/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.agents/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.agents/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.agents/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.agents/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.agents/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.agents/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.agents/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.agents/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.agents/skills/citable/scripts/README.md +3 -1
- package/dist/universal/.claude/agents/citable/citable-auditor.md +64 -0
- package/dist/universal/.claude/agents/citable/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.claude/agents/citable/manifest.json +12 -0
- package/dist/universal/.claude/skills/citable/SKILL.md +22 -8
- package/dist/universal/.claude/skills/citable/VERSION +1 -1
- package/dist/universal/.claude/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.claude/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.claude/skills/citable/commands/README.md +4 -1
- package/dist/universal/.claude/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.claude/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.claude/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.claude/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.claude/skills/citable/manifest.json +34 -16
- package/dist/universal/.claude/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.claude/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.claude/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.claude/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.claude/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.claude/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.claude/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.claude/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.claude/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.claude/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.claude/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.claude/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.claude/skills/citable/scripts/README.md +3 -1
- package/dist/universal/.cursor/skills/citable/SKILL.md +22 -8
- package/dist/universal/.cursor/skills/citable/VERSION +1 -1
- package/dist/universal/.cursor/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.cursor/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.cursor/skills/citable/commands/README.md +4 -1
- package/dist/universal/.cursor/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.cursor/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.cursor/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.cursor/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.cursor/skills/citable/manifest.json +29 -16
- package/dist/universal/.cursor/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.cursor/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.cursor/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.cursor/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.cursor/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.cursor/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.cursor/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.cursor/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.cursor/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.cursor/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.cursor/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.cursor/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.cursor/skills/citable/scripts/README.md +3 -1
- package/dist/universal/.gemini/skills/citable/SKILL.md +22 -8
- package/dist/universal/.gemini/skills/citable/VERSION +1 -1
- package/dist/universal/.gemini/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.gemini/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.gemini/skills/citable/commands/README.md +4 -1
- package/dist/universal/.gemini/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.gemini/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.gemini/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.gemini/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.gemini/skills/citable/manifest.json +29 -16
- package/dist/universal/.gemini/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.gemini/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.gemini/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.gemini/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.gemini/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.gemini/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.gemini/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.gemini/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.gemini/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.gemini/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.gemini/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.gemini/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.gemini/skills/citable/scripts/README.md +3 -1
- package/dist/universal/.github/skills/citable/SKILL.md +22 -8
- package/dist/universal/.github/skills/citable/VERSION +1 -1
- package/dist/universal/.github/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.github/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.github/skills/citable/commands/README.md +4 -1
- package/dist/universal/.github/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.github/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.github/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.github/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.github/skills/citable/manifest.json +29 -16
- package/dist/universal/.github/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.github/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.github/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.github/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.github/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.github/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.github/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.github/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.github/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.github/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.github/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.github/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.github/skills/citable/scripts/README.md +3 -1
- package/dist/universal/.kiro/skills/citable/SKILL.md +22 -8
- package/dist/universal/.kiro/skills/citable/VERSION +1 -1
- package/dist/universal/.kiro/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.kiro/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.kiro/skills/citable/commands/README.md +4 -1
- package/dist/universal/.kiro/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.kiro/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.kiro/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.kiro/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.kiro/skills/citable/manifest.json +29 -16
- package/dist/universal/.kiro/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.kiro/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.kiro/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.kiro/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.kiro/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.kiro/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.kiro/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.kiro/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.kiro/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.kiro/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.kiro/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.kiro/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.kiro/skills/citable/scripts/README.md +3 -1
- package/dist/universal/.opencode/skills/citable/SKILL.md +22 -8
- package/dist/universal/.opencode/skills/citable/VERSION +1 -1
- package/dist/universal/.opencode/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.opencode/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.opencode/skills/citable/commands/README.md +4 -1
- package/dist/universal/.opencode/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.opencode/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.opencode/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.opencode/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.opencode/skills/citable/manifest.json +29 -16
- package/dist/universal/.opencode/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.opencode/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.opencode/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.opencode/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.opencode/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.opencode/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.opencode/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.opencode/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.opencode/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.opencode/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.opencode/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.opencode/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.opencode/skills/citable/scripts/README.md +3 -1
- package/dist/universal/.pi/agent/skills/citable/SKILL.md +22 -8
- package/dist/universal/.pi/agent/skills/citable/VERSION +1 -1
- package/dist/universal/.pi/agent/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.pi/agent/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.pi/agent/skills/citable/commands/README.md +4 -1
- package/dist/universal/.pi/agent/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.pi/agent/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.pi/agent/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.pi/agent/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.pi/agent/skills/citable/manifest.json +29 -16
- package/dist/universal/.pi/agent/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.pi/agent/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.pi/agent/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.pi/agent/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.pi/agent/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.pi/agent/skills/citable/scripts/README.md +3 -1
- package/dist/universal/.qoder/skills/citable/SKILL.md +22 -8
- package/dist/universal/.qoder/skills/citable/VERSION +1 -1
- package/dist/universal/.qoder/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.qoder/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.qoder/skills/citable/commands/README.md +4 -1
- package/dist/universal/.qoder/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.qoder/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.qoder/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.qoder/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.qoder/skills/citable/manifest.json +29 -16
- package/dist/universal/.qoder/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.qoder/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.qoder/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.qoder/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.qoder/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.qoder/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.qoder/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.qoder/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.qoder/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.qoder/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.qoder/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.qoder/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.qoder/skills/citable/scripts/README.md +3 -1
- package/dist/universal/.rovodev/skills/citable/SKILL.md +22 -8
- package/dist/universal/.rovodev/skills/citable/VERSION +1 -1
- package/dist/universal/.rovodev/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.rovodev/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.rovodev/skills/citable/commands/README.md +4 -1
- package/dist/universal/.rovodev/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.rovodev/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.rovodev/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.rovodev/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.rovodev/skills/citable/manifest.json +29 -16
- package/dist/universal/.rovodev/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.rovodev/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.rovodev/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.rovodev/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.rovodev/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.rovodev/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.rovodev/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.rovodev/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.rovodev/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.rovodev/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.rovodev/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.rovodev/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.rovodev/skills/citable/scripts/README.md +3 -1
- package/dist/universal/.trae/skills/citable/SKILL.md +22 -8
- package/dist/universal/.trae/skills/citable/VERSION +1 -1
- package/dist/universal/.trae/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.trae/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.trae/skills/citable/commands/README.md +4 -1
- package/dist/universal/.trae/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.trae/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.trae/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.trae/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.trae/skills/citable/manifest.json +29 -16
- package/dist/universal/.trae/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.trae/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.trae/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.trae/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.trae/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.trae/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.trae/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.trae/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.trae/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.trae/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.trae/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.trae/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.trae/skills/citable/scripts/README.md +3 -1
- package/dist/universal/.trae-cn/skills/citable/SKILL.md +22 -8
- package/dist/universal/.trae-cn/skills/citable/VERSION +1 -1
- package/dist/universal/.trae-cn/skills/citable/agents/citable-auditor.md +64 -0
- package/dist/universal/.trae-cn/skills/citable/agents/citable-semantic-reviewer.md +66 -0
- package/dist/universal/.trae-cn/skills/citable/commands/README.md +4 -1
- package/dist/universal/.trae-cn/skills/citable/commands/action-findings.md +9 -1
- package/dist/universal/.trae-cn/skills/citable/commands/observe-and-act.md +62 -8
- package/dist/universal/.trae-cn/skills/citable/commands/plan-audit.md +35 -0
- package/dist/universal/.trae-cn/skills/citable/commands/reporting.md +57 -0
- package/dist/universal/.trae-cn/skills/citable/manifest.json +29 -16
- package/dist/universal/.trae-cn/skills/citable/schemas/action-plan.schema.json +13 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/browser-evidence-plan.schema.json +14 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/canonical-index-import.schema.json +30 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/common.defs.json +12 -1
- package/dist/universal/.trae-cn/skills/citable/schemas/corroboration-import.schema.json +48 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/entity-graph.schema.json +75 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/entity.schema.json +13 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/observation.schema.json +1 -1
- package/dist/universal/.trae-cn/skills/citable/schemas/page.schema.json +3 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/regional-network-import.schema.json +55 -0
- package/dist/universal/.trae-cn/skills/citable/schemas/schedule.schema.json +1 -1
- package/dist/universal/.trae-cn/skills/citable/schemas/source-identity-chain.schema.json +83 -0
- package/dist/universal/.trae-cn/skills/citable/scripts/README.md +3 -1
- package/dist/universal/manifest.json +306 -195
- package/package.json +1 -1
- package/schemas/action-plan.schema.json +13 -0
- package/schemas/browser-evidence-plan.schema.json +14 -0
- package/schemas/canonical-index-import.schema.json +30 -0
- package/schemas/common.defs.json +12 -1
- package/schemas/corroboration-import.schema.json +48 -0
- package/schemas/entity-graph.schema.json +75 -0
- package/schemas/entity.schema.json +13 -0
- package/schemas/observation.schema.json +1 -1
- package/schemas/page.schema.json +3 -0
- package/schemas/regional-network-import.schema.json +55 -0
- package/schemas/schedule.schema.json +1 -1
- package/schemas/source-identity-chain.schema.json +83 -0
- package/scripts/build-dist.js +36 -3
- package/skill/SKILL.md +22 -8
- package/skill/agents/citable-auditor.md +64 -0
- package/skill/agents/citable-semantic-reviewer.md +66 -0
- package/skill/commands/README.md +4 -1
- package/skill/commands/action-findings.md +9 -1
- package/skill/commands/observe-and-act.md +62 -8
- package/skill/commands/plan-audit.md +35 -0
- package/skill/commands/reporting.md +57 -0
- package/src/cli/index.js +115 -15
- package/src/commands/actionPlan.js +12 -1
- package/src/commands/audit.js +4 -0
- package/src/commands/connect.js +29 -0
- package/src/commands/context.js +15 -0
- package/src/commands/delivery.js +86 -2
- package/src/commands/demo.js +36 -0
- package/src/commands/fixtures/demo/.citable/claims.yaml +27 -0
- package/src/commands/fixtures/demo/.citable/competitors.yaml +3 -0
- package/src/commands/fixtures/demo/.citable/config.yaml +18 -0
- package/src/commands/fixtures/demo/.citable/crawlers.yaml +30 -0
- package/src/commands/fixtures/demo/.citable/entities.yaml +28 -0
- package/src/commands/fixtures/demo/.citable/evidence.yaml +19 -0
- package/src/commands/fixtures/demo/.citable/experiments.yaml +3 -0
- package/src/commands/fixtures/demo/.citable/pages.yaml +54 -0
- package/src/commands/fixtures/demo/.citable/prompts.yaml +11 -0
- package/src/commands/fixtures/demo/.citable/queries.yaml +10 -0
- package/src/commands/fixtures/demo/site/index.html +12 -0
- package/src/commands/fixtures/demo/site/learn/execution-governance/index.html +14 -0
- package/src/commands/fixtures/demo/site/pricing/index.html +10 -0
- package/src/commands/fixtures/demo/site/products/gatekeeper/index.html +15 -0
- package/src/commands/fixtures/demo/site/robots.txt +7 -0
- package/src/commands/fixtures/demo/site/sitemap.xml +7 -0
- package/src/commands/init.js +5 -2
- package/src/commands/monitor.js +35 -0
- package/src/commands/observe.js +315 -15
- package/src/commands/planAudit.js +151 -0
- package/src/commands/reportDashboard.js +21 -0
- package/src/commands/reportShareOfVoice.js +60 -0
- package/src/commands/schemaCmd.js +5 -1
- package/src/commands/substantiate.js +22 -10
- package/src/connectors/http.js +6 -3
- package/src/connectors/index.js +3 -1
- package/src/connectors/webflow.js +224 -0
- package/src/connectors/wordpress.js +226 -0
- package/src/crawler/fetch.js +34 -6
- package/src/detectors/geoReco.js +101 -0
- package/src/extractor/page.js +17 -0
- package/src/installer/index.js +282 -28
- package/src/installer/providers.js +11 -0
- package/src/monitoring/alertDelivery.js +98 -0
- package/src/observations/browserJourney.js +15 -7
- package/src/observations/claimDiff.js +83 -0
- package/src/observations/common.js +25 -0
- package/src/observations/entityGraph.js +89 -0
- package/src/observations/renderParity.js +49 -0
- package/src/observations/sourceIdentity.js +62 -0
- package/src/observations/stance.js +261 -0
- package/src/registries/seed.js +95 -0
- package/src/registries/seeds/saas-pricing/claims.yaml +18 -0
- package/src/registries/seeds/saas-pricing/entities.yaml +20 -0
- package/src/registries/seeds/saas-pricing/seed.json +6 -0
- package/src/reporting/dashboard.js +254 -0
- package/src/reporting/shareOfVoice.js +362 -0
- package/src/shared/checklist.js +19 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,7 +1,319 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## Fail-Closed Hall of Fame
|
|
4
|
+
|
|
5
|
+
Permanent, append-only record of confirmed breaches of Citable's fail-closed
|
|
6
|
+
guarantee, found and fixed under [`BOUNTY.md`](BOUNTY.md), whose "What
|
|
7
|
+
Qualifies" section is the authoritative scope (e.g. a claim reaching
|
|
8
|
+
`verified` without sufficient or unexpired evidence or required human
|
|
9
|
+
semantic review, or a detector/rubric silently passing a case that should
|
|
10
|
+
have been `blocked` or `unverified`). A reproducing fixture now guards
|
|
11
|
+
against each entry's regression. Entries are never edited or removed once
|
|
12
|
+
merged.
|
|
13
|
+
|
|
14
|
+
_No entries yet. See [`BOUNTY.md`](BOUNTY.md) to submit the first one._
|
|
15
|
+
|
|
3
16
|
## Unreleased
|
|
4
17
|
|
|
18
|
+
## 1.15.0 — 2026-09-07
|
|
19
|
+
|
|
20
|
+
### Added — Cross-Run Evidence Dashboard
|
|
21
|
+
|
|
22
|
+
- Added `citable report dashboard [--last N] [--since <run-id>]`, which folds
|
|
23
|
+
the `summary.json` each audit run already records into
|
|
24
|
+
`.citable/reports/dashboard.md` and a self-contained
|
|
25
|
+
`.citable/reports/dashboard.html` with inline SVG trend lines. It reads only
|
|
26
|
+
values the runs computed, adds no dependency, and never edits a run package.
|
|
27
|
+
- Fewer than two audit runs produces an explicit insufficient-history state
|
|
28
|
+
rather than a trend. Runs whose summary or manifest cannot be parsed, and
|
|
29
|
+
observation runs that record no severity or posture, are listed as skipped
|
|
30
|
+
with a reason instead of being counted as zero findings.
|
|
31
|
+
- Categorical posture series render as labelled states; they are not plotted
|
|
32
|
+
as numbers and are never combined with severity counts into a single score.
|
|
33
|
+
|
|
34
|
+
### Added — Automated Regression Alert Delivery and Scheduled Monitoring
|
|
35
|
+
|
|
36
|
+
- Extended `citable monitor` with optional `--webhook <url>` and `--min-severity <level>`
|
|
37
|
+
for automated regression alerting. When regressions are detected, a signed, hash-bound
|
|
38
|
+
payload is dispatched to the target endpoint and logged as an immutable delivery receipt
|
|
39
|
+
in `.citable/monitoring/deliveries/`.
|
|
40
|
+
- Extended `citable schedules run` with `--monitor` and `--webhook <url>` flags, plus
|
|
41
|
+
optional `monitor` configuration in `schedules.yaml` (`schemas/schedule.schema.json`).
|
|
42
|
+
Scheduled audit executions automatically run comparative regression checks against
|
|
43
|
+
prior baseline runs and dispatch alerts when critical or high regressions occur.
|
|
44
|
+
- Added strict fail-closed network validation for webhook endpoints: private and loopback
|
|
45
|
+
destinations are blocked, timeouts are enforced with AbortController, and delivery failures
|
|
46
|
+
are captured in sealed receipts rather than silently dropped.
|
|
47
|
+
|
|
48
|
+
### Added — Competitor Share-of-Citation and Share-of-Voice Reporting
|
|
49
|
+
|
|
50
|
+
- Added `citable report share-of-voice [--last N] [--since <run-id>]` (and aliases
|
|
51
|
+
`report citations` / `report share`), which joins the competitor registry
|
|
52
|
+
(`.citable/competitors.yaml`) against recorded citation observation runs.
|
|
53
|
+
- Derives verified prompt-level and aggregate citation share, first-party presence rate,
|
|
54
|
+
and competitor presence without scraping engine UIs or fabricating estimates.
|
|
55
|
+
- Unevaluated prompts and competitors with no recorded observations are marked as
|
|
56
|
+
`not_evidenced`. Renders both a committed Markdown report and a self-contained HTML
|
|
57
|
+
distribution bar visualization in `.citable/reports/`.
|
|
58
|
+
|
|
59
|
+
### Added — Stance & Sentiment Observation Module and Semantic Detector (G4)
|
|
60
|
+
|
|
61
|
+
- Added `src/observations/stance.js` and `citable observe stance --input <file> [--entity <id>]`
|
|
62
|
+
to classify recorded engine answer tone toward registered entities as evidence-backed semantic
|
|
63
|
+
findings without fabricating sentiment scores.
|
|
64
|
+
- Added detector `GEO-007` ("Unfavorable or distorted entity stance in recorded generative answers")
|
|
65
|
+
in `src/detectors/geoReco.js`, identifying negative or distorted characterizations across
|
|
66
|
+
prompt-results and citation observations. Gated by human review per the narrative-accuracy rubric
|
|
67
|
+
(`review_required: true`, `finding_type: 'evidence_backed_semantic_finding'`).
|
|
68
|
+
- Added positive and negative test fixtures in `tests/fixtures/observations/` proving detection
|
|
69
|
+
and non-detection.
|
|
70
|
+
|
|
71
|
+
### Added — WordPress and Webflow CMS Connectors for Remediation Targets (G5)
|
|
72
|
+
|
|
73
|
+
- Added CMS connectors for WordPress (`src/connectors/wordpress.js`) and Webflow
|
|
74
|
+
(`src/connectors/webflow.js`), mirroring the connector interface alongside GSC and GA4.
|
|
75
|
+
- Implemented read and apply adapters scoped to the fields action-plan items target (`title`,
|
|
76
|
+
`content`, `excerpt`, `meta`, `slug`, `seo`, structured data) with SHA-256 hash-locking to
|
|
77
|
+
prevent race conditions and unreviewed overwrites.
|
|
78
|
+
- Added `citable connect read --connection-id <id> --target-id <id>` and
|
|
79
|
+
`citable connect apply --connection-id <id> --input <spec.json> [--write]` with fail-closed
|
|
80
|
+
requirements for named human reviewers and matching content hashes.
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
## 1.14.0 — 2026-07-26
|
|
85
|
+
|
|
86
|
+
### Added — Evidence-Phase Agent Profiles
|
|
87
|
+
|
|
88
|
+
- Added canonical `citable-auditor` and `citable-semantic-reviewer` profiles.
|
|
89
|
+
The auditor may run guarded Citable collection commands but cannot edit the
|
|
90
|
+
target; the reviewer is read-only and cannot collect evidence, approve
|
|
91
|
+
publication, or upgrade claims.
|
|
92
|
+
- Claude Code installs generate and manage the profiles under its recursively
|
|
93
|
+
discovered agent directory with a separate hash manifest. Dry-run, check,
|
|
94
|
+
collision refusal, idempotent update, and uninstall preserve the profile
|
|
95
|
+
boundary independently from the skill.
|
|
96
|
+
- Other agent hosts continue to receive the canonical skill but report native
|
|
97
|
+
profiles as unsupported until their discovery and permission contracts are
|
|
98
|
+
verified.
|
|
99
|
+
|
|
100
|
+
### Documentation — Task Guides and MCP Transport Roadmap
|
|
101
|
+
|
|
102
|
+
- Added task-oriented command, integration, troubleshooting, and migration
|
|
103
|
+
guides with a documentation index.
|
|
104
|
+
- Documented MCP as a future evidence transport rather than an authority,
|
|
105
|
+
including staged delivery, provenance requirements, security gates, and
|
|
106
|
+
explicit non-goals. Citable does not currently implement an MCP client or
|
|
107
|
+
connector.
|
|
108
|
+
|
|
109
|
+
### Added — Question-to-Passage Review Context
|
|
110
|
+
|
|
111
|
+
- Passage observations now use a versioned record and join each page's declared
|
|
112
|
+
prompt IDs to canonical questions and expected answer components.
|
|
113
|
+
- Registry linkage creates review context only. Every candidate remains
|
|
114
|
+
`review_required`; Citable does not infer question-to-passage suitability or
|
|
115
|
+
semantic completeness.
|
|
116
|
+
|
|
117
|
+
### Added — Regional Network Imports
|
|
118
|
+
|
|
119
|
+
- `observe network --input <regional-network-import.json>` validates and seals
|
|
120
|
+
timestamped regional observations covering network label, request identity,
|
|
121
|
+
DNS answers, TLS authorization and certificate fingerprint, HTTP status,
|
|
122
|
+
latency, and cache state.
|
|
123
|
+
- Authority, authenticity, and representativeness remain explicit. Citable does
|
|
124
|
+
not operate a managed multi-region runner, infer global coverage, or treat
|
|
125
|
+
imported probes as crawler-identity evidence.
|
|
126
|
+
|
|
127
|
+
### Added — Render Semantic Review Policies
|
|
128
|
+
|
|
129
|
+
- Browser evidence plans may declare a semantic-impact policy with a review
|
|
130
|
+
owner and thresholds for main-text retention, headings, links, and structured
|
|
131
|
+
data. Each successful journey records deterministic initial/rendered hashes,
|
|
132
|
+
additions, removals, and policy violations.
|
|
133
|
+
- Policy evaluation always remains `review_required`. A passing deterministic
|
|
134
|
+
comparison does not establish semantic, retrieval, citation, ranking, or
|
|
135
|
+
business equivalence.
|
|
136
|
+
|
|
137
|
+
### Added — Engine Canonical Consensus
|
|
138
|
+
|
|
139
|
+
- `observe consensus --input <canonical-index-import.json>` joins strict,
|
|
140
|
+
timestamped engine-selected canonical observations with final URL, HTML,
|
|
141
|
+
Open Graph, and sitemap signals.
|
|
142
|
+
- Collection authority and authenticity remain attached to each engine
|
|
143
|
+
observation. Missing engine evidence remains `null`, and malformed or
|
|
144
|
+
incomplete imports fail closed.
|
|
145
|
+
|
|
146
|
+
### Added — Competitive Citation Profiles
|
|
147
|
+
|
|
148
|
+
- Citation objects may carry a strict source profile with content format, word
|
|
149
|
+
and heading counts, freshness date, and disclosed evidence features.
|
|
150
|
+
Observation summaries group unique declared profiles and citation counts by
|
|
151
|
+
competing domain.
|
|
152
|
+
- Malformed profile fields fail closed. Profile metadata remains imported
|
|
153
|
+
comparative evidence and is not treated as an independently fetched quality,
|
|
154
|
+
authority, or ranking assessment.
|
|
155
|
+
|
|
156
|
+
### Migration — Source Identity Chains
|
|
157
|
+
|
|
158
|
+
- Page records gain optional `author_entities`, `publisher_entity`, and
|
|
159
|
+
`correction_path` fields; entity records gain structured affiliation
|
|
160
|
+
disclosures. Existing registries remain valid, while populated records feed
|
|
161
|
+
the new `identity/source-chain.json` audit artifact.
|
|
162
|
+
- The versioned chain joins publisher, author affiliation, content owner,
|
|
163
|
+
factual reviewer, evidence owner, and correction path, preserving every
|
|
164
|
+
missing link. These are declared registry relationships and do not prove
|
|
165
|
+
visible, current, or independent disclosure.
|
|
166
|
+
|
|
167
|
+
### Added — Repeated-Region Extraction Evidence
|
|
168
|
+
|
|
169
|
+
- Passage observations now record raw/extracted byte ratios, raw-visible versus
|
|
170
|
+
extracted token ratios, and exact structural-region hashes for headers,
|
|
171
|
+
navigation, asides, and footers.
|
|
172
|
+
- Regions occurring on two or more pages in the audited cohort are labelled
|
|
173
|
+
`repeated_site_region`; other captured regions remain `page_local_region`.
|
|
174
|
+
These are descriptive extraction signals and do not establish content harm,
|
|
175
|
+
retrieval effects, or ranking effects.
|
|
176
|
+
|
|
177
|
+
### Added — Normalized Entity Graphs
|
|
178
|
+
|
|
179
|
+
- Every site audit now writes `schema/entity-graph.json` alongside the preserved
|
|
180
|
+
raw JSON-LD artifact. The versioned graph contract merges stable `@id` nodes,
|
|
181
|
+
records source-block hashes, normalizes declared relations, and retains
|
|
182
|
+
undeclared targets and JSON parse failures.
|
|
183
|
+
- Visible-content support is a bounded literal match over names, headlines, and
|
|
184
|
+
descriptions. It does not establish semantic correctness, structured-data
|
|
185
|
+
eligibility, search-engine recognition, or ranking impact.
|
|
186
|
+
|
|
187
|
+
### Added — Freshness Consensus
|
|
188
|
+
|
|
189
|
+
- `observe consensus` now records normalized HTTP `Last-Modified`, sitemap
|
|
190
|
+
`lastmod`, and visible/meta modification signals, including invalid values
|
|
191
|
+
excluded from comparison. It distinguishes aligned, conflicting, and
|
|
192
|
+
insufficient signal sets.
|
|
193
|
+
- Current page hashes are compared with the latest immutable audit snapshot.
|
|
194
|
+
A difference records only the interval after the prior capture in which a
|
|
195
|
+
change was observed; it does not assert the exact modification time, cause,
|
|
196
|
+
quality, or ranking effect. Page lifecycle review dates remain separate
|
|
197
|
+
governance metadata.
|
|
198
|
+
|
|
199
|
+
### Added — Per-Agent Synthetic Probes
|
|
200
|
+
|
|
201
|
+
- `observe probes --target <URL> [--region <label>]` exercises every active
|
|
202
|
+
identity declared in `crawlers.yaml`. Each immutable observation preserves
|
|
203
|
+
the status, redirects, response hash, allowlisted diagnostic headers, raw
|
|
204
|
+
body, region label, and coarse accessible/challenged/blocked/error
|
|
205
|
+
classification.
|
|
206
|
+
- Probe evidence is always labelled synthetic and single-observation. Spoofed
|
|
207
|
+
user agents never establish verified crawler identity, production access,
|
|
208
|
+
regional representativeness, or policy enforcement. Partial failures remain
|
|
209
|
+
explicit and sensitive response headers are not persisted.
|
|
210
|
+
|
|
211
|
+
### Migration — Corroboration Imports
|
|
212
|
+
|
|
213
|
+
- `observe corroboration` now requires the versioned
|
|
214
|
+
`corroboration-import.schema.json` contract. Imports must disclose collection
|
|
215
|
+
authority, authenticity, representativeness, population coverage, source
|
|
216
|
+
control, and relationship status. Legacy arrays and `independent` booleans
|
|
217
|
+
are rejected; fixtures and integrations must migrate to `schema_version: 1`.
|
|
218
|
+
- Independence is classified only when control is declared `independent` and
|
|
219
|
+
the relationship is `none_disclosed`. Every resulting observation preserves
|
|
220
|
+
the import authority and coverage while stating that a mention alone does
|
|
221
|
+
not establish authority, support, ranking impact, citation eligibility, or
|
|
222
|
+
representative coverage.
|
|
223
|
+
|
|
224
|
+
### Security — Outbound Collection
|
|
225
|
+
|
|
226
|
+
- Browser render targets, browser-plan targets and navigation, and every
|
|
227
|
+
Playwright subresource now share the crawler's public-destination policy.
|
|
228
|
+
Controlled citation adapters require HTTPS, reject configured non-public
|
|
229
|
+
ranges, and refuse redirects. The blocked range set now includes IPv4/IPv6
|
|
230
|
+
documentation ranges and IPv4 benchmarking/reserved ranges. Safe
|
|
231
|
+
browser-local `data:`, `blob:`, and `about:` resources remain usable.
|
|
232
|
+
- DNS validation and connection address pinning remain distinct: Node fetch and
|
|
233
|
+
Playwright do not currently bind the validated DNS result to the subsequent
|
|
234
|
+
connection. This residual rebinding risk is now explicit in security and
|
|
235
|
+
known-limitations documentation, with isolated execution and network egress
|
|
236
|
+
controls required for untrusted targets.
|
|
237
|
+
|
|
238
|
+
### Added — Action Plans
|
|
239
|
+
|
|
240
|
+
- Generated actions now expose dependency IDs, decision ownership, explicit
|
|
241
|
+
failure conditions, leading indicators, and monitoring windows. The schema
|
|
242
|
+
additions are optional for compatibility with existing action-plan
|
|
243
|
+
artifacts; newly generated plans leave unsupported dependencies and
|
|
244
|
+
indicators empty instead of inventing causal or sequencing relationships.
|
|
245
|
+
|
|
246
|
+
### Migration — Provenance seededFrom
|
|
247
|
+
|
|
248
|
+
- `common.defs.json`'s shared `provenance` definition (used by claim, entity,
|
|
249
|
+
evidence, page, prompt, query, crawler, competitor, and experiment records)
|
|
250
|
+
gains an optional `seededFrom { seedName, seedVersion, importedAt,
|
|
251
|
+
contentFingerprint? }` sub-object. Existing provenance records without it
|
|
252
|
+
remain valid; no existing data needs to change.
|
|
253
|
+
|
|
254
|
+
### Added — CLI
|
|
255
|
+
|
|
256
|
+
- `citable plan-audit` performs a read-only target inspection, labels business
|
|
257
|
+
profiles as evidence-backed probabilistic inferences, proposes the full audit
|
|
258
|
+
and profile-specific semantic emphasis, and reports optional collectors as
|
|
259
|
+
available or blocked. It creates no audit, observation, snapshot, or
|
|
260
|
+
remediation artifact.
|
|
261
|
+
- `citable doctor` now includes a read-only runtime capability matrix for
|
|
262
|
+
Playwright rendering, local Lighthouse, OCR, CrUX, GSC, and GA4. Optional
|
|
263
|
+
gaps do not fail installer integrity, credential values are never emitted,
|
|
264
|
+
and `ready` means prerequisite presence rather than proven launch,
|
|
265
|
+
authorization, property access, or collection success.
|
|
266
|
+
- `citable init --seed <name>` overlays a bundled starter registry bundle
|
|
267
|
+
(v1 ships `saas-pricing`) onto `.citable/`. Every seeded record is stamped
|
|
268
|
+
`status: unverified` and `provenance.seededFrom`, regardless of what the
|
|
269
|
+
seed bundle itself declares — seeded (someone else's-guess) data can never
|
|
270
|
+
be indistinguishable from data the owner's own evidence pipeline has
|
|
271
|
+
verified. Re-running a seed never overwrites the owner's own edits, even
|
|
272
|
+
with `--force`.
|
|
273
|
+
|
|
274
|
+
### Added — Observation
|
|
275
|
+
|
|
276
|
+
- `citable observe citations` now diffs each AI answer's assertions against
|
|
277
|
+
the caller's own claim/evidence registry (reusing `substantiate`'s
|
|
278
|
+
deterministic outcome machine), classifying each as confirmed / contradicted
|
|
279
|
+
/ stale / unsupported. It never asserts the AI is wrong — only that an
|
|
280
|
+
assertion is or isn't supported by the caller's own evidence — and never
|
|
281
|
+
claims to have live-queried an answer engine. Degrades gracefully to
|
|
282
|
+
`unsupported` when no `.citable/` registry exists yet.
|
|
283
|
+
|
|
284
|
+
### Added — Documentation
|
|
285
|
+
|
|
286
|
+
- A task-oriented getting-started guide now provides persona-specific entry
|
|
287
|
+
points, a five-minute audit-to-action workflow, an evidence-journey map,
|
|
288
|
+
interpretation mistakes, and excerpts generated from the bundled synthetic
|
|
289
|
+
fixture. The examples preserve `pass`, `not_established`, and
|
|
290
|
+
`not_evidenced` as separate states and make no live-property outcome claims.
|
|
291
|
+
|
|
292
|
+
### Added — Demo
|
|
293
|
+
|
|
294
|
+
- `citable demo` runs the full detector engine against a bundled, frozen,
|
|
295
|
+
offline example site and prints a namespace-by-namespace finding count in
|
|
296
|
+
seconds. It never fetches the network and never scores a real company —
|
|
297
|
+
the fixture is synthetic (`https://example.test`, RFC 2606 reserved). Ends
|
|
298
|
+
with a nudge toward `citable init` for a real, governed audit.
|
|
299
|
+
|
|
300
|
+
### Changed — Consistency
|
|
301
|
+
|
|
302
|
+
- `schemaCmd`, `substantiate`, and `actionPlan` now build their
|
|
303
|
+
`required_input` guidance through a single shared helper
|
|
304
|
+
(`src/shared/checklist.js`) instead of three independently duplicated
|
|
305
|
+
literal-string lists. Output strings are unchanged.
|
|
306
|
+
|
|
307
|
+
### Fixed — Release Operations
|
|
308
|
+
|
|
309
|
+
- `finalize-release.yml` never ran `npm run build:dist` before calling
|
|
310
|
+
`release-governance.js validate`, so `dist/universal/manifest.json` did not
|
|
311
|
+
exist and phase-two validation failed closed with `required release
|
|
312
|
+
projection is missing` on every attempt. `ship-release.yml` already built
|
|
313
|
+
dist before validating; `finalize-release.yml` now does the same. This
|
|
314
|
+
workflow had never executed end-to-end before v1.13.1 (v1.13.0 never
|
|
315
|
+
reached finalization), so the gap was latent until now.
|
|
316
|
+
|
|
5
317
|
## 1.13.1 — 2026-07-22
|
|
6
318
|
|
|
7
319
|
### Added — Release Operations
|
package/README.md
CHANGED
|
@@ -21,11 +21,16 @@ generator, not a Lighthouse wrapper, not an "AI visibility score".
|
|
|
21
21
|
objectives, interventions, optional connections, reviewers, review policies,
|
|
22
22
|
governed exceptions, semantic review items, sampling plans, and audit schedules — all
|
|
23
23
|
JSON-Schema validated with referential integrity and history-preserving saves.
|
|
24
|
-
- **
|
|
24
|
+
- **124 detectors** across 18 namespaces (TECH, CRAWL, ARCH, PAGE, ANS,
|
|
25
25
|
ENTITY, CLAIM, EVD, SCHEMA, LINK, EXT, GEO, RECO, LIFE, MEAS, HREFLANG, CWV, AGENT), each with
|
|
26
26
|
remediation, verification, severity, and determinism declared.
|
|
27
27
|
- **Evidence packages** for every run: manifest, findings, report, captured
|
|
28
|
-
robots/sitemaps/headers/
|
|
28
|
+
robots/sitemaps/headers/raw JSON-LD, a schema-validated normalized entity
|
|
29
|
+
graph with unresolved references and parse failures, link graph, and
|
|
30
|
+
checksums. A source identity-chain artifact joins declared publisher, author
|
|
31
|
+
affiliation, reviewer, evidence-owner, and correction-path records. Literal
|
|
32
|
+
or registry linkage does not assert semantic correctness, visible disclosure,
|
|
33
|
+
independence, or search-engine recognition.
|
|
29
34
|
- **Separate state reporting** for retrieval eligibility, source extraction and
|
|
30
35
|
support suitability, and observed citation behavior. These are never merged
|
|
31
36
|
into an "AI visibility score."
|
|
@@ -36,6 +41,9 @@ generator, not a Lighthouse wrapper, not an "AI visibility score".
|
|
|
36
41
|
mandatory human-review conditions.
|
|
37
42
|
- **Multi-agent distribution**: Claude Code, Codex-compatible, Cursor, Gemini,
|
|
38
43
|
generic — generated from one canonical `skill/` source.
|
|
44
|
+
- **Evidence-phase agent profiles**: Claude Code receives a guarded auditor and
|
|
45
|
+
read-only semantic reviewer. Other hosts remain explicitly unsupported until
|
|
46
|
+
their native profile contracts are verified.
|
|
39
47
|
- **Agent-readiness detectors** (AGENT namespace): agents are both readers
|
|
40
48
|
and writers of your site — `llms.txt` and Markdown content negotiation shape
|
|
41
49
|
what they consume; MCP Server Cards and A2A Agent Cards expose what they can
|
|
@@ -93,8 +101,16 @@ Diagnose installation problems:
|
|
|
93
101
|
|
|
94
102
|
```bash
|
|
95
103
|
npx @nebulacomponents/citable doctor
|
|
104
|
+
npx @nebulacomponents/citable doctor --json
|
|
96
105
|
```
|
|
97
106
|
|
|
107
|
+
`doctor` also reports independent runtime capability states for optional
|
|
108
|
+
Playwright rendering, local Lighthouse, OCR, CrUX, GSC, and GA4 collection.
|
|
109
|
+
Missing optional dependencies or credentials do not fail installer integrity.
|
|
110
|
+
A `ready` capability establishes dependency or credential presence only; the
|
|
111
|
+
reported limitations preserve that browser launch, authorization, property
|
|
112
|
+
access, quota, and collection success remain untested.
|
|
113
|
+
|
|
98
114
|
The npm package is scoped as `@nebulacomponents/citable`; the installed
|
|
99
115
|
executable is still named `citable`.
|
|
100
116
|
|
|
@@ -128,8 +144,13 @@ used. Symlink mode is intentionally unsupported: provider-specific payloads and
|
|
|
128
144
|
their manifests must remain an atomic managed unit so validation and uninstall
|
|
129
145
|
do not cross ownership boundaries.
|
|
130
146
|
|
|
131
|
-
|
|
132
|
-
|
|
147
|
+
Claude Code installs also receive separately manifested profiles under
|
|
148
|
+
`.claude/agents/citable/` or `~/.claude/agents/citable/`. Profile collisions,
|
|
149
|
+
local modifications, updates, and uninstall use the same managed-copy
|
|
150
|
+
boundaries as the skill. See [Agent profiles](docs/AGENT_PROFILES.md).
|
|
151
|
+
Other providers receive the skill only until their native profile discovery
|
|
152
|
+
and permission contracts are verified. The installer does not install provider
|
|
153
|
+
hooks, MCP configuration, telemetry, or unrelated agent settings.
|
|
133
154
|
The package ships `dist/universal/` for offline installation from the npm
|
|
134
155
|
tarball; no Git checkout or npm cache files are required after installation.
|
|
135
156
|
Windows PowerShell, Linux shells, and macOS shells are supported through Node's
|
|
@@ -146,12 +167,14 @@ npx @nebulacomponents/citable help
|
|
|
146
167
|
|
|
147
168
|
cd your-site/
|
|
148
169
|
citable init # creates .citable/ (non-destructive)
|
|
170
|
+
citable plan-audit --target ./dist --base-url https://example.com # read-only profile/capability plan
|
|
149
171
|
citable audit --target ./dist --base-url https://example.com
|
|
150
172
|
citable action-plan <run-id> # ordered actions, blockers, review gates, verification
|
|
151
173
|
citable observe passages --target ./dist --base-url https://example.com
|
|
152
174
|
citable observe index --input search-console-export.json
|
|
153
175
|
citable observe citations --input prompt-results.json --target https://example.com
|
|
154
176
|
citable observe logs --input edge-logs.json
|
|
177
|
+
citable observe probes --target https://example.com --region local-office
|
|
155
178
|
citable observe bing --dataset ai_performance --input bing-ai-performance.csv
|
|
156
179
|
citable observe consensus --target ./dist --base-url https://example.com
|
|
157
180
|
citable observe performance --target https://example.com # CRUX_API_KEY
|
|
@@ -202,6 +225,20 @@ citable validate # registry schema + referential integrity
|
|
|
202
225
|
|
|
203
226
|
## Documentation
|
|
204
227
|
|
|
228
|
+
- [Documentation index](docs/README.md) — task-oriented navigation for users,
|
|
229
|
+
operators, and reviewers
|
|
230
|
+
- [Getting started](docs/GETTING_STARTED.md) — five-minute workflow, persona
|
|
231
|
+
routes, evidence journey, and annotated synthetic-fixture output
|
|
232
|
+
- [Command guide](docs/COMMANDS.md) — workflow-oriented command families and
|
|
233
|
+
evidence boundaries
|
|
234
|
+
- [Agent profiles](docs/AGENT_PROFILES.md) — Claude auditor and semantic-review
|
|
235
|
+
roles, installation, routing, and authority boundaries
|
|
236
|
+
- [Integrations](docs/INTEGRATIONS.md) — current connectors, import contracts,
|
|
237
|
+
and the proposed fail-closed MCP transport
|
|
238
|
+
- [Troubleshooting](docs/TROUBLESHOOTING.md) — incomplete collection,
|
|
239
|
+
authorization, import, and governance failures
|
|
240
|
+
- [Migrations](docs/MIGRATIONS.md) — contract migration workflow and current
|
|
241
|
+
schema notes
|
|
205
242
|
- [Architecture decision record](docs/architecture/adr-001-architecture.md)
|
|
206
243
|
- [Traceability matrix](docs/architecture/traceability-matrix.md) — every
|
|
207
244
|
material source requirement mapped to a control
|
|
@@ -216,12 +253,13 @@ citable validate # registry schema + referential integrity
|
|
|
216
253
|
- [Reviewer and exception governance](docs/governance/reviewer-exceptions.md) —
|
|
217
254
|
policy-driven authority, separation of duties, expiry, invalidation, and
|
|
218
255
|
immutable enforcement dispositions
|
|
219
|
-
- [Known limitations](docs/known-limitations.md) includes medium-specific PDF,
|
|
220
|
-
transcript, image-context, and optional OCR boundaries.
|
|
221
256
|
|
|
222
257
|
## Community And Governance
|
|
223
258
|
|
|
224
259
|
- [Contributing](CONTRIBUTING.md) - engineering and pull-request contracts
|
|
260
|
+
- [Fail-Closed Bounty](BOUNTY.md) - prove a breach of the fail-closed
|
|
261
|
+
guarantee (see BOUNTY.md for the full qualifying scope) and earn a
|
|
262
|
+
permanent [Hall of Fame](CHANGELOG.md#fail-closed-hall-of-fame) entry
|
|
225
263
|
- [Support](SUPPORT.md) - Issues, Discussions, hosted-service, and security routing
|
|
226
264
|
- [Governance](GOVERNANCE.md) - authority, decisions, roles, and continuity
|
|
227
265
|
- [Maintainers](MAINTAINERS.md) - current responsibilities and succession
|
|
@@ -7,7 +7,7 @@ description: >
|
|
|
7
7
|
generative engine optimization, structured data governance, claim substantiation,
|
|
8
8
|
crawler policy, entity consistency, content discoverability, or wants a site audited
|
|
9
9
|
for how search and AI systems will retrieve, understand, cite, or recommend it.
|
|
10
|
-
version: 1.
|
|
10
|
+
version: 1.15.0
|
|
11
11
|
---
|
|
12
12
|
|
|
13
13
|
# Citable — evidence and change control for search and AI citation readiness
|
|
@@ -87,6 +87,7 @@ prefer running it over re-deriving its checks by hand:
|
|
|
87
87
|
```
|
|
88
88
|
citable init # initialize .citable/ (non-destructive)
|
|
89
89
|
citable audit [scope] --target <dir|url> [--base-url <url>] [--ref-date YYYY-MM-DD]
|
|
90
|
+
citable plan-audit --target <dir|url> [--base-url <url>]
|
|
90
91
|
citable inspect <page> --target <dir|url>
|
|
91
92
|
citable map-claims --target <dir|url> [--write]
|
|
92
93
|
citable substantiate [--write]
|
|
@@ -94,19 +95,26 @@ citable schema --target <dir|url>
|
|
|
94
95
|
citable validate [registries|claims|evidence|schema|links]
|
|
95
96
|
citable compare-snapshots [runA runB]
|
|
96
97
|
citable action-plan [run-id] # ordered actions, blockers, semantic gates, verification
|
|
97
|
-
citable observe <mode> [options] # render/index/citation/log/passage/consensus/performance evidence
|
|
98
|
+
citable observe <mode> [options] # render/index/citation/log/probe/passage/consensus/performance/stance evidence
|
|
99
|
+
citable observe stance --input <citations|prompts.json> [--entity <id>]
|
|
98
100
|
citable observe bing --dataset <search_performance|ai_performance> --input <csv|json>
|
|
101
|
+
citable observe probes --target <url> [--region <label>]
|
|
102
|
+
citable observe network --input <regional-network-import.json>
|
|
99
103
|
citable observe render --target <url> [--interactions] [--resume-run <run-id>]
|
|
100
104
|
citable observe render --input <browser-evidence-plan.json>
|
|
101
105
|
citable observe performance --target <url> --lighthouse [--repeat 1..5]
|
|
102
106
|
citable apply --input <spec> [--write] # reviewed, hash-locked remediation; dry run by default
|
|
103
|
-
citable monitor [runA runB]
|
|
107
|
+
citable monitor [runA runB] [--webhook <url>] [--min-severity <sev>] # observation regression alerts
|
|
108
|
+
citable report dashboard [--last N] [--since <run-id>] # cross-run evidence trend (Markdown + HTML)
|
|
109
|
+
citable report share-of-voice [--last N] [--since <run-id>] # competitor citation share (Markdown + HTML)
|
|
104
110
|
citable metrics import --provider <name> --input <csv|json>
|
|
105
111
|
citable connect status
|
|
106
|
-
citable connect configure --provider <gsc|ga4> --connection-id <id> --property-id <id> [--credential-env <name>] [--write]
|
|
107
|
-
citable connect discover --provider <gsc|ga4>
|
|
112
|
+
citable connect configure --provider <gsc|ga4|wordpress|webflow> --connection-id <id> --property-id <id> [--credential-env <name>] [--write]
|
|
113
|
+
citable connect discover --provider <gsc|ga4|wordpress|webflow>
|
|
108
114
|
citable connect validate --connection-id <id>
|
|
109
115
|
citable connect sync --connection-id <id> --start-date YYYY-MM-DD --end-date YYYY-MM-DD
|
|
116
|
+
citable connect read --connection-id <id> --target-id <id>
|
|
117
|
+
citable connect apply --connection-id <id> --input <cms-spec.json> [--write]
|
|
110
118
|
citable connect disconnect --connection-id <id> [--write]
|
|
111
119
|
citable objectives init --input <json|yaml> [--write]
|
|
112
120
|
citable objectives validate
|
|
@@ -118,7 +126,7 @@ citable reviews prioritize [--write]
|
|
|
118
126
|
citable reviews plan --input <json|yaml> [--write]
|
|
119
127
|
citable reviews sample <sampling-plan-id> [--write]
|
|
120
128
|
citable reviews evaluate
|
|
121
|
-
citable schedules run <schedule-id> [--ref-date YYYY-MM-DD]
|
|
129
|
+
citable schedules run <schedule-id> [--ref-date YYYY-MM-DD] [--monitor] [--webhook <url>]
|
|
122
130
|
citable project github <run-id>
|
|
123
131
|
citable observe media --input <manifest.json> [--ocr]
|
|
124
132
|
citable observe representation --input <release-manifest.json> --target <controlled-url>
|
|
@@ -134,8 +142,14 @@ citable artifacts import --input <directory>
|
|
|
134
142
|
Audit scopes: `technical seo aeo geo architecture entity claims evidence schema
|
|
135
143
|
lifecycle corroboration`. Every audit writes an evidence package to
|
|
136
144
|
`.citable/runs/<run-id>/` (manifest, findings.json, report.md, headers, robots,
|
|
137
|
-
sitemaps,
|
|
138
|
-
|
|
145
|
+
sitemaps, raw JSON-LD, normalized entity graph, link graph, checksums). The
|
|
146
|
+
entity graph preserves declared nodes, relations, unresolved references, parse
|
|
147
|
+
failures, and literal visible-text support; it does not prove semantic
|
|
148
|
+
correctness or search-engine recognition. The source identity-chain artifact
|
|
149
|
+
joins declared publisher, author affiliations, content owner, factual reviewer,
|
|
150
|
+
evidence owner, and correction path while preserving missing links. Registry
|
|
151
|
+
linkage does not prove that disclosures are visible, current, or independent.
|
|
152
|
+
A report without its evidence package is not a deliverable.
|
|
139
153
|
|
|
140
154
|
## Finding-to-action protocol
|
|
141
155
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.
|
|
1
|
+
1.15.0
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: citable-auditor
|
|
3
|
+
description: Run a Citable audit or evidence collection when the user needs a plan, immutable or sealed run, observation, capability diagnosis, or evidence-bounded summary. Not for semantic approval, source remediation, content rewriting, or claims that an outcome is guaranteed.
|
|
4
|
+
tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Glob
|
|
7
|
+
- Grep
|
|
8
|
+
- Bash
|
|
9
|
+
model: inherit
|
|
10
|
+
maxTurns: 20
|
|
11
|
+
skills:
|
|
12
|
+
- citable
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
You are Citable's evidence-collection specialist. Establish what the target
|
|
16
|
+
makes observable, what the selected method could not collect, and where the
|
|
17
|
+
resulting immutable evidence package lives.
|
|
18
|
+
|
|
19
|
+
## Authority boundary
|
|
20
|
+
|
|
21
|
+
- You may run the Citable CLI and read its artifacts.
|
|
22
|
+
- Never edit the audited property, its source, its registries, or an existing
|
|
23
|
+
run package.
|
|
24
|
+
- Do not use `curl`, `wget`, raw browser automation, or ad hoc HTTP clients.
|
|
25
|
+
Network collection must go through the applicable guarded Citable command.
|
|
26
|
+
- Do not run `citable apply`, use `--write`, or create implementation facts.
|
|
27
|
+
- Do not infer crawling, indexing, ranking, citation, recommendation,
|
|
28
|
+
inclusion, sentiment, or conversion outcomes.
|
|
29
|
+
|
|
30
|
+
## Workflow
|
|
31
|
+
|
|
32
|
+
1. Read repository instructions and identify the target and requested evidence
|
|
33
|
+
question.
|
|
34
|
+
2. Run `citable doctor` when optional browser, API, OCR, or lab capability is
|
|
35
|
+
relevant. Treat `ready` as prerequisite presence only.
|
|
36
|
+
3. Run `citable plan-audit --target <target>` when the appropriate scopes or
|
|
37
|
+
collectors are not already explicit. The plan is not evidence.
|
|
38
|
+
4. Run `citable audit [scope] --target <target>` for deterministic and
|
|
39
|
+
heuristic site findings. Preserve the full audit unless the user explicitly
|
|
40
|
+
requested a scope.
|
|
41
|
+
5. Run only the relevant `citable observe <mode>` commands for external or
|
|
42
|
+
rendered observations. Preserve provider, method, authority, authenticity,
|
|
43
|
+
collection, and representativeness boundaries.
|
|
44
|
+
6. Read the run manifest, findings, summary, warnings, incomplete state, and
|
|
45
|
+
checksums before reporting.
|
|
46
|
+
|
|
47
|
+
If prerequisites, authorization, source facts, or required inputs are absent,
|
|
48
|
+
preserve `blocked`, `incomplete`, `not_established`, or `not_evidenced`.
|
|
49
|
+
Never translate one of those states into zero, pass, absence, or failure of the
|
|
50
|
+
external system.
|
|
51
|
+
|
|
52
|
+
## Return contract
|
|
53
|
+
|
|
54
|
+
Report:
|
|
55
|
+
|
|
56
|
+
1. target, command, scope, and collection method;
|
|
57
|
+
2. run ID and artifact directory;
|
|
58
|
+
3. deterministic observations;
|
|
59
|
+
4. evidence-backed semantic findings and probabilistic inferences, separately;
|
|
60
|
+
5. skipped checks, collection failures, limitations, and residual unknowns;
|
|
61
|
+
6. exact next evidence or owner input required;
|
|
62
|
+
7. whether semantic review or a governed action plan is the next bounded step.
|
|
63
|
+
|
|
64
|
+
A human-readable report without its run package is not a deliverable.
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: citable-semantic-reviewer
|
|
3
|
+
description: Review semantic questions in an existing Citable run, finding, action, or artifact, including claim support, answer extractability, entity clarity, comparison fairness, and narrative accuracy. Not for collecting new evidence, running audits, editing source, or approving publication.
|
|
4
|
+
tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Glob
|
|
7
|
+
- Grep
|
|
8
|
+
model: inherit
|
|
9
|
+
maxTurns: 15
|
|
10
|
+
skills:
|
|
11
|
+
- citable
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
You are Citable's read-only semantic reviewer. Evaluate meaning against the
|
|
15
|
+
exact source evidence and review policy without changing technical findings,
|
|
16
|
+
registries, source files, or sealed artifacts.
|
|
17
|
+
|
|
18
|
+
## Preconditions
|
|
19
|
+
|
|
20
|
+
Require an existing source run, finding, review item, or action artifact. Bind
|
|
21
|
+
the review to the available run ID, finding ID and finding hash, review-item
|
|
22
|
+
hash, policy, subject, captured evidence, and declared limitations. If the
|
|
23
|
+
binding or source material is unavailable, return `review_required` with the
|
|
24
|
+
missing input instead of reconstructing it.
|
|
25
|
+
|
|
26
|
+
## Review dimensions
|
|
27
|
+
|
|
28
|
+
Apply only dimensions relevant to the requested item:
|
|
29
|
+
|
|
30
|
+
- intent alignment and answer extractability;
|
|
31
|
+
- claim boundedness and evidence strength;
|
|
32
|
+
- entity clarity and source identity;
|
|
33
|
+
- information gain and comparison fairness;
|
|
34
|
+
- recommendation eligibility and narrative accuracy;
|
|
35
|
+
- factual accuracy, accessibility, conversion function, legal defensibility,
|
|
36
|
+
and maintainability.
|
|
37
|
+
|
|
38
|
+
Separate deterministic fact from evidence-backed semantic finding,
|
|
39
|
+
probabilistic inference, strategic hypothesis, experiment result, and
|
|
40
|
+
untestable condition. Never present inference as fact.
|
|
41
|
+
|
|
42
|
+
## Authority boundary
|
|
43
|
+
|
|
44
|
+
- Never edit source files, registries, findings, review items, action plans, or
|
|
45
|
+
sealed run artifacts.
|
|
46
|
+
- Do not collect new external evidence or treat general knowledge as source-run
|
|
47
|
+
evidence.
|
|
48
|
+
- Do not change a technical failure to pass or accepted risk.
|
|
49
|
+
- Do not mark a claim `verified`, complete a required review, approve
|
|
50
|
+
publication, or satisfy an owner-controlled gate. Automation cannot upgrade
|
|
51
|
+
evidence authority.
|
|
52
|
+
- Preserve `review_required` when evidence or accountable authority is missing.
|
|
53
|
+
- Preserve `adjudication_required` when current authorized reviewers disagree.
|
|
54
|
+
|
|
55
|
+
## Return contract
|
|
56
|
+
|
|
57
|
+
For each reviewed item, report:
|
|
58
|
+
|
|
59
|
+
1. artifact binding and review dimensions applied;
|
|
60
|
+
2. supporting and contradicting evidence;
|
|
61
|
+
3. semantic assessment with confidence and false-positive conditions;
|
|
62
|
+
4. missing evidence, ambiguity, residual risk, and required owner input;
|
|
63
|
+
5. proposed disposition: `review_required`, `adjudication_required`, or a
|
|
64
|
+
recommendation for an authorized human reviewer to record.
|
|
65
|
+
|
|
66
|
+
Your output is review context, not an approval or a mutation instruction.
|
|
@@ -21,9 +21,12 @@ intent, not executability, so statuses are strict:
|
|
|
21
21
|
| /citable validate, validate-claims, validate-evidence, validate-schema, validate-links | implemented |
|
|
22
22
|
| /citable compare-snapshots / validate-regression | implemented |
|
|
23
23
|
| /citable action-plan | implemented — writes ordered, source-run-bound action artifacts outside immutable evidence packages |
|
|
24
|
-
| /citable observe | implemented — render, index, citation, crawler-log, passage, consensus, performance, and
|
|
24
|
+
| /citable observe | implemented — render, index, citation, crawler-log, passage, consensus, performance, corroboration, and stance evidence |
|
|
25
25
|
| /citable apply | implemented — reviewed, hash-locked source replacements; dry run by default |
|
|
26
|
+
| /citable connect status / configure / discover / validate / sync / read / apply / disconnect | implemented — GA4, GSC, WordPress, and Webflow adapters with hash-locked CMS remediation |
|
|
26
27
|
| /citable monitor | implemented — compares immutable observation runs and emits evidence-linked alerts |
|
|
28
|
+
| /citable report dashboard | implemented — folds each run's recorded summary into a cross-run Markdown/HTML trend; derives no new findings and no combined score |
|
|
29
|
+
| /citable report share-of-voice | implemented — joins competitor registry against recorded citation observations to compute verified share-of-citation |
|
|
27
30
|
| /citable metrics import | implemented — validates declared CSV/JSON metrics and writes immutable observations |
|
|
28
31
|
| /citable objectives init / validate | implemented — user-owned metric selection, cohorts, windows, and guardrails |
|
|
29
32
|
| /citable evaluate | implemented — independent baseline/evaluation comparisons with inconclusive handling |
|