Triple Verification Process (V1, V2, V3) in Cangjie-Skill Distillation Explained

The triple verification process (V1, V2, V3) is a three-stage quality filter in Cangjie-skill that validates extracted knowledge for cross-domain evidence, predictive power, and uniqueness before it becomes a reusable AI skill.

Cangjie-skill converts unstructured content—books, long videos, podcasts—into agent-ready AI skills through a seven-stage pipeline called RIA-TV++. The "TV" stands for Triple Verification, a strict gate that eliminates roughly 50-75% of initial candidates to ensure only high-quality insights survive.

What Is the Triple Verification Process (V1, V2, V3)?

The triple verification process is implemented in the distillation pipeline as a sequential filter. According to the repository's README.md (lines 43-56) and the SKILL.md specification, each verification step targets a specific failure mode that would make a skill unreliable or useless.

The three stages operate as hard requirements—a candidate must pass all three to advance. Empirical pass rates range from 25-50% of initial extractions, reflecting the rigorous standards applied.

V1 Verification: Cross-Domain Evidence

V1 verification ensures a skill has at least two independent citations in the source material.

This requirement guarantees the underlying method is re-occurring rather than a one-off anecdote. Independent citations might appear as separate paragraphs, distinct sections, or different timestamps in a media file. Without this check, the system risks overfitting to isolated claims that lack broader support.

V2 Verification: Predictive Power

V2 verification tests whether a skill can answer questions not explicitly stated in the original text.

This demonstrates extrapolation capability—the skill must generalize beyond verbatim retrieval. A candidate that only echoes source content fails here. The system evaluates this by posing novel queries and verifying the skill produces coherent, grounded answers. This criterion ensures skills remain useful in unseen contexts rather than degenerating into simple text search.

V3 Verification: Uniqueness

V3 verification filters out common-sense or trivial statements.

A skill must represent a distinct insight not already widely known. This prevents skill-packs from cluttering with obvious observations (e.g., "water is wet") and ensures each distilled skill adds genuine value. The uniqueness check compares candidates against general knowledge bases and flags those lacking novel contribution.

How Triple Verification Is Implemented

The verification logic appears in the distillation pipeline as shown in this pseudo-code from the repository's methodology:

def triple_verify(candidate):
    # V1 – check for ≥2 independent citations

    if not candidate.has_multiple_citations(min_refs=2):
        return False

    # V2 – check predictive power (can answer novel query)

    if not candidate.can_answer_unasked_question():
        return False

    # V3 – ensure insight is non-trivial

    if candidate.is_common_sense():
        return False

    return True

# Usage in the pipeline

for raw_skill in extracted_candidates:
    if triple_verify(raw_skill):
        approved_skills.append(raw_skill)

The method signatures (has_multiple_citations(min_refs=2), can_answer_unasked_question(), is_common_sense()) reflect the specific criteria documented in SKILL.md under the "三重验证筛选" (triple verification filter) section.

Where Triple Verification Fits in RIA-TV++

The complete RIA-TV++ pipeline processes raw content through seven stages. Triple verification constitutes the critical quality gate after initial extraction:

  1. Retrieval of source material
  2. Insight extraction
  3. Aggregation of candidates
  4. Triple Verification (V1, V2, V3) ← you are here
  5. Validation of outputs
  6. + Enhancement
  7. + Packaging

Only post-verification skills proceed to final templating in the templates/ directory, where they are rendered into callable skill files.

Key Files and Resources

File Location Purpose
README.md Lines 43-56 Defines RIA-TV++ pipeline and verification criteria
SKILL.md Root directory Formal specification of all pipeline stages
methodology/ Subdirectory Deep methodological notes on V1, V2, V3 sub-steps
templates/ Subdirectory Output templates for verified skills

Summary

  • V1 (Cross-domain evidence) mandates ≥2 independent citations to prevent overfitting to isolated claims.
  • V2 (Predictive power) requires extrapolation capability beyond source text for usefulness in novel contexts.
  • V3 (Uniqueness) filters common-sense content to preserve skill-pack value density.
  • The combined filter achieves 25-50% pass rates, ensuring only robust, agent-ready knowledge survives.
  • Implementation spans README.md, SKILL.md, and pipeline code with clear method signatures for each check.

Frequently Asked Questions

What happens if a skill fails just one verification stage?

The skill is rejected entirely. The triple verification process (V1, V2, V3) operates as a conjunctive filter—all three criteria must be satisfied. There is no partial credit or "soft pass" mechanism, which maintains the high quality bar for the final skill-pack.

Why does Cangjie-skill use three separate verifications instead of a single combined score?

Each V-stage targets a distinct failure mode that a scalar score would blur. V1 catches under-supported claims, V2 catches non-generalizable patterns, and V3 catches trivial content. Separate stages enable precise debugging when skills underperform and prevent trade-offs where one strong dimension masks critical weaknesses in another.

Can the verification thresholds be adjusted for different content types?

The repository documentation in SKILL.md does not describe configurable thresholds. The min_refs=2 parameter in has_multiple_citations() suggests the citation minimum is hardcoded, though the methodology/ directory may contain experimental variants for specialized domains.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →