Trace one Znode 9 request from browser to service

Trace a single synthetic request through browser, controller, agent, client, API, and service boundaries. Follow evidence, not class names or assumptions.

Znode 9GuideFoundationGCG engineering guide
In this guide
browser action route and controller agent client API boundary service response
Trace one real request across boundaries and record each transformation and authorization decision.

Start with one observable action

Choose a harmless action such as loading a fictional product note. In browser developer tools, record method, URL, response status, payload shape, and correlation ID if available. Redact tokens, cookies, account data, and customer values before sharing evidence.

Build the trace table

Find the route or controller action first. From its injected collaborators, follow the method called by that action. Continue one hop at a time through any agent, client, API controller, and service. Capture the request and response model at every boundary, along with transformations and authorization checks.

request-trace.json json

{
"request": { "method": "GET", "route": "/example" },
"hops": [
{ "boundary": "controller", "input": "request model", "output": "view model", "check": "input validation" },
{ "boundary": "agent", "input": "view model", "output": "domain request", "check": "server context" },
{ "boundary": "API client", "input": "DTO", "output": "DTO", "check": "authorization" },
{ "boundary": "service", "input": "domain request", "output": "result", "check": "business rule" }
]
}

Set breakpoints after the map

Use a synthetic request and set breakpoints in the selected path. Compare live values with the trace table. If a controller calls an agent but the expected service is not reached, inspect route selection, configuration, and registered implementations rather than inserting a new call.

Finish with a safe finding

The useful output is a verified path, its context source, validation points, and an unresolved hop if one remains. Do not say a request follows all layers until you have observed that exact request in the target build. A frequent failure is tracing a similarly named controller or agent while routing selects a different implementation; compare route values and the resolved type before changing code.

References and further reading

Bring your next engineering question.

Need help untangling a legacy customization path?

Explore how GCG can help

Independent guidance from GCG. Znode is a trademark of its owner. Examples use fictional data and are not official platform documentation. Suggest a correction.