@shivaedev/work-board 0.14.2 → 0.15.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 (196) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +1 -1
  3. package/assets/agent.js +1 -1
  4. package/assets/native.js +25 -25
  5. package/assets/react.js +38 -37
  6. package/dist/browser/diagnostics/schema.d.ts +15 -12
  7. package/dist/browser/diagnostics/schema.d.ts.map +1 -1
  8. package/dist/browser/diagnostics/schema.js +12 -2
  9. package/dist/browser/diagnostics/schema.js.map +1 -1
  10. package/dist/browser/views/remaining.d.ts +20 -12
  11. package/dist/browser/views/remaining.d.ts.map +1 -1
  12. package/dist/client/client.d.ts +1 -0
  13. package/dist/client/client.d.ts.map +1 -1
  14. package/dist/client/client.js +1 -1
  15. package/dist/client/client.js.map +1 -1
  16. package/dist/client/formStatus.d.ts +12 -0
  17. package/dist/client/formStatus.d.ts.map +1 -0
  18. package/dist/client/formStatus.js +27 -0
  19. package/dist/client/formStatus.js.map +1 -0
  20. package/dist/client/react/BoardShell.d.ts.map +1 -1
  21. package/dist/client/react/BoardShell.js +15 -21
  22. package/dist/client/react/BoardShell.js.map +1 -1
  23. package/dist/client/react/DocumentContext.d.ts.map +1 -1
  24. package/dist/client/react/DocumentContext.js +6 -3
  25. package/dist/client/react/DocumentContext.js.map +1 -1
  26. package/dist/client/react/FormContext.d.ts +5 -0
  27. package/dist/client/react/FormContext.d.ts.map +1 -0
  28. package/dist/client/react/FormContext.js +10 -0
  29. package/dist/client/react/FormContext.js.map +1 -0
  30. package/dist/client/react/LiveControls.d.ts +4 -3
  31. package/dist/client/react/LiveControls.d.ts.map +1 -1
  32. package/dist/client/react/LiveControls.js +5 -19
  33. package/dist/client/react/LiveControls.js.map +1 -1
  34. package/dist/client/react/MainLocationContext.d.ts +3 -0
  35. package/dist/client/react/MainLocationContext.d.ts.map +1 -0
  36. package/dist/client/react/MainLocationContext.js +7 -0
  37. package/dist/client/react/MainLocationContext.js.map +1 -0
  38. package/dist/client/react/ProjectionFrame.d.ts +1 -2
  39. package/dist/client/react/ProjectionFrame.d.ts.map +1 -1
  40. package/dist/client/react/ProjectionFrame.js +10 -4
  41. package/dist/client/react/ProjectionFrame.js.map +1 -1
  42. package/dist/client/react/ReadingLibrary.d.ts.map +1 -1
  43. package/dist/client/react/ReadingLibrary.js +7 -8
  44. package/dist/client/react/ReadingLibrary.js.map +1 -1
  45. package/dist/client/react/SystemPage.d.ts.map +1 -1
  46. package/dist/client/react/SystemPage.js +2 -1
  47. package/dist/client/react/SystemPage.js.map +1 -1
  48. package/dist/client/react/TodayOptions.d.ts.map +1 -1
  49. package/dist/client/react/TodayOptions.js +23 -14
  50. package/dist/client/react/TodayOptions.js.map +1 -1
  51. package/dist/client/react/VisualViewer.d.ts.map +1 -1
  52. package/dist/client/react/VisualViewer.js +6 -5
  53. package/dist/client/react/VisualViewer.js.map +1 -1
  54. package/dist/client/react/boardRouter.d.ts +3 -2
  55. package/dist/client/react/boardRouter.d.ts.map +1 -1
  56. package/dist/client/react/boardRouter.js +2 -1
  57. package/dist/client/react/boardRouter.js.map +1 -1
  58. package/dist/client/react/createResponse.d.ts +32 -4
  59. package/dist/client/react/createResponse.d.ts.map +1 -1
  60. package/dist/client/react/createResponse.js +7 -28
  61. package/dist/client/react/createResponse.js.map +1 -1
  62. package/dist/client/react/diagnosticsValues.d.ts.map +1 -1
  63. package/dist/client/react/diagnosticsValues.js +5 -7
  64. package/dist/client/react/diagnosticsValues.js.map +1 -1
  65. package/dist/client/react/entry.d.ts.map +1 -1
  66. package/dist/client/react/entry.js +2 -34
  67. package/dist/client/react/entry.js.map +1 -1
  68. package/dist/client/react/githubLimited.d.ts +3 -0
  69. package/dist/client/react/githubLimited.d.ts.map +1 -0
  70. package/dist/client/react/githubLimited.js +4 -0
  71. package/dist/client/react/githubLimited.js.map +1 -0
  72. package/dist/client/react/loadProjection.d.ts +135 -135
  73. package/dist/client/react/loadRemaining.d.ts +37 -29
  74. package/dist/client/react/loadRemaining.d.ts.map +1 -1
  75. package/dist/client/react/mainLocation.d.ts +4 -2
  76. package/dist/client/react/mainLocation.d.ts.map +1 -1
  77. package/dist/client/react/mainLocation.js +1 -8
  78. package/dist/client/react/mainLocation.js.map +1 -1
  79. package/dist/client/react/mountBoard.d.ts +3 -0
  80. package/dist/client/react/mountBoard.d.ts.map +1 -0
  81. package/dist/client/react/mountBoard.js +45 -0
  82. package/dist/client/react/mountBoard.js.map +1 -0
  83. package/dist/client/react/navigationLocation.d.ts +1 -1
  84. package/dist/client/react/navigationLocation.d.ts.map +1 -1
  85. package/dist/client/react/navigationLocation.js +1 -1
  86. package/dist/client/react/navigationLocation.js.map +1 -1
  87. package/dist/client/react/retryPage.d.ts +2 -1
  88. package/dist/client/react/retryPage.d.ts.map +1 -1
  89. package/dist/client/react/retryPage.js +3 -4
  90. package/dist/client/react/retryPage.js.map +1 -1
  91. package/dist/client/react/useBoardNavigation.d.ts.map +1 -1
  92. package/dist/client/react/useBoardNavigation.js +18 -8
  93. package/dist/client/react/useBoardNavigation.js.map +1 -1
  94. package/dist/client/react/useDocumentPage.d.ts +1 -1
  95. package/dist/client/react/useDocumentPage.d.ts.map +1 -1
  96. package/dist/client/react/useDocumentPage.js +9 -6
  97. package/dist/client/react/useDocumentPage.js.map +1 -1
  98. package/dist/client/react/useHandoffForm.d.ts +56 -30
  99. package/dist/client/react/useHandoffForm.d.ts.map +1 -1
  100. package/dist/client/react/useHandoffForm.js +19 -30
  101. package/dist/client/react/useHandoffForm.js.map +1 -1
  102. package/dist/client/react/useResponseForm.d.ts +72 -43
  103. package/dist/client/react/useResponseForm.d.ts.map +1 -1
  104. package/dist/client/react/useResponseForm.js +20 -17
  105. package/dist/client/react/useResponseForm.js.map +1 -1
  106. package/dist/client/react/visualSources.d.ts.map +1 -1
  107. package/dist/client/react/visualSources.js +10 -8
  108. package/dist/client/react/visualSources.js.map +1 -1
  109. package/dist/client/saveFailure.d.ts +8 -0
  110. package/dist/client/saveFailure.d.ts.map +1 -0
  111. package/dist/client/saveFailure.js +8 -0
  112. package/dist/client/saveFailure.js.map +1 -0
  113. package/dist/diagnostics/daemonContract.d.ts +65 -38
  114. package/dist/diagnostics/daemonContract.d.ts.map +1 -1
  115. package/dist/diagnostics/daemonContract.js +2 -1
  116. package/dist/diagnostics/daemonContract.js.map +1 -1
  117. package/dist/diagnostics/health.d.ts +10 -0
  118. package/dist/diagnostics/health.d.ts.map +1 -1
  119. package/dist/diagnostics/health.js +2 -0
  120. package/dist/diagnostics/health.js.map +1 -1
  121. package/dist/diagnostics/source.d.ts +55 -36
  122. package/dist/diagnostics/source.d.ts.map +1 -1
  123. package/dist/diagnostics/source.js +1 -2
  124. package/dist/diagnostics/source.js.map +1 -1
  125. package/dist/rpc/contract.d.ts +60 -36
  126. package/dist/rpc/contract.d.ts.map +1 -1
  127. package/dist/server/diagnostics/daemon.d.ts +41 -25
  128. package/dist/server/diagnostics/daemon.d.ts.map +1 -1
  129. package/dist/server/diagnostics/fleetHealth.d.ts +10 -0
  130. package/dist/server/diagnostics/fleetHealth.d.ts.map +1 -1
  131. package/dist/server/diagnostics/githubLimits.d.ts +12 -13
  132. package/dist/server/diagnostics/githubLimits.d.ts.map +1 -1
  133. package/dist/server/diagnostics/githubLimits.js +6 -6
  134. package/dist/server/diagnostics/githubLimits.js.map +1 -1
  135. package/dist/server/integration/diagnostics.d.ts +74 -38
  136. package/dist/server/integration/diagnostics.d.ts.map +1 -1
  137. package/dist/server/mcp/client.d.ts +20 -12
  138. package/dist/server/mcp/client.d.ts.map +1 -1
  139. package/dist/server/mcp/queries.d.ts +60 -36
  140. package/dist/server/mcp/queries.d.ts.map +1 -1
  141. package/dist/server/metadata/fields.js +1 -1
  142. package/dist/server/metadata/fields.js.map +1 -1
  143. package/dist/server/packageInfo.d.ts +1 -1
  144. package/dist/server/packageInfo.js +1 -1
  145. package/dist/server/views/remainingQueries.d.ts +20 -12
  146. package/dist/server/views/remainingQueries.d.ts.map +1 -1
  147. package/package.json +7 -6
  148. package/src/browser/diagnostics/schema.ts +12 -2
  149. package/src/client/client.ts +2 -1
  150. package/src/client/formStatus.ts +35 -0
  151. package/src/client/react/BoardShell.tsx +19 -26
  152. package/src/client/react/DocumentContext.tsx +6 -3
  153. package/src/client/react/FormContext.ts +13 -0
  154. package/src/client/react/LiveControls.tsx +5 -25
  155. package/src/client/react/MainLocationContext.ts +8 -0
  156. package/src/client/react/ProjectionFrame.tsx +13 -5
  157. package/src/client/react/ReadingLibrary.tsx +7 -8
  158. package/src/client/react/SystemPage.tsx +2 -1
  159. package/src/client/react/TodayOptions.tsx +40 -33
  160. package/src/client/react/VisualViewer.tsx +6 -6
  161. package/src/client/react/boardRouter.ts +3 -2
  162. package/src/client/react/createResponse.ts +10 -35
  163. package/src/client/react/diagnosticsValues.tsx +20 -12
  164. package/src/client/react/entry.tsx +2 -37
  165. package/src/client/react/githubLimited.ts +5 -0
  166. package/src/client/react/mainLocation.ts +5 -8
  167. package/src/client/react/mountBoard.tsx +49 -0
  168. package/src/client/react/navigationLocation.ts +2 -2
  169. package/src/client/react/retryPage.ts +4 -4
  170. package/src/client/react/useBoardNavigation.ts +20 -8
  171. package/src/client/react/useDocumentPage.ts +12 -6
  172. package/src/client/react/useHandoffForm.ts +25 -33
  173. package/src/client/react/useResponseForm.ts +20 -18
  174. package/src/client/react/visualSources.ts +10 -8
  175. package/src/client/saveFailure.ts +14 -0
  176. package/src/diagnostics/daemonContract.ts +2 -1
  177. package/src/diagnostics/health.ts +2 -0
  178. package/src/diagnostics/source.ts +1 -2
  179. package/src/server/diagnostics/githubLimits.ts +9 -11
  180. package/src/server/metadata/fields.ts +1 -1
  181. package/src/server/packageInfo.ts +1 -1
  182. package/dist/client/handoffs/failureStatus.d.ts +0 -2
  183. package/dist/client/handoffs/failureStatus.d.ts.map +0 -1
  184. package/dist/client/handoffs/failureStatus.js +0 -7
  185. package/dist/client/handoffs/failureStatus.js.map +0 -1
  186. package/dist/client/responses/failure.d.ts +0 -5
  187. package/dist/client/responses/failure.d.ts.map +0 -1
  188. package/dist/client/responses/failure.js +0 -13
  189. package/dist/client/responses/failure.js.map +0 -1
  190. package/dist/server/diagnostics/readCommand.d.ts +0 -4
  191. package/dist/server/diagnostics/readCommand.d.ts.map +0 -1
  192. package/dist/server/diagnostics/readCommand.js +0 -20
  193. package/dist/server/diagnostics/readCommand.js.map +0 -1
  194. package/src/client/handoffs/failureStatus.ts +0 -6
  195. package/src/client/responses/failure.ts +0 -13
  196. package/src/server/diagnostics/readCommand.ts +0 -24
@@ -1,9 +1,9 @@
1
1
  import { useAtomRef } from "@effect/atom-react";
2
- import { Equal, Layer, Option, Schema } from "effect";
3
- import * as Atom from "effect/reactivity/Atom";
4
- import { useEffect, useRef, useState } from "react";
2
+ import { Equal, Option, Schema } from "effect";
3
+ import { useEffect, useState } from "react";
5
4
  import { useCreate } from "@shivaedev/effect-react/create.ts";
6
5
  import { formDraft } from "#client/formDraft.ts";
6
+ import { formStatus, responseSaved } from "#client/formStatus.ts";
7
7
  import { answerRecovery, recoveryText } from "#client/responses/answerRecovery.ts";
8
8
  import { authorLabel } from "#client/responses/authorLabel.ts";
9
9
  import { responseFormSchema } from "#client/responses/formSchema.ts";
@@ -12,12 +12,12 @@ import { retainContext } from "#client/responses/retainContext.ts";
12
12
  import { responseFeedback, responseSummary } from "#client/responses/summary.ts";
13
13
  import { sourceChanged } from "#client/sourceChanged.ts";
14
14
  import { createResponse } from "./createResponse.js";
15
- const runtime = Atom.runtime(Layer.empty);
15
+ import { useFormClient } from "./FormContext.js";
16
16
  export function useResponseForm(source, prompts) {
17
+ const client = useFormClient();
17
18
  const schema = responseFormSchema(prompts.length > 0);
18
19
  const [preview, setPreview] = useState();
19
- const [outcome, setOutcome] = useState();
20
- const [status, setStatus] = useState("");
20
+ const [interaction, setInteraction] = useState("draft");
21
21
  const [attempted, setAttempted] = useState(false);
22
22
  const [label] = useState(() => authorLabel(() => window.localStorage, typeof document === "undefined" ? undefined : document.documentElement.dataset.workspace));
23
23
  const [initial] = useState(() => ({
@@ -33,13 +33,13 @@ export function useResponseForm(source, prompts) {
33
33
  type: "answer",
34
34
  }));
35
35
  const draft = formDraft("response", source.item, source.request);
36
- const modelRef = useRef(undefined);
37
36
  const created = useCreate({
38
- create: (submission) => createResponse(source, submission, () => modelRef.current, setOutcome, setStatus),
37
+ create: (submission) => createResponse(client, source, submission),
39
38
  fields: schema,
40
39
  initialValues: initial,
41
40
  persistedDraft: draft,
42
- runtime,
41
+ rejectField: () => undefined,
42
+ runtime: client.runtime,
43
43
  });
44
44
  const form = created.form;
45
45
  const values = useAtomRef(form.values);
@@ -51,7 +51,6 @@ export function useResponseForm(source, prompts) {
51
51
  }
52
52
  }
53
53
  }, [form, created.created, created.dirty, initial, label]);
54
- modelRef.current = values;
55
54
  const same = values.question === source.id && values.revision === source.reviewedRevision;
56
55
  const stale = Boolean(values.id) && !same;
57
56
  const recovery = answerRecovery(values, !stale || values.answerContext === JSON.stringify([source.id, source.reviewedRevision]));
@@ -76,7 +75,7 @@ export function useResponseForm(source, prompts) {
76
75
  edit();
77
76
  }
78
77
  function showPreview() {
79
- setOutcome(undefined);
78
+ setInteraction("draft");
80
79
  if (!form.values.value.id || form.values.value.question !== source.id || form.values.value.revision !== source.reviewedRevision) {
81
80
  form.change("id", `response.${crypto.randomUUID()}`);
82
81
  }
@@ -88,7 +87,6 @@ export function useResponseForm(source, prompts) {
88
87
  form.blur(name);
89
88
  }
90
89
  setPreview(form.values.value);
91
- setStatus("");
92
90
  }
93
91
  function edit() {
94
92
  if (!form.values.value.id) {
@@ -99,18 +97,17 @@ export function useResponseForm(source, prompts) {
99
97
  label.save(form.values.value.author);
100
98
  setPreview(undefined);
101
99
  if (!created.saving) {
102
- setOutcome(undefined);
103
- setStatus("");
100
+ setInteraction("draft");
104
101
  }
105
102
  }
106
103
  function clear() {
107
104
  setAttempted(false);
108
- setOutcome(undefined);
109
105
  created.revert();
110
106
  setPreview(undefined);
111
- setStatus("Draft cleared. Saved responses are unchanged.");
107
+ setInteraction("cleared");
112
108
  }
113
109
  const previewed = preview !== undefined && same && Equal.equals(preview, values);
110
+ const { outcome, text: status } = formStatus(created, interaction, "response", (saved) => responseSaved(saved.id, created.dirty));
114
111
  const summary = responseSummary(values, prompts, answers(values), attempted);
115
112
  return {
116
113
  answers: answers(values),
@@ -121,7 +118,13 @@ export function useResponseForm(source, prompts) {
121
118
  },
122
119
  attempted,
123
120
  clear,
124
- created,
121
+ created: {
122
+ ...created,
123
+ save: () => {
124
+ setInteraction("submitted");
125
+ created.save();
126
+ },
127
+ },
125
128
  draft,
126
129
  edit,
127
130
  editAnswers,
@@ -1 +1 @@
1
- {"version":3,"file":"useResponseForm.js","sourceRoot":"","sources":["../../../src/client/react/useResponseForm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useResponseForm.js","sourceRoot":"","sources":["../../../src/client/react/useResponseForm.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"visualSources.d.ts","sourceRoot":"","sources":["../../../src/client/react/visualSources.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACrB;AACD,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC1B;AACD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,eAAe,KAAK,IAAI,QA0F7E"}
1
+ {"version":3,"file":"visualSources.d.ts","sourceRoot":"","sources":["../../../src/client/react/visualSources.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACrB;AACD,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC1B;AACD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,eAAe,KAAK,IAAI,QA2F7E"}
@@ -1,16 +1,18 @@
1
1
  import { Clock, Effect } from "effect";
2
- import { useEffect } from "react";
2
+ import { useEffect, useRef } from "react";
3
+ import { useMainLocation } from "./MainLocationContext.js";
3
4
  export function useVisualSources(inspect) {
5
+ const page = useMainLocation();
6
+ const revisionRef = useRef(0);
4
7
  useEffect(() => {
5
- let revision = 0;
6
8
  function refresh() {
7
- revision += 1;
9
+ revisionRef.current += 1;
8
10
  for (const graphic of document.querySelectorAll("#doc img[data-local-image]")) {
9
11
  graphic.tabIndex = 0;
10
12
  graphic.setAttribute("role", "button");
11
13
  graphic.setAttribute("aria-label", `Inspect image: ${graphic.alt || "Local image"}`);
12
14
  const url = new URL(graphic.dataset.localImage ?? graphic.src, location.href);
13
- url.searchParams.set("_wb", `${Effect.runSync(Clock.currentTimeMillis)}-${revision}`);
15
+ url.searchParams.set("_wb", `${Effect.runSync(Clock.currentTimeMillis)}-${revisionRef.current}`);
14
16
  graphic.src = url.href;
15
17
  graphic.onerror = () => {
16
18
  if (!graphic.isConnected || graphic.nextElementSibling?.hasAttribute("data-image-error")) {
@@ -80,13 +82,13 @@ export function useVisualSources(inspect) {
80
82
  }
81
83
  document.addEventListener("click", click);
82
84
  document.addEventListener("keydown", key);
83
- document.addEventListener("board-page", refresh);
84
- refresh();
85
+ if (page.route) {
86
+ refresh();
87
+ }
85
88
  return () => {
86
89
  document.removeEventListener("click", click);
87
90
  document.removeEventListener("keydown", key);
88
- document.removeEventListener("board-page", refresh);
89
91
  };
90
- }, [inspect]);
92
+ }, [inspect, page]);
91
93
  }
92
94
  //# sourceMappingURL=visualSources.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualSources.js","sourceRoot":"","sources":["../../../src/client/react/visualSources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAalC,MAAM,UAAU,gBAAgB,CAAC,OAA6C;IAC7E,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,SAAS,OAAO;YACf,QAAQ,IAAI,CAAC,CAAC;YACd,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,gBAAgB,CAAmB,4BAA4B,CAAC,EAAE,CAAC;gBACjG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACvC,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,kBAAkB,OAAO,CAAC,GAAG,IAAI,aAAa,EAAE,CAAC,CAAC;gBACrF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC9E,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;gBACtF,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC;gBACvB,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE;oBACtB,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,kBAAkB,EAAE,YAAY,CAAC,kBAAkB,CAAC,EAAE,CAAC;wBAC1F,OAAO;oBACR,CAAC;oBACD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;oBAC7C,KAAK,CAAC,YAAY,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;oBAC3C,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;oBACrC,KAAK,CAAC,WAAW,GAAG,+FAA+F,CAAC;oBACpH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC,CAAC;gBACF,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE;oBACrB,IAAI,OAAO,CAAC,kBAAkB,EAAE,YAAY,CAAC,kBAAkB,CAAC,EAAE,CAAC;wBAClE,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC;oBACrC,CAAC;gBACF,CAAC,CAAC;YACH,CAAC;QACF,CAAC;QACD,SAAS,KAAK,CAAC,MAAwB;YACtC,MAAM,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,gBAAgB,CAAmB,4BAA4B,CAAC,CAAC,CAAC;YAC9F,OAAO,CAAC;gBACP,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;gBACjH,MAAM,EAAE,MAAM;gBACd,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;aAChC,CAAC,CAAC;QACJ,CAAC;QACD,SAAS,KAAK,CAAC,KAAiB;YAC/B,IACC,KAAK,CAAC,gBAAgB;mBACnB,KAAK,CAAC,MAAM,KAAK,CAAC;mBAClB,KAAK,CAAC,OAAO;mBACb,KAAK,CAAC,OAAO;mBACb,KAAK,CAAC,QAAQ;mBACd,KAAK,CAAC,MAAM;mBACZ,CAAC,CAAC,KAAK,CAAC,MAAM,YAAY,OAAO,CAAC,EACpC,CAAC;gBACF,OAAO;YACR,CAAC;YACD,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;QACD,SAAS,aAAa,CAAC,KAAiB,EAAE,MAAe;YACxD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAoB,6BAA6B,CAAC,CAAC;YACjF,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;YACjE,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,EAAE,CAAC;gBAC7C,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBAChE,OAAO;YACR,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAoB,qCAAqC,CAAC,CAAC;YACtF,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,EAAE,CAAC;gBACzF,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,OAAO,CAAC;oBACP,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;oBACxG,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,CAAC;iBACX,CAAC,CAAC;gBACH,OAAO;YACR,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAmB,4BAA4B,CAAC,CAAC;YAC9E,IAAI,MAAM,EAAE,CAAC;gBACZ,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,KAAK,CAAC,MAAM,CAAC,CAAC;YACf,CAAC;QACF,CAAC;QACD,SAAS,GAAG,CAAC,KAAoB;YAChC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,YAAY,gBAAgB,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,4BAA4B,CAAC,EAAE,CAAC;gBAC1I,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACrB,CAAC;QACF,CAAC;QACD,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC1C,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC1C,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACjD,OAAO,EAAE,CAAC;QACV,OAAO,GAAG,EAAE;YACX,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC7C,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC7C,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"visualSources.js","sourceRoot":"","sources":["../../../src/client/react/visualSources.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { RpcClientError } from "effect/rpc/RpcClientError";
2
+ import type { ResponseRejection } from "#rpc/rejections.ts";
3
+ export type SaveFailure = ResponseRejection | RpcClientError;
4
+ export declare function saveFailure(error: SaveFailure, kind: "response" | "handoff"): {
5
+ outcome: string;
6
+ text: string;
7
+ };
8
+ //# sourceMappingURL=saveFailure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saveFailure.d.ts","sourceRoot":"","sources":["../../src/client/saveFailure.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG,cAAc,CAAC;AAE7D,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,GAAG,SAAS;;;EAQ3E"}
@@ -0,0 +1,8 @@
1
+ export function saveFailure(error, kind) {
2
+ const outcome = error._tag === "PublicationUncertain" || error._tag === "InternalServerError" || error._tag === "RpcClientError" ? "uncertain" : "rejected";
3
+ const retained = kind === "response"
4
+ ? "Draft retained. Preview and retry with the same identity; saved content will be reconciled."
5
+ : "Draft retained; preview and retry.";
6
+ return { outcome, text: `${outcome === "rejected" ? "Rejected" : "Uncertain"}: ${String(error)}. ${retained}` };
7
+ }
8
+ //# sourceMappingURL=saveFailure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saveFailure.js","sourceRoot":"","sources":["../../src/client/saveFailure.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,WAAW,CAAC,KAAkB,EAAE,IAA4B;IAC3E,MAAM,OAAO,GACZ,KAAK,CAAC,IAAI,KAAK,sBAAsB,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC;IAC7I,MAAM,QAAQ,GACb,IAAI,KAAK,UAAU;QAClB,CAAC,CAAC,6FAA6F;QAC/F,CAAC,CAAC,oCAAoC,CAAC;IACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,KAAK,MAAM,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,EAAE,CAAC;AACjH,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { Schema } from "effect";
2
+ import { ServiceUnavailable } from "@shivaedev/platform/errors/taxonomy.ts";
2
3
  export declare const DiagnosticsSnapshot: Schema.Struct<{
3
4
  readonly codex: Schema.Union<readonly [Schema.Struct<{
4
5
  readonly observedAt: Schema.Number;
@@ -25,6 +26,16 @@ export declare const DiagnosticsSnapshot: Schema.Struct<{
25
26
  readonly state: Schema.Literal<"ready">;
26
27
  readonly value: Schema.Struct<{
27
28
  readonly concurrency: Schema.Int;
29
+ readonly github: Schema.optional<Schema.$Array<Schema.Struct<{
30
+ readonly limit: Schema.Int;
31
+ readonly limitedBy: Schema.NullOr<Schema.Literals<readonly ["rate-limit", "reserve"]>>;
32
+ readonly limitedUntil: Schema.NullOr<Schema.Number>;
33
+ readonly observedAt: Schema.Number;
34
+ readonly remaining: Schema.Int;
35
+ readonly reset: Schema.Int;
36
+ readonly resource: Schema.String;
37
+ readonly used: Schema.Int;
38
+ }>>>;
28
39
  readonly lastCapacityRejection: Schema.NullOr<Schema.Struct<{
29
40
  readonly at: Schema.Number;
30
41
  readonly cause: Schema.String;
@@ -49,18 +60,16 @@ export declare const DiagnosticsSnapshot: Schema.Struct<{
49
60
  readonly github: Schema.Union<readonly [Schema.Struct<{
50
61
  readonly observedAt: Schema.Number;
51
62
  readonly state: Schema.Literal<"ready">;
52
- readonly value: Schema.Struct<{
53
- readonly core: Schema.Struct<{
54
- readonly limit: Schema.Int;
55
- readonly remaining: Schema.Int;
56
- readonly reset: Schema.Int;
57
- }>;
58
- readonly graphql: Schema.Struct<{
59
- readonly limit: Schema.Int;
60
- readonly remaining: Schema.Int;
61
- readonly reset: Schema.Int;
62
- }>;
63
- }>;
63
+ readonly value: Schema.$Array<Schema.Struct<{
64
+ readonly limit: Schema.Int;
65
+ readonly limitedBy: Schema.NullOr<Schema.Literals<readonly ["rate-limit", "reserve"]>>;
66
+ readonly limitedUntil: Schema.NullOr<Schema.Number>;
67
+ readonly observedAt: Schema.Number;
68
+ readonly remaining: Schema.Int;
69
+ readonly reset: Schema.Int;
70
+ readonly resource: Schema.String;
71
+ readonly used: Schema.Int;
72
+ }>>;
64
73
  }>, Schema.Struct<{
65
74
  readonly cause: Schema.String;
66
75
  readonly observedAt: Schema.Number;
@@ -94,6 +103,16 @@ export declare const DiagnosticsContract: import("@shivaedev/effect-contract/con
94
103
  readonly state: Schema.Literal<"ready">;
95
104
  readonly value: Schema.Struct<{
96
105
  readonly concurrency: Schema.Int;
106
+ readonly github: Schema.optional<Schema.$Array<Schema.Struct<{
107
+ readonly limit: Schema.Int;
108
+ readonly limitedBy: Schema.NullOr<Schema.Literals<readonly ["rate-limit", "reserve"]>>;
109
+ readonly limitedUntil: Schema.NullOr<Schema.Number>;
110
+ readonly observedAt: Schema.Number;
111
+ readonly remaining: Schema.Int;
112
+ readonly reset: Schema.Int;
113
+ readonly resource: Schema.String;
114
+ readonly used: Schema.Int;
115
+ }>>>;
97
116
  readonly lastCapacityRejection: Schema.NullOr<Schema.Struct<{
98
117
  readonly at: Schema.Number;
99
118
  readonly cause: Schema.String;
@@ -118,18 +137,16 @@ export declare const DiagnosticsContract: import("@shivaedev/effect-contract/con
118
137
  readonly github: Schema.Union<readonly [Schema.Struct<{
119
138
  readonly observedAt: Schema.Number;
120
139
  readonly state: Schema.Literal<"ready">;
121
- readonly value: Schema.Struct<{
122
- readonly core: Schema.Struct<{
123
- readonly limit: Schema.Int;
124
- readonly remaining: Schema.Int;
125
- readonly reset: Schema.Int;
126
- }>;
127
- readonly graphql: Schema.Struct<{
128
- readonly limit: Schema.Int;
129
- readonly remaining: Schema.Int;
130
- readonly reset: Schema.Int;
131
- }>;
132
- }>;
140
+ readonly value: Schema.$Array<Schema.Struct<{
141
+ readonly limit: Schema.Int;
142
+ readonly limitedBy: Schema.NullOr<Schema.Literals<readonly ["rate-limit", "reserve"]>>;
143
+ readonly limitedUntil: Schema.NullOr<Schema.Number>;
144
+ readonly observedAt: Schema.Number;
145
+ readonly remaining: Schema.Int;
146
+ readonly reset: Schema.Int;
147
+ readonly resource: Schema.String;
148
+ readonly used: Schema.Int;
149
+ }>>;
133
150
  }>, Schema.Struct<{
134
151
  readonly cause: Schema.String;
135
152
  readonly observedAt: Schema.Number;
@@ -153,7 +170,9 @@ export declare const DiagnosticsContract: import("@shivaedev/effect-contract/con
153
170
  readonly updatedAt: Schema.NullOr<Schema.Number>;
154
171
  readonly workId: Schema.String;
155
172
  }>>;
156
- }>, {}>>], readonly [], import("effect/rpc/Rpc").Rpc<"daemon.diagnostics", Schema.Struct<{}>, Schema.Struct<{
173
+ }>, {
174
+ readonly ServiceUnavailable: typeof ServiceUnavailable;
175
+ }>>], readonly [], import("effect/rpc/Rpc").Rpc<"daemon.diagnostics", Schema.Struct<{}>, Schema.Struct<{
157
176
  readonly codex: Schema.Union<readonly [Schema.Struct<{
158
177
  readonly observedAt: Schema.Number;
159
178
  readonly state: Schema.Literal<"ready">;
@@ -179,6 +198,16 @@ export declare const DiagnosticsContract: import("@shivaedev/effect-contract/con
179
198
  readonly state: Schema.Literal<"ready">;
180
199
  readonly value: Schema.Struct<{
181
200
  readonly concurrency: Schema.Int;
201
+ readonly github: Schema.optional<Schema.$Array<Schema.Struct<{
202
+ readonly limit: Schema.Int;
203
+ readonly limitedBy: Schema.NullOr<Schema.Literals<readonly ["rate-limit", "reserve"]>>;
204
+ readonly limitedUntil: Schema.NullOr<Schema.Number>;
205
+ readonly observedAt: Schema.Number;
206
+ readonly remaining: Schema.Int;
207
+ readonly reset: Schema.Int;
208
+ readonly resource: Schema.String;
209
+ readonly used: Schema.Int;
210
+ }>>>;
182
211
  readonly lastCapacityRejection: Schema.NullOr<Schema.Struct<{
183
212
  readonly at: Schema.Number;
184
213
  readonly cause: Schema.String;
@@ -203,18 +232,16 @@ export declare const DiagnosticsContract: import("@shivaedev/effect-contract/con
203
232
  readonly github: Schema.Union<readonly [Schema.Struct<{
204
233
  readonly observedAt: Schema.Number;
205
234
  readonly state: Schema.Literal<"ready">;
206
- readonly value: Schema.Struct<{
207
- readonly core: Schema.Struct<{
208
- readonly limit: Schema.Int;
209
- readonly remaining: Schema.Int;
210
- readonly reset: Schema.Int;
211
- }>;
212
- readonly graphql: Schema.Struct<{
213
- readonly limit: Schema.Int;
214
- readonly remaining: Schema.Int;
215
- readonly reset: Schema.Int;
216
- }>;
217
- }>;
235
+ readonly value: Schema.$Array<Schema.Struct<{
236
+ readonly limit: Schema.Int;
237
+ readonly limitedBy: Schema.NullOr<Schema.Literals<readonly ["rate-limit", "reserve"]>>;
238
+ readonly limitedUntil: Schema.NullOr<Schema.Number>;
239
+ readonly observedAt: Schema.Number;
240
+ readonly remaining: Schema.Int;
241
+ readonly reset: Schema.Int;
242
+ readonly resource: Schema.String;
243
+ readonly used: Schema.Int;
244
+ }>>;
218
245
  }>, Schema.Struct<{
219
246
  readonly cause: Schema.String;
220
247
  readonly observedAt: Schema.Number;
@@ -238,7 +265,7 @@ export declare const DiagnosticsContract: import("@shivaedev/effect-contract/con
238
265
  readonly updatedAt: Schema.NullOr<Schema.Number>;
239
266
  readonly workId: Schema.String;
240
267
  }>>;
241
- }>, Schema.Never, never, never>, readonly []>;
268
+ }>, Schema.Union<readonly (typeof ServiceUnavailable)[]>, never, never>, readonly []>;
242
269
  export declare const DAEMON_RPC_PATH = "/_fleet/rpc";
243
270
  export declare const DAEMON_PORT = 3457;
244
271
  //# sourceMappingURL=daemonContract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"daemonContract.d.ts","sourceRoot":"","sources":["../../src/diagnostics/daemonContract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAgBhC,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAI9B,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,mBAAmB,CAAC,IAAI,CAAC;AAElE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAK9B,CAAC;AACH,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAC7C,eAAO,MAAM,WAAW,OAAO,CAAC"}
1
+ {"version":3,"file":"daemonContract.d.ts","sourceRoot":"","sources":["../../src/diagnostics/daemonContract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAc5E,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAI9B,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,mBAAmB,CAAC,IAAI,CAAC;AAElE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qFAK9B,CAAC;AACH,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAC7C,eAAO,MAAM,WAAW,OAAO,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { Schema } from "effect";
2
2
  import { contract } from "@shivaedev/effect-contract/contract.ts";
3
3
  import { query } from "@shivaedev/effect-contract/operation.ts";
4
+ import { ServiceUnavailable } from "@shivaedev/platform/errors/taxonomy.ts";
4
5
  import { CodexLimits, GithubLimits } from "#browser/diagnostics/schema.ts";
5
6
  import { FleetItems } from "./fleetItems.js";
6
7
  import { FleetHealth } from "./health.js";
@@ -19,7 +20,7 @@ export const DiagnosticsSnapshot = Schema.Struct({
19
20
  export const DiagnosticsContract = contract("daemon", {
20
21
  queries: [
21
22
  query("diagnostics", { payload: {}, reads: () => [], success: DiagnosticsSnapshot }),
22
- query("fleetItems", { payload: {}, reads: () => [], success: FleetItems }),
23
+ query("fleetItems", { payload: {}, reads: () => [], rejections: { ServiceUnavailable }, success: FleetItems }),
23
24
  ],
24
25
  });
25
26
  export const DAEMON_RPC_PATH = "/_fleet/rpc";
@@ -1 +1 @@
1
- {"version":3,"file":"daemonContract.js","sourceRoot":"","sources":["../../src/diagnostics/daemonContract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAE9I,SAAS,WAAW,CAA6B,KAAc;IAC9D,OAAO,MAAM,CAAC,KAAK,CAAC;QACnB,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;QAC/E,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;KACnH,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC;IAChD,KAAK,EAAE,WAAW,CAAC,WAAW,CAAC;IAC/B,KAAK,EAAE,WAAW,CAAC,WAAW,CAAC;IAC/B,MAAM,EAAE,WAAW,CAAC,YAAY,CAAC;CACjC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC,QAAQ,EAAE;IACrD,OAAO,EAAE;QACR,KAAK,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;QACpF,KAAK,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;KAC1E;CACD,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;AAC7C,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"daemonContract.js","sourceRoot":"","sources":["../../src/diagnostics/daemonContract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAE9I,SAAS,WAAW,CAA6B,KAAc;IAC9D,OAAO,MAAM,CAAC,KAAK,CAAC;QACnB,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;QAC/E,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;KACnH,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC;IAChD,KAAK,EAAE,WAAW,CAAC,WAAW,CAAC;IAC/B,KAAK,EAAE,WAAW,CAAC,WAAW,CAAC;IAC/B,MAAM,EAAE,WAAW,CAAC,YAAY,CAAC;CACjC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC,QAAQ,EAAE;IACrD,OAAO,EAAE;QACR,KAAK,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;QACpF,KAAK,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,EAAE,kBAAkB,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;KAC9G;CACD,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;AAC7C,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC"}
@@ -8,6 +8,16 @@ export declare const FLEET_HEALTH_NAME = "health.json";
8
8
  export declare const FLEET_HEALTH_FILE = "fleet/health.json";
9
9
  export declare const FleetHealth: Schema.Struct<{
10
10
  readonly concurrency: Schema.Int;
11
+ readonly github: Schema.optional<Schema.$Array<Schema.Struct<{
12
+ readonly limit: Schema.Int;
13
+ readonly limitedBy: Schema.NullOr<Schema.Literals<readonly ["rate-limit", "reserve"]>>;
14
+ readonly limitedUntil: Schema.NullOr<Schema.Number>;
15
+ readonly observedAt: Schema.Number;
16
+ readonly remaining: Schema.Int;
17
+ readonly reset: Schema.Int;
18
+ readonly resource: Schema.String;
19
+ readonly used: Schema.Int;
20
+ }>>>;
11
21
  readonly lastCapacityRejection: Schema.NullOr<Schema.Struct<{
12
22
  readonly at: Schema.Number;
13
23
  readonly cause: Schema.String;
@@ -1 +1 @@
1
- {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/diagnostics/health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,eAAO,MAAM,iBAAiB;;;EAA+G,CAAC;AAC9I,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,IAAI,CAAC;AAE9D,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAC/C,eAAO,MAAM,iBAAiB,sBAA+B,CAAC;AAC9D,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;EAUtB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC"}
1
+ {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/diagnostics/health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,eAAO,MAAM,iBAAiB;;;EAA+G,CAAC;AAC9I,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,IAAI,CAAC;AAE9D,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAC/C,eAAO,MAAM,iBAAiB,sBAA+B,CAAC;AAC9D,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWtB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { Schema } from "effect";
2
+ import { GithubLimits } from "#browser/diagnostics/schema.ts";
2
3
  const Count = Schema.Int.check(Schema.isGreaterThanOrEqualTo(0));
3
4
  const Timestamp = Schema.Number.check(Schema.isFinite(), Schema.isGreaterThanOrEqualTo(0), Schema.isLessThanOrEqualTo(8_640_000_000_000_000));
4
5
  export const CapacityRejection = Schema.Struct({ at: Timestamp, cause: Schema.String.check(Schema.isMinLength(1), Schema.isMaxLength(500)) });
@@ -6,6 +7,7 @@ export const FLEET_HEALTH_NAME = "health.json";
6
7
  export const FLEET_HEALTH_FILE = `fleet/${FLEET_HEALTH_NAME}`;
7
8
  export const FleetHealth = Schema.Struct({
8
9
  concurrency: Schema.Int.check(Schema.isGreaterThan(0)),
10
+ github: Schema.optional(GithubLimits),
9
11
  lastCapacityRejection: Schema.NullOr(CapacityRejection),
10
12
  lastSchedulerPass: Schema.NullOr(Timestamp),
11
13
  observedAt: Timestamp,
@@ -1 +1 @@
1
- {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/diagnostics/health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;AACjE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAC9I,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;AAG9I,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAAC;AAC/C,MAAM,CAAC,MAAM,iBAAiB,GAAG,SAAS,iBAAiB,EAAE,CAAC;AAC9D,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IACxC,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACtD,qBAAqB,EAAE,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC;IACvD,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;IAC3C,UAAU,EAAE,SAAS;IACrB,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,KAAK;IACd,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACvD,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;CACrF,CAAC,CAAC"}
1
+ {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/diagnostics/health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;AACjE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAC9I,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;AAG9I,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAAC;AAC/C,MAAM,CAAC,MAAM,iBAAiB,GAAG,SAAS,iBAAiB,EAAE,CAAC;AAC9D,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IACxC,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;IACrC,qBAAqB,EAAE,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC;IACvD,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;IAC3C,UAAU,EAAE,SAAS;IACrB,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,KAAK;IACd,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACvD,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;CACrF,CAAC,CAAC"}
@@ -18,21 +18,24 @@ export declare const CodexLimits: Schema.Struct<{
18
18
  readonly usedPercent: Schema.Number;
19
19
  readonly windowDurationMins: Schema.NullOr<Schema.Int>;
20
20
  }>>;
21
- }>, GithubLimits: Schema.Struct<{
22
- readonly core: Schema.Struct<{
23
- readonly limit: Schema.Int;
24
- readonly remaining: Schema.Int;
25
- readonly reset: Schema.Int;
26
- }>;
27
- readonly graphql: Schema.Struct<{
28
- readonly limit: Schema.Int;
29
- readonly remaining: Schema.Int;
30
- readonly reset: Schema.Int;
31
- }>;
32
- }>, GithubWindow: Schema.Struct<{
21
+ }>, GithubLimits: Schema.$Array<Schema.Struct<{
22
+ readonly limit: Schema.Int;
23
+ readonly limitedBy: Schema.NullOr<Schema.Literals<readonly ["rate-limit", "reserve"]>>;
24
+ readonly limitedUntil: Schema.NullOr<Schema.Number>;
25
+ readonly observedAt: Schema.Number;
26
+ readonly remaining: Schema.Int;
27
+ readonly reset: Schema.Int;
28
+ readonly resource: Schema.String;
29
+ readonly used: Schema.Int;
30
+ }>>, GithubWindow: Schema.Struct<{
33
31
  readonly limit: Schema.Int;
32
+ readonly limitedBy: Schema.NullOr<Schema.Literals<readonly ["rate-limit", "reserve"]>>;
33
+ readonly limitedUntil: Schema.NullOr<Schema.Number>;
34
+ readonly observedAt: Schema.Number;
34
35
  readonly remaining: Schema.Int;
35
36
  readonly reset: Schema.Int;
37
+ readonly resource: Schema.String;
38
+ readonly used: Schema.Int;
36
39
  }>, UsageWindow: Schema.Struct<{
37
40
  readonly resetsAt: Schema.NullOr<Schema.Int>;
38
41
  readonly usedPercent: Schema.Number;
@@ -68,6 +71,16 @@ export declare const diagnostics: (sources: Sources) => Effect.Effect<Effect.Eff
68
71
  }>;
69
72
  fleet: Observation<{
70
73
  readonly concurrency: number;
74
+ readonly github?: readonly {
75
+ readonly limit: number;
76
+ readonly limitedBy: "rate-limit" | "reserve" | null;
77
+ readonly limitedUntil: number | null;
78
+ readonly observedAt: number;
79
+ readonly remaining: number;
80
+ readonly reset: number;
81
+ readonly resource: string;
82
+ readonly used: number;
83
+ }[] | undefined;
71
84
  readonly lastCapacityRejection: {
72
85
  readonly at: number;
73
86
  readonly cause: string;
@@ -84,18 +97,16 @@ export declare const diagnostics: (sources: Sources) => Effect.Effect<Effect.Eff
84
97
  readonly orchestrator: number;
85
98
  };
86
99
  }>;
87
- github: Observation<{
88
- readonly core: {
89
- readonly limit: number;
90
- readonly remaining: number;
91
- readonly reset: number;
92
- };
93
- readonly graphql: {
94
- readonly limit: number;
95
- readonly remaining: number;
96
- readonly reset: number;
97
- };
98
- }>;
100
+ github: Observation<readonly {
101
+ readonly limit: number;
102
+ readonly limitedBy: "rate-limit" | "reserve" | null;
103
+ readonly limitedUntil: number | null;
104
+ readonly observedAt: number;
105
+ readonly remaining: number;
106
+ readonly reset: number;
107
+ readonly resource: string;
108
+ readonly used: number;
109
+ }[]>;
99
110
  }, never, never>, never, never>;
100
111
  type DiagnosticsInput = {
101
112
  readonly _tag: "Sources";
@@ -123,6 +134,16 @@ export declare const Diagnostics: Context.Service<"WorkBoard/Diagnostics", Reado
123
134
  }>;
124
135
  fleet: Observation<{
125
136
  readonly concurrency: number;
137
+ readonly github?: readonly {
138
+ readonly limit: number;
139
+ readonly limitedBy: "rate-limit" | "reserve" | null;
140
+ readonly limitedUntil: number | null;
141
+ readonly observedAt: number;
142
+ readonly remaining: number;
143
+ readonly reset: number;
144
+ readonly resource: string;
145
+ readonly used: number;
146
+ }[] | undefined;
126
147
  readonly lastCapacityRejection: {
127
148
  readonly at: number;
128
149
  readonly cause: string;
@@ -139,18 +160,16 @@ export declare const Diagnostics: Context.Service<"WorkBoard/Diagnostics", Reado
139
160
  readonly orchestrator: number;
140
161
  };
141
162
  }>;
142
- github: Observation<{
143
- readonly core: {
144
- readonly limit: number;
145
- readonly remaining: number;
146
- readonly reset: number;
147
- };
148
- readonly graphql: {
149
- readonly limit: number;
150
- readonly remaining: number;
151
- readonly reset: number;
152
- };
153
- }>;
163
+ github: Observation<readonly {
164
+ readonly limit: number;
165
+ readonly limitedBy: "rate-limit" | "reserve" | null;
166
+ readonly limitedUntil: number | null;
167
+ readonly observedAt: number;
168
+ readonly remaining: number;
169
+ readonly reset: number;
170
+ readonly resource: string;
171
+ readonly used: number;
172
+ }[]>;
154
173
  }, never, never>;
155
174
  }>> & {
156
175
  readonly layer: import("effect/Layer").Layer<"WorkBoard/Diagnostics", never, DiagnosticsConfig>;
@@ -1 +1 @@
1
- {"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../src/diagnostics/source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAExD,OAAO,KAAK,MAAM,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;;;;;AAE/C,qBAAa,aAAc,SAAQ,kBAGjC;CAAG;AAEL,eAAO,MAAQ,WAAW;;;;;;;;;;;IAAE,YAAY;;;;;;;;;;;IAAE,YAAY;;;;IAAE,WAAW;;;;EAAW,CAAC;AAC/E,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC;AAClD,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,IAAI,CAAC;AACpD,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,IAAI,CAAC;AACpD,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC;AAClD,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;AACxD,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;CACtC;;AACD,qBAAa,kBAAmB,SAAQ,uBAA8E;CAAG;AAEzH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AAEnD,eAAO,MAAM,OAAO,GAA6C,CAAC,mEAMhE,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAQtB,CAAC;AAEH,KAAK,gBAAgB,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAA;CAAE,CAAC;;AAE5F,qBAAa,iBAAkB,SAAQ,sBAAqF;CAAG;AAE/H,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQtB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,UAAU,CAAC"}
1
+ {"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../src/diagnostics/source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAExD,OAAO,KAAK,MAAM,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;;;;;AAE/C,qBAAa,aAAc,SAAQ,kBAGjC;CAAG;AAEL,eAAO,MAAQ,WAAW;;;;;;;;;;;IAAE,YAAY;;;;;;;;;KAAE,YAAY;;;;;;;;;IAAE,WAAW;;;;EAAW,CAAC;AAC/E,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC;AAClD,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,IAAI,CAAC;AACpD,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,IAAI,CAAC;AACpD,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC;AAClD,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;AACxD,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;CACtC;;AACD,qBAAa,kBAAmB,SAAQ,uBAA8E;CAAG;AAEzH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AAEnD,eAAO,MAAM,OAAO,GAA6C,CAAC,mEAMhE,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAOtB,CAAC;AAEH,KAAK,gBAAgB,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAA;CAAE,CAAC;;AAE5F,qBAAa,iBAAkB,SAAQ,sBAAqF;CAAG;AAE/H,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQtB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,UAAU,CAAC"}