Architecture report
ArchQ Explorer

demo

2ed3ab36e8923ba28229eb45f20603e9a446b1e7 · 2 observed files · 1 whole-contract components

FAIL

1 declared-rule violation(s) found; report records violations without gating (exit code stays 0). Run archkeel validate --baseline architecture-baseline.json with an existing baseline (see onboarding). FAIL rules: UML-TARGET-a2e40c5592b1b06a.

Rule assessments · whole run

PASS

0 rules

Required evaluator evidence is complete; decided positions have no violations.

FAIL

1 rule

A rule violation was found. Undecided evidence can coexist with that failure.

UNKNOWN

0 rules

Available evidence does not establish the result. Missing scope proof is not a pass.

NOT CHECKED

Status definition

A check was not performed or could not be completed. Read its scope and explanation. This status definition does not itself say which occurred.

Source observation: PASS · Symbol inventory: partial

Component dependencies

How to read this report

Components are declared responsibility and ownership boundaries, not classes or files. Packages here are namespace groups; they do not prove a directory or __init__.py. Modules represent source units: in Python, normally a .py file, including __init__.py. Details shows recorded file paths and separates the view group from the code container. Component roles describe architecture responsibilities; an interface node describes a language interface, such as a Python Protocol.

Gold and the component glyph mark architecture boundaries. Blue document glyphs mark modules; grey folder glyphs mark namespace groups. Classes use purple compartments, interfaces use teal circles, enumerations use pink compartments. Functions use ƒ and methods use (). Visibility: + public, − private, # protected, ~ package, ? unknown. These conventions do not claim Python access enforcement. Border verdicts and edge styles are separate from element types. Mixins appear as their own classifier and use a directed edge distinct from inheritance. Use the relationship legend to filter edges.

As-Is uses observed source facts with declared boundaries for navigation. Target uses independent declarations; missing file paths remain undeclared. Diff uses recorded Core assessments. Select for details; double-click, press Enter or Open selected to explore one level. Breadcrumbs include the kind. Drag the background to pan; use Zoom or Fit overview to change scale. Arrows run from source to target. Allowed component imports are permissions, not proof of a call or import.

Worth a look

Legend
Review question · components larger than their level · 1 candidate

1 components hold more modules than the contract has components, or more edges among their modules than it has component edges. Comparison basis at the top level: 1 components and 0 observed cross-component edges. Naming a size is evidence; giving one of them a level of its own is a decision (AD-20, AD-33). These are review questions, not violations or proof that a component should split.

ComponentModules Edges inside
demo21
Snapshot and audit

Source digest 6c0ac183ab34eed9832574b5fcc0cc0f284c6f4c2526871683323aa3ab999e90 · Dirty True.

Scope: src/**

Contract architecture-contract.json · 08db5fb99906b4155b2f438778a0a7912a1ef400b44c3c4e114d2d407df15bea

Complete architecture JSON and recorded evidence