KB-779A

D1-supp2 — Endpoint Feasibility + Verifier Fix (KG cluster companion)

3 min read Revision 1

D1-supp2 — KG Curated Cluster companion: endpoint feasibility + verifier correctness

Companion to d1-knowledge-graph-curated-cluster-2026-06-04.md and d1-supp-kg-explain-pilot-and-discovery-status-2026-06-04.md. No source IU/document edited. Derived doc; extends D1 with this run's findings.

1. The EXPLAIN pilot is now buildable on existing infra

Earlier framing: the EXPLAIN producer was blocked by "no LLM credential + no hosting". Live evidence (2026-06-04) corrects this: the VPS already has an OpenAI credential (in incomex-agent-data), the openai SDK, and working egress to api.openai.com. So the curated KG cluster's canonical dry-run shape — explain kgn:dieu39 over its 4-node subgraph — is implementable as a small no-mutation service (now staged). The KG cluster is the reference fixture for that service.

2. The fixture as the canonical KG dry-run shape

FIXTURE:dot:kg:explain:v1 mirrors the curated cluster: target kgn:dieu39 (Điều 39 — KG Law), nodes {dieu39, dot_kg_family, explain_pair, provenance}, edges GOVERNS / CONTAINS / CONTAINS / DEPENDS_ON. This is the smallest grounded subgraph that exercises: target-reference, no-hallucination, edge-existence, and no-production-table — the four KG explanation safety properties.

3. Verifier correctness — a real lesson

The deterministic verifier had a latent failure-path bug: it could confirm a GOOD explanation (pass path) but crashed when asked to reject a BAD one (untyped-literal array append). A verifier that cannot fail is not a verifier. Fixed this run; all four negative controls now reject correctly (hallucinated node, missing target, production-table reference, missing target+ref). Lesson for the KG family: every EXPLAIN/VERIFY pair must be tested on its negative path, not only its happy path, before it is trusted as a gate.

4. The 36-DOT / 18-pair correction (carried)

The dot-kg family has 36 DOTs in 18 producer/verifier pairs. The earlier "18 orphaned producers" reading was a fixed inventory-filter bug (on-demand producers dropped). The curated cluster's EXPLAIN pair is one of the 18.

5. job:cut contrast (why dot:kg is not yet verified)

job:cut reached verified_candidate because it has correlated REAL_RUN rows (job_queue.run_id). dot:kg has none yet — no endpoint, no correlation, no real run. The KG family's path to verified runs strictly through: deploy endpoint → bind → dry-run → correlation → real run.

6. Operational lesson

The KG explanation capability is gated less by modeling and more by a small piece of runnable no-mutation infrastructure plus a working negative test. Both now exist (service staged; verifier fixed).

Back to Knowledge Hub knowledge/dev/design/knowledge-graph/d1-supp2-endpoint-feasibility-and-verifier-fix-2026-06-04.md