Repository navigation
refactor(imports)!: isolate runtime and public contract imports - #287
Merged
Merged
Conversation
QuantumGhost
approved these changes
Sep 9, 2026
stacked auto-merge was automatically disabled
September 9, 2026 16:00
Pull Request is not mergeable
stacked auto-merge was automatically disabled
September 9, 2026 16:10
Pull Request is not mergeable
laipz8200
force-pushed
the
laipz8200/runtime-import-boundaries
branch
from
September 9, 2026 16:12
a9f15e6 to
144dbf5
Compare
stacked auto-merge was automatically disabled
September 9, 2026 16:17
Pull Request is not mergeable
laipz8200
force-pushed
the
laipz8200/runtime-import-boundaries
branch
from
September 9, 2026 16:20
144dbf5 to
3135f7a
Compare
laipz8200
force-pushed
the
laipz8200/runtime-import-boundaries
branch
from
September 9, 2026 16:24
3135f7a to
38244b8
Compare
Move ready queue contracts, task values, and the default implementation into runtime while preserving engine-path aliases, custom queues, and snapshots. Separate code executor contracts from node loading and enforce dependency directions with Import Linter through existing local and CI entry points. BREAKING CHANGE: bare Code/LLM package and public-contract imports no longer register concrete nodes. Bootstrap with explicit class or implementation imports. Closes #286
Replace case-specific forbidden imports with one exhaustive six-layer contract covering all top-level packages, modules, and their descendants. Permit dependencies within a layer or downward and require newly added top-level modules to be classified explicitly. Document the existing workflow schema relationships and preserve the separate node-registration guarantees of fresh-process import checks. Refs #286
laipz8200
force-pushed
the
laipz8200/runtime-import-boundaries
branch
from
September 9, 2026 16:27
38244b8 to
1f1be33
Compare
📄 Knowledge review✏️ Documentation updates1 page was updated by changes in this PR.
📝 README — changes@@ -49,8 +49,8 @@
`just dev` installs the project, syncs development dependencies, and sets up
[`prek`](https://prek.j178.dev/) Git hooks. `just test` is the progressive
-local validation entrypoint: it formats, applies lint fixes, runs `ty check`,
-and then runs [`pytest`](https://docs.pytest.org/).
+local validation entrypoint: it formats, applies lint fixes, checks import
+contracts, runs `ty check`, and then runs [`pytest`](https://docs.pytest.org/).
## Run the Example Workflows
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Important
!Related Issue
Closes #286
Depends on #285; based on
laipz8200/knowledge-review-metadata.Summary
Runtime construction and snapshot restoration previously loaded engine implementations, while importing public contracts registered Code and LLM nodes. Move queue ownership into runtime, preserve existing queue exports and snapshot formats, and separate the code executor contract from its implementation.
Load Code and LLM implementations through explicit class or implementation imports. Bare package and public-contract imports no longer register these nodes; document the bootstrap migration.
Enforce architectural dependency layers with one exhaustive Import Linter contract covering composition, engine coordination, host facades, the workflow execution model, events, and shared values/services. Allow dependencies within a layer or downward, and require new top-level modules to be assigned to a layer.
Checklist
!