DLM Package Reorganization Plan
**Split Plan:** 1. **base.py** (~200 lines) - Base classes and utilities 2. **chat_model.py** (~800 lines) - BaseChatModel, ChatArtificial 3. **ai_interface.py** (~1,200 lines) - AI class with main interface 4. **completion.py** (~600 lines) - Completion logic 5. **streaming.py** (~400 lines) - Streaming functionality 6. **embeddings.py** (~400 lines) - Embedding cache and utilities
Full HTML reader
Read the full artifact
Extracted abstract or opening context
Promotion decision
What has to happen next
Attach run IDs, datasets, metrics, and reproduction commands.
Why this is not always a full paper yet
Corpus pages are public-safe readers for discovered workspace artifacts. They are not automatically final papers. A corpus item becomes a polished paper only after the editable source, evidence checkpoints, references, figures, render path, and release status are attached through the paper schema.