Tags give the ability to mark specific points in history as being important
-
v0.1.0
f18c3159 · ·calliope v0.1.0 - first usable release All six subpackages ship working substrate primitives: - templates: PageTemplate ABC + JinjaPageTemplate, marker validation, block extraction, dependency-injected TemplateRegistry, sanitized shell helpers. - cards: CardRenderer Protocol, CardTemplate ABC + JinjaCardTemplate, Taxonomy, Pill, HeatbarSegment, Tier/TierTable, formatters. - pages: Pagination, Hero, Scoreboard, NarrativeRenderer Protocol, canonical block-name tuples. - assets: Asset, AssetManifest, bundle_assets, hash_content, rewrite_html_with_manifest. - render: Renderable Protocol, RenderJob, RenderDriver Protocol, SerialRenderDriver, ThreadedRenderDriver. Atomic writes, duplicate-path rejection, exception capture. - deploy: DeployTarget Protocol, DeployResult, LocalDeployTarget, DryRunDeployTarget. Symlink-safe walks, self-copy rejection. Architectural contract: docs/CALLIOPE-SPEC.md (§§1-17). Lift methodology: docs/LIFT_PATTERN.md. 372 pytest tests, ruff clean, Codex APPROVE on .4 (gpt-5.4) round 5.
-
v0.0.5
c47d883a · ·Phase 7 Stage 4 - render drivers substrate Renderable + RenderDriver Protocols, RenderJob with defensive copy, JobOutcome/RenderReport, SerialRenderDriver, ThreadedRenderDriver. Atomic file writes, batch-wide duplicate output_path rejection, Exception (not BaseException) capture. 291 pytest tests (+53 from Stage 3), ruff clean, Codex APPROVE on .4 (gpt-5.4) round 2.
-
v0.0.4
f1ec3930 · ·Phase 7 Stage 3 - pages substrate Pagination, Hero, Scoreboard, Narrative protocol + Jinja-backed renderer, canonical block-name tuples, defense-in-depth attribute validators. Spec section 13 (Security posture) added. 238 pytest tests (+68 from Stage 2), ruff clean, Codex APPROVE on .4 (gpt-5.4) round 5.
-
v0.0.3
a457b952 · ·Phase 7 Stage 2 - cards substrate CardRenderer Protocol, CardTemplate ABC + JinjaCardTemplate, Taxonomy, Pill, HeatbarSegment, Tier/TierTable, format_iso_date + slugify utilities. Cleanroom card_components.py family is reference material; calliope re-designs the substrate, adapters keep the domain. 170 pytest tests (+80 from Stage 1), ruff clean, Codex APPROVE on .4 (gpt-5.4) round 4.
-
v0.0.2
025cc50a · ·Phase 7 Stage 1 - templates substrate Page-shell contract: TemplateMetadata, PageTemplate ABC + JinjaPageTemplate, marker-based validation with duplicate suppression, parser-based extraction, dependency-injected TemplateRegistry, sanitized HTML shell helpers. 90 pytest tests, ruff clean, Codex APPROVE on .4 (gpt-5.4) round 5. First substrate stage; cards/pages/render/deploy follow.