Skip to content

Refactor services - #79

Open
HaoyL666 wants to merge 15 commits into
oracle:mainfrom
HaoyL666:fix/generatedruntime-operation-retry-tokens
Open

Refactor services#79
HaoyL666 wants to merge 15 commits into
oracle:mainfrom
HaoyL666:fix/generatedruntime-operation-retry-tokens

Conversation

@HaoyL666

Copy link
Copy Markdown
Member

Summary

This PR fixes runtime issues found while running live e2e. The changes focus on one generatedruntime retry-token behavior and resource-scoped runtime mapping gaps discovered during create/update/delete testing.

What Changed

  • Scoped generatedruntime retry tokens for update and delete requests by operation/request content, while preserving legacy create retry-token behavior.
  • Added generatedruntime support for explicit FailedStates, then enabled it only on affected resources.
  • Fixed service-specific runtime gaps for:
    • psa/PrivateServiceAccess
    • lustrefilestorage/LustreFileSystem
    • onesubscription/Subscription
    • distributeddatabase/DistributedDatabasePrivateEndpoint
    • accessgovernancecp/GovernanceInstance
    • apiplatform/ApiPlatformInstance
    • apmconfig/Config
    • apmtraces/ScheduledQuery
  • Added omitempty,omitzero overrides for optional nested structs in:
    • clusterplacementgroups/ClusterPlacementGroup
    • datalabelingservice/Dataset
  • Added focused unit coverage for the runtime fixes.

Passing E2E

budget/Budget

Result: PASS create/update/delete
Issue: None
Fix: No code change needed

adm/KnowledgeBase

Result: PASS create/update/delete
Issue: None
Fix: No code change needed

clusterplacementgroups/ClusterPlacementGroup

Result: PASS create/update/delete
Issue: Optional nested structs were serialized when omitted
Fix: Added omitempty,omitzero

databasemigration/Connection

Result: PASS create/update/delete
Issue: None
Fix: No code change needed

apmcontrolplane/ApmDomain

Result: PASS create/update/delete
Issue: None
Fix: No code change needed

apmconfig/Config

Result: PASS create/update/delete
Issue: False drift from server-returned empty collections
Fix: Treat nil/empty collections as equivalent unless spec explicitly asks to clear

apmtraces/ScheduledQuery

Result: PASS create/update/delete
Issue: Invalid create/update body and stuck finalizer after failed create
Fix: Added custom create/update body builders and untracked-delete guard

generativeaiagent/Agent

Result: PASS create/update/delete
Issue: None
Fix: No code change needed

generativeaiagentruntime/Session

Result: PASS create/update/delete
Issue: None
Fix: No code change needed

mediaservices/MediaAsset

Result: PASS create/update/delete
Issue: None
Fix: No code change needed

mediaservices/MediaWorkflow

Result: PASS create/update/delete
Issue: None
Fix: No code change needed

psa/PrivateServiceAccess

Result: PASS create/update/delete
Issue: Pre-create list query rejected serviceId when sent with displayName
Fix: Removed serviceId from the list request and kept exact-match validation

vnmonitoring/PathAnalyzerTest

Result: PASS create/update/delete
Issue: None
Fix: No code change needed

disasterrecovery/DrProtectionGroup

Result:mtcontrol/Monitored needed

computeinstanceagent/InstanceAgent

Result: FAIL
Issue: GDP endpoint DNS lookup failed
Fix/Status: Environment/service endpoint issue; no OSOK fix identified

jms/Fleet

Result: FAIL
Issue: OCI 400 Invalid Inventory Log / invalid parameter
Fix/Status: OCI/sample/prereq issue; no OSOK fix identified

jmsjavadownloads/JavaDownloadToken

Result: FAIL
Issue: OCI 404 NotAuthorizedOrNotFound
Fix/Status: Permission/resource availability blocker

lustrefilestorage/LustreFileSystem

Result: FAIL
Issue: OCI 400 invalid parameter; work-request hook gap found
Fix/Status: Added work-request hooks; live create still blocked by OCI/prereq

onesubscription/Subscription

Result: FAIL
Issue: Formal gap first; after fix OCI returned 404 NotAuthorizedOrNotFound
Fix/Status: Closed observe-only formal gap; remaining blocker is OCI access/data

opa/OpaInstance

Result: FAIL
Issue: OCI service limit exceeded
Fix/Status: Tenancy quota blocker

vbsinst/VbsInstance

Result: FAIL
Issue: OCI 400 invalid parameter
Fix/Status: No OSOK fix identified

visualbuilder/VbInstance

Result: FAIL
Issue: OCI 400 required parameter missing
Fix/Status: Sample/prereq gap; no OSOK fix identified

distributeddatabase/DistributedDatabasePrivateEndpoint

Result: FAIL
Issue: OCI resource reached FAILED; OSOK did not model FAILED
Fix/Status: AddediplInstance Issue: resource reached child fields direct Not values with 400 InvalidParameter

@oracle-contributor-agreement oracle-contributor-agreement Bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label May 29, 2026
@HaoyL666
HaoyL666 requested a review from veera-adithya-d May 29, 2026 18:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

OCA Verified All contributors have signed the Oracle Contributor Agreement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants