Ideas · Builder Notes

Kognita 0.6.1: closing the bypasses review found in Claims

Kognita alpha 0.6.1 is a patch release that ties a claim release to its target and closes four ways text could slip past the 0.6 claim checks.

Before

Review of 0.6.0 found that a released claim could cover more than it should. A release was not tied to a client or an interaction, and a claim invalidated after release, for example by superseding its source, still covered text on the gateway and communication paths.

What changed

  • release_scope on a use case sets how tightly a release is tied to its target: usecase by default, client, or interaction. An unknown scope fails closed as interaction.
  • The gateway reads an interaction_id header and takes the client from the stored interaction, never from a header, and only when that interaction is for the request's purpose.
  • The cover check reads the latest snapshot of each claim, so an invalidated claim no longer covers text.
  • The cover check reads only claim events instead of re-verifying the whole chain on every material response. Full verification stays in reconstruct, replay and evidence verify.
  • A value with value and as_of but missing the rest of the fact contract is admitted, and so suppressed, instead of passing as plain data.
  • verify_claim pins the producer: provider, model and version must match a recorded MODEL_CALL, or verification is denied C7-PIN.

After

0.6.1 shipped with no new public names beyond those already on main. A release now covers only the use case, client or interaction it was made for.

If you're building one

Take identity from your own records, not from the request. A header is a claim, not a fact.

Sources

Kognita is an open-source alpha. This note comes from Kognita PR #138, Kognita v0.6.1 release notes, Kognita CHANGELOG: 0.6.1, kognita 0.6.1 on PyPI in the Kognita repository.

All ideasEmail Ahmed