Structural view modes
AtlasArc keeps one dependency model underneath everything, but not every structural question deserves the whole model on screen. The graph and matrix can sit in a broad survey posture, a rooted posture, a pinned-subject posture, or a cycle posture. The difference is worth knowing, because each one changes what stays on screen and what the info bar is really telling you.
This is the page to come back to when the banner says Pinned, Cycle view, Cycles Only, or Boundary Matrix, and you want to know precisely what got narrowed and by which control.
Survey and Root
Survey is the ordinary project read. The Topology Graph shows visible packages as nodes; the Package Matrix shows the same packages as rows and columns. Filters, exclusions, rollup, and Hide isolated may all still be narrowing what you see, but nothing has been singled out. There's no selected structural subject.
Root starts every lens from a package, source-folder, or module subtree. Use Set as Root when you want every lens to start inside one of those subtrees. It changes Current Focus without making any one package the subject that every relation gets measured against. That distinction gets sharper in the next section.
Pinned subject reads
Pin a subject and one package, source folder, or subsystem holds the centre of the read. The view stops being "everything under this root" and becomes "what matters around this thing."
In the Topology Graph, that's a single posture with live controls. The graph keeps the same subject perimeter on screen, while Direction, Neighbour links, and Mute cycles let you tune the read without starting over.
Neighbourhood and Boundary come up often enough in conversation that they're worth pinning down: they're useful shorthand for readings you can take, rather than stored modes or presets hiding somewhere in a menu. Turn neighbour links on when you want local blast radius. Turn direction on, muting cycles when the loops are shouting over the signal, when incoming and outgoing boundary traffic is the actual question.
Pin a subject when the investigation has an owner: the package that keeps turning up in reviews, the subsystem boundary you suspect is leaking, the module whose traffic in and out someone is going to ask you to explain.
Save a useful Root or Pin as a Shared View
When a Root or pinned-subject posture is worth handing off, save it as a committed Shared View. AtlasArc records the named Root or Pin together with its lens, filters, hierarchy posture, and supported presentation so a teammate can reopen the same architectural question without reconstructing the setup.
Applying that Shared View creates an ordinary editable local posture, not a frozen mode. Changing the live controls does not rewrite the committed preset, and the view never changes repository Analysis Scope or CI policy. Use Shared investigation views for the save, update, resolution, and repository contract details.
Boundary Matrix
Boundary Matrix is that same pinned-subject posture, over in the Package Matrix. The subject row shows outgoing traffic from the subject to its neighbours. The subject column shows incoming traffic from neighbours into the subject. Neighbour-to-neighbour cells stay on screen as dimmed context.
Set as Root is the tempting alternative here, so the two are worth separating. Root asks what's happening inside a subtree. Boundary Matrix asks what crosses the subject's perimeter, and whether the neighbourhood around it is tangled as well.
When a boundary read comes out crowded, spend your attention on the subject row and column first. Dense neighbour-to-neighbour cells may well matter, but they stay context until they explain why the subject's boundary is under pressure.
Cycle View
Cycle View pins the structural view to one detected cycle group. That group's participants and edges become the subject while enough surrounding structural context remains to make the loop readable. The Package Matrix can show the same cycle group as a persistent matrix read with its directional cells intact.
Use it once you've picked a strongly connected group and need it to hold still while you inspect edges, jump to source, export evidence, or flip between the graph and the matrix.
It stays put until you clear it with the toolbar escape chip, and that persistence is deliberate. The selected group survives while you make a dozen small moves around it, which is what a real investigation tends to look like.
Cycles Only
Cycles Only is a filter rather than a selected subject. It hides clean packages and clean dependencies so the current lens shows cycle-participating structure, and it can be active in the graph, matrix, Subsystems, and Hotspots wherever cycle participants can be meaningfully narrowed.
The two read alike in the banner, which is exactly where people trip. Cycles Only answers "which of the visible things are caught up in unresolved cycle structure?" Cycle View answers "make this one group the structural subject." Different controls, different questions.
Turn on Show cycles only to activate four progressively narrower detail levels: Full picture, Cycles & safe havens, Nested & architectural, and Architectural. The levels let you move from structural context toward unresolved architectural-cycle participants without pretending that the broader dependency evidence disappeared.
The previous and next controls browse only the groups represented at the current detail level. They temporarily isolate and fit one group; returning to All Cycles restores the broader Cycles Only read. This navigator does not enter persistent Cycle View. Once a browsed group is the question you want to hold still, choose Open Cycle N View.
Reach for Cycles Only and its navigator when you're triaging across several cycle groups. Reach for Cycle View once you've chosen the group you're going to fix.
Choosing the right mode
When the banner is ambiguous and you just want the short version:
- Use survey when you need a first map of the project.
- Use Root when the question is confined to one module, package, or source-folder subtree.
- Use pinned subject in the graph when you need local blast radius or boundary direction around one subject.
- Use Boundary Matrix when the subject's incoming and outgoing boundary traffic matters more than the whole subtree.
- Use Cycles Only when you are triaging cycle participants across the current visible model.
- Use Cycle View when one cycle group is the subject of the investigation.