feat(describe): LLM labeling of process paths (kb describe, 4th slice)#28
Merged
Conversation
DESCRIBE_KINDS gains process_path: kb describe now writes a grounded NL name/summary for each materialized business-process path, with a larger facts budget (facts_cap=4000) since the path payload (steps/edges/sink) is rich context. Claims validate against the path's own spans; the stored label ships with confidence = kept/(kept+dropped) < 1.0 — the DESIGN §9 unknown-unknowns pricing, as promised. Route/entity/module/ package prompts stay byte-identical (no PROMPT_VERSION bump). The semantic-grounding gate gains a process-path fixture (multi-file path via the fixture's own .kb/sinks.yaml; real claim kept, fabricated claim dropped, provenance across 2 files). Headline HARD gates stay fourteen. Closes DESIGN §14 item 2.
…lives in deterministic.paths
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Extends
kb describewith a fourth slice:DESCRIBE_KINDSgainsprocess_path, so the key-gated describe pass now writes a grounded NL name/summary for each materialized business-process path (desc:process:...), with a larger facts budget (facts_cap=4000) because the path payload (steps/edges/sink) is rich prompt context. Route/entity/module/package prompts stay byte-identical (default cap unchanged, noPROMPT_VERSIONbump).Why
Closes the last slice of DESIGN §14 item 2 (the one grounded business-process extractor): PR #27 materialized paths deterministically (confidence 1.0); this PR adds the LLM labeler under the same
validate_claimsfloor — claims validate against the path's own spans, fabricated claims are dropped, nothing is stored if none survive, and the stored label carriesconfidence = kept/(kept+dropped)< 1.0, the honest unknown-unknowns pricing promised in DESIGN §9. Roadmap item "Grounded business-process extraction" flips to shipped.Gates
Headline HARD gate count stays fourteen — the existing semantic-grounding gate is extended with a process-path fixture (unique
lppackage; route handler in one file calling a sink-bearing helper in another, matched via the fixture's own.kb/sinks.yaml): real claim kept, fabricated claim dropped,is_deterministic=False, provenance spans ≥ 2 files.Local:
ruffclean,mypy --strictclean,pytest -q→ 103 passed, 1 skipped.Next
Release v0.6.0 (call-graph + process paths + labeler).