feat: make the runtime layer a zoom tier you can dial away (#86) - #121
Merged
Conversation
behold already descended below the declaration boundary — `attachRuntimeContainment` nests each owner-referenced child under its declared parent, so a Pod hangs off its Deployment. What it could not do was NOT descend. The attachment ran at every zoom level, so a project's `composites` view carried its Pods. A layer you cannot turn off is not a tier, and "descend below the declaration boundary" implies being able to stay above it. `zoom: runtime` is now its own stop, and every tier above stops where your source stops. It sits apart from composites/resources/attributes deliberately: those are granularity over what you DECLARED, and this is a different axis — what your declaration produced. It is also live-only by nature, since owner-referenced children exist in the cluster and never in source, so it rides the overlay and means nothing without an env. `pruneRuntimeChildren` drops the edges touching a removed node along with it. An edge to a node that is not in the graph renders as a dangling stub, which is worse than the noise it was meant to remove. A graph with no owner chain is untouched, so AWS and Azure overlays are byte-identical either way — the same "gracefully unavailable, never broken or blank" the issue asks for, now true by construction rather than by accident. 399 tests pass. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FBkcXzqjyY1YKWdaDFuqKs
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.
Part of #86 — its "new zoom tier below resources" criterion.
behold already descended below the declaration boundary:
attachRuntimeContainmentnests each owner-referenced child under its declared parent, so a Pod hangs off its Deployment. What it could not do was not descend — the attachment ran at every zoom level, so a project'scompositesview carried its Pods.A layer you can't turn off isn't a tier, and "descend below the declaration boundary" implies being able to stay above it.
zoom: runtimeis now its own stop, and every tier above stops where your source stops.Why it's a separate stop rather than a detail level
composites/resources/attributesare granularity over what you declared. Runtime is a different axis: what your declaration produced. It's also live-only by nature — owner-referenced children exist in the cluster and never in source — so it rides the overlay and means nothing without an env.Details worth noting
pruneRuntimeChildrendrops the edges touching a removed node along with it. An edge to a node that isn't in the graph renders as a dangling stub, which is worse than the noise it was meant to remove.A graph with no owner chain is untouched, so AWS and Azure overlays are byte-identical either way — the "gracefully unavailable, never broken or blank" criterion, now true by construction rather than by accident.
399 tests pass, tsc clean, build clean.
Doesn't close #86 — its events/conditions criterion is chant#1402 (conditions landing) plus the behold side to render them.
🤖 Generated with Claude Code
https://claude.ai/code/session_01FBkcXzqjyY1YKWdaDFuqKs