Harden OCI IoT skill CLI, publish, and validation workflows
Author: wsanders00Created Jun 30, 2026Updated Jun 30, 2026
Problem
The OCI IoT Platform skill has several correctness and operational-safety gaps:
scripts/twin_tools.pydoes not consistently unwrap standard OCI CLI response shapes.scripts/derive_domain_context.shcannot select the region needed for its initial domain lookup.references/data-access.mdomits the required20250531Data API version segment.templates/publish-curl.template.shplaces Basic authentication material in curl arguments and does not fail on HTTP error responses.references/release-validation.mdcontains stale validation paths.SKILL.mddoes not use the current## Sourcesconvention.
Proposed Changes
- Normalize wrapped and unwrapped OCI CLI records without duplicates.
- Add and document explicit
--regionforwarding. - Correct the versioned Data API base path.
- Send the Basic authorization header to curl through standard input.
- Make HTTP 4xx and 5xx responses fail while preserving the response body.
- Correct release commands and source formatting.
- Add deterministic tests using mocked OCI and curl commands.
Acceptance Criteria
- Supported OCI CLI response shapes produce equivalent records.
- Both domain bootstrap calls receive the supplied region.
- Data API URLs include
/20250531before collection paths. - Publish credentials do not appear in curl arguments or temporary files.
- HTTP publish errors return a nonzero status.
- Smoke and redaction checks pass.
- Optional MCP and connectivity-topology guidance remain unchanged.
No live OCI, ORDS, create, update, delete, or publish operations are required.
Source: oracle/skills