APM Config Onboarding Audit¶
This audit is the US-95 baseline for onboarding
github.com/oracle/oci-go-sdk/v65/apmconfig before services.yaml publishes
the service.
Repo Input Status¶
go.modremains pinned togithub.com/oracle/oci-go-sdk/v65 v65.110.0.v65.110.0already contains theapmconfigpackage in the module cache; the repo lackedvendor/github.com/oracle/oci-go-sdk/v65/apmconfigonly because nothing imported that package yet.pkg/sdkimports/rollout_services.gonow blank-importsgithub.com/oracle/oci-go-sdk/v65/apmconfigsogo mod vendorkeeps the package in the branch-local inputs.
SDK Audit¶
Config¶
- Full CRUD family is present:
CreateConfig,GetConfig,ListConfigs,UpdateConfig, andDeleteConfig. GetConfigResponse,CreateConfigResponse, andUpdateConfigResponsereturn the polymorphicConfiginterface rather than a concrete struct.ListConfigsResponsereturnsConfigCollection, which unmarshals[]ConfigSummarypolymorphically.ListConfigsRequestexposes requiredapmDomainId, plusconfigType,displayName,optionsGroup, tag filters, page, and sort controls.- The root
Configsurface does not expose lifecycle-state enums. - The root
Configsurface does not expose work-request IDs or service-local work-request helper APIs. CreateConfigDetailsandUpdateConfigDetailsare also polymorphic interfaces.
Auxiliary Families¶
- The polymorphic
ConfigandConfigSummaryroots dispatch acrossAGENT,OPTIONS,MACS_APM_EXTENSION,METRIC_GROUP,APDEX, andSPAN_FILTER. MatchAgentsWithAttributeKeyis a separate get/update-only family and should stay unpublished initially.
Generator Implications For US-97¶
Configis the requested initial kind and the only top-level CRUD family in the package.- Recommended
formalSpecisconfig. - Recommended async classification is
none. Configis only viable as a direct controller-backed rollout ifUS-97explicitly handles or narrows the polymorphic root across create, update, get, list, and observed-state projection.- The required risk callout is explicit here: the root
ConfigandConfigSummaryshapes are polymorphic interfaces, not plain structs, so the later story must own subtype restriction, request-body dispatch, and any observed-state aliasing needed to publish one OSOK kind safely.
Provider-Facts Coverage¶
formal/sources.lockpins provider facts togithub.com/oracle/terraform-provider-oci@eb653febb1bab4cc6650a96d404a8baf36fdf671.- Matching provider surfaces are
oci_apm_config_configas both the resource and singular data source, plusoci_apm_config_configsas the list data source. - The provider docs model subtype-specific arguments and filters keyed by
config_type, which reinforces the SDK-side polymorphic root risk rather than removing it.