Files
markitect-main/markitect/prompts/__init__.py
tegwick 945544880d feat(prompts): implement Phase 1 - Foundation (FR-1)
Implement addressable artifacts with content-based identity and change detection.

Core Features:
- Artifact model with SHA-256 content digests
- ArtifactReference for cross-space addressing
- IArtifactRepository interface for pluggable storage
- SQLiteArtifactRepository implementation
- ArtifactService for high-level operations
- Content digest calculation utilities

Database:
- prompt_artifacts table with indexes
- Support for artifact metadata and types
- UNIQUE constraint on space_id+name

Tests (41 passing):
- 26 model tests (metadata, artifacts, references, digests)
- 15 repository tests (CRUD, queries, constraints)

Implements:
- FR-1.1: Unique addressability by name and ID
- FR-1.2: Content digest computation and storage
- FR-1.3: Cross-space artifact references

Files Created:
- markitect/prompts/models.py
- markitect/prompts/repositories/interfaces.py
- markitect/prompts/repositories/sqlite.py
- markitect/prompts/services/artifact_service.py
- migrations/prompts/001_create_artifacts_table.sql
- tests/unit/prompts/test_artifact_models.py
- tests/unit/prompts/test_artifact_repository.py

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 22:30:26 +01:00

34 lines
878 B
Python

"""
Prompt Dependency Resolution system for MarkiTect.
This package provides infrastructure for executing PromptTemplates with
deterministic dependency resolution, incremental recomputation, and quality
validation across InformationSpaces.
Key components:
- Artifact management with content-based addressing
- Template definition with macro support
- Deterministic resolution across spaces
- Idempotent execution with InputBundleHash
- Dependency graph construction and tracking
- Incremental recomputation with change impact analysis
- Quality gate validation and halting policies
- Complete traceability and provenance tracking
"""
__version__ = "0.1.0"
from markitect.prompts.models import (
Artifact,
ArtifactReference,
ArtifactMetadata,
ArtifactType,
)
__all__ = [
"Artifact",
"ArtifactReference",
"ArtifactMetadata",
"ArtifactType",
]