@emulates/cloudcontrol 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md ADDED
@@ -0,0 +1,9 @@
1
+ # Changelog — @emulates/cloudcontrol
2
+
3
+ ## 0.1.1 (2026-10-06)
4
+
5
+ Initial release.
6
+
7
+ ### Dependencies
8
+
9
+ - `@emulates/sqlite`
package/DISCOVERY.md ADDED
@@ -0,0 +1,55 @@
1
+ # @emulates/cloudcontrol discovery
2
+
3
+ This is the installed-package index for coding agents and tooling. All relative links resolve
4
+ inside `node_modules/@emulates/cloudcontrol/`; no repository checkout is needed to discover the emulator's
5
+ supported surface or documented behavior.
6
+
7
+ ## Capability and behavior sources
8
+
9
+ | Question | Authoritative file | What it contains |
10
+ | --- | --- | --- |
11
+ | Behaviour and integration | [`README.md`](README.md) | Routes, state transitions, auth, webhooks, controls, presets and deliberate omissions. |
12
+ | Exact capabilities | [`SUPPORT.md`](SUPPORT.md) | Supported, unsupported and parity-covered operations or commands, including reasons for gaps. |
13
+ | Wire contract | [`openapi.yaml`](openapi.yaml) | Machine-readable paths, methods, schemas, responses and parity annotations. |
14
+ | Public API | [`dist/index.d.ts`](dist/index.d.ts) | The installed package's exact TypeScript exports and signatures. |
15
+ | Package metadata | [`package.json`](package.json) | Runtime/entry-point claims, vendor links, parity scope/tier and `emulates.discovery`. |
16
+
17
+ Read these together: the contract/capability matrix says *what* is available, while the README
18
+ defines stateful behavior, lifecycle rules, test controls, and intentional oracle differences.
19
+ If prose and an executable surface disagree, report a parity mismatch instead of adding a
20
+ consumer-side workaround.
21
+
22
+ ## Parity and oracle
23
+
24
+ - Declared parity surface: **Scaffold only; no vendor operations implemented or verified**.
25
+ - Parity tier: **cold** (the repository controls when live checks run).
26
+ - Oracle: **Live vendor API or sandbox**.
27
+ - Repository command: `bun run parity:service -- cloudcontrol`.
28
+ - Evidence model: Run from an Emulates checkout; credentials come only from .env.local or GitHub Actions secrets. Missing credentials exit 2.
29
+
30
+ The npm package contains evidence summaries and the exact contract, not credentials or the
31
+ repository-only parity harness. Self-parity/property and acceptance tests run in the Emulates
32
+ repository; live parity is an additional oracle check, not a substitute for the packaged matrix.
33
+
34
+ ## Runtime introspection
35
+
36
+ - `GET /__admin/health`
37
+ - `GET /__admin`
38
+ - `GET /__admin/state`
39
+ - `GET /__admin/requests`
40
+ - `GET /__admin/metrics`
41
+ - `GET /__admin/faults/presets`
42
+ - `GET /__admin/ui`
43
+
44
+ For HTTP services, use `x-emulates-namespace` (or the documented credential/path carrier) so
45
+ parallel tests do not share state. Admin state, journal, metrics and fault-preset endpoints are
46
+ designed for assertions and diagnosis by consuming test suites.
47
+
48
+ ## Report a mismatch or missing capability
49
+
50
+ Follow the [agent reporting contract](https://github.com/crvouga/emulators/blob/main/docs/REPORTING_ISSUES.md). Include package version,
51
+ operation/command, a minimal redacted request, actual emulator result, expected oracle result or vendor
52
+ documentation, and whether the mismatch appears in the matrix. Never include keys, tokens,
53
+ customer data, prompts, PHI, card data, or unredacted recordings.
54
+
55
+ Service key: `cloudcontrol`.
package/README.md ADDED
@@ -0,0 +1,44 @@
1
+ # @emulates/cloudcontrol
2
+
3
+ > Part of [Emulates](https://github.com/crvouga/emulators): high-fidelity, in-process emulators for APIs and databases.
4
+
5
+ Transport scaffold for Amazon Cloud Control API. ESM; Node 22+ or Bun 1.2+.
6
+
7
+ ## Usage
8
+
9
+ ```ts
10
+ import { createServer } from "@emulates/cloudcontrol/server"
11
+ const mock = await createServer()
12
+ // AWS SDK: endpoint: mock.url, region: "us-east-1", fixture credentials.
13
+ // Await mock.close() after the test.
14
+ ```
15
+
16
+ State lives in SQLite collections and participates in the shared runtime's namespace isolation,
17
+ reset, timeline, clock, journal, metrics and fault controls. No AWS account is needed.
18
+
19
+ **Planned, not implemented**, AWS operations: `CreateResource`, `GetResource`, `ListResources`, `UpdateResource`, `DeleteResource`, `GetResourceRequestStatus`, `ListResourceRequests`, `CancelResourceRequest`.
20
+
21
+ Operations outside this list fail explicitly. This package emulates API state, not AWS infrastructure,
22
+ production quotas, billing, IAM enforcement, or provider consoles. Service-specific omissions and
23
+ oracle evidence are recorded in [the AWS coverage ledger](../../../docs/AWS_COVERAGE.md).
24
+
25
+ Run `bun run parity` with LocalStack on `http://127.0.0.1:4566`; an unavailable oracle fails the run.
26
+ No LocalStack run is recorded for this integration. The parity command is a bounded read-only SDK envelope probe, not proof of full vendor equivalence.
27
+
28
+ ## Implementation status
29
+
30
+ No vendor operations are implemented. Requests fail explicitly with `UnknownOperationException`; transport tests cover this boundary and malformed input. This package is not a usable vendor replacement yet. No LocalStack or live AWS parity is claimed.
31
+
32
+ ## Install
33
+
34
+ ```sh
35
+ bun add @emulates/cloudcontrol
36
+ ```
37
+
38
+ ## API
39
+
40
+ - `CloudcontrolAPI(options?)`: low-level AWS transport instance with `fetch` and `reset`.
41
+
42
+ - `createRuntime(options?)`: in-process Fetch API and shared state controls.
43
+ - `createServer(options?)` from the `/server` entry: HTTP listener with `url`, `runtime`, and `close()`.
44
+ - `document`, `operationIds`, and `supportedOperationIds`: generated transport contract metadata.
package/SUPPORT.md ADDED
@@ -0,0 +1,17 @@
1
+ # Amazon Cloud Control API (Emulates subset) — operation support
2
+
3
+ Generated from `openapi.yaml`; do not edit by hand.
4
+
5
+ - operations in spec: **7**
6
+ - supported by the emulator: **0**
7
+ - parity enabled: **0**
8
+
9
+ | operationId | route | emulator | parity | notes |
10
+ | --- | --- | --- | --- | --- |
11
+ | `AwsQuery` | `GET /` | ❌ unsupported | — | Vendor operations are not implemented in this scaffold. |
12
+ | `AwsRpc` | `POST /` | ❌ unsupported | — | Vendor operations are not implemented in this scaffold. |
13
+ | `AwsRestGet` | `GET /{path}` | ❌ unsupported | — | Vendor operations are not implemented in this scaffold. |
14
+ | `AwsRestPut` | `PUT /{path}` | ❌ unsupported | — | Vendor operations are not implemented in this scaffold. |
15
+ | `AwsRestPost` | `POST /{path}` | ❌ unsupported | — | Vendor operations are not implemented in this scaffold. |
16
+ | `AwsRestDelete` | `DELETE /{path}` | ❌ unsupported | — | Vendor operations are not implemented in this scaffold. |
17
+ | `AwsRestPatch` | `PATCH /{path}` | ❌ unsupported | — | Vendor operations are not implemented in this scaffold. |