@cat-factory/contracts 0.265.0 → 0.267.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 (49) hide show
  1. package/dist/debug-api.d.ts +10 -0
  2. package/dist/debug-api.d.ts.map +1 -1
  3. package/dist/documents.d.ts +45 -0
  4. package/dist/documents.d.ts.map +1 -1
  5. package/dist/documents.js +35 -0
  6. package/dist/documents.js.map +1 -1
  7. package/dist/execution.d.ts +76 -0
  8. package/dist/execution.d.ts.map +1 -1
  9. package/dist/execution.js +19 -0
  10. package/dist/execution.js.map +1 -1
  11. package/dist/pr-report.d.ts +132 -1
  12. package/dist/pr-report.d.ts.map +1 -1
  13. package/dist/pr-report.js +53 -1
  14. package/dist/pr-report.js.map +1 -1
  15. package/dist/routes/agent-runs.d.ts +42 -0
  16. package/dist/routes/agent-runs.d.ts.map +1 -1
  17. package/dist/routes/bug-hunt.d.ts +42 -0
  18. package/dist/routes/bug-hunt.d.ts.map +1 -1
  19. package/dist/routes/debug-api.d.ts +5 -0
  20. package/dist/routes/debug-api.d.ts.map +1 -1
  21. package/dist/routes/execution.d.ts +168 -0
  22. package/dist/routes/execution.d.ts.map +1 -1
  23. package/dist/routes/human-review.d.ts +21 -0
  24. package/dist/routes/human-review.d.ts.map +1 -1
  25. package/dist/routes/human-test.d.ts +105 -0
  26. package/dist/routes/human-test.d.ts.map +1 -1
  27. package/dist/routes/public-evidence.d.ts +42 -0
  28. package/dist/routes/public-evidence.d.ts.map +1 -1
  29. package/dist/routes/runners.d.ts +10 -0
  30. package/dist/routes/runners.d.ts.map +1 -1
  31. package/dist/routes/visual-confirm.d.ts +63 -0
  32. package/dist/routes/visual-confirm.d.ts.map +1 -1
  33. package/dist/routes/workspaces.d.ts +42 -0
  34. package/dist/routes/workspaces.d.ts.map +1 -1
  35. package/dist/run-outcome.d.ts +98 -1
  36. package/dist/run-outcome.d.ts.map +1 -1
  37. package/dist/run-outcome.js +73 -1
  38. package/dist/run-outcome.js.map +1 -1
  39. package/dist/runners.d.ts +120 -0
  40. package/dist/runners.d.ts.map +1 -1
  41. package/dist/runners.js +12 -0
  42. package/dist/runners.js.map +1 -1
  43. package/dist/snapshot.d.ts +21 -0
  44. package/dist/snapshot.d.ts.map +1 -1
  45. package/dist/tool-servers.d.ts +82 -0
  46. package/dist/tool-servers.d.ts.map +1 -1
  47. package/dist/tool-servers.js +75 -0
  48. package/dist/tool-servers.js.map +1 -1
  49. package/package.json +1 -1
@@ -143,6 +143,7 @@ export declare const getRunnerPoolConnectionContract: {
143
143
  readonly validationReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
144
144
  readonly reproductionReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
145
145
  readonly sliceReviewsPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
146
+ readonly toolServersPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
146
147
  readonly dispatchCapabilitiesPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
147
148
  readonly errorPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
148
149
  readonly failureCausePath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -327,6 +328,7 @@ export declare const getRunnerPoolConnectionContract: {
327
328
  readonly validationReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
328
329
  readonly reproductionReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
329
330
  readonly sliceReviewsPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
331
+ readonly toolServersPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
330
332
  readonly dispatchCapabilitiesPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
331
333
  readonly errorPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
332
334
  readonly failureCausePath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -451,6 +453,7 @@ export declare const registerRunnerPoolContract: {
451
453
  readonly validationReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
452
454
  readonly reproductionReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
453
455
  readonly sliceReviewsPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
456
+ readonly toolServersPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
454
457
  readonly dispatchCapabilitiesPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
455
458
  readonly errorPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
456
459
  readonly failureCausePath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -635,6 +638,7 @@ export declare const registerRunnerPoolContract: {
635
638
  readonly validationReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
636
639
  readonly reproductionReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
637
640
  readonly sliceReviewsPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
641
+ readonly toolServersPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
638
642
  readonly dispatchCapabilitiesPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
639
643
  readonly errorPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
640
644
  readonly failureCausePath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -783,6 +787,7 @@ export declare const registerRunnerPoolContract: {
783
787
  readonly validationReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
784
788
  readonly reproductionReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
785
789
  readonly sliceReviewsPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
790
+ readonly toolServersPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
786
791
  readonly dispatchCapabilitiesPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
787
792
  readonly errorPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
788
793
  readonly failureCausePath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -967,6 +972,7 @@ export declare const registerRunnerPoolContract: {
967
972
  readonly validationReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
968
973
  readonly reproductionReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
969
974
  readonly sliceReviewsPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
975
+ readonly toolServersPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
970
976
  readonly dispatchCapabilitiesPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
971
977
  readonly errorPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
972
978
  readonly failureCausePath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -1122,6 +1128,7 @@ export declare const updateRunnerPoolSecretsContract: {
1122
1128
  readonly validationReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1123
1129
  readonly reproductionReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1124
1130
  readonly sliceReviewsPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1131
+ readonly toolServersPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1125
1132
  readonly dispatchCapabilitiesPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1126
1133
  readonly errorPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1127
1134
  readonly failureCausePath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -1306,6 +1313,7 @@ export declare const updateRunnerPoolSecretsContract: {
1306
1313
  readonly validationReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1307
1314
  readonly reproductionReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1308
1315
  readonly sliceReviewsPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1316
+ readonly toolServersPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1309
1317
  readonly dispatchCapabilitiesPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1310
1318
  readonly errorPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1311
1319
  readonly failureCausePath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -1530,6 +1538,7 @@ export declare const testRunnerPoolConnectionContract: {
1530
1538
  readonly validationReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1531
1539
  readonly reproductionReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1532
1540
  readonly sliceReviewsPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1541
+ readonly toolServersPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1533
1542
  readonly dispatchCapabilitiesPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1534
1543
  readonly errorPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1535
1544
  readonly failureCausePath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -1714,6 +1723,7 @@ export declare const testRunnerPoolConnectionContract: {
1714
1723
  readonly validationReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1715
1724
  readonly reproductionReportPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1716
1725
  readonly sliceReviewsPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1726
+ readonly toolServersPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1717
1727
  readonly dispatchCapabilitiesPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1718
1728
  readonly errorPath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1719
1729
  readonly failureCausePath: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"runners.d.ts","sourceRoot":"","sources":["../../src/routes/runners.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runners.d.ts","sourceRoot":"","sources":["../../src/routes/runners.ts"],"names":[],"mappings":"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"}
@@ -718,7 +718,28 @@ export declare const approveVisualConfirmContract: {
718
718
  readonly reason: v.PicklistSchema<["harness_unsupported", "transport_unsupported", "missing_secret", "reserved_secret", "oauth_not_connected", "oauth_token_failed", "over_budget"], undefined>;
719
719
  }, undefined>, undefined>;
720
720
  readonly agentKind: v.StringSchema<undefined>;
721
+ readonly observed: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
722
+ readonly id: v.StringSchema<undefined>;
723
+ readonly status: v.PicklistSchema<["ready", "failed", "needs_auth", "unknown"], undefined>;
724
+ readonly toolCount: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
725
+ }, undefined>, undefined>, undefined>;
721
726
  }, undefined>, undefined>;
727
+ readonly contextDocuments: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
728
+ readonly title: v.StringSchema<undefined>;
729
+ readonly externalId: v.StringSchema<undefined>;
730
+ readonly url: v.StringSchema<undefined>;
731
+ readonly origin: v.PicklistSchema<["confluence", "notion", "github", "figma", "zeplin", "linear", "upload"], undefined>;
732
+ readonly freshness: v.OptionalSchema<v.VariantSchema<"status", [v.ObjectSchema<{
733
+ readonly status: v.LiteralSchema<"confirmed", undefined>;
734
+ readonly version: v.StringSchema<undefined>;
735
+ readonly change: v.PicklistSchema<["unchanged", "reimported", "revision_only"], undefined>;
736
+ }, undefined>, v.ObjectSchema<{
737
+ readonly status: v.LiteralSchema<"not-applicable", undefined>;
738
+ }, undefined>, v.ObjectSchema<{
739
+ readonly status: v.LiteralSchema<"unconfirmed", undefined>;
740
+ readonly reason: v.PicklistSchema<["not_connected", "credentials_unreadable", "unversioned", "source_unreachable"], undefined>;
741
+ }, undefined>], undefined>, undefined>;
742
+ }, undefined>, undefined>, undefined>;
722
743
  readonly promptRevision: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
723
744
  readonly promptVariant: v.OptionalSchema<v.ObjectSchema<{
724
745
  readonly id: v.StringSchema<undefined>;
@@ -1819,7 +1840,28 @@ export declare const requestVisualConfirmFixContract: {
1819
1840
  readonly reason: v.PicklistSchema<["harness_unsupported", "transport_unsupported", "missing_secret", "reserved_secret", "oauth_not_connected", "oauth_token_failed", "over_budget"], undefined>;
1820
1841
  }, undefined>, undefined>;
1821
1842
  readonly agentKind: v.StringSchema<undefined>;
1843
+ readonly observed: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
1844
+ readonly id: v.StringSchema<undefined>;
1845
+ readonly status: v.PicklistSchema<["ready", "failed", "needs_auth", "unknown"], undefined>;
1846
+ readonly toolCount: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1847
+ }, undefined>, undefined>, undefined>;
1822
1848
  }, undefined>, undefined>;
1849
+ readonly contextDocuments: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
1850
+ readonly title: v.StringSchema<undefined>;
1851
+ readonly externalId: v.StringSchema<undefined>;
1852
+ readonly url: v.StringSchema<undefined>;
1853
+ readonly origin: v.PicklistSchema<["confluence", "notion", "github", "figma", "zeplin", "linear", "upload"], undefined>;
1854
+ readonly freshness: v.OptionalSchema<v.VariantSchema<"status", [v.ObjectSchema<{
1855
+ readonly status: v.LiteralSchema<"confirmed", undefined>;
1856
+ readonly version: v.StringSchema<undefined>;
1857
+ readonly change: v.PicklistSchema<["unchanged", "reimported", "revision_only"], undefined>;
1858
+ }, undefined>, v.ObjectSchema<{
1859
+ readonly status: v.LiteralSchema<"not-applicable", undefined>;
1860
+ }, undefined>, v.ObjectSchema<{
1861
+ readonly status: v.LiteralSchema<"unconfirmed", undefined>;
1862
+ readonly reason: v.PicklistSchema<["not_connected", "credentials_unreadable", "unversioned", "source_unreachable"], undefined>;
1863
+ }, undefined>], undefined>, undefined>;
1864
+ }, undefined>, undefined>, undefined>;
1823
1865
  readonly promptRevision: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1824
1866
  readonly promptVariant: v.OptionalSchema<v.ObjectSchema<{
1825
1867
  readonly id: v.StringSchema<undefined>;
@@ -2918,7 +2960,28 @@ export declare const recaptureVisualConfirmContract: {
2918
2960
  readonly reason: v.PicklistSchema<["harness_unsupported", "transport_unsupported", "missing_secret", "reserved_secret", "oauth_not_connected", "oauth_token_failed", "over_budget"], undefined>;
2919
2961
  }, undefined>, undefined>;
2920
2962
  readonly agentKind: v.StringSchema<undefined>;
2963
+ readonly observed: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
2964
+ readonly id: v.StringSchema<undefined>;
2965
+ readonly status: v.PicklistSchema<["ready", "failed", "needs_auth", "unknown"], undefined>;
2966
+ readonly toolCount: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
2967
+ }, undefined>, undefined>, undefined>;
2921
2968
  }, undefined>, undefined>;
2969
+ readonly contextDocuments: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
2970
+ readonly title: v.StringSchema<undefined>;
2971
+ readonly externalId: v.StringSchema<undefined>;
2972
+ readonly url: v.StringSchema<undefined>;
2973
+ readonly origin: v.PicklistSchema<["confluence", "notion", "github", "figma", "zeplin", "linear", "upload"], undefined>;
2974
+ readonly freshness: v.OptionalSchema<v.VariantSchema<"status", [v.ObjectSchema<{
2975
+ readonly status: v.LiteralSchema<"confirmed", undefined>;
2976
+ readonly version: v.StringSchema<undefined>;
2977
+ readonly change: v.PicklistSchema<["unchanged", "reimported", "revision_only"], undefined>;
2978
+ }, undefined>, v.ObjectSchema<{
2979
+ readonly status: v.LiteralSchema<"not-applicable", undefined>;
2980
+ }, undefined>, v.ObjectSchema<{
2981
+ readonly status: v.LiteralSchema<"unconfirmed", undefined>;
2982
+ readonly reason: v.PicklistSchema<["not_connected", "credentials_unreadable", "unversioned", "source_unreachable"], undefined>;
2983
+ }, undefined>], undefined>, undefined>;
2984
+ }, undefined>, undefined>, undefined>;
2922
2985
  readonly promptRevision: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
2923
2986
  readonly promptVariant: v.OptionalSchema<v.ObjectSchema<{
2924
2987
  readonly id: v.StringSchema<undefined>;
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMvC,CAAA;AAEF,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM1C,CAAA;AAEF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMzC,CAAA"}
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"}
@@ -1229,7 +1229,28 @@ export declare const createWorkspaceContract: {
1229
1229
  readonly reason: v.PicklistSchema<["harness_unsupported", "transport_unsupported", "missing_secret", "reserved_secret", "oauth_not_connected", "oauth_token_failed", "over_budget"], undefined>;
1230
1230
  }, undefined>, undefined>;
1231
1231
  readonly agentKind: v.StringSchema<undefined>;
1232
+ readonly observed: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
1233
+ readonly id: v.StringSchema<undefined>;
1234
+ readonly status: v.PicklistSchema<["ready", "failed", "needs_auth", "unknown"], undefined>;
1235
+ readonly toolCount: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1236
+ }, undefined>, undefined>, undefined>;
1232
1237
  }, undefined>, undefined>;
1238
+ readonly contextDocuments: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
1239
+ readonly title: v.StringSchema<undefined>;
1240
+ readonly externalId: v.StringSchema<undefined>;
1241
+ readonly url: v.StringSchema<undefined>;
1242
+ readonly origin: v.PicklistSchema<["confluence", "notion", "github", "figma", "zeplin", "linear", "upload"], undefined>;
1243
+ readonly freshness: v.OptionalSchema<v.VariantSchema<"status", [v.ObjectSchema<{
1244
+ readonly status: v.LiteralSchema<"confirmed", undefined>;
1245
+ readonly version: v.StringSchema<undefined>;
1246
+ readonly change: v.PicklistSchema<["unchanged", "reimported", "revision_only"], undefined>;
1247
+ }, undefined>, v.ObjectSchema<{
1248
+ readonly status: v.LiteralSchema<"not-applicable", undefined>;
1249
+ }, undefined>, v.ObjectSchema<{
1250
+ readonly status: v.LiteralSchema<"unconfirmed", undefined>;
1251
+ readonly reason: v.PicklistSchema<["not_connected", "credentials_unreadable", "unversioned", "source_unreachable"], undefined>;
1252
+ }, undefined>], undefined>, undefined>;
1253
+ }, undefined>, undefined>, undefined>;
1233
1254
  readonly promptRevision: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1234
1255
  readonly promptVariant: v.OptionalSchema<v.ObjectSchema<{
1235
1256
  readonly id: v.StringSchema<undefined>;
@@ -4641,7 +4662,28 @@ export declare const getWorkspaceContract: {
4641
4662
  readonly reason: v.PicklistSchema<["harness_unsupported", "transport_unsupported", "missing_secret", "reserved_secret", "oauth_not_connected", "oauth_token_failed", "over_budget"], undefined>;
4642
4663
  }, undefined>, undefined>;
4643
4664
  readonly agentKind: v.StringSchema<undefined>;
4665
+ readonly observed: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
4666
+ readonly id: v.StringSchema<undefined>;
4667
+ readonly status: v.PicklistSchema<["ready", "failed", "needs_auth", "unknown"], undefined>;
4668
+ readonly toolCount: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
4669
+ }, undefined>, undefined>, undefined>;
4644
4670
  }, undefined>, undefined>;
4671
+ readonly contextDocuments: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
4672
+ readonly title: v.StringSchema<undefined>;
4673
+ readonly externalId: v.StringSchema<undefined>;
4674
+ readonly url: v.StringSchema<undefined>;
4675
+ readonly origin: v.PicklistSchema<["confluence", "notion", "github", "figma", "zeplin", "linear", "upload"], undefined>;
4676
+ readonly freshness: v.OptionalSchema<v.VariantSchema<"status", [v.ObjectSchema<{
4677
+ readonly status: v.LiteralSchema<"confirmed", undefined>;
4678
+ readonly version: v.StringSchema<undefined>;
4679
+ readonly change: v.PicklistSchema<["unchanged", "reimported", "revision_only"], undefined>;
4680
+ }, undefined>, v.ObjectSchema<{
4681
+ readonly status: v.LiteralSchema<"not-applicable", undefined>;
4682
+ }, undefined>, v.ObjectSchema<{
4683
+ readonly status: v.LiteralSchema<"unconfirmed", undefined>;
4684
+ readonly reason: v.PicklistSchema<["not_connected", "credentials_unreadable", "unversioned", "source_unreachable"], undefined>;
4685
+ }, undefined>], undefined>, undefined>;
4686
+ }, undefined>, undefined>, undefined>;
4645
4687
  readonly promptRevision: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
4646
4688
  readonly promptVariant: v.OptionalSchema<v.ObjectSchema<{
4647
4689
  readonly id: v.StringSchema<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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKlC,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK/B,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMlC,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKlC,CAAA"}
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"}
@@ -7,7 +7,7 @@ import type { ServiceSpecView } from './spec.js';
7
7
  * consumer would want to notice; never a compatibility switch (the surface is additive, so a
8
8
  * consumer written against an older number keeps reading the fields it knows).
9
9
  */
10
- export declare const RUN_OUTCOME_VERSION = 1;
10
+ export declare const RUN_OUTCOME_VERSION = 2;
11
11
  /**
12
12
  * Where the run stands, in the terms the person reading the outcome cares about. Derived from
13
13
  * the BLOCK's status first (it is what the merge lifecycle writes) and from the run only for
@@ -186,6 +186,71 @@ export declare const outcomeVisualsSchema: v.VariantSchema<"status", [v.ObjectSc
186
186
  }, undefined>, undefined>;
187
187
  }, undefined>], undefined>;
188
188
  export type OutcomeVisuals = v.InferOutput<typeof outcomeVisualsSchema>;
189
+ /** Why there is no linked source to show. */
190
+ export declare const sourcesGapSchema: v.PicklistSchema<["run_unavailable", "none_linked"], undefined>;
191
+ export type SourcesGap = v.InferOutput<typeof sourcesGapSchema>;
192
+ /**
193
+ * One linked document the run's agents read, reduced from the per-dispatch records its steps
194
+ * carry.
195
+ *
196
+ * The verdict is the LAST one the run recorded, because that is the state it ended on. What a
197
+ * last verdict cannot say is that the page moved WHILE the run was in flight, so that is carried
198
+ * separately: a designer editing a frame mid-run leaves the early steps building against
199
+ * something the late ones never read, and a row showing only the final revision reads as though
200
+ * every step had it.
201
+ */
202
+ export declare const outcomeSourceSchema: v.ObjectSchema<{
203
+ readonly title: v.StringSchema<undefined>;
204
+ /** Null for an `upload`, which has no source page to open. */
205
+ readonly url: v.NullableSchema<v.StringSchema<undefined>, undefined>;
206
+ readonly origin: v.PicklistSchema<["confluence", "notion", "github", "figma", "zeplin", "linear", "upload"], undefined>;
207
+ /** Null ⇒ this deployment ran no freshness check, which is not "checked and unsure". */
208
+ readonly freshness: v.NullableSchema<v.VariantSchema<"status", [v.ObjectSchema<{
209
+ readonly status: v.LiteralSchema<"confirmed", undefined>;
210
+ readonly version: v.StringSchema<undefined>;
211
+ readonly change: v.PicklistSchema<["unchanged", "reimported", "revision_only"], undefined>;
212
+ }, undefined>, v.ObjectSchema<{
213
+ readonly status: v.LiteralSchema<"not-applicable", undefined>;
214
+ }, undefined>, v.ObjectSchema<{
215
+ readonly status: v.LiteralSchema<"unconfirmed", undefined>;
216
+ readonly reason: v.PicklistSchema<["not_connected", "credentials_unreadable", "unversioned", "source_unreachable"], undefined>;
217
+ }, undefined>], undefined>, undefined>;
218
+ /**
219
+ * True when the run's own steps recorded more than one distinct revision of this document.
220
+ * Computed from the recorded verdicts, never asserted by a model.
221
+ */
222
+ readonly movedDuringRun: v.BooleanSchema<undefined>;
223
+ }, undefined>;
224
+ export type OutcomeSource = v.InferOutput<typeof outcomeSourceSchema>;
225
+ export declare const outcomeSourcesSchema: v.VariantSchema<"status", [v.ObjectSchema<{
226
+ readonly status: v.LiteralSchema<"absent", undefined>;
227
+ readonly gap: v.PicklistSchema<["run_unavailable", "none_linked"], undefined>;
228
+ }, undefined>, v.ObjectSchema<{
229
+ readonly status: v.LiteralSchema<"reported", undefined>;
230
+ readonly sources: v.ArraySchema<v.ObjectSchema<{
231
+ readonly title: v.StringSchema<undefined>;
232
+ /** Null for an `upload`, which has no source page to open. */
233
+ readonly url: v.NullableSchema<v.StringSchema<undefined>, undefined>;
234
+ readonly origin: v.PicklistSchema<["confluence", "notion", "github", "figma", "zeplin", "linear", "upload"], undefined>;
235
+ /** Null ⇒ this deployment ran no freshness check, which is not "checked and unsure". */
236
+ readonly freshness: v.NullableSchema<v.VariantSchema<"status", [v.ObjectSchema<{
237
+ readonly status: v.LiteralSchema<"confirmed", undefined>;
238
+ readonly version: v.StringSchema<undefined>;
239
+ readonly change: v.PicklistSchema<["unchanged", "reimported", "revision_only"], undefined>;
240
+ }, undefined>, v.ObjectSchema<{
241
+ readonly status: v.LiteralSchema<"not-applicable", undefined>;
242
+ }, undefined>, v.ObjectSchema<{
243
+ readonly status: v.LiteralSchema<"unconfirmed", undefined>;
244
+ readonly reason: v.PicklistSchema<["not_connected", "credentials_unreadable", "unversioned", "source_unreachable"], undefined>;
245
+ }, undefined>], undefined>, undefined>;
246
+ /**
247
+ * True when the run's own steps recorded more than one distinct revision of this document.
248
+ * Computed from the recorded verdicts, never asserted by a model.
249
+ */
250
+ readonly movedDuringRun: v.BooleanSchema<undefined>;
251
+ }, undefined>, undefined>;
252
+ }, undefined>], undefined>;
253
+ export type OutcomeSources = v.InferOutput<typeof outcomeSourcesSchema>;
189
254
  /** The three recorded machine verdicts a non-code reader still needs: did it build, does it work. */
190
255
  export declare const outcomeCheckKindSchema: v.PicklistSchema<["ci", "validation", "reproduction"], undefined>;
191
256
  export type OutcomeCheckKind = v.InferOutput<typeof outcomeCheckKindSchema>;
@@ -305,6 +370,35 @@ export declare const runOutcomeSchema: v.ObjectSchema<{
305
370
  readonly referenceArtifactId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
306
371
  }, undefined>, undefined>;
307
372
  }, undefined>], undefined>;
373
+ /** The linked pages the run built from, and how current the copy its agents read was. */
374
+ readonly sources: v.VariantSchema<"status", [v.ObjectSchema<{
375
+ readonly status: v.LiteralSchema<"absent", undefined>;
376
+ readonly gap: v.PicklistSchema<["run_unavailable", "none_linked"], undefined>;
377
+ }, undefined>, v.ObjectSchema<{
378
+ readonly status: v.LiteralSchema<"reported", undefined>;
379
+ readonly sources: v.ArraySchema<v.ObjectSchema<{
380
+ readonly title: v.StringSchema<undefined>;
381
+ /** Null for an `upload`, which has no source page to open. */
382
+ readonly url: v.NullableSchema<v.StringSchema<undefined>, undefined>;
383
+ readonly origin: v.PicklistSchema<["confluence", "notion", "github", "figma", "zeplin", "linear", "upload"], undefined>;
384
+ /** Null ⇒ this deployment ran no freshness check, which is not "checked and unsure". */
385
+ readonly freshness: v.NullableSchema<v.VariantSchema<"status", [v.ObjectSchema<{
386
+ readonly status: v.LiteralSchema<"confirmed", undefined>;
387
+ readonly version: v.StringSchema<undefined>;
388
+ readonly change: v.PicklistSchema<["unchanged", "reimported", "revision_only"], undefined>;
389
+ }, undefined>, v.ObjectSchema<{
390
+ readonly status: v.LiteralSchema<"not-applicable", undefined>;
391
+ }, undefined>, v.ObjectSchema<{
392
+ readonly status: v.LiteralSchema<"unconfirmed", undefined>;
393
+ readonly reason: v.PicklistSchema<["not_connected", "credentials_unreadable", "unversioned", "source_unreachable"], undefined>;
394
+ }, undefined>], undefined>, undefined>;
395
+ /**
396
+ * True when the run's own steps recorded more than one distinct revision of this document.
397
+ * Computed from the recorded verdicts, never asserted by a model.
398
+ */
399
+ readonly movedDuringRun: v.BooleanSchema<undefined>;
400
+ }, undefined>, undefined>;
401
+ }, undefined>], undefined>;
308
402
  /** Only the checks that actually ran: an absent check is omitted, never rendered as passing. */
309
403
  readonly checks: v.ArraySchema<v.ObjectSchema<{
310
404
  readonly kind: v.PicklistSchema<["ci", "validation", "reproduction"], undefined>;
@@ -365,6 +459,9 @@ export declare function composeRunOutcome({ block, instance, spec }: ComposeRunO
365
459
  * A run this summary could not resolve answers false unless the block still carries a pull
366
460
  * request: there is nothing to show, and an affordance that opened onto four "not loaded"
367
461
  * notices would be the same empty card by another route.
462
+ *
463
+ * Linked SOURCES deliberately do not count. They say what the run was working FROM, not what it
464
+ * produced, so a run that has only read its brief has nothing for this card to answer yet.
368
465
  */
369
466
  export declare function hasOutcomeToShow(outcome: RunOutcome): boolean;
370
467
  //# sourceMappingURL=run-outcome.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-outcome.d.ts","sourceRoot":"","sources":["../src/run-outcome.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-outcome.d.ts","sourceRoot":"","sources":["../src/run-outcome.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import * as v from 'valibot';
2
2
  import { allPullRequests } from './entities.js';
3
3
  import { reproductionStatusSchema } from './reproduction.js';
4
4
  import { indexRequirementVerdicts, isRequirementRegression, isTesterKind, joinSpecRequirements, selectTesterReportStep, tallyRequirements, tallyTestOutcomes, unmatchedVerdictIds, } from './run-evidence.js';
5
+ import { documentFreshnessSchema, documentOriginSchema } from './documents.js';
5
6
  import { requirementStateSchema } from './spec.js';
6
7
  import { requirementVerdictStatusSchema, testConcernSeveritySchema } from './testing.js';
7
8
  import { testEnvironmentSchema } from './testing.js';
@@ -51,7 +52,7 @@ import { UI_TESTER_AGENT_KIND } from './visual-pipeline.js';
51
52
  * consumer would want to notice; never a compatibility switch (the surface is additive, so a
52
53
  * consumer written against an older number keeps reading the fields it knows).
53
54
  */
54
- export const RUN_OUTCOME_VERSION = 1;
55
+ export const RUN_OUTCOME_VERSION = 2;
55
56
  /**
56
57
  * Where the run stands, in the terms the person reading the outcome cares about. Derived from
57
58
  * the BLOCK's status first (it is what the merge lifecycle writes) and from the run only for
@@ -227,6 +228,36 @@ export const outcomeVisualsSchema = v.variant('status', [
227
228
  views: v.array(outcomeVisualSchema),
228
229
  }),
229
230
  ]);
231
+ // ---- What it was built FROM ------------------------------------------------
232
+ /** Why there is no linked source to show. */
233
+ export const sourcesGapSchema = v.picklist([runUnavailableGap, 'none_linked']);
234
+ /**
235
+ * One linked document the run's agents read, reduced from the per-dispatch records its steps
236
+ * carry.
237
+ *
238
+ * The verdict is the LAST one the run recorded, because that is the state it ended on. What a
239
+ * last verdict cannot say is that the page moved WHILE the run was in flight, so that is carried
240
+ * separately: a designer editing a frame mid-run leaves the early steps building against
241
+ * something the late ones never read, and a row showing only the final revision reads as though
242
+ * every step had it.
243
+ */
244
+ export const outcomeSourceSchema = v.object({
245
+ title: v.string(),
246
+ /** Null for an `upload`, which has no source page to open. */
247
+ url: v.nullable(v.string()),
248
+ origin: documentOriginSchema,
249
+ /** Null ⇒ this deployment ran no freshness check, which is not "checked and unsure". */
250
+ freshness: v.nullable(documentFreshnessSchema),
251
+ /**
252
+ * True when the run's own steps recorded more than one distinct revision of this document.
253
+ * Computed from the recorded verdicts, never asserted by a model.
254
+ */
255
+ movedDuringRun: v.boolean(),
256
+ });
257
+ export const outcomeSourcesSchema = v.variant('status', [
258
+ v.object({ status: v.literal('absent'), gap: sourcesGapSchema }),
259
+ v.object({ status: v.literal('reported'), sources: v.array(outcomeSourceSchema) }),
260
+ ]);
230
261
  // ---- The machine checks ----------------------------------------------------
231
262
  /** The three recorded machine verdicts a non-code reader still needs: did it build, does it work. */
232
263
  export const outcomeCheckKindSchema = v.picklist(['ci', 'validation', 'reproduction']);
@@ -254,6 +285,8 @@ export const runOutcomeSchema = v.object({
254
285
  requirements: outcomeRequirementsSchema,
255
286
  tests: outcomeTestsSchema,
256
287
  visuals: outcomeVisualsSchema,
288
+ /** The linked pages the run built from, and how current the copy its agents read was. */
289
+ sources: outcomeSourcesSchema,
257
290
  /** Only the checks that actually ran: an absent check is omitted, never rendered as passing. */
258
291
  checks: v.array(outcomeCheckSchema),
259
292
  /**
@@ -427,6 +460,40 @@ function composeVisuals(steps, tester) {
427
460
  detail: degraded,
428
461
  };
429
462
  }
463
+ /**
464
+ * Reduce every dispatch's `contextDocuments` record into one row per linked page.
465
+ *
466
+ * The same reduction the PR verification report runs, over the same records, so the card a person
467
+ * opens and the report a reviewer reads cannot disagree about which revision the run built from.
468
+ * Order is first-read-first, so the list follows the run's own reading order.
469
+ *
470
+ * Rows are keyed by the document's SOURCE identity rather than by anything shown in them: an
471
+ * `upload` carries no URL, so a key falling back to the title would fold two same-titled uploads
472
+ * into one row and read their differing revisions as a page that moved mid-run.
473
+ */
474
+ function composeSources(steps) {
475
+ const rows = new Map();
476
+ const revisions = new Map();
477
+ for (const step of steps) {
478
+ for (const doc of step.contextDocuments ?? []) {
479
+ const key = `${doc.origin}:${doc.externalId}`;
480
+ const seen = revisions.get(key) ?? new Set();
481
+ if (doc.freshness?.status === 'confirmed')
482
+ seen.add(doc.freshness.version);
483
+ revisions.set(key, seen);
484
+ rows.set(key, {
485
+ title: doc.title,
486
+ url: doc.url || null,
487
+ origin: doc.origin,
488
+ freshness: doc.freshness ?? null,
489
+ movedDuringRun: seen.size > 1,
490
+ });
491
+ }
492
+ }
493
+ if (rows.size === 0)
494
+ return { status: 'absent', gap: 'none_linked' };
495
+ return { status: 'reported', sources: [...rows.values()] };
496
+ }
430
497
  function composeChecks(steps) {
431
498
  const checks = [];
432
499
  const ci = steps.filter((s) => s.agentKind === 'ci' && s.gate).at(-1)?.gate ?? null;
@@ -505,6 +572,7 @@ export function composeRunOutcome({ block, instance, spec }) {
505
572
  requirements: { status: 'absent', gap: runUnavailableGap },
506
573
  tests: { status: 'absent', gap: runUnavailableGap },
507
574
  visuals: { status: 'absent', gap: runUnavailableGap, detail: null },
575
+ sources: { status: 'absent', gap: runUnavailableGap },
508
576
  checks: [],
509
577
  };
510
578
  }
@@ -516,6 +584,7 @@ export function composeRunOutcome({ block, instance, spec }) {
516
584
  requirements: composeRequirements(steps, spec),
517
585
  tests: composeTests(tester),
518
586
  visuals: composeVisuals(steps, tester),
587
+ sources: composeSources(steps),
519
588
  checks: composeChecks(steps),
520
589
  };
521
590
  }
@@ -529,6 +598,9 @@ export function composeRunOutcome({ block, instance, spec }) {
529
598
  * A run this summary could not resolve answers false unless the block still carries a pull
530
599
  * request: there is nothing to show, and an affordance that opened onto four "not loaded"
531
600
  * notices would be the same empty card by another route.
601
+ *
602
+ * Linked SOURCES deliberately do not count. They say what the run was working FROM, not what it
603
+ * produced, so a run that has only read its brief has nothing for this card to answer yet.
532
604
  */
533
605
  export function hasOutcomeToShow(outcome) {
534
606
  return (outcome.pullRequests.length > 0 ||