As-built dependency map
Why use CCE
Architecture diagrams describe intent; production code describes reality. Teams onboarding to a legacy service need an as-built map of external APIs, cloud services, and SDKs actually invoked — not what's declared in README files.
CCE produces a code-derived dependency map from static call sites, complementing runtime service meshes and APM.
What CCE extracts
| JSON field | Meaning for this use case |
|---|---|
provider |
External system category (cloud vendor, outbound, integration) |
resource |
Service or protocol |
operation |
API or client method |
file / line |
Owning module in the as-built map |
CLI wiring
Cloud dependencies — built-in mapper:
cce -folder ./legacy-service \
-language AUTO \
-filter cloud \
-format json \
-output as-built-cloud.json
Outbound HTTP/gRPC + messaging — coupling lens:
cce -folder ./legacy-service \
-language AUTO \
-mapper-file https://releases.stackgen.com/cce/lenses/microservice-decomposition/latest/microservice-decomposition_lenses.yaml \
-filter cloud -format json -output as-built-outbound.json
Integrations (Kafka, SQS, etc.):
cce -folder . -language AUTO \
-mapper-file https://releases.stackgen.com/cce/lenses/integration-replatforming/latest/integration-replatforming_lenses.yaml \
-filter cloud -format json -output as-built-integrations.json
Merge multiple runs for a complete as-built picture (see modernization_use_cases.md).
How to read the JSON output
- Union
entitlements[]from multiple lens runs → full as-built dependency graph input. summary.by_provider— pie chart of external system types.- Edge list format for graph tools:
(file module) → (provider/resource/operation). - Static map only — add runtime traces for traffic-weighted views.
CI/CD snippet
- name: As-built dependency map
run: |
cce -folder . -language AUTO -filter cloud -format json -output as-built-cloud.json
cce -folder . -language AUTO \
-mapper-file https://releases.stackgen.com/cce/lenses/microservice-decomposition/latest/microservice-decomposition_lenses.yaml \
-filter cloud -format json -output as-built-outbound.json
Published lens
This use case uses the built-in mapper (omit -mapper-file). No lens YAML is published under releases; the catalog marks it as built-in only.
- Catalog: https://releases.stackgen.com/cce/lenses/index.json —
"as-built-dependency-map": { "builtin": true }
Known limitations
Proof status: Lens-only — see KNOWN_LIMITATIONS.md (as-built-dependency-map) and docs/proof.
| Limitation | Impact |
|---|---|
| Multiple passes | Combine cloud + integration + outbound lenses manually. |
| CMDB substitute | Not a replacement for diagrams or service catalog. |
Platform limits (CGO, languages, static analysis, mapper precedence, filters): KNOWN_LIMITATIONS.md.
Related
- Outbound coupling: microservice-decomposition.md
- Integrations: integration-replatforming.md
- Pipeline overview:
other_use_cases.md