[{"data":1,"prerenderedAt":51},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fmain\u002Fmicroservices-compatibility":3},{"id":4,"title":5,"body":6,"description":38,"extension":39,"group":40,"meta":41,"navigation":42,"order":43,"path":44,"section":45,"seo":46,"source":47,"stem":48,"version":49,"__hash__":50},"docs\u002Fdocs\u002Fmain\u002Fmicroservices-compatibility.md","Microservice compatibility",{"type":7,"value":8,"toc":34},"minimark",[9,13,16,19,22,25,28,31],[10,11,12],"p",{},"Existing main.go\u002Fconfig\u002Fmodules paths remain supported. No new cmd\u002Fserver\u002Finternal\u002Fbootstrap profile or automatic path migration is introduced. Re-generation refuses caller-owned destinations before writes; dry-run changes no project files and runs no codegen plugins.",[10,14,15],{},"New schema-1 gonex.yaml is caller-editable local configuration. It rejects unknown\u002Fduplicate keys, duplicate listener ports, path escape, symlink service paths and non-loopback endpoints. It does not replace go.mod versions or business bootstrap. Declared dependency cycles warn rather than banning peer topology. Older workspaces retain run\u002Fbuild\u002Fcheck without a catalog; add a validated catalog to opt into dev\u002Fdoctor.",[10,17,18],{},"Existing create service NAME retains HTTP defaults; explicit --http, --grpc, both, or --transport none select listeners. Module adapters are separate; HTTP API versions remain opt-in. Conflicting\u002Firrelevant flags are rejected before writes.",[10,20,21],{},"New clients default to compile-time skeletons. This deliberately exposes unfinished mapping\u002Fwiring. --profile raw retains the previous typed-client\u002Fmanual-bootstrap workflow; existing client files are never rewritten. --profile example is limited to the exact descriptor-verified demonstration contract, with --rpc Service.Method resolving ambiguity.",[10,23,24],{},"v1 keeps its previous names. v2 gets separate files\u002Fsettings\u002Ftypes. Share a managed pool\u002Fconfig explicitly using generated WithConfig constructors when multiple versions\u002Fmodules consume one target; do not call multiple convenience helpers for the same security profile. No global singleton or locator exists.",[10,26,27],{},"Edit contracts\u002Fproto; pb.go is generated. grpc generate stages outputs atomically, protects handwritten destinations and checks baseline.binpb when supplied. grpc generate --check regenerates in memory and reports drift without project writes. A placeholder v0.1.0 is not a released baseline; published baselines remain deliberate inputs. Buf\u002FGo API gates stay enabled.",[10,29,30],{},"Publish actual contracts through normal module hosting or an immutable proxy before isolated deployment. Services build with GOWORK=off and no replacement. CI's disposable file proxy proves that mechanism; it is not a public release or required runtime infrastructure.",[10,32,33],{},"Existing bounded RPC deadlines, TLS\u002FmTLS, health\u002Freadiness, drain and disabled automatic retries remain intact. Operators, meshes, dynamic discovery, the optional graph command and new path-template profiles are deferred.",{"title":35,"searchDepth":36,"depth":36,"links":37},"",2,[],"Understand catalog ownership, safe client generation, contract versions and independent Go module deployment.","md","APPLICATION DESIGN",{},true,133,"\u002Fdocs\u002Fmain\u002Fmicroservices-compatibility","build",{"title":5,"description":38},"microservices-dx\u002Fcompatibility.md","docs\u002Fmain\u002Fmicroservices-compatibility","main","ehVuJYA_B3wui_t-hXp2lUuSVnpL1nG49tIt17y9AD4",1792521640539]