Skip to content

Don't crash when there's no design doc - #118

Merged
naftali-g merged 1 commit into
masterfrom
naftali/auto-create-design-doc
Aug 5, 2026
Merged

Don't crash when there's no design doc#118
naftali-g merged 1 commit into
masterfrom
naftali/auto-create-design-doc

Conversation

@naftali-g

Copy link
Copy Markdown
Contributor

No description provided.

@naftali-g
naftali-g requested a review from jtoman August 2, 2026 11:56
@naftali-g
naftali-g force-pushed the naftali/auto-create-design-doc branch from b2b01c9 to 7120bc4 Compare August 5, 2026 06:09

@jtoman jtoman left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

seems to do what it says on the tin

Comment thread composer/pipeline/cli.py
embed_model=model,
root_key=root_key,
source=SourceCode(
content=system_doc_doc,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"doc_doc" good stuff

@naftali-g
naftali-g merged commit 9781e2f into master Aug 5, 2026
2 checks passed
ericeil added a commit that referenced this pull request Aug 5, 2026
Two overlaps needed resolving beyond the textual merge.

`pyproject.toml` package-data: master widened `templates/*.j2` to
`templates/**/*.j2` to ship the template subdirectories; this branch had
independently added both that glob and `templates/*.js`. setuptools globs
package-data with `recursive=True`, so `**` already matches the top-level
files and the separate `templates/*.j2` entry was redundant — kept master's
glob plus the `.js` entry this branch needs for `prism-cvl.js`.

The design doc became optional on master (#118): `resolve_design_doc`
returns `None` instead of raising, `SourceCode.content` is nullable, and
`SourceCode` no longer derives from `SystemDoc`. The Rust entry point
resolves its own design doc, so it had the same fail-fast assumption and
its own copy of the root cache key. It now degrades to a source-only run
the same way, and `_root_cache_key` delegates to `pipeline.cli.root_cache_key`
so the no-doc sentinel is defined once rather than in two places; the Rust
side keeps only its truncation. Nothing on the Rust, Solana, Foundry or
pipeline paths dereferences the doc content, so component analysis remains
its sole consumer.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants