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>
34 lines
878 B
Python
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",
|
|
]
|