@suss/contract-aws-apigateway 0.0.1 → 0.1.0

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.
Files changed (2) hide show
  1. package/README.md +3 -3
  2. package/package.json +2 -2
package/README.md CHANGED
@@ -4,9 +4,9 @@ Generate suss `BehavioralSummary[]` for AWS API Gateway resources (REST + HTTP A
4
4
 
5
5
  ## What this package is
6
6
 
7
- `@suss/contract-aws-apigateway` is a **resource-semantics stub**: it knows what an API Gateway endpoint *does* (status codes, authorizer behavior, CORS preflight, throttling) given a normalized configuration. It does **not** know how that configuration was authored — that's the job of a manifest reader (`@suss/contract-cloudformation`, future CDK/Terraform readers), which parses its source format and hands a normalized config to this package.
7
+ `@suss/contract-aws-apigateway` is a **resource-semantics stub**: it knows what an API Gateway endpoint *does* (status codes, authorizer behavior, CORS preflight, throttling) given a normalized configuration. It does **not** know how that configuration was authored; that's the job of a manifest reader (`@suss/contract-cloudformation`, future CDK/Terraform readers), which parses its source format and hands a normalized config to this package.
8
8
 
9
- This separation means: configure your API in CloudFormation, CDK, SAM, or Terraform — the same resource semantics produce the same summary.
9
+ This separation means: configure your API in CloudFormation, CDK, SAM, or Terraform, and the same resource semantics produce the same summary.
10
10
 
11
11
  ## Where it sits
12
12
 
@@ -21,7 +21,7 @@ packages/contract/
21
21
 
22
22
  ## Why configuration matters
23
23
 
24
- A handler that only returns `200` produces a *much* larger behavioral envelope once it's deployed behind API Gateway: an authorizer adds `401`/`403`, request validation adds `400`, throttling adds `429`, integration timeouts add `504`, CORS adds an `OPTIONS` preflight endpoint. Without modeling these, a consumer that handles `429` looks like it has a dead branch — when in reality the platform produces `429` even though the handler doesn't.
24
+ A handler that only returns `200` produces a *much* larger behavioral envelope once it's deployed behind API Gateway: an authorizer adds `401`/`403`, request validation adds `400`, throttling adds `429`, integration timeouts add `504`, CORS adds an `OPTIONS` preflight endpoint. Without modeling these, a consumer that handles `429` looks like it has a dead branch, when in reality the platform produces `429` even though the handler doesn't.
25
25
 
26
26
  These transitions are emitted with `confidence.source: "derived"` and an opaque `Predicate` of the form `platform:apiGateway:<contract>`. Per-transition `metadata` carries attribution (which configuration field introduced this transition) for `inspect`/`diff` output, without forcing consumers to disambiguate platform causes.
27
27
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@suss/contract-aws-apigateway",
3
- "version": "0.0.1",
3
+ "version": "0.1.0",
4
4
  "type": "module",
5
5
  "description": "Generate suss behavioral summaries for AWS API Gateway resources (REST + HTTP API), independent of how they were deployed.",
6
6
  "keywords": [
@@ -45,7 +45,7 @@
45
45
  "typecheck": "tsc --noEmit"
46
46
  },
47
47
  "dependencies": {
48
- "@suss/behavioral-ir": "0.0.1"
48
+ "@suss/behavioral-ir": "0.1.0"
49
49
  },
50
50
  "devDependencies": {
51
51
  "tsup": "*",