AtlasArc

Architecture Report - Printable Version

Simple Java Mail - AtlasArc 1.0.1+736db9b9 - 2026-07-31T22:25:00Z

All selected report sections in one print-ready HTML document.

Key Findings

HighCycles

5 problem cycle groups reported in this report scope.

NeutralCoupling

NCCD is 3.02. Use it as a same-project dependency-shape baseline; inspect cycles and concrete paths before interpreting a change.

WatchJVM public surface

ARV and GRV describe JVM public-surface breadth: ARV 0.74, GRV 0.72. This surface is broad enough to inspect against package roles, marked public classes, and real callers.

Highest-Value Targets

  1. core-module.main:org.simplejavamail.internal.utilArchitectural cycle participant, fan-in 27 / fan-out 4, distance 0.77, visibility 0.83
  2. core-module.main:org.simplejavamail.api.email.configArchitectural cycle participant, fan-in 11 / fan-out 2, distance 0.85, visibility 0.92
  3. core-module.main:org.simplejavamail.api.emailArchitectural cycle participant, fan-in 27 / fan-out 7, visibility 0.93
  4. core-module.main:org.simplejavamail.internal.configArchitectural cycle participant, distance 0.67, visibility 1.00
  5. core-module.main:org.simplejavamail.configArchitectural cycle participant, distance 0.56, visibility 1.00
  • The report reads package structure and dependency evidence; it does not know what the code is meant to do.
  • Coverage metrics are not loaded, so coverage-dependent risk readings are unavailable.
  • Package exclusions are disabled for this report context.

What This Report Says

Cycle risk is the dominant signal

Read this report as cycle-first evidence: resolve or consciously accept the reported cycle groups before treating lower-level metrics as optimization work.

  • 5 problem cycle groups reported in this report scope.
  • First package to inspect: core-module.main:org.simplejavamail.internal.util (Architectural cycle participant, fan-in 27 / fan-out 4, distance 0.77, visibility 0.83).
  • Largest cycle group: Problem cycle 1 with 9 packages.

Evidence Summary

NCCD3.02

Same-project dependency-shape baseline; compare only on an equivalent analysis basis.

ARV0.74

Unweighted average of package Relative Visibility; each package contributes equally.

GRV0.72

Public JVM classes divided by all JVM classes across the graph.

Cycle groups5

Cycle clusters remain in the report scope.

Precise graph statistics remain available below so the report stays auditable.

CCDCumulative Component Dependency806.00
ACDAverage Component Dependency14.93
RACDRelative Average Component Dependency0.28
NCCDNormalized Cumulative Component Dependency3.02
ARVAverage Relative Visibility0.74
GRVGlobal Relative Visibility0.72

Architecture Overview Focus

This profile reads the whole model first: cycle posture, highest inspection target, and any governance context that changes how warnings should be interpreted.

Cycle posture5 groups

Start by comparing the cycle map with the cycle groups table.

Primary inspection targetcore-module.main:org.simplejavamail.internal.util

Architectural cycle participant, fan-in 27 / fan-out 4, distance 0.77, visibility 0.83

Governance context0 Safe Havens / 0 debt records

Safe Havens, exclusions, and repository governance shape which findings remain active warnings.

Suggested Next Steps

1Start with Problem cycle 1

9 packages participate in this architectural cycle group. Use the cycle table and topology figure to decide whether to break the loop or record an explicit governance decision.

2Inspect core-module.main:org.simplejavamail.internal.util

This package has the strongest combined structural signal in the report scope: Architectural cycle participant, fan-in 27 / fan-out 4, distance 0.77, visibility 0.83.

Report Basis

SectionArchitecture Overview
Report basisWhole model
Active lensgraph
Structural intentNormal
FiltersWhole-model defaults; durable governance retained
Rendered as Topology Open

How do packages and subsystems depend on each other in this report?

Configuration
Focus
project root
Filter
All visible packages
Heatmap
Off
Encoding
Nodes
Packages and package folders
Edges
Package dependencies; line width follows dependency weight
Border colour
Cycle, Safe Haven, intentional governance, and debt status from the model
authenticated-socks-modulebatch-modulecli-modulecore-module.maincore-test-moduledkim-moduleoutlook-modulesimple-java-mail.mainsmime-modulespring-moduleorgorgorgorgorgorgorgorgorgsimplejavamailsimplejavamailsimplejavamailsimplejavamailsimplejavamailsimplejavamailsimplejavamailsimplejavamailsimplejavamailinternalinternalinternalapiinternalinternalinternalconverteremailinternalmailerinternalauthenticatedsockssupportbatchsupportclisupportemailinternalmailerutiloutlooksupportinternalinternalsmimesupportsocks5serverauthenticatedsockssupportclisupportoutlooksupportsmimesupportinternal commonsocks5clientiomsgClassesClassesconcurrentClassescliserializationtherapijavadocvalueinterpretersClassesconfigClassescommonsocks5serverbatchsupportmodelgeneralmodelbuildermodelClassesconfigClassesoutlookClassesconfigconfigmodulesconcurrentClassesClassesdemotestutildkimsupportconvertermodelmimemessageClassesClassesinternalClassesmoduleloaderutilClassesClassesrecipientbuildermodelClassesspringbootsupportspringsupport
Rendered as Dependency Matrix Open

Which packages depend on which other packages?

Configuration
Focus
project root
Filter
All visible packages
Heatmap
Off
Encoding
Rows
Origin packages
Columns
Target packages
Cells
Dependency count and cycle/heatmap styling where applicable
Modules authenticated-socks-modulebatch-modulecli-modulecore-module.maincore-test-moduledkim-moduleoutlook-modulesimple-java-mail.mainsmime-modulespring-module
org
simplejavamail
internal
authenticatedsockssupport
common
socks5client
socks5server
io
msg
org
simplejavamail
internal
batchsupport
concurrent
org
simplejavamail
cli
internal
clisupport
serialization
therapijavadoc
valueinterpreters
org
simplejavamail
api
email
config
internal
authenticatedsockssupport
common
socks5server
batchsupport
clisupport
model
general
outlooksupport
model
smimesupport
builder
model
mailer
config
outlook
config
internal
config
modules
util
concurrent
demo
testutil
org
simplejavamail
internal
dkimsupport
org
simplejavamail
internal
outlooksupport
converter
internal
model
org
simplejavamail
converter
internal
mimemessage
email
internal
internal
moduleloader
mailer
internal
util
recipient
org
simplejavamail
internal
smimesupport
builder
model
org
simplejavamail
springbootsupport
springsupport
authenticated-socks-module / org -
simplejavamail -
internal -
authenticatedsockssupport - 8 1 2 1 8 1 3
  common -
  socks5client 11 - 13
socks5server 5 - 5 22 4 2
  io -
  msg 3 -
batch-module / org -
simplejavamail -
internal -
batchsupport - 1 2 27 1 2
  concurrent -
cli-module / org -
simplejavamail -
  cli - 1
internal -
clisupport - 2 6 10 2 9 79 13 4 15 2 3
  serialization -
  therapijavadoc 7 2 - 3 7
  valueinterpreters - 9 13 1 2
core-module.main / org -
simplejavamail -
api -
email 2 - 18 8 1 1 3 14
  config - 11 9
internal -
authenticatedsockssupport -
  common -
  socks5server -
  batchsupport -
clisupport -
  model - 2
  general 1 -
outlooksupport -
  model 2 - 5
smimesupport -
  builder 2 - 1
  model 5 -
mailer 1 7 1 11 - 9 1
  config 1 1 - 2 2
  outlook 4 - 3
  config 1 4 17 - 17
internal -
  config 41 4 -
  modules 6 3 1 1 1 2 1 2 3 - 1
util 2 15 1 9 -
  concurrent 1 -
  core-test-module / demo 9 4 - 2
  testutil 1 5 1 1 -
dkim-module / org -
simplejavamail -
internal -
  dkimsupport 2 5 11 1 7 -
outlook-module / org -
simplejavamail -
internal -
outlooksupport -
  converter 2 36 6 4 3 1 17 - 1
internal -
  model 12 -
simple-java-mail.main / org -
simplejavamail -
converter 2 81 4 12 9 1 7 6 8 36 - 3 39 1 10 7 2 3
internal 2 1 2 -
  mimemessage 4 147 31 17 5 37 - 2 4 1
email 24 - 15
  internal 3 180 51 2 1 1 3 40 2 1 82 8 1 - 2 1
internal -
  moduleloader 3 27 7 -
mailer 3 88 4 4 4 3 4 3 - 22
internal 4 139 54 19 1 42 152 191 32 12 72 3 2 2 4 3 15 2 - 13
  util 5 4 5 5 3 2 2 1 -
  recipient 2 16 17 -
smime-module / org -
simplejavamail -
internal -
smimesupport 3 50 7 2 17 1 8 4 1 3 - 16 44
  builder 3 1 2 - 3
  model 18 1 1 -
spring-module / org -
simplejavamail -
  springbootsupport -
  springsupport 4 86 1 -

Governance Summary

Repository documentReady
Revision57217c2ee6b4a6fc4d00e63c1765af3c76df24e256c84c2c7a7b8562ee293546
EvidenceFresh
Local view exclusionsNone
Safe Havens0
Intentional records1
Debt records0
Maintenance findings0
CoverageNot loaded

Metric Notes

CCD, ACD, RACD, and NCCD describe structural graph shape. Package tables include fan-in, fan-out, instability, and line count. Dependency scope: compiled JVM dependencies. ARV is the unweighted average of package Relative Visibility; GRV is public JVM classes divided by all JVM classes across the graph. They describe public-surface breadth, not actual reachability or a universal architecture-health target.

Cycle Evidence Briefing

This section separates current problem cycles from governance audit work. Repository decisions remain concise structural context here; their rationale and maintenance history live only in the optional Governance Audit.

Reported groups5
Debt records0
Intentional records1
Safe Havens0
Cycle modeAll cycle groups
Governed edge listIncluded
TypesArchitectural: 4, Nested: 1
Rendered as Topology · Cycles Only Open

Which cycle warnings remain when non-cycle dependency structure is stripped away?

Configuration
Focus
project root
Filter
Cycles only
Heatmap
Off
Encoding
Nodes
Only packages needed to show reported cycle evidence
Edges
Cycle-participating dependencies after governance rules are applied
Border colour
Problem, Safe Haven, intentional governance, and debt cycle status
  • This overview orients the cycle focus maps below.
cli-modulecore-module.maincore-test-modulesimple-java-mail.mainsmime-moduleorgorgorgorgsimplejavamailsimplejavamailsimplejavamailsimplejavamailinternalapiinternalconverteremailmailerinternalclisupportemailinternalmailerinternalinternalsmimesupportclisupportsmimesupport therapijavadocClassesconfigClassesmodelmodelClassesconfigClassesClassesconfigconfigutilClassesdemotestutilmimemessageClassesClassesinternalClassesutilClassesClassesbuildermodelClasses

Problem Cycles

Each card is one current problem strongly connected component. Every group gets one compact horizontal map. When additional maps are requested, a second map appears only when its focused architecture units or dependency edges strictly extend the compact evidence; layout-only duplicates are suppressed.

Problem cycle 1

Nested cycle

2 packages2 cycle edges
cli-moduleorgsimplejavamailinternalclisupport therapijavadoc
Packages
  • cli-module:org.simplejavamail.internal.clisupport
  • cli-module:org.simplejavamail.internal.clisupport.therapijavadoc
Problem cycle 2

Architectural cycle

9 packages28 cycle edges
core-module.mainorgsimplejavamailapiinternalemailinternalmailerclisupportsmimesupport configmodelmodelconfigconfigconfigutil
Packages
  • core-module.main:org.simplejavamail.api.email
  • core-module.main:org.simplejavamail.api.email.config
  • core-module.main:org.simplejavamail.api.internal.clisupport.model
  • core-module.main:org.simplejavamail.api.internal.smimesupport.model
  • core-module.main:org.simplejavamail.api.mailer
  • core-module.main:org.simplejavamail.api.mailer.config
  • core-module.main:org.simplejavamail.config
  • core-module.main:org.simplejavamail.internal.config
  • core-module.main:org.simplejavamail.internal.util
Problem cycle 3

Architectural cycle

2 packages2 cycle edges
core-test-module demotestutil
Packages
  • core-test-module:demo
  • core-test-module:testutil
Problem cycle 4

Architectural cycle

8 packages19 cycle edges
simple-java-mail.mainorgsimplejavamailconverteremailmailerinternalinternal mimemessageinternalutil
Packages
  • simple-java-mail.main:org.simplejavamail.converter
  • simple-java-mail.main:org.simplejavamail.converter.internal
  • simple-java-mail.main:org.simplejavamail.converter.internal.mimemessage
  • simple-java-mail.main:org.simplejavamail.email
  • simple-java-mail.main:org.simplejavamail.email.internal
  • simple-java-mail.main:org.simplejavamail.mailer
  • simple-java-mail.main:org.simplejavamail.mailer.internal
  • simple-java-mail.main:org.simplejavamail.mailer.internal.util
Problem cycle 5

Architectural cycle

3 packages4 cycle edges
smime-moduleorgsimplejavamailinternalsmimesupport buildermodel
Packages
  • smime-module:org.simplejavamail.internal.smimesupport
  • smime-module:org.simplejavamail.internal.smimesupport.builder
  • smime-module:org.simplejavamail.internal.smimesupport.model

Problem Cycle Edges

These are the strongest currently reported problem-cycle edges. They are not fully covered by repository governance and are not removed by Safe Havens in this report scope. The Dependency refs value counts acquired class dependency references aggregated into each package-to-package edge; it is not a source line number.

Dependency refsCycleGovernance
Sourcesmime-module:org.simplejavamail.internal.smimesupport
Targetsmime-module:org.simplejavamail.internal.smimesupport.model
44NestedProblem
Sourcecore-module.main:org.simplejavamail.internal.config
Targetcore-module.main:org.simplejavamail.api.email
41ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.converter
Targetsimple-java-mail.main:org.simplejavamail.converter.internal.mimemessage
39NestedProblem
Sourcesimple-java-mail.main:org.simplejavamail.mailer
Targetsimple-java-mail.main:org.simplejavamail.mailer.internal
22NestedProblem
Sourcecore-module.main:org.simplejavamail.api.email
Targetcore-module.main:org.simplejavamail.api.email.config
18NestedProblem
Sourcecore-module.main:org.simplejavamail.config
Targetcore-module.main:org.simplejavamail.api.mailer.config
17ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.config
Targetcore-module.main:org.simplejavamail.internal.util
17ArchitecturalProblem
Sourcesmime-module:org.simplejavamail.internal.smimesupport
Targetsmime-module:org.simplejavamail.internal.smimesupport.builder
16NestedProblem
Sourcecore-module.main:org.simplejavamail.internal.util
Targetcore-module.main:org.simplejavamail.api.email
15ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.email
Targetsimple-java-mail.main:org.simplejavamail.email.internal
15NestedProblem
Sourcecore-module.main:org.simplejavamail.api.email
Targetcore-module.main:org.simplejavamail.internal.util
14ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.mailer.internal
Targetsimple-java-mail.main:org.simplejavamail.mailer.internal.util
13NestedProblem
Sourcecore-module.main:org.simplejavamail.api.email.config
Targetcore-module.main:org.simplejavamail.api.mailer.config
11ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.mailer
Targetcore-module.main:org.simplejavamail.api.internal.clisupport.model
11ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.converter
Targetsimple-java-mail.main:org.simplejavamail.email.internal
10ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.email.config
Targetcore-module.main:org.simplejavamail.internal.util
9ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.mailer
Targetcore-module.main:org.simplejavamail.api.mailer.config
9NestedProblem
Sourcecore-module.main:org.simplejavamail.internal.util
Targetcore-module.main:org.simplejavamail.internal.config
9ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.email
Targetcore-module.main:org.simplejavamail.api.internal.clisupport.model
8ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.email.internal
Targetsimple-java-mail.main:org.simplejavamail.converter
8ArchitecturalProblem
Sourcecli-module:org.simplejavamail.internal.clisupport.therapijavadoc
Targetcli-module:org.simplejavamail.internal.clisupport
7NestedProblem
Sourcecore-module.main:org.simplejavamail.api.mailer
Targetcore-module.main:org.simplejavamail.api.email
7ArchitecturalProblem
Sourcecli-module:org.simplejavamail.internal.clisupport
Targetcli-module:org.simplejavamail.internal.clisupport.therapijavadoc
6NestedProblem
Sourcecore-module.main:org.simplejavamail.api.internal.smimesupport.model
Targetcore-module.main:org.simplejavamail.api.email
5ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.config
Targetcore-module.main:org.simplejavamail.api.email.config
4ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.internal.config
Targetcore-module.main:org.simplejavamail.api.email.config
4ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.mailer.internal
Targetsimple-java-mail.main:org.simplejavamail.email
4ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.email
Targetcore-module.main:org.simplejavamail.internal.config
3ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.converter
Targetsimple-java-mail.main:org.simplejavamail.converter.internal
3NestedProblem
Sourcesimple-java-mail.main:org.simplejavamail.mailer.internal
Targetsimple-java-mail.main:org.simplejavamail.email.internal
3ArchitecturalProblem
Sourcesmime-module:org.simplejavamail.internal.smimesupport.builder
Targetsmime-module:org.simplejavamail.internal.smimesupport.model
3ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.internal.clisupport.model
Targetcore-module.main:org.simplejavamail.internal.util
2ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.mailer.config
Targetcore-module.main:org.simplejavamail.config
2ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.mailer.config
Targetcore-module.main:org.simplejavamail.internal.util
2ArchitecturalProblem
Sourcecore-test-module:demo
Targetcore-test-module:testutil
2ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.converter
Targetsimple-java-mail.main:org.simplejavamail.mailer.internal
2ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.converter.internal
Targetsimple-java-mail.main:org.simplejavamail.converter
2NestedProblem
Sourcesimple-java-mail.main:org.simplejavamail.converter.internal.mimemessage
Targetsimple-java-mail.main:org.simplejavamail.email.internal
2ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.mailer.internal
Targetsimple-java-mail.main:org.simplejavamail.converter
2ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.mailer.internal
Targetsimple-java-mail.main:org.simplejavamail.converter.internal.mimemessage
2ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.mailer.internal
Targetsimple-java-mail.main:org.simplejavamail.mailer
2NestedProblem
Sourcecore-module.main:org.simplejavamail.api.email
Targetcore-module.main:org.simplejavamail.api.internal.smimesupport.model
1ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.email
Targetcore-module.main:org.simplejavamail.api.mailer.config
1ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.mailer
Targetcore-module.main:org.simplejavamail.api.email.config
1ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.mailer
Targetcore-module.main:org.simplejavamail.internal.util
1ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.mailer.config
Targetcore-module.main:org.simplejavamail.api.email
1ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.api.mailer.config
Targetcore-module.main:org.simplejavamail.api.mailer
1NestedProblem
Sourcecore-module.main:org.simplejavamail.config
Targetcore-module.main:org.simplejavamail.api.email
1ArchitecturalProblem
Sourcecore-module.main:org.simplejavamail.internal.util
Targetcore-module.main:org.simplejavamail.api.internal.clisupport.model
1ArchitecturalProblem
Sourcecore-test-module:testutil
Targetcore-test-module:demo
1ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.converter
Targetsimple-java-mail.main:org.simplejavamail.email
1ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.converter.internal.mimemessage
Targetsimple-java-mail.main:org.simplejavamail.mailer.internal.util
1ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.email.internal
Targetsimple-java-mail.main:org.simplejavamail.converter.internal.mimemessage
1ArchitecturalProblem
Sourcesimple-java-mail.main:org.simplejavamail.mailer.internal.util
Targetsimple-java-mail.main:org.simplejavamail.mailer.internal
1NestedProblem
Sourcesmime-module:org.simplejavamail.internal.smimesupport.model
Targetsmime-module:org.simplejavamail.internal.smimesupport
1NestedProblem

Governed Cycle Context

Repository-governed dependencies stay structurally visible, but fully covered evidence does not keep problem-cycle warnings red. Debt remains distinct from intentional governance. The Dependency refs value counts acquired class dependency references aggregated into each package-to-package edge; it is not a source line number.

Intentional records1
Debt records0
Listed edges1
Dependency refsCycleGovernance
Sourcesimple-java-mail.main:org.simplejavamail.email.internal
Targetsimple-java-mail.main:org.simplejavamail.mailer.internal
1ArchitecturalGoverned intentional
Rendered as Dependency Matrix · Cycles Only Open

Which reported cycle dependencies remain when non-cycle structure is stripped away?

Configuration
Focus
project root
Filter
Cycles only
Heatmap
Off
Encoding
Rows
Origin packages in reported cycle evidence
Columns
Target packages in reported cycle evidence
Cells
Cycle-participating dependency count and governance styling
  • This matrix is rendered from the cycle-only report model, not the full global architecture model.
Modules cli-modulecore-module.maincore-test-modulesimple-java-mail.mainsmime-module
org
simplejavamail
internal
clisupport
therapijavadoc
org
simplejavamail
api
email
config
internal
clisupport
model
smimesupport
model
mailer
config
config
internal
config
util
demo
testutil
org
simplejavamail
converter
internal
mimemessage
email
internal
mailer
internal
util
org
simplejavamail
internal
smimesupport
builder
model
cli-module / org -
simplejavamail -
internal -
clisupport - 6
  therapijavadoc 7 -
core-module.main / org -
simplejavamail -
api -
email - 18 8 1 1 3 14
  config - 11 9
internal -
clisupport -
  model - 2
smimesupport -
  model 5 -
mailer 7 1 11 - 9 1
  config 1 1 - 2 2
  config 1 4 17 - 17
internal -
  config 41 4 -
util 15 1 9 -
  core-test-module / demo - 2
  testutil 1 -
simple-java-mail.main / org -
simplejavamail -
converter - 3 39 1 10 2
internal 2 -
  mimemessage - 2 1
email - 15
  internal 8 1 - 1
mailer - 22
internal 2 2 4 3 2 - 13
  util 1 -
smime-module / org -
simplejavamail -
internal -
smimesupport - 16 44
  builder - 3
  model 1 -

Refactoring Risk Briefing

This chapter ranks package-level risk signals before the diagrams: coupling pressure, distance from the main sequence, visibility, cycle participation.

Packages ranked52
High distance16
High coupling15
Cycle packages24
CoverageNot loaded

Top Risk Drivers

Primary driverDistanceFan-inFan-out
Packagecore-module.main:org.simplejavamail.internal.util
Cycle participation0.77274
Packagecore-module.main:org.simplejavamail.api.email.config
Cycle participation0.85112
Packagecore-module.main:org.simplejavamail.api.email
Cycle participation0.37277
Packagecore-module.main:org.simplejavamail.internal.config
Visibility0.6742
Packagecore-module.main:org.simplejavamail.config
Visibility0.5654
Packagecore-module.main:org.simplejavamail.api.internal.clisupport.model
Visibility0.5171
Packagesimple-java-mail.main:org.simplejavamail.email
Visibility0.5022
Packagecore-module.main:org.simplejavamail.api.mailer.config
Cycle participation0.35164
Rendered as Subsystems · Boundary Risk Open

Where does boundary pressure concentrate across the visible architecture?

Configuration
Focus
project root
Curated view
Boundary Risk
Filter
All visible packages
Encoding
Bubble
Package-folder subsystem rollup
X axis
Fan-out
Y axis
Fan-in
Size
Classes
Colour
Instability
  • How to read this graph: each bubble is a visible architecture-boundary rollup. Right means more outgoing boundary dependencies; up means more incoming boundary dependencies; size is total class count.
  • Colour follows instability, so red means outgoing-heavy rather than automatically wrong. Use the figure to find boundary surfaces worth inspecting in Topology or Matrix.
  • Dashed rings mark expanded aggregate boundaries whose visible descendants are also present. Terminal packages or source folders remain valid boundaries and use their own metrics.
Fan-in
0 10 20 30 40 50 60 0 20 40 60 80 100 120 core-module.main org simplejavamail api simple-java-mail.… org simplejavamail spring-module org simplejavamail springbootsupport mailer cli-module org simplejavamail internal internal clisupport email converter internal internal mimemessage mailer internal authenticated-soc… org simplejavamail
Fan-out
Rendered as Subsystems · Visibility Surface Open

Which subsystems expose a large public surface?

Configuration
Focus
project root
Curated view
Visibility Surface
Filter
All visible packages
Encoding
Bubble
Package-folder subsystem rollup
X axis
Relative visibility
Y axis
Abstractness
Size
Classes
Colour
Abstractness
  • How to read this graph: each bubble is a visible architecture-boundary rollup. Right means more visible API surface; up and colour both follow abstractness; size is total class count.
  • This view highlights boundary shape, not direct defect risk. A top/right bubble may be a deliberate public contract area.
  • Dashed rings mark expanded aggregate boundaries whose visible descendants are also present. Terminal packages or source folders remain valid boundaries and use their own metrics.
Abstractness (A)
0.00 0.20 0.40 0.60 0.80 1.00 0.00 0.20 0.40 0.60 0.80 1.00 core-module.main org simplejavamail api simple-java-mail.… org simplejavamail spring-module org simplejavamail springbootsupport mailer cli-module org simplejavamail internal internal clisupport email converter internal internal mimemessage mailer internal authenticated-soc… org simplejavamail
Rel. Visibility (RV)
Rendered as Subsystems · Internal Tangles Open

Which subsystem areas contain internal cycle pressure?

Configuration
Focus
project root
Curated view
Internal Tangles
Filter
All visible packages
Encoding
Bubble
Package-folder subsystem rollup
X axis
cycleCount
Y axis
largestCycle
Size
packageCount
Colour
Cycle status
  • How to read this graph: each bubble is a visible architecture-boundary rollup. Right means more fully contained package-cycle groups; up means the largest contained package cycle is larger; size is package count.
  • Only package cycles fully inside the boundary count here. Terminal-package class/file tangles remain separate Package Internals evidence in Topology. Use the cycle tables, Topology, or Matrix for concrete dependency edges and cross-boundary cycle context.
  • Dashed rings mark expanded aggregate boundaries whose visible descendants are also present. Terminal packages or source folders remain valid boundaries and use their own metrics.
Largest cycle
0 0 0 1 1 1 0 2 4 6 8 internal authenticated-soc… org simplejavamail internal authenticatedsock… internal socks5server batch-module org simplejavamail internal batchsupport email authenticatedsock… smimesupport util outlook-module org simplejavamail internal outlooksupport internal email spring-module org simplejavamail core-module.main
Cycle groups
Rendered as Hotspots · Coupling Open

Which leaf packages stand out by coupling pressure?

Configuration
Items
Leaf packages
Focus
project root
Scope
Recursive
Preset
Coupling
Encoding
Bubble
One leaf package
X axis
Fan-out
Y axis
Fan-in
Size
Lines of code
Colour
Instability
  • Labels are shown for the largest report bubbles; inspect the package metrics table for the full ranked list.
Fan-in
0 5 10 15 0 5 10 15 20 25 internal email internal mimemessage mailer config util socks5client clisupport converter config smimesupport config mailer recipient therapijavadoc springbootsupport springsupport socks5server model valueinterpreters batchsupport outlook converter
Fan-out
Rendered as Hotspots · Visibility Open

Which leaf packages are visible to many callers and far from the main sequence?

Configuration
Items
Leaf packages
Focus
project root
Scope
Recursive
Preset
Visibility
Encoding
Bubble
One leaf package
X axis
Relative visibility
Y axis
Fan-in
Size
Classes
Colour
Distance from main sequence
  • Labels are shown for the largest report bubbles; inspect the package metrics table for the full ranked list.
Fan-in
0.00 0.20 0.40 0.60 0.80 1.00 0 5 10 15 20 25 springbootsupport mimemessage internal email mailer util config config clisupport valueinterpreters model model smimesupport socks5client therapijavadoc modules model internal msg mailer util testutil batchsupport dkimsupport recipient socks5server io cli
Rel. Visibility (RV)
Rendered as Hotspots · Abstractness / Instability Open

Which leaf packages sit far from the main sequence?

Configuration
Items
Leaf packages
Focus
project root
Scope
Recursive
Preset
Zone Map
Encoding
Bubble
One leaf package
X axis
Instability
Y axis
Abstractness
Size
Distance from main sequence
Colour
Distance from main sequence
  • Labels are shown for the largest report bubbles; inspect the package metrics table for the full ranked list.
Abstractness (A)
0.00 0.20 0.40 0.60 0.80 1.00 0.00 0.20 0.40 0.60 0.80 1.00 common io concurrent serialization config util config concurrent moduleloader outlook config general model msg email model modules email config socks5client builder model demo internal model valueinterpreters util builder
Instability (I)

Package Metrics

This table ranks packages by structural signals. Use it to inspect packages that combine high fan-in, high fan-out, cycle membership or size.

Fan-inFan-outInstabilityAbstractnessDistanceCycleLOC
Packageauthenticated-socks-module:org.simplejavamail.internal.authenticatedsockssupport.common
300.000.001.0021
Packageauthenticated-socks-module:org.simplejavamail.internal.authenticatedsockssupport.socks5server.io
100.000.001.00163
Packagebatch-module:org.simplejavamail.internal.batchsupport.concurrent
100.000.001.0056
Packagecli-module:org.simplejavamail.internal.clisupport.serialization
200.000.001.0084
Packagecore-module.main:org.simplejavamail.api.email.config
1120.150.000.85Architectural699
Packagecore-module.main:org.simplejavamail.internal.util
2740.130.100.77Architectural905
Packagecore-module.main:org.simplejavamail.internal.config
420.330.000.67Architectural57
Packagecore-module.main:org.simplejavamail.internal.util.concurrent
210.330.000.6753
Packagesimple-java-mail.main:org.simplejavamail.internal.moduleloader
630.330.000.67133
Packagecore-module.main:org.simplejavamail.api.outlook
320.400.000.60243
Packagecore-module.main:org.simplejavamail.config
540.440.000.56Architectural599
Packagecore-module.main:org.simplejavamail.api.internal.general
610.140.330.52117
Packagecore-module.main:org.simplejavamail.api.internal.clisupport.model
710.130.360.51Architectural216
Packageauthenticated-socks-module:org.simplejavamail.internal.authenticatedsockssupport.socks5server.msg
110.500.000.50197
Packagesimple-java-mail.main:org.simplejavamail.email
220.500.000.50Architectural129
Packagesmime-module:org.simplejavamail.internal.smimesupport.model
330.500.000.50Architectural211
Packagecore-module.main:org.simplejavamail.internal.modules
12100.451.000.45198
Packagecore-module.main:org.simplejavamail.api.email
2770.210.430.37Architectural3042
Packagecore-module.main:org.simplejavamail.api.mailer.config
1640.200.450.35Architectural1245
Packageauthenticated-socks-module:org.simplejavamail.internal.authenticatedsockssupport.socks5client
120.670.000.33857
Packagecore-module.main:org.simplejavamail.api.internal.smimesupport.builder
420.331.000.3313
Packageoutlook-module:org.simplejavamail.internal.outlooksupport.internal.model
110.500.200.30288
Packagecore-test-module:demo
130.750.000.25Architectural53
Packagesimple-java-mail.main:org.simplejavamail.converter.internal
130.750.000.25Architectural23
Packagecore-module.main:org.simplejavamail.api.internal.smimesupport.model
810.110.670.22Architectural77
Packagecli-module:org.simplejavamail.internal.clisupport.valueinterpreters
140.800.000.20272
Packagesimple-java-mail.main:org.simplejavamail.mailer.internal.util
280.800.000.20Architectural198
Packagesmime-module:org.simplejavamail.internal.smimesupport.builder
140.800.000.20Architectural30
Packagesimple-java-mail.main:org.simplejavamail.converter
4170.810.000.19Architectural824
Packagecore-module.main:org.simplejavamail.api.internal.outlooksupport.model
520.290.890.17142
Packageauthenticated-socks-module:org.simplejavamail.internal.authenticatedsockssupport.socks5server
150.830.000.17290
Packagecli-module:org.simplejavamail.internal.clisupport
2110.850.000.15Nested831
Packagesimple-java-mail.main:org.simplejavamail.converter.internal.mimemessage
390.750.110.14Architectural2005
Packagecore-module.main:org.simplejavamail.api.mailer
860.430.700.13Architectural1556
Packagesmime-module:org.simplejavamail.internal.smimesupport
1120.920.000.08Architectural681
Packagesimple-java-mail.main:org.simplejavamail.mailer
190.900.170.07Architectural456
Packagesimple-java-mail.main:org.simplejavamail.email.internal
5150.750.200.05Architectural2322
Packagesimple-java-mail.main:org.simplejavamail.mailer.internal
6190.760.290.05Architectural3154
Packagecore-test-module:testutil
140.800.170.03Architectural122
Packageauthenticated-socks-module:org.simplejavamail.internal.authenticatedsockssupport
071.000.000.0066
Packagebatch-module:org.simplejavamail.internal.batchsupport
051.000.000.00267
Packagecli-module:org.simplejavamail.cli
011.000.000.0026
Packagecli-module:org.simplejavamail.internal.clisupport.therapijavadoc
140.800.200.00Nested430
Packagecore-module.main:org.simplejavamail
1400.001.000.0013
Packagecore-module.main:org.simplejavamail.api.internal.authenticatedsockssupport.common
200.001.000.0024
Packagecore-module.main:org.simplejavamail.api.internal.authenticatedsockssupport.socks5server
400.001.000.0023
Packagecore-module.main:org.simplejavamail.api.internal.batchsupport
300.001.000.0014
Packagedkim-module:org.simplejavamail.internal.dkimsupport
051.000.000.00107
Packageoutlook-module:org.simplejavamail.internal.outlooksupport.converter
081.000.000.00229
Packagesimple-java-mail.main:org.simplejavamail.recipient
031.000.000.00435
Packagespring-module:org.simplejavamail.springsupport
031.000.000.00367
Packagespring-module:org.simplejavamail.springbootsupport
000.00402
Repository decision register

Governance Audit

This chapter audits governance decisions separately from problem-cycle handling. Structural maps describe the current graph; they are not historical pictures of what was originally accepted.

DocumentReady
Source.atlasarc/governance/cycles.json
Revision57217c2ee6b4a6fc4d00e63c1765af3c76df24e256c84c2c7a7b8562ee293546
EvidenceFresh
Active records1
Resolved records0
Stale / invalid0
Not evaluated0

Current Structural Cycle Context

Structural SCC 1

8 packages

Problem evidence remains

A current problem-cycle group remains inside this structural SCC after repository governance and Safe Havens are applied.

simple-java-mail.mainorgsimplejavamailconverteremailmailerinternalinternal mimemessageinternalutil
Architecture units
  • simple-java-mail.main:org.simplejavamail.converter
  • simple-java-mail.main:org.simplejavamail.converter.internal
  • simple-java-mail.main:org.simplejavamail.converter.internal.mimemessage
  • simple-java-mail.main:org.simplejavamail.email
  • simple-java-mail.main:org.simplejavamail.email.internal
  • simple-java-mail.main:org.simplejavamail.mailer
  • simple-java-mail.main:org.simplejavamail.mailer.internal
  • simple-java-mail.main:org.simplejavamail.mailer.internal.util
Decisions in this context

Decision Register

All repository records are included; this register is intentionally not limited by the report's Top N setting.

cycle-704739a3-09eb-4e51-aeaa-8ea7f13de579

Sourcesimple-java-mail.mainorg.simplejavamail.email.internal.EmailPopulatingBuilderImplTargetsimple-java-mail.mainorg.simplejavamail.mailer.internal.EmailGovernanceImpl

ActiveIntentionalPackageSource-owned
simple-java-mail.mainorg.simplejavamail.emailorg.simplejavamail.mailer internalinternal
Acceptance kind
Intentional
Acceptance scope
Package
Ownership
Source-owned
Matched references
1
Rationale

Showcase acceptance approved by the project owner to demonstrate AtlasArc governance on this current dependency boundary.