This repository has been archived on 2026-07-08. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
kontextual-engine/workplans/KONT-WP-0005-asset-registry-governance-state.md

5.5 KiB

id, type, title, domain, repo, status, owner, topic_slug, planning_priority, planning_order, created, updated, state_hub_workstream_id
id type title domain repo status owner topic_slug planning_priority planning_order created updated state_hub_workstream_id
KONT-WP-0005 workplan Asset Registry Governance And Durable State markitect kontextual-engine todo codex markitect high 5 2026-05-05 2026-05-05 231a7794-aa3b-4763-a556-80b4cea731c8

KONT-WP-0005: Asset Registry Governance And Durable State

Purpose

Implement the governed knowledge asset registry that underpins the V0.2 product vision: stable asset identity, source references, source/normalized/derived representations, metadata, classification, lifecycle state, actors, authorization checks, audit events, versioning, and durable local-first state.

Requirement Coverage

Primary: FR-001 to FR-010, FR-040 to FR-049, FR-120 to FR-126, FR-140 to FR-145, FR-240 to FR-245.

Supporting: FR-180 to FR-182, FR-200 to FR-201.

Architecture Constraint

Implement this slice through the domain core, application services, repository ports, policy port, audit port, and SQLite/in-memory adapters described in docs/architecture-blueprint.md. The asset registry must not depend on HTTP, source connectors, document extractors, search backends, or AI providers.

G5.1 - Implement stable asset identity and source references

id: KONT-WP-0005-T001
status: todo
priority: high
state_hub_task_id: "7d61a11c-ca14-4075-ab0b-897bdfe57cb1"

Replace artifact-centric naming with knowledge asset identity that survives rename, move, re-ingestion, representation changes, and transformation.

Acceptance:

  • Assets have stable IDs, source references, source aliases, and content digests.
  • Source system, source path/URL/external ID, checksum, ingestion actor, and ingestion time can be represented.
  • Existing artifact tests are migrated or wrapped without losing deterministic digest behavior.

G5.2 - Represent source normalized and derived asset forms

id: KONT-WP-0005-T002
status: todo
priority: high
state_hub_task_id: "cd0a2b0a-a2a0-426e-8b8c-6013cd6b9303"

Introduce explicit representation records for original/source-near content, normalized engine content, and derived artifacts.

Acceptance:

  • Retrieval can distinguish source content from normalized content.
  • Derived artifacts are stored as asset-linked records, not detached strings.
  • Representation metadata includes media type, digest, size, extractor or producer, and provenance.

G5.3 - Implement metadata classification lifecycle and schema validation

id: KONT-WP-0005-T003
status: todo
priority: high
state_hub_task_id: "b06c5124-ce54-4241-b712-2fbab856877b"

Implement standard metadata, custom metadata schemas, classification, sensitivity, lifecycle state, tags, ownership, and validation behavior.

Acceptance:

  • Assets can be filtered by standard metadata and lifecycle state.
  • Custom schema validation produces structured validation errors.
  • Inferred and confirmed metadata can be distinguished for later review flows.

G5.4 - Implement actor authorization and policy baseline

id: KONT-WP-0005-T004
status: todo
priority: high
state_hub_task_id: "c86e24ee-7e3f-488d-a649-d17a8689f0af"

Add actor and authorization context models for humans, applications, automation, service accounts, and AI agents.

Acceptance:

  • Operations accept explicit actor context.
  • Role, group, sensitivity, lifecycle, source-policy, and operation type can participate in policy checks.
  • Ambiguous permission state fails closed by contract.

G5.5 - Implement audit events correlation IDs and structured errors

id: KONT-WP-0005-T005
status: todo
priority: high
state_hub_task_id: "3d2e98a1-3312-452a-a5f1-f7a73234b45b"

Create audit and correctness primitives for material operations.

Acceptance:

  • Asset create, ingest, update, delete/retire, metadata, relationship, permission, query, transformation, workflow, export, and agent operations can emit audit events.
  • Structured errors include code, message, correlation ID, operation, and remediation hint where practical.
  • Partial failures are represented for batch operations.

G5.6 - Implement durable SQLite repository for registry state

id: KONT-WP-0005-T006
status: todo
priority: high
state_hub_task_id: "de155d02-3123-42da-8ede-f111bec62747"

Implement a local-first durable backend for assets, representations, metadata, classifications, relationships, actors, policies, audit events, and versions.

Acceptance:

  • State survives repository re-instantiation.
  • Referential integrity is enforced for assets, relationships, representations, versions, and audit references.
  • The in-memory backend remains useful for deterministic unit tests.

G5.7 - Implement versioning change history conflict and idempotency semantics

id: KONT-WP-0005-T007
status: todo
priority: medium
state_hub_task_id: "5288b136-05c1-449c-9215-f8b34db8b274"

Add version and change history semantics for asset content, metadata, relationships, policy-relevant lifecycle state, and repeated requests.

Acceptance:

  • Updates create traceable change records.
  • Restore creates a new auditable change rather than erasing history.
  • Idempotency keys and conflict detection prevent unintended duplicate or stale writes where harmful.

Definition Of Done

  • Asset lifecycle tests cover create, retrieve, update, retire, delete request, metadata changes, permission checks, audit events, and durable reload.
  • New models map to the V0.2 FRS vocabulary.
  • The implemented package shape follows docs/architecture-blueprint.md or documents any deliberate deviation.
  • python3 -m pytest passes.