kibi-runtime 2.13.0 → 2.13.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@
2
2
  id: kibi-bootstrap
3
3
  name: kibi-bootstrap
4
4
  description: "Use for any Kibi bootstrap or onboarding task: seeding a new or thin knowledge base; reviewing a bootstrap or onboarding plan, preview, or evidence; judging approval readiness or coverage; diagnosing a blocked, partial, or failed bootstrap or its repair; applying an approved bootstrap plan; or asking the human which knowledge sources hold intent. Covers kb_status first, source interview, cited intent claims, read-only kb_plan_bootstrap preview, explicit approval, exact-plan kb_apply_plan, and repair-safe close-out."
5
- version: 3.10.0
5
+ version: 3.11.0
6
6
  kibiCompatibility: ">=1.0.0"
7
7
  tags:
8
8
  - kibi
@@ -46,6 +46,7 @@ Seed branch-local Kibi knowledge from cited product intent, without creating a p
46
46
  - **Scenarios.** Write scenarios from the cited ticket's acceptance criteria, one scenario per criterion, not bulk drafts from the requirement title; ask the human when the source states none. Give each a plain title, the scenario prose in `document.body` (never in `properties`), and `assumes` links to the `property_value` facts whose values the scenario relies on. Set `expects` only when the scenario links `assumes` facts (or its criterion names concrete values that become them); `expects` without `assumes` only yields a feasibility-unknown warning, so a draft tagged `needs-human-review` omits `expects`. Then link the requirement with `specified_by` (upsert the `req` with its stored `title`, a `status` and that relationship only). Example: criterion "Given an annotation in draft state, when the user deletes it, the draft is cleared" becomes `{"type":"scenario","id":"SCEN-annotation-delete-clears-draft","properties":{"title":"Deleting a draft annotation clears the draft","status":"active","expects":"success"},"document":{"body":"Given an annotation in draft state, when the user deletes it, then the draft is cleared and nothing is published.\n\nThe acceptance criterion comes from the cited ticket; reviewers asked for it so a deleted draft never reappears after reload.\n"},"relationships":[{"type":"assumes","from":"SCEN-annotation-delete-clears-draft","to":"FACT-annotation-state-draft"}]}`, where the assumed fact is a `property_value` (`annotation.state` `eq` `draft`). Link existing tests that exercise it; never invent test evidence.
47
47
  - **Predicates.** Run `kb_model` with `mode: "predicates"` and `requirementId` on each persisted requirement and apply a returned plan with `requires_predicate` to its `relationshipTarget` (the planned `FACT-PRED-…` id, never a `SUGGEST-…` candidate id), or record the `review:ontology-gap` observation it returns, with its prose in `document.body`. A non-empty `existingGrounding` means the bootstrap already grounded that claim: on `replace_grounding` leave it unless the human wants the `replacementPlan` swap; on `provide_argument_bindings` retry with the listed arguments bound; on `record_ontology_gap` still write the returned gap observation, which is not a grounding link. Count what `kb_query` shows afterwards, not the calls you made.
48
48
  - **Unrecorded ambiguity.** Record any conflict or open question you found but did not declare in step 3 as a cited `fact_kind: observation` tagged `review:conflict` or `review:open-question`.
49
+ - **Proof integration.** Run `kibi proof inspect --json`. When it returns an `integrationPlan` (a `command` integration for the detected test runner), show the human the proposed command and `contractDefaults`, and on approval apply that exact plan with `kb_apply_plan` (`plan`, `approvedPlanHash` = its `planHash`, `approvedActionIds`); it writes `.kb/proof/integrations.json`, which you never hand-write. With no runner detected, report that proof stays deferred. Proof-bearing tests then name the integration in `proof_contract.integration`, and `kibi prove` records their evidence.
49
50
  Finish with `kb_check` and `kb_status`.
50
51
  12. **Report** calls made, result statuses, applied scope, what step 11 authored, gaps, and follow-ups. Classify as complete, partial, awaiting approval, or blocked.
51
52
 
@@ -2,7 +2,7 @@
2
2
  id: kibi-usage
3
3
  name: Kibi Usage
4
4
  description: Use Kibi's source-first, exact-Git, migration-aware, proof-aware operations safely across MCP or the trusted local CLI, including partial completion repair.
5
- version: 2.11.0
5
+ version: 2.12.0
6
6
  kibiCompatibility: ">=1.0.0"
7
7
  tags:
8
8
  - kibi
@@ -219,11 +219,19 @@ authored. Each one is the order the write path accepts.
219
219
  `semantic_inventory_version`, `semantic_source_field` and
220
220
  `semantic_source_hash`, the prose into `semantic_text`, `propositions`
221
221
  into `semantic_inventory` and the assertive `claim_key`s into
222
- `logic_claims`. `kb_model` mode `predicates` per clause; `kb_upsert` the
223
- returned `applyPlan` fact first (it carries the clause's `claim_key`).
224
- Then write the requirement in one `kb_upsert` with the ledger (that
225
- clause `status: modeled`), a sectioned `document.body`, `constrains` to
226
- the subject fact and `requires_predicate` to `relationshipTarget`. A
222
+ `logic_claims`. Reuse (or `kb_upsert`) the subject fact, then call
223
+ `kb_model` mode `predicates` per clause with `subjectHint` set to that
224
+ subject fact's `subject_key`: the requirement constrains nothing yet, so
225
+ the hint is the planned subject and the planned fact gets its
226
+ `subject_key` (`subjectKey` is a mode `requirement` parameter; mode
227
+ `predicates` ignores it and warns). `kb_upsert` the returned `applyPlan`
228
+ fact first (it carries the clause's `claim_key`). Then write the
229
+ requirement in one `kb_upsert` with the ledger (that clause `status:
230
+ modeled`), a sectioned `document.body`, `constrains` to the subject
231
+ fact, `requires_predicate` to `relationshipTarget` and `specified_by` to
232
+ its scenario: `specified_by` (req → scenario) is sent in the
233
+ requirement's write, never in the scenario's, so create the scenario
234
+ first. A
227
235
  `modeled` entry and its grounding link must arrive in the same write
228
236
  (`modeled semantic_inventory entries (n) must equal logical grounding
229
237
  relationships (m)`); a clause not grounded yet stays `status: missing`
@@ -54,7 +54,16 @@ Provenance lives in `proof_bindings`; the contract stays semantic.
54
54
  ## Integration configuration
55
55
 
56
56
  `.kb/proof/integrations.json` (`kibi.proof-integration.v1`) is tracked,
57
- Kibi-managed configuration describing evidence production only:
57
+ Kibi-managed configuration describing evidence production only. Never
58
+ hand-write it: `kibi proof inspect --json` proposes a `command` integration
59
+ for the detected test runner (the `package.json` `test` script first) and
60
+ returns `integrationPlan`, a hash-bound `kibi.migration-plan.v2`, plus the
61
+ `contractDefaults` a proof-bearing test's `proof_contract` uses. Show the
62
+ proposal to the human, then apply the plan with `kb_apply_plan` (or
63
+ `kibi apply-plan --input -`) passing `plan`, `approvedPlanHash` (the plan's
64
+ `planHash`) and `approvedActionIds`. Once the file exists, a create plan is
65
+ refused; `kibi proof inspect --update <id> --json` plans adding or replacing
66
+ one named integration.
58
67
 
59
68
  - `producer: command` — Kibi synthesizes the envelope from the process
60
69
  outcome; obligations are bound with `aggregate_run` provenance and the
@@ -82,8 +91,11 @@ effective fingerprint and do.
82
91
 
83
92
  ## Common rejections
84
93
 
85
- - `No proof integration configuration` — bootstrap has not configured proof
86
- for this repository yet; do not hand-wave, run the bootstrap proof step.
94
+ - `No proof integration configuration` — proof is not configured for this
95
+ repository yet; run `kibi proof inspect --json`, review its
96
+ `integrationPlan` and apply it with `kb_apply_plan`.
97
+ - `integration '<id>' ... is not configured` — the test names an integration
98
+ the file lacks; plan it with `kibi proof inspect --update <id> --json`.
87
99
  - `captured snapshot is not the live workspace snapshot` — the tree changed
88
100
  between capture and ingest; re-run `kibi prove`.
89
101
  - `artifact command_argv does not match the configured command` — the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kibi-runtime",
3
- "version": "2.13.0",
3
+ "version": "2.13.1",
4
4
  "description": "Narrow first-party runtime contracts and adapters for Kibi operations.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -18,7 +18,7 @@
18
18
  },
19
19
  "dependencies": {
20
20
  "gray-matter": "^4.0.3",
21
- "kibi-core": "^0.18.0",
21
+ "kibi-core": "^0.18.1",
22
22
  "kibi-plugin-builtin": "^0.5.0",
23
23
  "kibi-swipl": "^1.0.1"
24
24
  },