@shivaedev/work-board 0.16.0 → 0.17.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 (197) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +4 -4
  3. package/assets/react.js +52 -39
  4. package/dist/browser/views/remaining.d.ts +0 -240
  5. package/dist/browser/views/remaining.d.ts.map +1 -1
  6. package/dist/browser/views/remaining.js +0 -2
  7. package/dist/browser/views/remaining.js.map +1 -1
  8. package/dist/client/react/DocumentAttention.d.ts.map +1 -1
  9. package/dist/client/react/DocumentAttention.js +2 -3
  10. package/dist/client/react/DocumentAttention.js.map +1 -1
  11. package/dist/client/react/ProjectionFrame.js +1 -1
  12. package/dist/client/react/ProjectionFrame.js.map +1 -1
  13. package/dist/client/react/RemainingMain.d.ts.map +1 -1
  14. package/dist/client/react/RemainingMain.js +0 -3
  15. package/dist/client/react/RemainingMain.js.map +1 -1
  16. package/dist/client/react/ResultPage.d.ts.map +1 -1
  17. package/dist/client/react/ResultPage.js +2 -1
  18. package/dist/client/react/ResultPage.js.map +1 -1
  19. package/dist/client/react/ShellApi.d.ts +0 -1
  20. package/dist/client/react/ShellApi.d.ts.map +1 -1
  21. package/dist/client/react/TodayOptions.d.ts.map +1 -1
  22. package/dist/client/react/TodayOptions.js +2 -2
  23. package/dist/client/react/TodayOptions.js.map +1 -1
  24. package/dist/client/react/entry.js +1 -1
  25. package/dist/client/react/entry.js.map +1 -1
  26. package/dist/client/react/loadBoardPage.d.ts.map +1 -1
  27. package/dist/client/react/loadBoardPage.js +5 -13
  28. package/dist/client/react/loadBoardPage.js.map +1 -1
  29. package/dist/client/react/loadRemaining.d.ts +109 -349
  30. package/dist/client/react/loadRemaining.d.ts.map +1 -1
  31. package/dist/client/react/loadRemaining.js +0 -2
  32. package/dist/client/react/loadRemaining.js.map +1 -1
  33. package/dist/client/react/pageQueries.d.ts.map +1 -1
  34. package/dist/client/react/pageQueries.js +0 -3
  35. package/dist/client/react/pageQueries.js.map +1 -1
  36. package/dist/client/react/readerLink.js +1 -1
  37. package/dist/client/react/readerLink.js.map +1 -1
  38. package/dist/client/react/remainingRoute.d.ts +1 -1
  39. package/dist/client/react/remainingRoute.d.ts.map +1 -1
  40. package/dist/client/react/remainingRoute.js +0 -2
  41. package/dist/client/react/remainingRoute.js.map +1 -1
  42. package/dist/responses/url.js +1 -1
  43. package/dist/responses/url.js.map +1 -1
  44. package/dist/rpc/PageUrl.d.ts.map +1 -1
  45. package/dist/rpc/PageUrl.js +0 -1
  46. package/dist/rpc/PageUrl.js.map +1 -1
  47. package/dist/rpc/contract.d.ts +2203 -2926
  48. package/dist/rpc/contract.d.ts.map +1 -1
  49. package/dist/rpc/contract.js +6 -9
  50. package/dist/rpc/contract.js.map +1 -1
  51. package/dist/rpc/responseContract.d.ts +56 -56
  52. package/dist/server/{responses/service.d.ts → Responses.d.ts} +9 -21
  53. package/dist/server/Responses.d.ts.map +1 -0
  54. package/dist/server/{responses/service.js → Responses.js} +22 -22
  55. package/dist/server/Responses.js.map +1 -0
  56. package/dist/server/attention/inbox.d.ts +2 -0
  57. package/dist/server/attention/inbox.d.ts.map +1 -1
  58. package/dist/server/attention/inbox.js +1 -0
  59. package/dist/server/attention/inbox.js.map +1 -1
  60. package/dist/server/attention/projection.js +1 -1
  61. package/dist/server/attention/projection.js.map +1 -1
  62. package/dist/server/attention/requestInbox.d.ts +3 -0
  63. package/dist/server/attention/requestInbox.d.ts.map +1 -1
  64. package/dist/server/attention/requestInbox.js +1 -0
  65. package/dist/server/attention/requestInbox.js.map +1 -1
  66. package/dist/server/boardRuntime.d.ts +2 -2
  67. package/dist/server/boardRuntime.d.ts.map +1 -1
  68. package/dist/server/boardRuntime.js +12 -16
  69. package/dist/server/boardRuntime.js.map +1 -1
  70. package/dist/server/boardServices.d.ts +3 -4
  71. package/dist/server/boardServices.d.ts.map +1 -1
  72. package/dist/server/boardServices.js +5 -4
  73. package/dist/server/boardServices.js.map +1 -1
  74. package/dist/server/boardSocket.d.ts +1 -1
  75. package/dist/server/boardSocket.d.ts.map +1 -1
  76. package/dist/server/document/read.d.ts +4 -10
  77. package/dist/server/document/read.d.ts.map +1 -1
  78. package/dist/server/document/read.js +5 -5
  79. package/dist/server/document/read.js.map +1 -1
  80. package/dist/server/document/requests.d.ts.map +1 -1
  81. package/dist/server/document/requests.js +1 -2
  82. package/dist/server/document/requests.js.map +1 -1
  83. package/dist/server/handoffs/Service.d.ts +1 -2
  84. package/dist/server/handoffs/Service.d.ts.map +1 -1
  85. package/dist/server/handoffs/Service.js +14 -13
  86. package/dist/server/handoffs/Service.js.map +1 -1
  87. package/dist/server/http/assets.d.ts +0 -3
  88. package/dist/server/http/assets.d.ts.map +1 -1
  89. package/dist/server/http/assets.js +1 -7
  90. package/dist/server/http/assets.js.map +1 -1
  91. package/dist/server/http/boardRoutes.d.ts.map +1 -1
  92. package/dist/server/http/boardRoutes.js +3 -3
  93. package/dist/server/http/boardRoutes.js.map +1 -1
  94. package/dist/server/integration/responses.d.ts +207 -4
  95. package/dist/server/integration/responses.d.ts.map +1 -1
  96. package/dist/server/integration/responses.js +4 -2
  97. package/dist/server/integration/responses.js.map +1 -1
  98. package/dist/server/mcp/client.d.ts +2 -242
  99. package/dist/server/mcp/client.d.ts.map +1 -1
  100. package/dist/server/mcp/queries.d.ts +24 -744
  101. package/dist/server/mcp/queries.d.ts.map +1 -1
  102. package/dist/server/mcp/queries.js +3 -3
  103. package/dist/server/mcp/queries.js.map +1 -1
  104. package/dist/server/packageInfo.d.ts +1 -1
  105. package/dist/server/packageInfo.js +1 -1
  106. package/dist/server/responses/readingActions.d.ts +10 -1
  107. package/dist/server/responses/readingActions.d.ts.map +1 -1
  108. package/dist/server/responses/readingActions.js +2 -4
  109. package/dist/server/responses/readingActions.js.map +1 -1
  110. package/dist/server/responses/registerQuestion.d.ts +2 -2
  111. package/dist/server/responses/registerQuestion.d.ts.map +1 -1
  112. package/dist/server/responses/registerQuestion.js +3 -3
  113. package/dist/server/responses/registerQuestion.js.map +1 -1
  114. package/dist/server/responses/retry.d.ts +2 -2
  115. package/dist/server/responses/retry.d.ts.map +1 -1
  116. package/dist/server/responses/retry.js +1 -1
  117. package/dist/server/responses/retry.js.map +1 -1
  118. package/dist/server/rpc/HandlerOptions.d.ts +0 -8
  119. package/dist/server/rpc/HandlerOptions.d.ts.map +1 -1
  120. package/dist/server/rpc/handlers.d.ts +1 -1
  121. package/dist/server/rpc/handlers.d.ts.map +1 -1
  122. package/dist/server/rpc/handlers.js +14 -13
  123. package/dist/server/rpc/handlers.js.map +1 -1
  124. package/dist/server/rpc/hints.d.ts +3 -5
  125. package/dist/server/rpc/hints.d.ts.map +1 -1
  126. package/dist/server/rpc/hints.js +5 -1
  127. package/dist/server/rpc/hints.js.map +1 -1
  128. package/dist/server/views/fleetItems.d.ts +2 -2
  129. package/dist/server/views/fleetItems.d.ts.map +1 -1
  130. package/dist/server/views/fleetItems.js +8 -3
  131. package/dist/server/views/fleetItems.js.map +1 -1
  132. package/dist/server/views/projectionQueries.d.ts +5 -9
  133. package/dist/server/views/projectionQueries.d.ts.map +1 -1
  134. package/dist/server/views/projectionQueries.js +6 -6
  135. package/dist/server/views/projectionQueries.js.map +1 -1
  136. package/dist/server/views/remainingQueries.d.ts +4 -252
  137. package/dist/server/views/remainingQueries.d.ts.map +1 -1
  138. package/dist/server/views/remainingQueries.js +11 -19
  139. package/dist/server/views/remainingQueries.js.map +1 -1
  140. package/dist/server/workspace.d.ts +222 -0
  141. package/dist/server/workspace.d.ts.map +1 -0
  142. package/dist/server/workspace.js +25 -0
  143. package/dist/server/workspace.js.map +1 -0
  144. package/package.json +3 -3
  145. package/src/browser/views/remaining.ts +0 -3
  146. package/src/client/react/DocumentAttention.tsx +2 -3
  147. package/src/client/react/ProjectionFrame.tsx +1 -1
  148. package/src/client/react/RemainingMain.tsx +0 -10
  149. package/src/client/react/ResultPage.tsx +2 -2
  150. package/src/client/react/ShellApi.ts +0 -1
  151. package/src/client/react/TodayOptions.tsx +2 -2
  152. package/src/client/react/entry.tsx +1 -1
  153. package/src/client/react/loadBoardPage.ts +5 -14
  154. package/src/client/react/loadRemaining.ts +0 -2
  155. package/src/client/react/pageQueries.ts +0 -3
  156. package/src/client/react/readerLink.ts +1 -1
  157. package/src/client/react/remainingRoute.ts +0 -2
  158. package/src/responses/url.ts +1 -1
  159. package/src/rpc/PageUrl.ts +0 -1
  160. package/src/rpc/contract.ts +6 -9
  161. package/src/server/{responses/service.ts → Responses.ts} +21 -29
  162. package/src/server/attention/inbox.ts +1 -0
  163. package/src/server/attention/projection.ts +1 -1
  164. package/src/server/attention/requestInbox.ts +1 -0
  165. package/src/server/boardRuntime.ts +20 -25
  166. package/src/server/boardServices.ts +7 -7
  167. package/src/server/document/read.ts +6 -14
  168. package/src/server/document/requests.ts +1 -2
  169. package/src/server/handoffs/Service.ts +16 -19
  170. package/src/server/http/assets.ts +1 -7
  171. package/src/server/http/boardRoutes.ts +3 -3
  172. package/src/server/integration/responses.ts +5 -3
  173. package/src/server/mcp/queries.ts +3 -3
  174. package/src/server/packageInfo.ts +1 -1
  175. package/src/server/responses/readingActions.ts +3 -3
  176. package/src/server/responses/registerQuestion.ts +5 -5
  177. package/src/server/responses/retry.ts +3 -3
  178. package/src/server/rpc/HandlerOptions.ts +0 -8
  179. package/src/server/rpc/handlers.ts +17 -15
  180. package/src/server/rpc/hints.ts +6 -3
  181. package/src/server/views/fleetItems.ts +8 -4
  182. package/src/server/views/projectionQueries.ts +6 -7
  183. package/src/server/views/remainingQueries.ts +11 -31
  184. package/src/server/workspace.ts +41 -0
  185. package/assets/native.js +0 -37
  186. package/dist/client/entry.d.ts +0 -3
  187. package/dist/client/entry.d.ts.map +0 -1
  188. package/dist/client/entry.js +0 -3
  189. package/dist/client/entry.js.map +0 -1
  190. package/dist/client/react/RespondPage.d.ts +0 -5
  191. package/dist/client/react/RespondPage.d.ts.map +0 -1
  192. package/dist/client/react/RespondPage.js +0 -5
  193. package/dist/client/react/RespondPage.js.map +0 -1
  194. package/dist/server/responses/service.d.ts.map +0 -1
  195. package/dist/server/responses/service.js.map +0 -1
  196. package/src/client/entry.ts +0 -3
  197. package/src/client/react/RespondPage.tsx +0 -8
@@ -1,16 +1,16 @@
1
1
  import { Effect } from "effect";
2
- import { NotFound } from "@shivaedev/platform/errors/taxonomy.ts";
3
2
  import { stateOf } from "#browser/views/state.ts";
4
3
  import { inboxItems } from "#server/attention/inbox.ts";
5
4
  import { attentionProjection } from "#server/attention/projection.ts";
6
5
  import { identityUrl } from "#server/metadata/links.ts";
7
6
  import { boardOf, countsOf } from "#server/render/board.ts";
7
+ import { Workspace } from "#server/workspace.ts";
8
8
  import { fleetApproval } from "./fleetApproval.js";
9
9
  import { projectItems } from "./projection.js";
10
- export function projectionQueries({ index, document }) {
11
- function read(url) {
12
- return document ? document(url) : Effect.fail(new NotFound({ message: "The document is missing." }));
13
- }
10
+ export const projectionQueries = Effect.gen(function* () {
11
+ const workspace = yield* Workspace;
12
+ const index = workspace.index();
13
+ const read = workspace.document;
14
14
  return {
15
15
  board: (url) => Effect.map(read(url), (data) => ({ counts: countsOf(boardOf(data.source)), document: data })),
16
16
  inbox: () => Effect.map(index, attentionProjection),
@@ -46,7 +46,7 @@ export function projectionQueries({ index, document }) {
46
46
  };
47
47
  }),
48
48
  };
49
- }
49
+ });
50
50
  function selectionProblem(snapshot, item) {
51
51
  return (snapshot.model.ids.get(item)?.length ?? 0) > 1 ? "has a duplicate ID" : "is missing or its identity changed";
52
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"projectionQueries.js","sourceRoot":"","sources":["../../../src/server/views/projectionQueries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projectionQueries.js","sourceRoot":"","sources":["../../../src/server/views/projectionQueries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IACpD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC;IACnC,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC;IAChC,OAAO;QACN,KAAK,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAmB,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACtI,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,mBAAmB,CAAC;QACnD,IAAI,EAAE,CAAC,GAAW,EAAE,EAAE,CACrB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACnB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC;YAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YAC3B,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACjD,MAAM,OAAO,GAAG,IAAI,GAAG,CACtB,UAAU,CAAC,QAAQ,CAAC;iBAClB,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;iBACjC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAC1C,CAAC;YACF,SAAS,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAQ;gBACpD,OAAO;oBACN,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC;oBAC3C,EAAE;oBACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;oBAC9B,KAAK;oBACL,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;iBACxB,CAAC;YACH,CAAC;YACD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACpG,OAAO;gBACN,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;gBACrC,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;gBACnC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;gBACjC,QAAQ;gBACR,eAAe,EAAE,UAAU,CAAC,eAAe;gBAC3C,gBAAgB,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC;gBAC9F,KAAK;gBACL,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,UAAU,EAAE,UAAU,CAAC,UAAU;aACR,CAAC;QAC5B,CAAC,CAAC;KACH,CAAC;AACH,CAAC,CAAC,CAAC;AACH,SAAS,gBAAgB,CAAC,QAAkB,EAAE,IAAY;IACzD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,oCAAoC,CAAC;AACtH,CAAC"}
@@ -1,13 +1,6 @@
1
1
  import { Effect } from "effect";
2
- import type { Diagnostics } from "#diagnostics/source.ts";
3
- import type { HandoffsService } from "#server/handoffs/Service.ts";
4
- import type { Responses } from "#server/responses/service.ts";
5
- import type { HandlerOptions } from "#server/rpc/HandlerOptions.ts";
6
- export declare function remainingQueries({ changes, document, index, writable }: HandlerOptions, services: {
7
- readonly diagnostics: typeof Diagnostics.Service;
8
- readonly responses: typeof Responses.Service;
9
- readonly handoffs: typeof HandoffsService.Service;
10
- }): {
2
+ import { Conflict } from "@shivaedev/platform/errors/taxonomy.ts";
3
+ export declare const remainingQueries: Effect.Effect<{
11
4
  diagnostics: () => Effect.Effect<{
12
5
  now: number;
13
6
  sources: {
@@ -100,247 +93,6 @@ export declare function remainingQueries({ changes, document, index, writable }:
100
93
  unavailable: string | undefined;
101
94
  writable: boolean;
102
95
  }, import("@shivaedev/platform/errors/taxonomy.ts").ServiceUnavailable, never>;
103
- respond: (url: string) => Effect.Effect<{
104
- document: {
105
- readonly diagnostics: readonly {
106
- readonly field?: string | undefined;
107
- readonly line: number;
108
- readonly message: string;
109
- }[];
110
- readonly file: string;
111
- readonly identity?: string | undefined;
112
- readonly links: {
113
- readonly [x: string]: string;
114
- };
115
- readonly metadata: {
116
- readonly areas?: readonly string[] | undefined;
117
- readonly attention?: readonly {
118
- readonly id: string;
119
- readonly kind: "blocker" | "decision" | "review";
120
- readonly managed?: boolean | undefined;
121
- readonly reason: string;
122
- readonly responseFrom: readonly string[];
123
- readonly state: "closed" | "open";
124
- readonly unblocks: readonly string[];
125
- }[] | undefined;
126
- readonly criteria?: readonly {
127
- readonly id: string;
128
- readonly text: string;
129
- }[] | undefined;
130
- readonly evidence?: readonly {
131
- readonly checkedRevision?: string | undefined;
132
- readonly criterion?: string | undefined;
133
- readonly method?: string | undefined;
134
- readonly observedAt?: string | undefined;
135
- readonly outcome?: string | undefined;
136
- readonly source: string;
137
- }[] | undefined;
138
- readonly handoff?: {
139
- readonly by?: string | undefined;
140
- readonly constraints: string;
141
- readonly goal: string;
142
- readonly item: string;
143
- readonly nextAction: string;
144
- readonly note?: string | undefined;
145
- readonly preparedAt: number;
146
- readonly recipient: string;
147
- readonly reviewedRevision: string;
148
- readonly source: string;
149
- readonly state: "acknowledged" | "rejected" | "requested" | "unavailable";
150
- } | undefined;
151
- readonly id?: string | undefined;
152
- readonly items?: readonly string[] | undefined;
153
- readonly kind?: "board" | "decision" | "goal" | "handoff" | "investigation" | "project" | "question" | "report" | "response" | "result" | "task" | undefined;
154
- readonly nextAction?: string | undefined;
155
- readonly options?: readonly {
156
- readonly description: string;
157
- readonly label: string;
158
- }[] | undefined;
159
- readonly owner?: string | undefined;
160
- readonly question?: {
161
- readonly deadline: number;
162
- readonly item: string;
163
- readonly reason: string;
164
- readonly registeredAt: number;
165
- readonly request: string;
166
- readonly reviewedRevision: string;
167
- readonly source: string;
168
- } | undefined;
169
- readonly recommended?: string | undefined;
170
- readonly relationships?: readonly {
171
- readonly kind: "depends_on" | "implements" | "informs" | "relates_to";
172
- readonly target: string;
173
- }[] | undefined;
174
- readonly requestReceipt?: {
175
- readonly disposition: "applied" | "superseded";
176
- readonly question: string;
177
- readonly recordedAt: number;
178
- readonly response?: string | undefined;
179
- readonly reviewedRevision: string;
180
- } | undefined;
181
- readonly response?: {
182
- readonly answers?: readonly {
183
- readonly prompt: string;
184
- readonly selected: readonly string[];
185
- readonly text: string;
186
- }[] | undefined;
187
- readonly author: string;
188
- readonly question: string;
189
- readonly recordedAt: number;
190
- readonly reviewedRevision: string;
191
- readonly supersedes?: string | undefined;
192
- readonly type: "answer" | "clarify" | "not_now";
193
- } | undefined;
194
- readonly status?: string | undefined;
195
- };
196
- readonly modified: number;
197
- readonly questionActions: {
198
- readonly [x: string]: string;
199
- };
200
- readonly reading?: {
201
- readonly backlinks: readonly {
202
- readonly href: string;
203
- readonly kind: string;
204
- readonly label: string;
205
- readonly status?: string | undefined;
206
- readonly title?: string | undefined;
207
- }[];
208
- readonly board: boolean;
209
- readonly claims: {
210
- readonly [x: string]: readonly {
211
- readonly href?: string | undefined;
212
- readonly label: string;
213
- }[];
214
- };
215
- readonly evidenceSources: readonly {
216
- readonly href?: string | undefined;
217
- readonly problem: string;
218
- }[];
219
- readonly lines: {
220
- readonly [x: string]: number;
221
- };
222
- readonly proseLine: number;
223
- readonly raw?: string | undefined;
224
- readonly receipts: {
225
- readonly [x: string]: {
226
- readonly disposition: "applied" | "superseded";
227
- readonly question: string;
228
- readonly recordedAt: number;
229
- readonly response?: string | undefined;
230
- readonly reviewedRevision: string;
231
- };
232
- };
233
- } | undefined;
234
- readonly referenceDetails?: {
235
- readonly [x: string]: {
236
- readonly status?: string | undefined;
237
- readonly title: string;
238
- };
239
- } | undefined;
240
- readonly references: {
241
- readonly [x: string]: string;
242
- };
243
- readonly requests: readonly {
244
- readonly id: string;
245
- readonly open: boolean;
246
- readonly options?: readonly {
247
- readonly description: string;
248
- readonly label: string;
249
- }[] | undefined;
250
- readonly preview?: {
251
- readonly context: string;
252
- readonly id: string;
253
- readonly item: string;
254
- readonly reason: string;
255
- readonly request: string;
256
- readonly reviewedRevision: string;
257
- readonly source: string;
258
- } | undefined;
259
- readonly prompts?: readonly {
260
- readonly id: string;
261
- readonly mode: "many" | "one" | "text";
262
- readonly options: readonly {
263
- readonly id: string;
264
- readonly source: string;
265
- }[];
266
- readonly source: string;
267
- }[] | undefined;
268
- readonly promptUnavailable?: string | undefined;
269
- readonly recommended?: string | undefined;
270
- readonly responses?: readonly {
271
- readonly body: string;
272
- readonly id: string;
273
- readonly response: {
274
- readonly answers?: readonly {
275
- readonly prompt: string;
276
- readonly selected: readonly string[];
277
- readonly text: string;
278
- }[] | undefined;
279
- readonly author: string;
280
- readonly question: string;
281
- readonly recordedAt: number;
282
- readonly reviewedRevision: string;
283
- readonly supersedes?: string | undefined;
284
- readonly type: "answer" | "clarify" | "not_now";
285
- };
286
- }[] | undefined;
287
- readonly sourceOpen?: boolean | undefined;
288
- readonly title?: string | undefined;
289
- readonly unavailable?: string | undefined;
290
- }[];
291
- readonly source: string;
292
- readonly unavailable: readonly string[];
293
- readonly writable: boolean;
294
- };
295
- request: {
296
- id: string;
297
- open: boolean;
298
- options?: readonly {
299
- readonly description: string;
300
- readonly label: string;
301
- }[] | undefined;
302
- prompts?: readonly {
303
- readonly id: string;
304
- readonly mode: "many" | "one" | "text";
305
- readonly options: readonly {
306
- readonly id: string;
307
- readonly source: string;
308
- }[];
309
- readonly source: string;
310
- }[] | undefined;
311
- promptUnavailable?: string | undefined;
312
- recommended?: string | undefined;
313
- sourceOpen?: boolean | undefined;
314
- title?: string | undefined;
315
- unavailable?: string | undefined;
316
- preview: {
317
- readonly context: string;
318
- readonly id: string;
319
- readonly item: string;
320
- readonly reason: string;
321
- readonly request: string;
322
- readonly reviewedRevision: string;
323
- readonly source: string;
324
- };
325
- responses: {
326
- readonly body: string;
327
- readonly id: string;
328
- readonly response: {
329
- readonly answers?: readonly {
330
- readonly prompt: string;
331
- readonly selected: readonly string[];
332
- readonly text: string;
333
- }[] | undefined;
334
- readonly author: string;
335
- readonly question: string;
336
- readonly recordedAt: number;
337
- readonly reviewedRevision: string;
338
- readonly supersedes?: string | undefined;
339
- readonly type: "answer" | "clarify" | "not_now";
340
- };
341
- }[];
342
- };
343
- }, unknown, never>;
344
96
  result: (url: string) => Effect.Effect<{
345
97
  readonly document: {
346
98
  readonly diagnostics: readonly {
@@ -597,7 +349,7 @@ export declare function remainingQueries({ changes, document, index, writable }:
597
349
  };
598
350
  readonly status?: string | undefined;
599
351
  }[];
600
- }, unknown, never>;
352
+ }, Conflict | import("@shivaedev/platform/errors/taxonomy.ts").NotFound | import("effect/PlatformError").PlatformError | import("@shivaedev/platform/errors/taxonomy.ts").ServiceUnavailable, never>;
601
353
  start: () => Effect.Effect<{
602
354
  empty: boolean;
603
355
  templates: readonly [{
@@ -720,5 +472,5 @@ Accept this exact report version with its stated limitations.
720
472
  `;
721
473
  }];
722
474
  }, import("effect/PlatformError").PlatformError, never>;
723
- };
475
+ }, never, "WorkBoard/Diagnostics" | "WorkBoard/HandoffsService" | "WorkBoard/Workspace">;
724
476
  //# sourceMappingURL=remainingQueries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"remainingQueries.d.ts","sourceRoot":"","sources":["../../../src/server/views/remainingQueries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAInE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE,wBAAgB,gBAAgB,CAC/B,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,cAAc,EACtD,QAAQ,EAAE;IACT,QAAQ,CAAC,WAAW,EAAE,OAAO,WAAW,CAAC,OAAO,CAAC;IACjD,QAAQ,CAAC,SAAS,EAAE,OAAO,SAAS,CAAC,OAAO,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE,OAAO,eAAe,CAAC,OAAO,CAAC;CAClD;IAMA,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIX,OAAO,QAAQ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkBrB,OAAO,QAAQ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAcrB,MAAM,QAAQ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAapB,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEN"}
1
+ {"version":3,"file":"remainingQueries.d.ts","sourceRoot":"","sources":["../../../src/server/views/remainingQueries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAQlE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAWZ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkBP,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wFAepB,CAAC"}
@@ -1,13 +1,18 @@
1
1
  import { Clock, Effect } from "effect";
2
- import { Conflict, NotFound } from "@shivaedev/platform/errors/taxonomy.ts";
2
+ import { Conflict } from "@shivaedev/platform/errors/taxonomy.ts";
3
+ import { Diagnostics } from "#diagnostics/source.ts";
4
+ import { HandoffsService } from "#server/handoffs/Service.ts";
3
5
  import { identityUrl } from "#server/metadata/links.ts";
4
6
  import { metadataParse } from "#server/metadata/parse.ts";
5
7
  import { startTemplates } from "#server/page/startTemplates.ts";
8
+ import { Workspace } from "#server/workspace.ts";
6
9
  import { resultProjection } from "./resultProjection.js";
7
- export function remainingQueries({ changes, document, index, writable }, services) {
8
- function read(url) {
9
- return document ? document(url) : Effect.fail(new NotFound({ message: "The document is missing." }));
10
- }
10
+ export const remainingQueries = Effect.gen(function* () {
11
+ const workspace = yield* Workspace;
12
+ const { changes, writable } = yield* workspace.settings();
13
+ const index = workspace.index();
14
+ const read = workspace.document;
15
+ const services = { diagnostics: yield* Diagnostics, handoffs: yield* HandoffsService };
11
16
  return {
12
17
  diagnostics: () => Effect.gen(function* () {
13
18
  return { now: yield* Clock.currentTimeMillis, sources: yield* services.diagnostics.read() };
@@ -29,19 +34,6 @@ export function remainingQueries({ changes, document, index, writable }, service
29
34
  writable: writable === true,
30
35
  };
31
36
  }),
32
- respond: (url) => Effect.gen(function* () {
33
- const params = new URL(url, "http://127.0.0.1").searchParams;
34
- const service = services.responses;
35
- const preview = yield* service.locate(params.get("item") ?? "", params.get("request") ?? "");
36
- yield* service.read(preview.id).pipe(Effect.catch((error) => (error._tag === "NotFound" ? Effect.void : Effect.fail(error))));
37
- const responses = yield* service.history(preview);
38
- const data = yield* read(identityUrl(preview.item));
39
- const request = data.requests.find((entry) => entry.id === preview.request);
40
- if (!request) {
41
- return yield* Effect.fail(new Conflict({ message: "The response request is unavailable." }));
42
- }
43
- return { document: data, request: { ...request, preview, responses } };
44
- }),
45
37
  result: (url) => Effect.gen(function* () {
46
38
  const item = new URL(url, "http://127.0.0.1").searchParams.get("item") ?? "";
47
39
  const data = yield* index;
@@ -54,5 +46,5 @@ export function remainingQueries({ changes, document, index, writable }, service
54
46
  }),
55
47
  start: () => Effect.map(changes.files, (files) => ({ empty: files.length === 0, templates: startTemplates })),
56
48
  };
57
- }
49
+ });
58
50
  //# sourceMappingURL=remainingQueries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"remainingQueries.js","sourceRoot":"","sources":["../../../src/server/views/remainingQueries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAG5E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGhE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,MAAM,UAAU,gBAAgB,CAC/B,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAkB,EACtD,QAIC;IAED,SAAS,IAAI,CAAC,GAAW;QACxB,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC;IACtG,CAAC;IACD,OAAO;QACN,WAAW,EAAE,GAAG,EAAE,CACjB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACnB,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,iBAAiB,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7F,CAAC,CAAC;QACH,OAAO,EAAE,CAAC,GAAW,EAAE,EAAE,CACxB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACnB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC7E,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC;YAClC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;YACpD,OAAO;gBACN,UAAU,EAAE,MAAM,CAAC,IAAI;gBACvB,IAAI,EAAE,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,IAAI;gBACrE,IAAI;gBACJ,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE;gBAC1C,OAAO,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;gBAClC,MAAM;gBACN,WAAW,EAAE,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC3E,QAAQ,EAAE,QAAQ,KAAK,IAAI;aAC3B,CAAC;QACH,CAAC,CAAC;QACH,OAAO,EAAE,CAAC,GAAW,EAAE,EAAE,CACxB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACnB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,YAAY,CAAC;YAC7D,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC;YACnC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7F,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9H,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YACpD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;YAC5E,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC,CAAC,CAAC;YAC9F,CAAC;YACD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC;QACxE,CAAC,CAAC;QACH,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE,CACvB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACnB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC7E,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC;YAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,IAAI,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5E,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACxB,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,6FAA6F,EAAE,CAAC,CACxH,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9E,CAAC,CAAC;QACH,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;KAC7G,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"remainingQueries.js","sourceRoot":"","sources":["../../../src/server/views/remainingQueries.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,222 @@
1
+ import { Context, Effect, FileSystem, Path, type PlatformError } from "effect";
2
+ import type { Changes } from "#server/files/changes.ts";
3
+ import type { Snapshot } from "#server/search/snapshot.ts";
4
+ export interface WorkspaceOptions {
5
+ readonly changes: Changes;
6
+ readonly home?: string | undefined;
7
+ readonly index: Effect.Effect<Snapshot, PlatformError.PlatformError>;
8
+ readonly root: string;
9
+ readonly writable: boolean;
10
+ }
11
+ export interface WorkspaceSettings extends Omit<WorkspaceOptions, "index"> {
12
+ readonly realRoot: string;
13
+ }
14
+ declare const WorkspaceConfig_base: Context.ServiceClass<WorkspaceConfig, "WorkBoard/WorkspaceConfig", WorkspaceOptions>;
15
+ export declare class WorkspaceConfig extends WorkspaceConfig_base {
16
+ }
17
+ export declare const Workspace: Context.Service<"WorkBoard/Workspace", Readonly<{
18
+ readonly document: (url: string) => Effect.Effect<{
19
+ readonly diagnostics: readonly {
20
+ readonly field?: string | undefined;
21
+ readonly line: number;
22
+ readonly message: string;
23
+ }[];
24
+ readonly file: string;
25
+ readonly identity?: string | undefined;
26
+ readonly links: {
27
+ readonly [x: string]: string;
28
+ };
29
+ readonly metadata: {
30
+ readonly areas?: readonly string[] | undefined;
31
+ readonly attention?: readonly {
32
+ readonly id: string;
33
+ readonly kind: "blocker" | "decision" | "review";
34
+ readonly managed?: boolean | undefined;
35
+ readonly reason: string;
36
+ readonly responseFrom: readonly string[];
37
+ readonly state: "closed" | "open";
38
+ readonly unblocks: readonly string[];
39
+ }[] | undefined;
40
+ readonly criteria?: readonly {
41
+ readonly id: string;
42
+ readonly text: string;
43
+ }[] | undefined;
44
+ readonly evidence?: readonly {
45
+ readonly checkedRevision?: string | undefined;
46
+ readonly criterion?: string | undefined;
47
+ readonly method?: string | undefined;
48
+ readonly observedAt?: string | undefined;
49
+ readonly outcome?: string | undefined;
50
+ readonly source: string;
51
+ }[] | undefined;
52
+ readonly handoff?: {
53
+ readonly by?: string | undefined;
54
+ readonly constraints: string;
55
+ readonly goal: string;
56
+ readonly item: string;
57
+ readonly nextAction: string;
58
+ readonly note?: string | undefined;
59
+ readonly preparedAt: number;
60
+ readonly recipient: string;
61
+ readonly reviewedRevision: string;
62
+ readonly source: string;
63
+ readonly state: "acknowledged" | "rejected" | "requested" | "unavailable";
64
+ } | undefined;
65
+ readonly id?: string | undefined;
66
+ readonly items?: readonly string[] | undefined;
67
+ readonly kind?: "board" | "decision" | "goal" | "handoff" | "investigation" | "project" | "question" | "report" | "response" | "result" | "task" | undefined;
68
+ readonly nextAction?: string | undefined;
69
+ readonly options?: readonly {
70
+ readonly description: string;
71
+ readonly label: string;
72
+ }[] | undefined;
73
+ readonly owner?: string | undefined;
74
+ readonly question?: {
75
+ readonly deadline: number;
76
+ readonly item: string;
77
+ readonly reason: string;
78
+ readonly registeredAt: number;
79
+ readonly request: string;
80
+ readonly reviewedRevision: string;
81
+ readonly source: string;
82
+ } | undefined;
83
+ readonly recommended?: string | undefined;
84
+ readonly relationships?: readonly {
85
+ readonly kind: "depends_on" | "implements" | "informs" | "relates_to";
86
+ readonly target: string;
87
+ }[] | undefined;
88
+ readonly requestReceipt?: {
89
+ readonly disposition: "applied" | "superseded";
90
+ readonly question: string;
91
+ readonly recordedAt: number;
92
+ readonly response?: string | undefined;
93
+ readonly reviewedRevision: string;
94
+ } | undefined;
95
+ readonly response?: {
96
+ readonly answers?: readonly {
97
+ readonly prompt: string;
98
+ readonly selected: readonly string[];
99
+ readonly text: string;
100
+ }[] | undefined;
101
+ readonly author: string;
102
+ readonly question: string;
103
+ readonly recordedAt: number;
104
+ readonly reviewedRevision: string;
105
+ readonly supersedes?: string | undefined;
106
+ readonly type: "answer" | "clarify" | "not_now";
107
+ } | undefined;
108
+ readonly status?: string | undefined;
109
+ };
110
+ readonly modified: number;
111
+ readonly questionActions: {
112
+ readonly [x: string]: string;
113
+ };
114
+ readonly reading?: {
115
+ readonly backlinks: readonly {
116
+ readonly href: string;
117
+ readonly kind: string;
118
+ readonly label: string;
119
+ readonly status?: string | undefined;
120
+ readonly title?: string | undefined;
121
+ }[];
122
+ readonly board: boolean;
123
+ readonly claims: {
124
+ readonly [x: string]: readonly {
125
+ readonly href?: string | undefined;
126
+ readonly label: string;
127
+ }[];
128
+ };
129
+ readonly evidenceSources: readonly {
130
+ readonly href?: string | undefined;
131
+ readonly problem: string;
132
+ }[];
133
+ readonly lines: {
134
+ readonly [x: string]: number;
135
+ };
136
+ readonly proseLine: number;
137
+ readonly raw?: string | undefined;
138
+ readonly receipts: {
139
+ readonly [x: string]: {
140
+ readonly disposition: "applied" | "superseded";
141
+ readonly question: string;
142
+ readonly recordedAt: number;
143
+ readonly response?: string | undefined;
144
+ readonly reviewedRevision: string;
145
+ };
146
+ };
147
+ } | undefined;
148
+ readonly referenceDetails?: {
149
+ readonly [x: string]: {
150
+ readonly status?: string | undefined;
151
+ readonly title: string;
152
+ };
153
+ } | undefined;
154
+ readonly references: {
155
+ readonly [x: string]: string;
156
+ };
157
+ readonly requests: readonly {
158
+ readonly id: string;
159
+ readonly open: boolean;
160
+ readonly options?: readonly {
161
+ readonly description: string;
162
+ readonly label: string;
163
+ }[] | undefined;
164
+ readonly preview?: {
165
+ readonly context: string;
166
+ readonly id: string;
167
+ readonly item: string;
168
+ readonly reason: string;
169
+ readonly request: string;
170
+ readonly reviewedRevision: string;
171
+ readonly source: string;
172
+ } | undefined;
173
+ readonly prompts?: readonly {
174
+ readonly id: string;
175
+ readonly mode: "many" | "one" | "text";
176
+ readonly options: readonly {
177
+ readonly id: string;
178
+ readonly source: string;
179
+ }[];
180
+ readonly source: string;
181
+ }[] | undefined;
182
+ readonly promptUnavailable?: string | undefined;
183
+ readonly recommended?: string | undefined;
184
+ readonly responses?: readonly {
185
+ readonly body: string;
186
+ readonly id: string;
187
+ readonly response: {
188
+ readonly answers?: readonly {
189
+ readonly prompt: string;
190
+ readonly selected: readonly string[];
191
+ readonly text: string;
192
+ }[] | undefined;
193
+ readonly author: string;
194
+ readonly question: string;
195
+ readonly recordedAt: number;
196
+ readonly reviewedRevision: string;
197
+ readonly supersedes?: string | undefined;
198
+ readonly type: "answer" | "clarify" | "not_now";
199
+ };
200
+ }[] | undefined;
201
+ readonly sourceOpen?: boolean | undefined;
202
+ readonly title?: string | undefined;
203
+ readonly unavailable?: string | undefined;
204
+ }[];
205
+ readonly source: string;
206
+ readonly unavailable: readonly string[];
207
+ readonly writable: boolean;
208
+ }, import("@shivaedev/platform/errors/taxonomy.ts").Conflict | import("@shivaedev/platform/errors/taxonomy.ts").NotFound | PlatformError.PlatformError | import("@shivaedev/platform/errors/taxonomy.ts").ServiceUnavailable, never>;
209
+ readonly index: () => Effect.Effect<Snapshot, PlatformError.PlatformError, never>;
210
+ readonly settings: () => Effect.Effect<{
211
+ changes: Changes;
212
+ home?: string | undefined;
213
+ root: string;
214
+ writable: boolean;
215
+ realRoot: string;
216
+ }, never, never>;
217
+ }>> & {
218
+ readonly layer: import("effect/Layer").Layer<"WorkBoard/Workspace", never, FileSystem.FileSystem | Path.Path | WorkspaceConfig>;
219
+ };
220
+ export type Workspace = typeof Workspace.Identifier;
221
+ export {};
222
+ //# sourceMappingURL=workspace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/server/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,aAAa,EAAE,MAAM,QAAQ,CAAC;AAI/E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IACrE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACzE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC1B;;AAED,qBAAa,eAAgB,SAAQ,oBAAiF;CAAG;AAEzH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAbH,OAAO;eACT,MAAM,GAAG,SAAS;cAEnB,MAAM;kBACF,OAAO;;;;;CA2BzB,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,UAAU,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { Context, Effect, FileSystem, Path } from "effect";
2
+ import { defineService } from "@shivaedev/effect-service/define-service.ts";
3
+ import { readDocument } from "#server/document/read.ts";
4
+ export class WorkspaceConfig extends Context.Service()("WorkBoard/WorkspaceConfig") {
5
+ }
6
+ export const Workspace = defineService({
7
+ id: "WorkBoard/Workspace",
8
+ initialize: Effect.gen(function* () {
9
+ return yield* WorkspaceConfig;
10
+ }),
11
+ methods: ({ index, ...options }) => {
12
+ const settings = { ...options, realRoot: options.changes.realRoot };
13
+ const read = readDocument(settings);
14
+ function document(url) {
15
+ return Effect.flatMap(index, (snapshot) => read(url, snapshot));
16
+ }
17
+ return {
18
+ document,
19
+ index: () => index,
20
+ settings: () => Effect.succeed(settings),
21
+ };
22
+ },
23
+ requires: [WorkspaceConfig, FileSystem.FileSystem, Path.Path],
24
+ });
25
+ //# sourceMappingURL=workspace.js.map