{
  "handle": "PatternDiscovery",
  "mechanism": "Before a proposed pattern enters a declared registry, invoke {{search}} over a declared scope and method to retrieve plausible incumbents. Compare each candidate's mechanism and boundary with the proposal, using {{novelty}} to assess structural distinctness. Retrieval scores nominate candidates but do not establish coverage. Invoke {{gate}} on the dispositions and return its {{decision}}, candidates, deltas, unresolved comparisons, and search record. PatternDiscovery does not mint.",
  "gloss": "Prior-art gate for adding patterns",
  "failure_modes": [
    "Retrieval Miss: Different terminology, representation, scope, or discovery method keeps a covering incumbent out of the candidate set.",
    "False Merge: Surface resemblance or a retrieval score is treated as semantic coverage despite a material structural delta.",
    "Fragmentation: A covering or unresolved candidate is ignored and an overlapping pattern enters the registry."
  ],
  "invariants": [
    "Search Record: Scope, method, candidates, and dispositions are recorded; no-match means none found under that search, not global absence.",
    "Semantic Gate: Halt if any candidate covers the proposal's mechanism and boundary. Proceed requires either no candidate under the declared search or, for every resolved candidate, evidence of a material structural delta it does not cover.",
    "Uncertainty: An unresolved comparison yields halt or debt, never unqualified proceed."
  ],
  "preconditions": [
    "Proposed pattern, registry scope, and discovery method are available."
  ],
  "postconditions": [
    "Prior-art {{decision}} and supporting evidence returned."
  ],
  "_meta": {
    "tier": 2,
    "ring": 2,
    "supersedes": [
      "sema:PatternDiscovery#mh:SHA-256:f6678026193a09006dd0ced5877ca8bc97939b3df41d9cd71d7b59d969100cea",
      "sema:PatternDiscovery#mh:SHA-256:abed85333f7639dc232f4bca888a78a9595059c67596331c6f6eeac73b7b3239",
      "sema:PatternDiscovery#mh:SHA-256:f3a44176623cf57ec1cefc74f35944c2bd3fdbe658b31307755a8ae865532894",
      "sema:PatternDiscovery#mh:SHA-256:8ff484bd61105aee7eb4e3e24475faf27e55c0b76faf4388907734110d914023"
    ],
    "path": [
      "Mind",
      "Reasoning"
    ]
  },
  "sema_id": "sema:PatternDiscovery#mh:SHA-256:742a4d59a47458bf5ba632097b9cc410228dbedc941a561e7cfa70f2c63cd602",
  "sema_ref": "PatternDiscovery#742a",
  "sema_stub": "742a",
  "dependencies": {
    "composes_with": {
      "gate": "sema:Gate#mh:SHA-256:664dd801873a87e8aa3d67499e27e7c47923d5c0cdd129af6c09a7531ed7de15",
      "novelty": "sema:Novelty#mh:SHA-256:954f66918110b3dbbfadd1f47dd27ae095a8727113dce1c45d34931cf517d94a",
      "search": "sema:Search#mh:SHA-256:1da96800031333016d0be31b6721f15867df62aa9cd93d2a10102efb7d4841a7"
    },
    "yields": {
      "decision": "sema:Decision#mh:SHA-256:b1407127acd4a39314fc24b418310e4b95e0347e4e22f376151ab765e2dfd2c7"
    }
  },
  "sema_layer": "Mind",
  "sema_category": "Reasoning",
  "used_by": {
    "composes_with": {
      "MintWhenFriction": "sema:MintWhenFriction#mh:SHA-256:727e0e935cdf1f807e543d3a0da374c3a496b4b819913347e2623058e51d5371"
    }
  }
}
