@cat-factory/contracts 0.326.0 → 0.327.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.
- package/dist/environments-kubernetes.d.ts +3 -3
- package/dist/environments-kubernetes.js +1 -1
- package/dist/environments.d.ts +13 -13
- package/dist/environments.js +1 -1
- package/dist/execution.d.ts +4 -2
- package/dist/execution.d.ts.map +1 -1
- package/dist/followUp.d.ts +69 -5
- package/dist/followUp.d.ts.map +1 -1
- package/dist/followUp.js +54 -2
- package/dist/followUp.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/pr-report.d.ts +130 -1
- package/dist/pr-report.d.ts.map +1 -1
- package/dist/pr-report.js +69 -1
- package/dist/pr-report.js.map +1 -1
- package/dist/public-decisions.d.ts +33 -4
- package/dist/public-decisions.d.ts.map +1 -1
- package/dist/public-decisions.js +7 -0
- package/dist/public-decisions.js.map +1 -1
- package/dist/routes/agent-runs.d.ts +4 -2
- package/dist/routes/agent-runs.d.ts.map +1 -1
- package/dist/routes/bug-hunt.d.ts +4 -2
- package/dist/routes/bug-hunt.d.ts.map +1 -1
- package/dist/routes/execution.d.ts +20 -10
- package/dist/routes/execution.d.ts.map +1 -1
- package/dist/routes/followUp.d.ts +11 -5
- package/dist/routes/followUp.d.ts.map +1 -1
- package/dist/routes/human-review.d.ts +2 -1
- package/dist/routes/human-review.d.ts.map +1 -1
- package/dist/routes/human-test.d.ts +10 -5
- package/dist/routes/human-test.d.ts.map +1 -1
- package/dist/routes/public-decisions.d.ts +83 -41
- package/dist/routes/public-decisions.d.ts.map +1 -1
- package/dist/routes/public-evidence.d.ts +20 -0
- package/dist/routes/public-evidence.d.ts.map +1 -1
- package/dist/routes/visual-confirm.d.ts +6 -3
- package/dist/routes/visual-confirm.d.ts.map +1 -1
- package/dist/routes/workspaces.d.ts +4 -2
- package/dist/routes/workspaces.d.ts.map +1 -1
- package/dist/snapshot.d.ts +2 -1
- package/dist/snapshot.d.ts.map +1 -1
- package/dist/wildcard-dns.d.ts +66 -0
- package/dist/wildcard-dns.d.ts.map +1 -0
- package/dist/wildcard-dns.js +215 -0
- package/dist/wildcard-dns.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visual-confirm.d.ts","sourceRoot":"","sources":["../../src/routes/visual-confirm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqC,MAAM,yBAAyB,CAAA;AAC3F,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAc5B,eAAO,MAAM,4BAA4B
|
|
1
|
+
{"version":3,"file":"visual-confirm.d.ts","sourceRoot":"","sources":["../../src/routes/visual-confirm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqC,MAAM,yBAAyB,CAAA;AAC3F,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAc5B,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMvC,CAAA;AAEF,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM1C,CAAA;AAEF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMzC,CAAA"}
|
|
@@ -950,10 +950,11 @@ export declare const createWorkspaceContract: {
|
|
|
950
950
|
readonly title: v.StringSchema<undefined>;
|
|
951
951
|
readonly detail: v.StringSchema<undefined>;
|
|
952
952
|
readonly suggestedAction: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
953
|
-
readonly status: v.PicklistSchema<["pending", "filed", "queued", "answered", "dismissed"], undefined>;
|
|
953
|
+
readonly status: v.PicklistSchema<["pending", "filed", "queued", "answered", "closed", "dismissed"], undefined>;
|
|
954
954
|
readonly answer: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
955
955
|
readonly sentToCoder: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
956
956
|
readonly dismissedByPolicy: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
957
|
+
readonly sendBackDropped: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
957
958
|
readonly ticketExternalId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
958
959
|
readonly ticketUrl: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
959
960
|
readonly createdAt: v.NumberSchema<undefined>;
|
|
@@ -4552,10 +4553,11 @@ export declare const getWorkspaceContract: {
|
|
|
4552
4553
|
readonly title: v.StringSchema<undefined>;
|
|
4553
4554
|
readonly detail: v.StringSchema<undefined>;
|
|
4554
4555
|
readonly suggestedAction: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
4555
|
-
readonly status: v.PicklistSchema<["pending", "filed", "queued", "answered", "dismissed"], undefined>;
|
|
4556
|
+
readonly status: v.PicklistSchema<["pending", "filed", "queued", "answered", "closed", "dismissed"], undefined>;
|
|
4556
4557
|
readonly answer: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
4557
4558
|
readonly sentToCoder: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
4558
4559
|
readonly dismissedByPolicy: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
4560
|
+
readonly sendBackDropped: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
4559
4561
|
readonly ticketExternalId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
4560
4562
|
readonly ticketUrl: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
4561
4563
|
readonly createdAt: v.NumberSchema<undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaces.d.ts","sourceRoot":"","sources":["../../src/routes/workspaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAe5B;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;aAGlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAI7E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIjC,CAAA;AAEF,eAAO,MAAM,uBAAuB
|
|
1
|
+
{"version":3,"file":"workspaces.d.ts","sourceRoot":"","sources":["../../src/routes/workspaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAe5B;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;aAGlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAI7E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIjC,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKlC,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK/B,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMlC,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKlC,CAAA"}
|
package/dist/snapshot.d.ts
CHANGED
|
@@ -888,10 +888,11 @@ export declare const workspaceSnapshotSchema: v.ObjectSchema<{
|
|
|
888
888
|
readonly title: v.StringSchema<undefined>;
|
|
889
889
|
readonly detail: v.StringSchema<undefined>;
|
|
890
890
|
readonly suggestedAction: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
891
|
-
readonly status: v.PicklistSchema<["pending", "filed", "queued", "answered", "dismissed"], undefined>;
|
|
891
|
+
readonly status: v.PicklistSchema<["pending", "filed", "queued", "answered", "closed", "dismissed"], undefined>;
|
|
892
892
|
readonly answer: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
893
893
|
readonly sentToCoder: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
894
894
|
readonly dismissedByPolicy: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
895
|
+
readonly sendBackDropped: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
895
896
|
readonly ticketExternalId: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
896
897
|
readonly ticketUrl: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
897
898
|
readonly createdAt: v.NumberSchema<undefined>;
|
package/dist/snapshot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAyC5B;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;aAGhC,CAAA;AACF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAE7E,4EAA4E;AAC5E,eAAO,MAAM,uBAAuB;;;IAGlC;;;;;OAKG;;aAEH,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,eAAO,MAAM,uBAAuB
|
|
1
|
+
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAyC5B;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;aAGhC,CAAA;AACF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAE7E,4EAA4E;AAC5E,eAAO,MAAM,uBAAuB;;;IAGlC;;;;;OAKG;;aAEH,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKlC;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;OAGG;;;;IAEH;;;;;;OAMG;;;;;;IAEH;;;;OAIG;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;OAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;OAQG;;;;;IAOH;;;OAGG;;;;IAEH;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;OAGG;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;IAGH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;IAEH;;;;;;;;;;OAUG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;;;;OAWG;;IAEH;;;;;;;;OAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;;OASG;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;OAQG;;IAEH;;;;;;;;;OASG;;;;QA5PH;;;;;WAKG;;;;;;QALH;;;;;WAKG;;;IA0PH;;;;;;;;;;;;;OAaG;;IAEH;;;;;;;;;;;;;;;;;;OAkBG;;IAEH;;;;;;;;;;;;;;;OAeG;;;;;IAEH;;;;;;;OAOG;;IAEH;;;;;;;OAOG;;IAEH;;;;;;;;;;;;;OAaG;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;OAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;OAOG;;;;;;IAEH;;;;;;;OAOG;;;;;;;IAEH;;;;;OAKG;;;;;aAEH,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The wildcard-DNS services this rule knows, as they appear at the END of a hostname.
|
|
3
|
+
*
|
|
4
|
+
* An allow-list rather than a pattern: the mis-parse is a property of how THESE resolvers read a
|
|
5
|
+
* name, so a host that merely looks similar is none of this rule's business and must not be
|
|
6
|
+
* refused on its behalf.
|
|
7
|
+
*/
|
|
8
|
+
export declare const WILDCARD_DNS_SUFFIXES: readonly ['nip.io', 'sslip.io'];
|
|
9
|
+
export type WildcardDnsSuffix = (typeof WILDCARD_DNS_SUFFIXES)[number];
|
|
10
|
+
/** The wildcard-DNS service a host is served by, or `null` for an ordinary hostname. */
|
|
11
|
+
export declare function wildcardDnsSuffix(host: string): WildcardDnsSuffix | null;
|
|
12
|
+
/**
|
|
13
|
+
* Every four-octet address embedded in a host, left to right, in dotted form.
|
|
14
|
+
*
|
|
15
|
+
* The addresses alone, for a caller that only wants to know what a name carries;
|
|
16
|
+
* {@link parseWildcardHost} owns what makes one.
|
|
17
|
+
*/
|
|
18
|
+
export declare function wildcardDnsWindows(host: string): string[];
|
|
19
|
+
/**
|
|
20
|
+
* A host whose wildcard-DNS answer is not the address its trailing labels name.
|
|
21
|
+
*
|
|
22
|
+
* `resolved` is what a lookup returns and `trailing` is what whoever configured the template
|
|
23
|
+
* meant, which is the pair a remedy needs: neither alone explains why a correct-looking URL
|
|
24
|
+
* reaches the wrong machine.
|
|
25
|
+
*/
|
|
26
|
+
export type WildcardDnsShift = {
|
|
27
|
+
host: string;
|
|
28
|
+
suffix: WildcardDnsSuffix;
|
|
29
|
+
/** What the resolver answers: the leftmost window. */
|
|
30
|
+
resolved: string;
|
|
31
|
+
/** The address the fixed tail of the name carries: the rightmost window. */
|
|
32
|
+
trailing: string;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Grade a RENDERED host, answering `null` when there is nothing to report.
|
|
36
|
+
*
|
|
37
|
+
* `null` covers three different innocent cases on purpose, because none of them is actionable:
|
|
38
|
+
* an ordinary hostname, a wildcard host holding exactly one address (whatever it is, that is the
|
|
39
|
+
* one that answers), and a host whose leftmost window IS the trailing one. Only a name carrying
|
|
40
|
+
* two DIFFERENT addresses can send a caller somewhere it did not ask for.
|
|
41
|
+
*/
|
|
42
|
+
export declare function describeWildcardDnsShift(host: string): WildcardDnsShift | null;
|
|
43
|
+
/**
|
|
44
|
+
* The one wording of this failure, so the provider's refusal and the preflight's remedy do not
|
|
45
|
+
* drift into two accounts of the same thing.
|
|
46
|
+
*
|
|
47
|
+
* It names the rendered host FIRST: the reader is holding a template and a namespace, and the
|
|
48
|
+
* composition of the two is the thing they have never seen written down.
|
|
49
|
+
*/
|
|
50
|
+
export declare function describeWildcardDnsShiftProblem(shift: WildcardDnsShift): string;
|
|
51
|
+
/**
|
|
52
|
+
* How to make a mis-resolving host resolve, given that the address is not the part that is wrong.
|
|
53
|
+
*
|
|
54
|
+
* **Every remedy is VERIFIED against the rule above before it is offered**, rather than derived
|
|
55
|
+
* from the mere fact that a shift exists. The respelling used to print "write the address with
|
|
56
|
+
* dashes" unconditionally, which for a host already written `…-5-127-0-0-1.nip.io` described the
|
|
57
|
+
* broken configuration back to the person who wrote it: a prefix extends a dashed run exactly as
|
|
58
|
+
* it extends a dotted one, and only MIXING the two breaks it. So the candidate fix is now
|
|
59
|
+
* computed, re-graded, and dropped when it would not have helped.
|
|
60
|
+
*
|
|
61
|
+
* Ordered by how little each one disturbs: the digits are almost always a pull-request number
|
|
62
|
+
* doing necessary work (a namespace has to be unique per environment), so the first two fixes
|
|
63
|
+
* keep them and break the SEPARATOR that lets them be read as an octet.
|
|
64
|
+
*/
|
|
65
|
+
export declare function wildcardDnsShiftRemedies(shift: WildcardDnsShift): readonly string[];
|
|
66
|
+
//# sourceMappingURL=wildcard-dns.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wildcard-dns.d.ts","sourceRoot":"","sources":["../src/wildcard-dns.ts"],"names":[],"mappings":"AAoCA;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,YAAI,QAAQ,EAAE,UAAU,CAAU,CAAA;AAEpE,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAA;AAEtE,wFAAwF;AACxF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAExE;AA0ED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAEzD;AAED;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,iBAAiB,CAAA;IACzB,sDAAsD;IACtD,QAAQ,EAAE,MAAM,CAAA;IAChB,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAY9E;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,CAO/E;AA+CD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,gBAAgB,GAAG,SAAS,MAAM,EAAE,CAyBnF"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// Wildcard-DNS hostnames, and the way they mis-resolve when a name is prefixed onto them.
|
|
3
|
+
//
|
|
4
|
+
// `nip.io` and `sslip.io` answer any name that CONTAINS an IPv4 address, which is what makes
|
|
5
|
+
// `<namespace>.127.0.0.1.nip.io` a working ephemeral-environment URL on a machine with no DNS to
|
|
6
|
+
// administer. The trap is in HOW they find that address: the resolver scans the name for a run of
|
|
7
|
+
// four octets and answers the LEFTMOST one it finds, treating `.` and `-` as equally valid
|
|
8
|
+
// separators. A prefix ending in a separator plus digits therefore contributes a window of its
|
|
9
|
+
// own, and being further left, it wins:
|
|
10
|
+
//
|
|
11
|
+
// cf-acc-5.127.0.0.1.nip.io -> 5.127.0.0 (a stranger's network)
|
|
12
|
+
// app.127.0.0.1.nip.io -> 127.0.0.1 (the control, one label different)
|
|
13
|
+
//
|
|
14
|
+
// Both halves of that pairing were things the platform itself produced. The per-PR namespace
|
|
15
|
+
// default ended in `-<pullNumber>`, which has that shape for every pull request ever opened, and
|
|
16
|
+
// `backend/docs/local-k3s-environments.md` recommends exactly this host shape. Composed, they
|
|
17
|
+
// yielded an environment that rolled out, reported `ready`, published an address pointing
|
|
18
|
+
// somewhere else entirely, and died at the `tester` step forty minutes later with a connection
|
|
19
|
+
// error naming nothing that would lead anyone back to here. The defaults now render `pr<n>`, and
|
|
20
|
+
// this rule is what stops an operator's own templates re-composing the same name.
|
|
21
|
+
//
|
|
22
|
+
// **The rule is exact, not a heuristic**, which is what lets a caller REFUSE on it: every clause
|
|
23
|
+
// below was read off live resolutions rather than off nip.io's source (the fixtures in the test
|
|
24
|
+
// beside this file are those lookups). An octet rejects a leading zero and anything above 255, a
|
|
25
|
+
// window's three separators must be the same character, and a window has to start and end on a
|
|
26
|
+
// label boundary. Each of those is a case where the name still resolves correctly, so a looser
|
|
27
|
+
// rule here would refuse a working deployment.
|
|
28
|
+
//
|
|
29
|
+
// It lives in contracts because it grades a value contracts already owns (`hostTemplate` on the
|
|
30
|
+
// Kubernetes URL source, `environments-kubernetes.ts`) and more than one side has to agree about
|
|
31
|
+
// it: the environment provider refuses a provision whose URL would mis-resolve, and the
|
|
32
|
+
// acceptance suite's preflight grades its configured namespace/host pair before a pass spends
|
|
33
|
+
// anything. The SPA's two engine forms are the natural third caller and do not use it yet; the
|
|
34
|
+
// point of putting it here is that when they do, they call it rather than restate it.
|
|
35
|
+
// ---------------------------------------------------------------------------
|
|
36
|
+
/**
|
|
37
|
+
* The wildcard-DNS services this rule knows, as they appear at the END of a hostname.
|
|
38
|
+
*
|
|
39
|
+
* An allow-list rather than a pattern: the mis-parse is a property of how THESE resolvers read a
|
|
40
|
+
* name, so a host that merely looks similar is none of this rule's business and must not be
|
|
41
|
+
* refused on its behalf.
|
|
42
|
+
*/
|
|
43
|
+
export const WILDCARD_DNS_SUFFIXES = ['nip.io', 'sslip.io'];
|
|
44
|
+
/** The wildcard-DNS service a host is served by, or `null` for an ordinary hostname. */
|
|
45
|
+
export function wildcardDnsSuffix(host) {
|
|
46
|
+
return parseWildcardHost(host).suffix;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Whether a label is an octet AS THESE RESOLVERS READ ONE.
|
|
50
|
+
*
|
|
51
|
+
* The two rejections are load-bearing and both were confirmed by lookup: `cf-acc-05.127.0.0.1`
|
|
52
|
+
* and `foo-999.127.0.0.1` each resolve to 127.0.0.1, because a leading zero and a value above 255
|
|
53
|
+
* are not octets, so neither prefix opens a window. Accepting them here would refuse two host
|
|
54
|
+
* shapes that work.
|
|
55
|
+
*/
|
|
56
|
+
function isOctet(text) {
|
|
57
|
+
return /^(?:0|[1-9][0-9]{0,2})$/.test(text) && Number(text) <= 255;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Read a host once, finding every four-octet address it embeds, left to right, as the resolver
|
|
61
|
+
* would.
|
|
62
|
+
*
|
|
63
|
+
* Splitting on the separators is what enforces the label boundary: `pr5` and `5x` are single
|
|
64
|
+
* tokens and neither is an octet, which is why `cf-acc-pr5.127.0.0.1.nip.io` resolves correctly
|
|
65
|
+
* where `cf-acc-5.127.0.0.1.nip.io` does not. Windows OVERLAP by design (`1.2.3.4.5` holds both
|
|
66
|
+
* `1.2.3.4` and `2.3.4.5`), because the resolver's own scan does.
|
|
67
|
+
*/
|
|
68
|
+
function parseWildcardHost(host) {
|
|
69
|
+
const normalised = host.trim().toLowerCase().replace(/\.$/, '');
|
|
70
|
+
const suffix = WILDCARD_DNS_SUFFIXES.find((entry) => normalised.endsWith(`.${entry}`)) ?? null;
|
|
71
|
+
const scanned = suffix ? normalised.slice(0, -(suffix.length + 1)) : normalised;
|
|
72
|
+
const parts = scanned.split(/([.-])/);
|
|
73
|
+
const windows = [];
|
|
74
|
+
for (let i = 0; i + 6 < parts.length; i += 2) {
|
|
75
|
+
const labels = [parts[i], parts[i + 2], parts[i + 4], parts[i + 6]];
|
|
76
|
+
if (labels.some((label) => label === undefined || !isOctet(label)))
|
|
77
|
+
continue;
|
|
78
|
+
// A window's three separators must be the SAME character. `cf-acc-5.127-0-0-1.nip.io`
|
|
79
|
+
// resolves to 127.0.0.1 precisely because the run starting at `5` mixes `.` and `-`, so the
|
|
80
|
+
// resolver does not read it as an address at all.
|
|
81
|
+
const separators = [parts[i + 1], parts[i + 3], parts[i + 5]];
|
|
82
|
+
const separator = separators[0];
|
|
83
|
+
if (new Set(separators).size !== 1)
|
|
84
|
+
continue;
|
|
85
|
+
if (separator !== '.' && separator !== '-')
|
|
86
|
+
continue;
|
|
87
|
+
windows.push({ address: labels.join('.'), separator, start: i });
|
|
88
|
+
}
|
|
89
|
+
return { host: normalised, suffix, parts, windows };
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Every four-octet address embedded in a host, left to right, in dotted form.
|
|
93
|
+
*
|
|
94
|
+
* The addresses alone, for a caller that only wants to know what a name carries;
|
|
95
|
+
* {@link parseWildcardHost} owns what makes one.
|
|
96
|
+
*/
|
|
97
|
+
export function wildcardDnsWindows(host) {
|
|
98
|
+
return parseWildcardHost(host).windows.map((window) => window.address);
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Grade a RENDERED host, answering `null` when there is nothing to report.
|
|
102
|
+
*
|
|
103
|
+
* `null` covers three different innocent cases on purpose, because none of them is actionable:
|
|
104
|
+
* an ordinary hostname, a wildcard host holding exactly one address (whatever it is, that is the
|
|
105
|
+
* one that answers), and a host whose leftmost window IS the trailing one. Only a name carrying
|
|
106
|
+
* two DIFFERENT addresses can send a caller somewhere it did not ask for.
|
|
107
|
+
*/
|
|
108
|
+
export function describeWildcardDnsShift(host) {
|
|
109
|
+
const parsed = parseWildcardHost(host);
|
|
110
|
+
if (!parsed.suffix)
|
|
111
|
+
return null;
|
|
112
|
+
const resolved = parsed.windows[0];
|
|
113
|
+
const trailing = parsed.windows[parsed.windows.length - 1];
|
|
114
|
+
if (!resolved || !trailing || resolved.address === trailing.address)
|
|
115
|
+
return null;
|
|
116
|
+
return {
|
|
117
|
+
host: parsed.host,
|
|
118
|
+
suffix: parsed.suffix,
|
|
119
|
+
resolved: resolved.address,
|
|
120
|
+
trailing: trailing.address,
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* The one wording of this failure, so the provider's refusal and the preflight's remedy do not
|
|
125
|
+
* drift into two accounts of the same thing.
|
|
126
|
+
*
|
|
127
|
+
* It names the rendered host FIRST: the reader is holding a template and a namespace, and the
|
|
128
|
+
* composition of the two is the thing they have never seen written down.
|
|
129
|
+
*/
|
|
130
|
+
export function describeWildcardDnsShiftProblem(shift) {
|
|
131
|
+
return (`'${shift.host}' resolves to ${shift.resolved}, not ${shift.trailing}: ${shift.suffix} reads ` +
|
|
132
|
+
`the LEFTMOST four-octet run in a name and treats '.' and '-' alike, so the label before ` +
|
|
133
|
+
`${shift.trailing} ends in a separator plus digits and opens an earlier address. Anything ` +
|
|
134
|
+
`reaching this URL reaches ${shift.resolved}, which is not this cluster`);
|
|
135
|
+
}
|
|
136
|
+
/** The trailing address as it is WRITTEN in `host` (dotted or dashed), for quoting back. */
|
|
137
|
+
function trailingAddressAsWritten(host) {
|
|
138
|
+
const { windows } = parseWildcardHost(host);
|
|
139
|
+
const trailing = windows[windows.length - 1];
|
|
140
|
+
return trailing ? trailing.address.replace(/\./g, trailing.separator) : null;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* The same host with the trailing address spelled using the OTHER separator, or `null` when the
|
|
144
|
+
* host carries no address to respell.
|
|
145
|
+
*
|
|
146
|
+
* What makes a respelling a fix is the uniform-separator rule: a prefix can only extend a run it
|
|
147
|
+
* shares a separator with, so flipping the address's own separator breaks the earlier window
|
|
148
|
+
* without touching the prefix. WHICH direction that is depends on what the operator already
|
|
149
|
+
* wrote, which is the part the remedy used to assume rather than read.
|
|
150
|
+
*/
|
|
151
|
+
function respellTrailingAddress(host) {
|
|
152
|
+
const parsed = parseWildcardHost(host);
|
|
153
|
+
const trailing = parsed.windows[parsed.windows.length - 1];
|
|
154
|
+
if (!trailing)
|
|
155
|
+
return null;
|
|
156
|
+
const flipped = trailing.separator === '.' ? '-' : '.';
|
|
157
|
+
const parts = [...parsed.parts];
|
|
158
|
+
parts[trailing.start + 1] = flipped;
|
|
159
|
+
parts[trailing.start + 3] = flipped;
|
|
160
|
+
parts[trailing.start + 5] = flipped;
|
|
161
|
+
const scanned = parts.join('');
|
|
162
|
+
return parsed.suffix ? `${scanned}.${parsed.suffix}` : scanned;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Whether the answering window runs INTO the trailing address rather than sitting entirely ahead
|
|
166
|
+
* of it.
|
|
167
|
+
*
|
|
168
|
+
* Overlapping is the ordinary case, and the one "end the prefix with a letter" addresses: the
|
|
169
|
+
* prefix's last label became the address's first octet. Disjoint means the prefix carries a
|
|
170
|
+
* complete address of its own, which no separator change removes, so telling someone to re-spell
|
|
171
|
+
* anything would be advice that cannot work.
|
|
172
|
+
*/
|
|
173
|
+
function shiftedWindowsOverlap(host) {
|
|
174
|
+
const { windows } = parseWildcardHost(host);
|
|
175
|
+
const first = windows[0];
|
|
176
|
+
const last = windows[windows.length - 1];
|
|
177
|
+
return first !== undefined && last !== undefined && first.start + 6 >= last.start;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* How to make a mis-resolving host resolve, given that the address is not the part that is wrong.
|
|
181
|
+
*
|
|
182
|
+
* **Every remedy is VERIFIED against the rule above before it is offered**, rather than derived
|
|
183
|
+
* from the mere fact that a shift exists. The respelling used to print "write the address with
|
|
184
|
+
* dashes" unconditionally, which for a host already written `…-5-127-0-0-1.nip.io` described the
|
|
185
|
+
* broken configuration back to the person who wrote it: a prefix extends a dashed run exactly as
|
|
186
|
+
* it extends a dotted one, and only MIXING the two breaks it. So the candidate fix is now
|
|
187
|
+
* computed, re-graded, and dropped when it would not have helped.
|
|
188
|
+
*
|
|
189
|
+
* Ordered by how little each one disturbs: the digits are almost always a pull-request number
|
|
190
|
+
* doing necessary work (a namespace has to be unique per environment), so the first two fixes
|
|
191
|
+
* keep them and break the SEPARATOR that lets them be read as an octet.
|
|
192
|
+
*/
|
|
193
|
+
export function wildcardDnsShiftRemedies(shift) {
|
|
194
|
+
const remedies = [
|
|
195
|
+
shiftedWindowsOverlap(shift.host)
|
|
196
|
+
? `End the prefix with a letter rather than a separator and digits: a namespace template ` +
|
|
197
|
+
`of '…-pr{{pullNumber}}' renders 'pr5', which is not an octet, where '…-{{pullNumber}}' ` +
|
|
198
|
+
`renders '5', which is.`
|
|
199
|
+
: `Take the address out of the prefix: '${shift.resolved}' is a complete four-octet run ` +
|
|
200
|
+
`standing on its own ahead of '${shift.trailing}', so no change to what separates them ` +
|
|
201
|
+
`can stop it answering first.`,
|
|
202
|
+
];
|
|
203
|
+
const respelled = respellTrailingAddress(shift.host);
|
|
204
|
+
const written = trailingAddressAsWritten(shift.host);
|
|
205
|
+
if (respelled !== null && written !== null && describeWildcardDnsShift(respelled) === null) {
|
|
206
|
+
remedies.push(`Or spell the address with the other separator ` +
|
|
207
|
+
`('${trailingAddressAsWritten(respelled)}.${shift.suffix}' rather than ` +
|
|
208
|
+
`'${written}.${shift.suffix}'): a four-octet run has to use ONE separator throughout, so ` +
|
|
209
|
+
`a prefix joined on with the other one can no longer extend it.`);
|
|
210
|
+
}
|
|
211
|
+
remedies.push(`Or serve the environments from a host you control, where the address is in a DNS record ` +
|
|
212
|
+
`rather than in the name.`);
|
|
213
|
+
return remedies;
|
|
214
|
+
}
|
|
215
|
+
//# sourceMappingURL=wildcard-dns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wildcard-dns.js","sourceRoot":"","sources":["../src/wildcard-dns.ts"],"names":[],"mappings":"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"}
|