@reventlessdev/reventless-core 3.0.0-alpha.159 → 3.0.0-alpha.160

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 CHANGED
@@ -3,6 +3,13 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # 3.0.0-alpha.160 (2026-07-13)
7
+
8
+ ### Bug Fixes
9
+
10
+ * **api:** dual-auth arg-less IAM fields — extractLeadingName dropped the trailing colon ([ea34da2](https://github.com/ReventlessDev/reventless-core/commit/ea34da229164db63988ad035138c17ba9134ac55))
11
+
12
+
6
13
  # 3.0.0-alpha.159 (2026-07-12)
7
14
 
8
15
  ### Bug Fixes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reventlessdev/reventless-core",
3
- "version": "3.0.0-alpha.159",
3
+ "version": "3.0.0-alpha.160",
4
4
  "description": "Core package for Reventless framework",
5
5
  "license": "Apache-2.0",
6
6
  "jest": {
@@ -28,17 +28,17 @@
28
28
  "dependencies": {
29
29
  "sury": "11.0.0-alpha.4",
30
30
  "uuid": "^13.0.0",
31
- "@reventlessdev/rescript-hash-object": "1.2.0-alpha.11",
32
31
  "@reventlessdev/rescript-jest": "1.0.0-alpha.7",
33
- "@reventlessdev/rescript-node-streams": "1.1.0-alpha.11",
34
- "@reventlessdev/rescript-fast-csv": "1.2.0-alpha.12",
35
32
  "@reventlessdev/rescript-effect": "0.1.0-alpha.27",
33
+ "@reventlessdev/rescript-fast-csv": "1.2.0-alpha.12",
34
+ "@reventlessdev/rescript-node-streams": "1.1.0-alpha.11",
35
+ "@reventlessdev/rescript-hash-object": "1.2.0-alpha.11",
36
36
  "@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.15",
37
37
  "@reventlessdev/rescript-ssh2": "1.1.0-alpha.12",
38
38
  "@reventlessdev/rescript-uuid": "1.1.0-alpha.15",
39
- "@reventlessdev/reventless-infra": "3.0.0-alpha.98",
39
+ "@reventlessdev/reventless-interop": "3.0.0-alpha.26",
40
40
  "@reventlessdev/reventless-spec": "3.0.0-alpha.76",
41
- "@reventlessdev/reventless-interop": "3.0.0-alpha.26"
41
+ "@reventlessdev/reventless-infra": "3.0.0-alpha.98"
42
42
  },
43
43
  "devDependencies": {
44
44
  "rescript": "^12.3.0",
@@ -134,7 +134,13 @@ let extractLeadingName = (str: string): string => {
134
134
  } else {
135
135
  trimmed
136
136
  }
137
- // Split on "(" first to remove arg list, then on " " and "{" for the name
137
+ // Split on "(" first to remove arg list, then on " ", "{", and ":" for the name.
138
+ // The ":" split is load-bearing for ARG-LESS fields: `Foo: [Bar!]!` has no "(" to
139
+ // cleave the type off, and no space before the colon, so without it the name comes
140
+ // back as `Foo:` (trailing colon) and fails exact-match lookups like iamFieldNames
141
+ // — which is what dropped @aws_iam from the arg-less Platform_ApiFragments query and
142
+ // 401'd the deploy waiter. Fields WITH args already lost their type via split("("),
143
+ // so the ":" split is a harmless no-op for them.
138
144
  afterType
139
145
  ->String.split("(")
140
146
  ->Array.get(0)
@@ -148,6 +154,10 @@ let extractLeadingName = (str: string): string => {
148
154
  ->Array.get(0)
149
155
  ->Option.getOr("")
150
156
  ->String.trim
157
+ ->String.split(":")
158
+ ->Array.get(0)
159
+ ->Option.getOr("")
160
+ ->String.trim
151
161
  }
152
162
 
153
163
  // Relay base types injected into every stitched schema.
@@ -121,7 +121,7 @@ function extractLeadingName(str) {
121
121
  let afterType = trimmed.startsWith("type ") || trimmed.startsWith("enum ") ? trimmed.slice(5, trimmed.length).trim() : (
122
122
  trimmed.startsWith("input ") ? trimmed.slice(6, trimmed.length).trim() : trimmed
123
123
  );
124
- return Stdlib_Option.getOr(Stdlib_Option.getOr(Stdlib_Option.getOr(afterType.split("(")[0], "").trim().split(" ")[0], "").trim().split("{")[0], "").trim();
124
+ return Stdlib_Option.getOr(Stdlib_Option.getOr(Stdlib_Option.getOr(Stdlib_Option.getOr(afterType.split("(")[0], "").trim().split(" ")[0], "").trim().split("{")[0], "").trim().split(":")[0], "").trim();
125
125
  }
126
126
 
127
127
  let relayBaseTypes = [