Finalize packaging and release readiness (MASTER_SPEC Phase 8, §7.8, §28). - pyproject.toml: bump version to 1.0.0; ship the JSON Schemas as package data and enable include-package-data. - MANIFEST.in: include the data directories (schemas, knowledge_base, prompts, config, examples, docs) in the source distribution. - CHANGELOG.md: 1.0.0 release notes. - docs/definition_of_done.md: the §7.8 Definition-of-Done checklist mapped to evidence, with the ComfyUI visual check and the tag/release step flagged as the remaining manual steps. - tests/test_release_readiness.py: assert the version, changelog, DoD doc, and that every schema / Knowledge Base / config / prompt data file is present and declared for packaging. Verified: `python -m build --sdist` produces comfyui_scene_compiler-1.0.0 with all 13 Knowledge Base files, 10 schemas, the system prompt, and the default config bundled. Tagging v1.0.0 and publishing the release are intentionally left to a human after the ComfyUI visual check. Co-authored-by: kunail0804 <kunail0804@gmail.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
1.8 KiB
1.8 KiB
Changelog
All notable changes to Scene Compiler are documented here. The project follows
Semantic Versioning: MAJOR.MINOR.PATCH.
[1.0.0] — Deterministic Compiler Foundation
The first release: a complete, deterministic natural-language-to-prompt compiler for ComfyUI targeting the Illustrious model family.
Compiler
- Scene Analyzer — the only LLM stage; turns a natural-language description into Scene JSON via a local Ollama backend, with a bounded retry policy and the official system prompt. Never generates tags or invents information.
- Scene Validator — validates and normalizes Scene JSON against the schema; recoverable issues warn and continue, hard errors stop.
- Illustrious Resolver — deterministically resolves concepts to Illustrious tags through the Knowledge Base: normalization, direct alias resolution, recursive expansion, and duplicate removal, with full traceability.
- Category Splitter — groups Resolved Tags into the 19 canonical categories, preserving order.
- Prompt Builder — formats the Category Map into one output per category plus reserved Negative and Scene outputs.
Foundation
- JSON Schemas and immutable typed data models for every inter-stage document.
- Compiler Result wrapper and a stable message-code registry.
- Typed, injectable configuration and structured logging.
- Knowledge Base loader with validation tooling and an initial Illustrious dataset (188 entries).
ComfyUI
- Eight nodes: Scene Analyzer, Scene Validator, Resolver, Category Splitter, Prompt Builder, Debug Viewer, Knowledge Base Loader, and Configuration.
Quality
- Full unit, integration, golden, and performance test suites; deterministic golden outputs for ten reference scenes.
- CI on Python 3.11 and 3.12; documentation and ready-to-use examples.