{
  "schemaVersion": 1,
  "baselineVersion": "0.5.11",
  "scope": "source skills; local installation and plugin inventory is separate",
  "items": [
    {
      "name": "agent-orchestration-handoff",
      "category": "ai-harness",
      "path": "skills/ai-harness/agent-orchestration-handoff",
      "skillBytes": 1397,
      "referenceBytes": 4684,
      "references": [
        "references/evidence-ledger-and-reconciliation.md",
        "references/worker-contract.md"
      ],
      "decision": "merge",
      "targetSkill": "spec-artifacts",
      "preservedAt": "references/ai-harness/agent-orchestration-handoff",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1397,
        "referenceBytes": 4684,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "capability-witness-history",
      "category": "ai-harness",
      "path": "skills/ai-harness/capability-witness-history",
      "skillBytes": 1048,
      "referenceBytes": 4723,
      "references": [
        "references/capability-ledger-schema.md",
        "references/regression-baseline-policy.md"
      ],
      "decision": "merge",
      "targetSkill": "project-memory",
      "preservedAt": "references/ai-harness/capability-witness-history",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1048,
        "referenceBytes": 4723,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "context-engineering-memory-design",
      "category": "ai-harness",
      "path": "skills/ai-harness/context-engineering-memory-design",
      "skillBytes": 1179,
      "referenceBytes": 3494,
      "references": [
        "references/context-surface-and-cache-budget.md",
        "references/memory-promotion-and-staleness.md"
      ],
      "decision": "merge",
      "targetSkill": "project-memory",
      "preservedAt": "references/ai-harness/context-engineering-memory-design",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1179,
        "referenceBytes": 3494,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "evidence-locator-integrity",
      "category": "ai-harness",
      "path": "skills/ai-harness/evidence-locator-integrity",
      "skillBytes": 1458,
      "referenceBytes": 6173,
      "references": [
        "references/claim-scan-range-rules.md",
        "references/locator-contract.md"
      ],
      "decision": "merge",
      "targetSkill": "project-memory",
      "preservedAt": "references/ai-harness/evidence-locator-integrity",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1458,
        "referenceBytes": 6173,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "forge-automation-control",
      "category": "ai-harness",
      "path": "skills/ai-harness/forge-automation-control",
      "skillBytes": 3291,
      "referenceBytes": 21407,
      "references": [
        "references/provider-capabilities.md",
        "references/scheduler-and-recovery.md",
        "references/state-and-permissions.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/ai-harness/forge-automation-control",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 3291,
        "referenceBytes": 21407,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "mcp-server-design",
      "category": "ai-harness",
      "path": "skills/ai-harness/mcp-server-design",
      "skillBytes": 923,
      "referenceBytes": 3927,
      "references": [
        "references/runtime-boundaries-and-permissions.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/ai-harness/mcp-server-design",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 923,
        "referenceBytes": 3927,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "pre-action-fact-gate",
      "category": "ai-harness",
      "path": "skills/ai-harness/pre-action-fact-gate",
      "skillBytes": 1178,
      "referenceBytes": 4916,
      "references": [
        "references/destructive-action-review.md",
        "references/fact-gate-checks.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/ai-harness/pre-action-fact-gate",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1178,
        "referenceBytes": 4916,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "runtime-index-cache-design",
      "category": "ai-harness",
      "path": "skills/ai-harness/runtime-index-cache-design",
      "skillBytes": 1102,
      "referenceBytes": 2916,
      "references": [
        "references/index-cache-invalidation.md",
        "references/runtime-artifact-contracts.md"
      ],
      "decision": "merge",
      "targetSkill": "project-memory",
      "preservedAt": "references/ai-harness/runtime-index-cache-design",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1102,
        "referenceBytes": 2916,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "skill-pack-governance",
      "category": "ai-harness",
      "path": "skills/ai-harness/skill-pack-governance",
      "skillBytes": 1117,
      "referenceBytes": 3026,
      "references": [
        "references/reference-adoption-noise-control.md",
        "references/skill-taxonomy-and-wrapper-checks.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/ai-harness/skill-pack-governance",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1117,
        "referenceBytes": 3026,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "boundary-review",
      "category": "architecture",
      "path": "skills/architecture/boundary-review",
      "skillBytes": 1341,
      "referenceBytes": 10530,
      "references": [
        "references/boundary-redesign-protocol.md",
        "references/deep-module-design-review.md",
        "references/fsd-ddd-fit-matrix.md",
        "references/modular-boundary-migration.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/architecture/boundary-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1341,
        "referenceBytes": 10530,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "domain-model-change",
      "category": "architecture",
      "path": "skills/architecture/domain-model-change",
      "skillBytes": 1170,
      "referenceBytes": 2841,
      "references": [
        "references/application-domain-infrastructure.md",
        "references/domain-modeling-boundaries.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/architecture/domain-model-change",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1170,
        "referenceBytes": 2841,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "feature-slice-boundary",
      "category": "architecture",
      "path": "skills/architecture/feature-slice-boundary",
      "skillBytes": 991,
      "referenceBytes": 2808,
      "references": [
        "references/feature-slice-layering.md",
        "references/slice-public-api-checks.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/architecture/feature-slice-boundary",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 991,
        "referenceBytes": 2808,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "monorepo-package-boundary",
      "category": "architecture",
      "path": "skills/architecture/monorepo-package-boundary",
      "skillBytes": 1117,
      "referenceBytes": 2753,
      "references": [
        "references/package-ownership-dependency-direction.md",
        "references/workspace-release-impact.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/architecture/monorepo-package-boundary",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1117,
        "referenceBytes": 2753,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "api-contract-boundary",
      "category": "backend",
      "path": "skills/backend/api-contract-boundary",
      "skillBytes": 907,
      "referenceBytes": 984,
      "references": [
        "references/api-boundary-checklist.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/backend/api-contract-boundary",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 907,
        "referenceBytes": 984,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "backend-change-safety",
      "category": "backend",
      "path": "skills/backend/backend-change-safety",
      "skillBytes": 2056,
      "referenceBytes": 23947,
      "references": [
        "references/api-versioning-compatibility.md",
        "references/async-boundary-idempotency.md",
        "references/backend-change-checklist.md",
        "references/config-cache-runtime-contracts.md",
        "references/stack-profile-selection.md",
        "references/transaction-side-effect-boundary.md",
        "references/stacks/dotnet.md",
        "references/stacks/go.md",
        "references/stacks/java.md",
        "references/stacks/kotlin.md",
        "references/stacks/node.md",
        "references/stacks/php.md",
        "references/stacks/python.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/backend/backend-change-safety",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 2056,
        "referenceBytes": 23947,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "connector-integration-change",
      "category": "backend",
      "path": "skills/backend/connector-integration-change",
      "skillBytes": 1316,
      "referenceBytes": 6111,
      "references": [
        "references/connector-contract-checks.md",
        "references/credential-webhook-error-handling.md",
        "references/stateful-server-thin-client.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/backend/connector-integration-change",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1316,
        "referenceBytes": 6111,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "job-worker-reliability",
      "category": "backend",
      "path": "skills/backend/job-worker-reliability",
      "skillBytes": 1205,
      "referenceBytes": 3205,
      "references": [
        "references/job-worker-reliability.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/backend/job-worker-reliability",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1205,
        "referenceBytes": 3205,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "request-validation-error-contract",
      "category": "backend",
      "path": "skills/backend/request-validation-error-contract",
      "skillBytes": 1179,
      "referenceBytes": 2752,
      "references": [
        "references/request-error-contract.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/backend/request-validation-error-contract",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1179,
        "referenceBytes": 2752,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "server-rendered-change",
      "category": "backend",
      "path": "skills/backend/server-rendered-change",
      "skillBytes": 1015,
      "referenceBytes": 3128,
      "references": [
        "references/request-view-session-contract.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/backend/server-rendered-change",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1015,
        "referenceBytes": 3128,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "analytics-instrumentation-review",
      "category": "data",
      "path": "skills/data/analytics-instrumentation-review",
      "skillBytes": 1191,
      "referenceBytes": 2472,
      "references": [
        "references/event-tracking-plan.md",
        "references/funnel-cohort-experiment-checks.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/data/analytics-instrumentation-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1191,
        "referenceBytes": 2472,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "analytics-reporting-review",
      "category": "data",
      "path": "skills/data/analytics-reporting-review",
      "skillBytes": 1031,
      "referenceBytes": 3406,
      "references": [
        "references/dashboard-report-review.md",
        "references/metric-definition-review.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/data/analytics-reporting-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1031,
        "referenceBytes": 3406,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "data-contract-lineage-review",
      "category": "data",
      "path": "skills/data/data-contract-lineage-review",
      "skillBytes": 1064,
      "referenceBytes": 2577,
      "references": [
        "references/dataset-contract-checks.md",
        "references/lineage-and-consumer-impact.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/data/data-contract-lineage-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1064,
        "referenceBytes": 2577,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "data-migration-integrity",
      "category": "data",
      "path": "skills/data/data-migration-integrity",
      "skillBytes": 1127,
      "referenceBytes": 3273,
      "references": [
        "references/backfill-reconciliation.md",
        "references/migration-integrity-checks.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/data/data-migration-integrity",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1127,
        "referenceBytes": 3273,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "data-pipeline-review",
      "category": "data",
      "path": "skills/data/data-pipeline-review",
      "skillBytes": 943,
      "referenceBytes": 3091,
      "references": [
        "references/pipeline-reconciliation-and-backfill.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/data/data-pipeline-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 943,
        "referenceBytes": 3091,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "data-quality-observability",
      "category": "data",
      "path": "skills/data/data-quality-observability",
      "skillBytes": 1110,
      "referenceBytes": 2478,
      "references": [
        "references/freshness-anomaly-and-alerts.md",
        "references/quality-check-design.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/data/data-quality-observability",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1110,
        "referenceBytes": 2478,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "knowledge-retrieval-pipeline-review",
      "category": "data",
      "path": "skills/data/knowledge-retrieval-pipeline-review",
      "skillBytes": 1263,
      "referenceBytes": 2494,
      "references": [
        "references/document-ingestion-and-chunking.md",
        "references/retrieval-evaluation-and-safety.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/data/knowledge-retrieval-pipeline-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1263,
        "referenceBytes": 2494,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "knowledge-source-registry",
      "category": "data",
      "path": "skills/data/knowledge-source-registry",
      "skillBytes": 1106,
      "referenceBytes": 5063,
      "references": [
        "references/locator-and-evidence-envelope.md",
        "references/source-registry-contract.md"
      ],
      "decision": "merge",
      "targetSkill": "project-memory",
      "preservedAt": "references/data/knowledge-source-registry",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1106,
        "referenceBytes": 5063,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "data-integrity-constraints",
      "category": "database",
      "path": "skills/database/data-integrity-constraints",
      "skillBytes": 1039,
      "referenceBytes": 3236,
      "references": [
        "references/constraint-trigger-procedure-checks.md",
        "references/reconciliation-and-backfill-checks.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/database/data-integrity-constraints",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1039,
        "referenceBytes": 3236,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "database-change-safety",
      "category": "database",
      "path": "skills/database/database-change-safety",
      "skillBytes": 904,
      "referenceBytes": 3862,
      "references": [
        "references/database-change-review-matrix.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/database/database-change-safety",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 904,
        "referenceBytes": 3862,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "query-performance-review",
      "category": "database",
      "path": "skills/database/query-performance-review",
      "skillBytes": 1192,
      "referenceBytes": 3542,
      "references": [
        "references/query-plan-and-index-checks.md",
        "references/reporting-query-cost-controls.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/database/query-performance-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1192,
        "referenceBytes": 3542,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "schema-migration-plan",
      "category": "database",
      "path": "skills/database/schema-migration-plan",
      "skillBytes": 1120,
      "referenceBytes": 3932,
      "references": [
        "references/lock-and-deployment-window.md",
        "references/migration-order-and-rollback.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/database/schema-migration-plan",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1120,
        "referenceBytes": 3932,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "ci-quality-gate",
      "category": "delivery",
      "path": "skills/delivery/ci-quality-gate",
      "skillBytes": 1123,
      "referenceBytes": 3902,
      "references": [
        "references/evidence-package.md",
        "references/gate-model.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/delivery/ci-quality-gate",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1123,
        "referenceBytes": 3902,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "eval-harness-design",
      "category": "delivery",
      "path": "skills/delivery/eval-harness-design",
      "skillBytes": 987,
      "referenceBytes": 5823,
      "references": [
        "references/eval-artifact-contract.md",
        "references/grader-and-metric-rubric.md"
      ],
      "decision": "merge",
      "targetSkill": "spec-artifacts",
      "preservedAt": "references/delivery/eval-harness-design",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 987,
        "referenceBytes": 5823,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "flaky-test-triage",
      "category": "delivery",
      "path": "skills/delivery/flaky-test-triage",
      "skillBytes": 974,
      "referenceBytes": 2261,
      "references": [
        "references/nondeterminism-sources.md",
        "references/stabilization-and-quarantine.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/delivery/flaky-test-triage",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 974,
        "referenceBytes": 2261,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "git-worklog-guardrails",
      "category": "delivery",
      "path": "skills/delivery/git-worklog-guardrails",
      "skillBytes": 839,
      "referenceBytes": 1835,
      "references": [
        "references/git-delivery-checklist.md"
      ],
      "decision": "merge",
      "targetSkill": "spec-artifacts",
      "preservedAt": "references/delivery/git-worklog-guardrails",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 839,
        "referenceBytes": 1835,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "test-fixture-data-design",
      "category": "delivery",
      "path": "skills/delivery/test-fixture-data-design",
      "skillBytes": 1033,
      "referenceBytes": 1865,
      "references": [
        "references/fixture-boundaries.md",
        "references/test-data-maintenance.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/delivery/test-fixture-data-design",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1033,
        "referenceBytes": 1865,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "test-verification-strategy",
      "category": "delivery",
      "path": "skills/delivery/test-verification-strategy",
      "skillBytes": 1032,
      "referenceBytes": 2545,
      "references": [
        "references/risk-based-test-plan.md",
        "references/verification-matrix.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/delivery/test-verification-strategy",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1032,
        "referenceBytes": 2545,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "brand-identity-system",
      "category": "design",
      "path": "skills/design/brand-identity-system",
      "skillBytes": 1176,
      "referenceBytes": 4283,
      "references": [
        "references/brand-system-checklist.md",
        "references/typography-color-spec.md"
      ],
      "decision": "merge",
      "targetSkill": "design-brief-direction",
      "preservedAt": "references/design/brand-identity-system",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 1176,
        "referenceBytes": 4283,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "design-brief-direction",
      "category": "design",
      "path": "skills/design/design-brief-direction",
      "skillBytes": 1462,
      "referenceBytes": 9963,
      "references": [
        "references/design-direction-brief.md",
        "references/product-type-decision-matrix.md",
        "references/style-dials-and-anti-patterns.md"
      ],
      "decision": "retain-and-shorten",
      "targetSkill": "design-brief-direction",
      "preservedAt": "references/design/design-brief-direction",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 1462,
        "referenceBytes": 9963,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "design-reference-analysis",
      "category": "design",
      "path": "skills/design/design-reference-analysis",
      "skillBytes": 1341,
      "referenceBytes": 6281,
      "references": [
        "references/design-system-audit-matrix.md",
        "references/reference-analysis-protocol.md",
        "references/visual-evidence-package.md"
      ],
      "decision": "merge",
      "targetSkill": "design-brief-direction",
      "preservedAt": "references/design/design-reference-analysis",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 1341,
        "referenceBytes": 6281,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "image-to-code-handoff",
      "category": "design",
      "path": "skills/design/image-to-code-handoff",
      "skillBytes": 1179,
      "referenceBytes": 3603,
      "references": [
        "references/figma-handoff-contract.md",
        "references/image-to-code-contract.md"
      ],
      "decision": "merge",
      "targetSkill": "design-brief-direction",
      "preservedAt": "references/design/image-to-code-handoff",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 1179,
        "referenceBytes": 3603,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "ci-failure-triage",
      "category": "devops",
      "path": "skills/devops/ci-failure-triage",
      "skillBytes": 748,
      "referenceBytes": 1946,
      "references": [
        "references/failure-signal-triage.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/devops/ci-failure-triage",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 748,
        "referenceBytes": 1946,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "container-change-safety",
      "category": "devops",
      "path": "skills/devops/container-change-safety",
      "skillBytes": 1080,
      "referenceBytes": 3926,
      "references": [
        "references/compose-kubernetes-change.md",
        "references/container-image-change.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/devops/container-change-safety",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1080,
        "referenceBytes": 3926,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "deployment-release-check",
      "category": "devops",
      "path": "skills/devops/deployment-release-check",
      "skillBytes": 1410,
      "referenceBytes": 8939,
      "references": [
        "references/gate-decision-contract.md",
        "references/incident-rollback-handoff.md",
        "references/observability-release-loop.md",
        "references/release-gates.md",
        "references/rollback-readiness.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/devops/deployment-release-check",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1410,
        "referenceBytes": 8939,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "observability-incident-triage",
      "category": "devops",
      "path": "skills/devops/observability-incident-triage",
      "skillBytes": 1020,
      "referenceBytes": 3014,
      "references": [
        "references/incident-evidence.md",
        "references/logs-metrics-traces.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/devops/observability-incident-triage",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1020,
        "referenceBytes": 3014,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "package-publish-readiness",
      "category": "devops",
      "path": "skills/devops/package-publish-readiness",
      "skillBytes": 1058,
      "referenceBytes": 2877,
      "references": [
        "references/artifact-dry-run-checks.md",
        "references/package-metadata-checks.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/devops/package-publish-readiness",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1058,
        "referenceBytes": 2877,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "browser-dom-change",
      "category": "frontend",
      "path": "skills/frontend/browser-dom-change",
      "skillBytes": 899,
      "referenceBytes": 1710,
      "references": [
        "references/dom-event-browser-compat.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/frontend/browser-dom-change",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 899,
        "referenceBytes": 1710,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "design-system-handoff",
      "category": "frontend",
      "path": "skills/frontend/design-system-handoff",
      "skillBytes": 1183,
      "referenceBytes": 2804,
      "references": [
        "references/component-system-adoption.md",
        "references/design-token-handoff.md"
      ],
      "decision": "merge",
      "targetSkill": "design-brief-direction",
      "preservedAt": "references/frontend/design-system-handoff",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 1183,
        "referenceBytes": 2804,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "frontend-accessibility-review",
      "category": "frontend",
      "path": "skills/frontend/frontend-accessibility-review",
      "skillBytes": 1104,
      "referenceBytes": 3688,
      "references": [
        "references/keyboard-focus-review.md",
        "references/semantic-interaction-review.md"
      ],
      "decision": "merge",
      "targetSkill": "ui-polish",
      "preservedAt": "references/frontend/frontend-accessibility-review",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 1104,
        "referenceBytes": 3688,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "frontend-state-data-flow",
      "category": "frontend",
      "path": "skills/frontend/frontend-state-data-flow",
      "skillBytes": 1046,
      "referenceBytes": 3894,
      "references": [
        "references/server-client-cache-boundaries.md",
        "references/state-ownership.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/frontend/frontend-state-data-flow",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1046,
        "referenceBytes": 3894,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "generic-ui-review",
      "category": "frontend",
      "path": "skills/frontend/generic-ui-review",
      "skillBytes": 1940,
      "referenceBytes": 2961,
      "references": [
        "references/review-candidates-and-evidence.md"
      ],
      "decision": "merge",
      "targetSkill": "ui-polish",
      "preservedAt": "references/frontend/generic-ui-review",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 1940,
        "referenceBytes": 2961,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "interactive-media-3d-review",
      "category": "frontend",
      "path": "skills/frontend/interactive-media-3d-review",
      "skillBytes": 1635,
      "referenceBytes": 10589,
      "references": [
        "references/interactive-media-verification.md",
        "references/rendering-scene-contract.md",
        "references/threejs-scene-risk-checklist.md",
        "references/threejs-webgl-production.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/frontend/interactive-media-3d-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1635,
        "referenceBytes": 10589,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "style-policy-selection",
      "category": "frontend",
      "path": "skills/frontend/style-policy-selection",
      "skillBytes": 1100,
      "referenceBytes": 1629,
      "references": [
        "references/style-policy-selection.md"
      ],
      "decision": "merge",
      "targetSkill": "ui-polish",
      "preservedAt": "references/frontend/style-policy-selection",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 1100,
        "referenceBytes": 1629,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "ui-polish",
      "category": "frontend",
      "path": "skills/frontend/ui-polish",
      "skillBytes": 935,
      "referenceBytes": 3310,
      "references": [
        "references/task-surface-polish-check.md"
      ],
      "decision": "retain-and-shorten",
      "targetSkill": "ui-polish",
      "preservedAt": "references/frontend/ui-polish",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 935,
        "referenceBytes": 3310,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "visual-regression-qa",
      "category": "frontend",
      "path": "skills/frontend/visual-regression-qa",
      "skillBytes": 1226,
      "referenceBytes": 5441,
      "references": [
        "references/interaction-responsive-production.md",
        "references/responsive-overflow-checks.md",
        "references/visual-snapshot-checks.md"
      ],
      "decision": "merge",
      "targetSkill": "ui-polish",
      "preservedAt": "references/frontend/visual-regression-qa",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 1226,
        "referenceBytes": 5441,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "commit-worklog-guardrails",
      "category": "git",
      "path": "skills/git/commit-worklog-guardrails",
      "skillBytes": 1083,
      "referenceBytes": 7507,
      "references": [
        "references/git-worklog-checklist.md"
      ],
      "decision": "merge",
      "targetSkill": "spec-artifacts",
      "preservedAt": "references/git/commit-worklog-guardrails",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1083,
        "referenceBytes": 7507,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-android-webview-hybrid",
      "category": "legacy",
      "path": "skills/legacy/legacy-android-webview-hybrid",
      "skillBytes": 1253,
      "referenceBytes": 1784,
      "references": [
        "references/android-webview-hybrid.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-android-webview-hybrid",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1253,
        "referenceBytes": 1784,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-batch-file-transfer",
      "category": "legacy",
      "path": "skills/legacy/legacy-batch-file-transfer",
      "skillBytes": 1169,
      "referenceBytes": 1613,
      "references": [
        "references/file-transfer-boundary.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-batch-file-transfer",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1169,
        "referenceBytes": 1613,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-change-safety",
      "category": "legacy",
      "path": "skills/legacy/legacy-change-safety",
      "skillBytes": 895,
      "referenceBytes": 4017,
      "references": [
        "references/legacy-change-control.md",
        "references/legacy-compatibility-map.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-change-safety",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 895,
        "referenceBytes": 4017,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-database-heavy-system",
      "category": "legacy",
      "path": "skills/legacy/legacy-database-heavy-system",
      "skillBytes": 1235,
      "referenceBytes": 1805,
      "references": [
        "references/database-coupling-map.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-database-heavy-system",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1235,
        "referenceBytes": 1805,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-dotnet-webforms",
      "category": "legacy",
      "path": "skills/legacy/legacy-dotnet-webforms",
      "skillBytes": 1474,
      "referenceBytes": 1726,
      "references": [
        "references/dotnet-webforms.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-dotnet-webforms",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1474,
        "referenceBytes": 1726,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-feature-addition",
      "category": "legacy",
      "path": "skills/legacy/legacy-feature-addition",
      "skillBytes": 1237,
      "referenceBytes": 1749,
      "references": [
        "references/feature-slice-in-legacy.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-feature-addition",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1237,
        "referenceBytes": 1749,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-general",
      "category": "legacy",
      "path": "skills/legacy/legacy-general",
      "skillBytes": 1220,
      "referenceBytes": 1950,
      "references": [
        "references/legacy-operating-model.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-general",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1220,
        "referenceBytes": 1950,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-ie-activex-compat",
      "category": "legacy",
      "path": "skills/legacy/legacy-ie-activex-compat",
      "skillBytes": 1210,
      "referenceBytes": 1802,
      "references": [
        "references/ie-activex-containment.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-ie-activex-compat",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1210,
        "referenceBytes": 1802,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-java-spring-mvc",
      "category": "legacy",
      "path": "skills/legacy/legacy-java-spring-mvc",
      "skillBytes": 1438,
      "referenceBytes": 1812,
      "references": [
        "references/java-spring-mvc.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-java-spring-mvc",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1438,
        "referenceBytes": 1812,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-jquery-web",
      "category": "legacy",
      "path": "skills/legacy/legacy-jquery-web",
      "skillBytes": 1073,
      "referenceBytes": 1738,
      "references": [
        "references/jquery-browser.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-jquery-web",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1073,
        "referenceBytes": 1738,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-php-lamp",
      "category": "legacy",
      "path": "skills/legacy/legacy-php-lamp",
      "skillBytes": 1462,
      "referenceBytes": 1727,
      "references": [
        "references/php-lamp.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-php-lamp",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1462,
        "referenceBytes": 1727,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-reporting-printing",
      "category": "legacy",
      "path": "skills/legacy/legacy-reporting-printing",
      "skillBytes": 1224,
      "referenceBytes": 1489,
      "references": [
        "references/report-print-contract.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-reporting-printing",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1224,
        "referenceBytes": 1489,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-risk-check",
      "category": "legacy",
      "path": "skills/legacy/legacy-risk-check",
      "skillBytes": 1217,
      "referenceBytes": 1862,
      "references": [
        "references/legacy-risk-inventory.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-risk-check",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1217,
        "referenceBytes": 1862,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "legacy-server-rendered-web",
      "category": "legacy",
      "path": "skills/legacy/legacy-server-rendered-web",
      "skillBytes": 1215,
      "referenceBytes": 1517,
      "references": [
        "references/server-rendered-legacy-flow.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/legacy/legacy-server-rendered-web",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 1215,
        "referenceBytes": 1517,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "agent-skill-authoring",
      "category": "meta",
      "path": "skills/meta/agent-skill-authoring",
      "skillBytes": 1979,
      "referenceBytes": 3462,
      "references": [
        "references/reference-authoring-checks.md",
        "references/skill-shape-and-routing.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/meta/agent-skill-authoring",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1979,
        "referenceBytes": 3462,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "device-permission-qa",
      "category": "mobile",
      "path": "skills/mobile/device-permission-qa",
      "skillBytes": 1145,
      "referenceBytes": 3116,
      "references": [
        "references/lifecycle-and-device-state-checks.md",
        "references/permission-device-matrix.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/mobile/device-permission-qa",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1145,
        "referenceBytes": 3116,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "native-release-readiness",
      "category": "mobile",
      "path": "skills/mobile/native-release-readiness",
      "skillBytes": 1211,
      "referenceBytes": 3484,
      "references": [
        "references/mobile-build-channel-checks.md",
        "references/release-signing-and-store-checks.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/mobile/native-release-readiness",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1211,
        "referenceBytes": 3484,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "offline-sync-review",
      "category": "mobile",
      "path": "skills/mobile/offline-sync-review",
      "skillBytes": 1166,
      "referenceBytes": 2943,
      "references": [
        "references/offline-storage-and-queue-checks.md",
        "references/sync-conflict-retry-checks.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/mobile/offline-sync-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1166,
        "referenceBytes": 2943,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "webview-bridge",
      "category": "mobile",
      "path": "skills/mobile/webview-bridge",
      "skillBytes": 897,
      "referenceBytes": 1706,
      "references": [
        "references/webview-message-bridge-contract.md"
      ],
      "decision": "merge",
      "targetSkill": "legacy-contracts",
      "preservedAt": "references/mobile/webview-bridge",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "legacy",
      "selectionCost": {
        "skillBytes": 897,
        "referenceBytes": 1706,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "adr-spec-handoff",
      "category": "project",
      "path": "skills/project/adr-spec-handoff",
      "skillBytes": 1055,
      "referenceBytes": 3337,
      "references": [
        "references/adr-decision-capture.md",
        "references/spec-worklog-promotion.md"
      ],
      "decision": "merge",
      "targetSkill": "spec-artifacts",
      "preservedAt": "references/project/adr-spec-handoff",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1055,
        "referenceBytes": 3337,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "documentation-artifact-package",
      "category": "project",
      "path": "skills/project/documentation-artifact-package",
      "skillBytes": 1237,
      "referenceBytes": 3509,
      "references": [
        "references/artifact-package-manifest.md",
        "references/reader-handoff-and-maintenance.md"
      ],
      "decision": "merge",
      "targetSkill": "spec-artifacts",
      "preservedAt": "references/project/documentation-artifact-package",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1237,
        "referenceBytes": 3509,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "issue-planning-triage",
      "category": "project",
      "path": "skills/project/issue-planning-triage",
      "skillBytes": 1183,
      "referenceBytes": 3547,
      "references": [
        "references/issue-breakdown-checks.md",
        "references/triage-priority-and-dependencies.md"
      ],
      "decision": "merge",
      "targetSkill": "spec-artifacts",
      "preservedAt": "references/project/issue-planning-triage",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1183,
        "referenceBytes": 3547,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "natural-writing-humanization",
      "category": "project",
      "path": "skills/project/natural-writing-humanization",
      "skillBytes": 1994,
      "referenceBytes": 8826,
      "references": [
        "references/english-naturalness-patterns.md",
        "references/korean-naturalness-patterns.md",
        "references/review-rubric.md",
        "references/voice-fidelity-and-boundaries.md"
      ],
      "decision": "retain-and-shorten",
      "targetSkill": "natural-writing-humanization",
      "preservedAt": "references/project/natural-writing-humanization",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 1994,
        "referenceBytes": 8826,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "project-bootstrap",
      "category": "project",
      "path": "skills/project/project-bootstrap",
      "skillBytes": 1256,
      "referenceBytes": 2950,
      "references": [
        "references/bootstrap-checklist.md"
      ],
      "decision": "merge",
      "targetSkill": "project-memory",
      "preservedAt": "references/project/project-bootstrap",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1256,
        "referenceBytes": 2950,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "project-doc-system",
      "category": "project",
      "path": "skills/project/project-doc-system",
      "skillBytes": 1056,
      "referenceBytes": 2954,
      "references": [
        "references/doc-roles.md"
      ],
      "decision": "merge",
      "targetSkill": "project-memory",
      "preservedAt": "references/project/project-doc-system",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1056,
        "referenceBytes": 2954,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "release-notes-changelog",
      "category": "project",
      "path": "skills/project/release-notes-changelog",
      "skillBytes": 1211,
      "referenceBytes": 3420,
      "references": [
        "references/changelog-risk-and-rollback.md",
        "references/release-note-audience-checks.md"
      ],
      "decision": "merge",
      "targetSkill": "spec-artifacts",
      "preservedAt": "references/project/release-notes-changelog",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1211,
        "referenceBytes": 3420,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "repo-onboarding",
      "category": "project",
      "path": "skills/project/repo-onboarding",
      "skillBytes": 1090,
      "referenceBytes": 1317,
      "references": [
        "references/onboarding-checklist.md"
      ],
      "decision": "merge",
      "targetSkill": "project-memory",
      "preservedAt": "references/project/repo-onboarding",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1090,
        "referenceBytes": 1317,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "requirements-prd-scope-review",
      "category": "project",
      "path": "skills/project/requirements-prd-scope-review",
      "skillBytes": 1171,
      "referenceBytes": 3746,
      "references": [
        "references/acceptance-criteria-and-open-questions.md",
        "references/prd-scope-checks.md"
      ],
      "decision": "merge",
      "targetSkill": "spec-artifacts",
      "preservedAt": "references/project/requirements-prd-scope-review",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "core",
      "selectionCost": {
        "skillBytes": 1171,
        "referenceBytes": 3746,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "cleanup-ai-slop",
      "category": "quality",
      "path": "skills/quality/cleanup-ai-slop",
      "skillBytes": 1193,
      "referenceBytes": 1924,
      "references": [
        "references/cleanup-ai-slop-checklist.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/quality/cleanup-ai-slop",
      "reason": "Code-structure cleanup is distinct from visual and prose review; preserve behavior/complexity examples as optional reference rather than another default review workflow.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1193,
        "referenceBytes": 1924,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "frontend-ui-polish",
      "category": "quality",
      "path": "skills/quality/frontend-ui-polish",
      "skillBytes": 1027,
      "referenceBytes": 2009,
      "references": [
        "references/frontend-ui-polish-checklist.md"
      ],
      "decision": "merge",
      "targetSkill": "ui-polish",
      "preservedAt": "references/quality/frontend-ui-polish",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 1027,
        "referenceBytes": 2009,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "review-work-light",
      "category": "quality",
      "path": "skills/quality/review-work-light",
      "skillBytes": 941,
      "referenceBytes": 1573,
      "references": [
        "references/review-work-light-checklist.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/quality/review-work-light",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 941,
        "referenceBytes": 1573,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "style-quality-review",
      "category": "quality",
      "path": "skills/quality/style-quality-review",
      "skillBytes": 963,
      "referenceBytes": 941,
      "references": [
        "references/style-review-checklist.md"
      ],
      "decision": "merge",
      "targetSkill": "ui-polish",
      "preservedAt": "references/quality/style-quality-review",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 963,
        "referenceBytes": 941,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "ui-style-policy",
      "category": "quality",
      "path": "skills/quality/ui-style-policy",
      "skillBytes": 919,
      "referenceBytes": 1553,
      "references": [
        "references/style-policy.md"
      ],
      "decision": "merge",
      "targetSkill": "ui-polish",
      "preservedAt": "references/quality/ui-style-policy",
      "reason": "Unique record/artifact fields or contextual examples survive; duplicated procedure and cross-skill routing do not.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "development",
      "selectionCost": {
        "skillBytes": 919,
        "referenceBytes": 1553,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "auth-access-control",
      "category": "security",
      "path": "skills/security/auth-access-control",
      "skillBytes": 839,
      "referenceBytes": 2418,
      "references": [
        "references/auth-access-control-checklist.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/security/auth-access-control",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 839,
        "referenceBytes": 2418,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "dependency-supply-chain-review",
      "category": "security",
      "path": "skills/security/dependency-supply-chain-review",
      "skillBytes": 1157,
      "referenceBytes": 5443,
      "references": [
        "references/dependency-supply-chain-checklist.md",
        "references/sbom-attestation-release-gate.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/security/dependency-supply-chain-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1157,
        "referenceBytes": 5443,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "license-notice-review",
      "category": "security",
      "path": "skills/security/license-notice-review",
      "skillBytes": 1031,
      "referenceBytes": 2571,
      "references": [
        "references/license-policy-evidence.md",
        "references/notice-attribution-checks.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/security/license-notice-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1031,
        "referenceBytes": 2571,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "security-compliance-gate",
      "category": "security",
      "path": "skills/security/security-compliance-gate",
      "skillBytes": 1235,
      "referenceBytes": 5638,
      "references": [
        "references/evidence-routing.md",
        "references/gate-severity-model.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/security/security-compliance-gate",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1235,
        "referenceBytes": 5638,
        "runtimeCost": "not separately measured"
      }
    },
    {
      "name": "security-review",
      "category": "security",
      "path": "skills/security/security-review",
      "skillBytes": 1254,
      "referenceBytes": 11853,
      "references": [
        "references/agent-tool-threats.md",
        "references/secrets-credential-boundary.md",
        "references/security-review-protocol.md",
        "references/threat-model-data-exposure.md"
      ],
      "decision": "retire-entrypoint",
      "targetSkill": null,
      "preservedAt": "references/security/security-review",
      "reason": "Broad development reasoning repeats the host; domain examples remain selectable without startup instructions.",
      "recovery": "Pinned ai-agent-playbook@0.5.11 or the source baseline.",
      "profile": "reference-only",
      "selectionCost": {
        "skillBytes": 1254,
        "referenceBytes": 11853,
        "runtimeCost": "not separately measured"
      }
    }
  ]
}
