hai-ssot

Diagnose single-source-of-truth violations and produce numbered findings reports with file:line evidence.

Updated Jan 10, 2026
One-click install
npx skills add https://github.com/Rabbit-Ivan/Ivan-skills --skill hai-ssot-rabbit-ivan
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: hai-ssot
Source: https://github.com/Rabbit-Ivan/Ivan-skills/tree/main/skills/hai-ssot
Command: npx skills add https://github.com/Rabbit-Ivan/Ivan-skills --skill hai-ssot-rabbit-ivan

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Codebases accumulate duplicated definitions — the same literal, shape, or rule defined in multiple places across language, database, and wire boundaries — causing drift, sync bugs, and change amplification. This Skill systematically hunts those single-source-of-truth violations and turns them into an adjudicated, actionable findings report instead of raw grep noise. ## Core Features & Use Cases - Ten Symptom Classes: Detects multi-source literals, shape proliferation, word overload, legacy-vocabulary mapping layers, dual-pathway behavior forks, scattered defaults, pure-subset shape pairs, same-name-different-shape types, redundant conversion chains, and re-implemented derivations. - Honest Adjudication: Distinguishes real violations from idiomatic false positives (module-qualified names, forward contracts, trust-boundary re-validation, frozen wire literals) with a mandatory not-counted list. - Treatment Recipes: Routes every confirmed finding to a concrete disposition — codegen, parity guard, constant promotion, typed payload, convert-at-the-edge, single rule owner, vocabulary close-out, adjudication, or pin-test deletion. - Use Case: When a user asks "do these two definitions stay in sync?" or "why is this constant defined twice?", sweep the repo's cross-stack seams and deliver a numbered report (S1, S2...) with file:line evidence, severity, and per-finding disposition. ## Quick Start Ask the agent to check whether the event type constants in this repo are defined in more than one place and produce an SSOT findings report.

Frequently Asked Questions about hai-ssot

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

FAQPage Schema
How do I find duplicated constants and literals across a codebase?▼

Count definition sites for each wire literal with grep across all languages, excluding tests. A healthy literal has exactly one non-test definition; parity or pin tests that hold two copies equal mark either a violation or an already-applied treatment.

What is a single source of truth violation in software architecture?▼

An SSOT violation occurs when one fact, shape, or rule has multiple authoritative definitions, typically at boundaries the type system cannot reach: language-to-database, language-to-wire, and layer-to-layer seams. The skill classifies these into ten symptom classes with concrete detection recipes.

How do I detect redundant type conversions between layers?▼

Trace one value end-to-end and count shape changes between the system edge and point of use. For each hop ask what information the new shape adds; hops with no answer, round-trips like A-to-B-to-A, and typed-to-string-to-typed relays within one process are findings.

When is duplicated validation code not a problem?▼

Re-validation at trust boundaries is deliberate defense, not duplication — a server re-checking client input or a database constraint backing an application check is legitimate. Only same-trust-level re-implementations of the same rule, such as one regex copied across three layers, count as violations.

Does this skill fix the violations it finds automatically?▼

It primarily produces an adjudicated findings report with treatment recipes and dispositions. Quick wins like constant promotions and literal de-duplication can be executed same-day on request, while larger fixes are routed to plans and behavior forks are escalated to the user as decisions.