@dev.fast/whiteboard 0.3.4 → 0.3.5-preview.20261021.131
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{account-alias-CprZojXd.js → account-alias-CisiYUZT.js} +13 -8
- package/dist/agent-cli-BglNRDZN.js +2 -0
- package/dist/{agent-cli-CThN7Q59.js → agent-cli-TJ7_5_B3.js} +15 -10
- package/dist/{agent-client-BOOi7EUR.js → agent-client-H53ajvrm.js} +13 -3
- package/dist/{authoring-tools-BNwuMnz6.js → authoring-tools-BCquUsB3.js} +34 -27
- package/dist/{background-server-DLSDogkI.js → background-server-BSYXD9au.js} +1 -1
- package/dist/{background-server-CkvxA-6O.js → background-server-Xom8cA_u.js} +5 -5
- package/dist/build-info.json +1 -1
- package/dist/{cli-R4yfa5DT.js → cli-BOnV4cCh.js} +1 -1
- package/dist/{cli-runner-Cuc9FSzu.js → cli-runner-cRY5NOno.js} +70 -34
- package/dist/cli.js +4 -3
- package/dist/{client-BN_FDxFr.js → client-UH1bEG7Z.js} +260 -49
- package/dist/{fuzzy-match-BO9bK37N.js → fuzzy-match-D_x3wumC.js} +6 -4
- package/dist/{headless-host-CVBOQyRS.js → headless-host-BEe-aFtB.js} +1 -1
- package/dist/{headless-host-Cog6SpS9.js → headless-host-CEb5d-A0.js} +563 -175
- package/dist/lens-selection-BxPk53c8.js +214 -0
- package/dist/{local-data-D_9tvdsp.js → local-data-mbCb1HDH.js} +2448 -347
- package/dist/{mcp-D1hziANa.js → mcp-cBtzXsmN.js} +9 -12
- package/dist/{package-paths-C--__jEv.js → package-paths-BkeQsdaw.js} +1 -1
- package/dist/profile-Dbyidrcr.js +2 -0
- package/dist/{profile-DokFw782.js → profile-duqp5uPa.js} +20 -8
- package/dist/{remote-attach-CEJ-kvDY.js → remote-attach-BeKuMm_x.js} +4 -4
- package/dist/{remote-extensions-GN8Gf_qG.js → remote-extensions-CX2fAec1.js} +1 -1
- package/dist/{remote-extensions-Blcjr9Ze.js → remote-extensions-CYWNTVSf.js} +3 -3
- package/dist/{remote-language-server-BTKBQ7x4.js → remote-language-server-DLWluAeR.js} +5 -5
- package/dist/{remote-uninstall-DW7Gdryh.js → remote-uninstall-Y3S0YmJs.js} +6 -6
- package/dist/{request-origin-Zcn_CjX4.js → request-origin-icXPv6jh.js} +55 -18
- package/dist/{review-app-launcher-CkwLclzR.js → review-app-launcher-DZvG5ZAh.js} +2 -2
- package/dist/{review-home-paths-j2BRAaNv.js → review-home-paths-BwH08ihj.js} +19 -17
- package/dist/{review-telemetry-BLNwYnLV.js → review-telemetry-AZ0imsmJ.js} +6 -6
- package/dist/runtime-CF4JXdb8.js +27 -0
- package/dist/runtime.d.ts +1 -1
- package/dist/runtime.js +1 -1
- package/dist/{s3-DtJFWC0G.js → s3-CsG2EWED.js} +1 -1
- package/dist/{s3-config-BTO12tCC.js → s3-config-CjcLyFV5.js} +4 -2
- package/dist/{s3-config-CSy3fx8H.js → s3-config-zz4GWh2T.js} +1 -1
- package/dist/server/desktop-host.js +28 -104
- package/dist/{server-discovery-Bey8IqXH.js → server-discovery-DeVTdcqK.js} +3 -3
- package/dist/sharing/index.d.ts +484 -74
- package/dist/sharing/index.js +1 -1
- package/dist/{src-DsM3jO8G.js → src-DYZLCUP_.js} +98 -18
- package/dist/{src-BMPuxWv4.js → src-DtfSndqS.js} +269 -227
- package/dist/{stored-document-migration-CChxtFAy.js → stored-document-migration-B29lve9-.js} +318 -271
- package/dist/{thread-state-5pYr6_zM.js → thread-state-BPpvKFwQ.js} +12 -2
- package/dist/{tool-failure-C9MpbXJJ.js → tool-failure-CQhyLht3.js} +10 -3
- package/instructions/authoring.md +20 -5
- package/package.json +4 -4
- package/src/agent-selection.ts +6 -0
- package/src/ask/agents.ts +13 -1
- package/src/ask/checkout-files.ts +2 -5
- package/src/ask/thread-state.ts +4 -0
- package/src/ask/thread.ts +61 -31
- package/src/ask/threads.ts +24 -3
- package/src/cli-install.ts +13 -2
- package/src/cli-runner.ts +4 -1
- package/src/cli.ts +4 -1
- package/src/diff-selection-migration.ts +48 -34
- package/src/heading-anchors.ts +42 -0
- package/src/lens-selection.ts +38 -2
- package/src/markdown.ts +42 -0
- package/src/posthog-capture-client.ts +1 -1
- package/src/review-api/README.md +52 -13
- package/src/review-api/activity.ts +1 -4
- package/src/review-api/agent-cli.ts +9 -1
- package/src/review-api/anchor-quotes.ts +14 -7
- package/src/review-api/ask-history.ts +118 -51
- package/src/review-api/authoring-tools.ts +45 -30
- package/src/review-api/azure-devops-provider.ts +2 -20
- package/src/review-api/azure-remote.ts +21 -0
- package/src/review-api/blocks/definition.ts +1 -1
- package/src/review-api/blocks/markdown.ts +2 -2
- package/src/review-api/board-order.ts +144 -0
- package/src/review-api/checkout-groups.ts +586 -0
- package/src/review-api/document-headings.ts +58 -27
- package/src/review-api/document-text.ts +31 -2
- package/src/review-api/document.ts +362 -67
- package/src/review-api/foreign-references.ts +328 -0
- package/src/review-api/github-provider.ts +51 -13
- package/src/review-api/http.ts +734 -135
- package/src/review-api/instructions.ts +0 -19
- package/src/review-api/link-preview.ts +113 -0
- package/src/review-api/local-data.ts +310 -46
- package/src/review-api/mcp.ts +7 -13
- package/src/review-api/onboarding.ts +1 -1
- package/src/review-api/profile.ts +37 -6
- package/src/review-api/public-tools.ts +24 -2
- package/src/review-api/pull-request.ts +82 -49
- package/src/review-api/request-origin.ts +10 -0
- package/src/review-api/review-progress.ts +61 -27
- package/src/review-api/scratchpad-plan-upgrade.ts +250 -0
- package/src/review-api/store-migrations.ts +355 -0
- package/src/review-api/store-schema.ts +38 -29
- package/src/review-api/store.ts +2176 -495
- package/src/review-api/worktree-events.ts +3 -5
- package/src/review-api/worktree-source.ts +3 -7
- package/src/review-api/worktree-structural.integration.ts +72 -0
- package/src/review-stack.ts +15 -23
- package/src/runtime.ts +4 -30
- package/src/server/desktop-host.ts +6 -1
- package/src/server/desktop-server.ts +1 -36
- package/src/server/headless-host.ts +0 -2
- package/src/server/hono-http.ts +2 -1
- package/src/server/review-gateway-list.ts +3 -5
- package/src/server/review-gateway-memory.ts +1 -1
- package/src/server/review-lifecycle-telemetry.ts +2 -2
- package/src/server/review-server-core.ts +1 -5
- package/src/server/structural-comparisons.ts +47 -0
- package/src/sharing/export.ts +36 -7
- package/src/sharing/host.ts +34 -14
- package/src/sharing/import.ts +156 -24
- package/src/sharing/repository.ts +143 -24
- package/src/startup-trace.ts +3 -3
- package/src/stored-document-migration.ts +110 -19
- package/src/ui-telemetry-events.ts +44 -18
- package/dist/agent-cli-C6SPSII0.js +0 -2
- package/dist/profile-CYPmvBoA.js +0 -2
- package/dist/runtime-CKiWhGrf.js +0 -52
- package/instructions/scratchpad.md +0 -23
- package/src/review-preferences.ts +0 -88
- package/src/server/legacy-tutorial-cleanup.ts +0 -38
package/dist/sharing/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as sharedReviewId, c as verifyShareRepository, i as SharedReviewStore, l as exportShare, n as ShareClient, o as validateShareBundle } from "../client-
|
|
1
|
+
import { a as sharedReviewId, c as verifyShareRepository, i as SharedReviewStore, l as exportShare, n as ShareClient, o as validateShareBundle } from "../client-UH1bEG7Z.js";
|
|
2
2
|
export { ShareClient, SharedReviewStore, exportShare, sharedReviewId, validateShareBundle, verifyShareRepository };
|
|
@@ -177,6 +177,12 @@ z.union([StructuralDiffEventSchema, ReviewStructuralDiffErrorSchema]);
|
|
|
177
177
|
const REVIEW_CLIENT_HEADER = "x-review-client";
|
|
178
178
|
const REVIEW_CLIENT_REMOTE = "remote";
|
|
179
179
|
const REVIEW_HOST_HEADER = "x-review-host";
|
|
180
|
+
const PULL_REQUEST_STATES = [
|
|
181
|
+
"open",
|
|
182
|
+
"draft",
|
|
183
|
+
"merged",
|
|
184
|
+
"closed"
|
|
185
|
+
];
|
|
180
186
|
const requiredString$1 = z.string({ error: "must be a string" }).refine((value) => value.trim().length > 0, "must be a string");
|
|
181
187
|
const stringAllowEmpty = z.string({ error: "must be a string" });
|
|
182
188
|
const positiveInteger = z.number({ error: "must be a positive integer" }).int("must be a positive integer").positive("must be a positive integer");
|
|
@@ -184,7 +190,6 @@ const nonNegativeInteger = z.number({ error: "must be a non-negative integer" })
|
|
|
184
190
|
const reviewDiffSideSchema = z.enum(["base", "head"], { error: "must be base or head" });
|
|
185
191
|
const reviewViewSchema = z.enum([
|
|
186
192
|
"review",
|
|
187
|
-
"commits",
|
|
188
193
|
"diff",
|
|
189
194
|
"map",
|
|
190
195
|
"trace"
|
|
@@ -227,11 +232,7 @@ z.strictObject({
|
|
|
227
232
|
/** How embedded diffs lay out: base and head side by side, or one column. */
|
|
228
233
|
const REVIEW_DIFF_LAYOUTS = ["split", "unified"];
|
|
229
234
|
const REVIEW_DIFF_LAYOUT_SCOPES = ["diff", "peek"];
|
|
230
|
-
const
|
|
231
|
-
"dark",
|
|
232
|
-
"light",
|
|
233
|
-
"system"
|
|
234
|
-
];
|
|
235
|
+
const REVIEW_COLOR_THEME_KINDS = ["dark", "light"];
|
|
235
236
|
const reviewDiffrSummarizerInputSchema = z.object({
|
|
236
237
|
enabled: z.boolean(),
|
|
237
238
|
provider: z.string().min(1),
|
|
@@ -405,9 +406,38 @@ const ReviewStackLayerSchema = z.strictObject({
|
|
|
405
406
|
"earlier",
|
|
406
407
|
"current",
|
|
407
408
|
"later"
|
|
408
|
-
])
|
|
409
|
+
]),
|
|
410
|
+
/** The layer's PR state, as last read from GitHub. */
|
|
411
|
+
pullRequestState: z.enum(PULL_REQUEST_STATES).optional()
|
|
412
|
+
});
|
|
413
|
+
z.strictObject({
|
|
414
|
+
/** Bottom first. */
|
|
415
|
+
layers: z.array(ReviewStackLayerSchema),
|
|
416
|
+
/** The branch the stack sits on, as `main`. */
|
|
417
|
+
base: requiredString$1.optional()
|
|
418
|
+
});
|
|
419
|
+
const ReviewPlaceBoardSchema = z.strictObject({
|
|
420
|
+
reviewId: requiredString$1,
|
|
421
|
+
title: stringAllowEmpty,
|
|
422
|
+
icon: z.enum(["board", "code"])
|
|
423
|
+
});
|
|
424
|
+
const ReviewPlaceSiblingSchema = ReviewPlaceBoardSchema.extend({
|
|
425
|
+
pullRequestNumber: positiveInteger.optional(),
|
|
426
|
+
pullRequestState: z.enum(PULL_REQUEST_STATES).optional()
|
|
427
|
+
});
|
|
428
|
+
z.strictObject({
|
|
429
|
+
/** The board's PR state and branches, as last read from GitHub. */
|
|
430
|
+
pullRequestState: z.enum(PULL_REQUEST_STATES).optional(),
|
|
431
|
+
baseBranch: requiredString$1.optional(),
|
|
432
|
+
headBranch: requiredString$1.optional(),
|
|
433
|
+
/** The board itself. */
|
|
434
|
+
board: ReviewPlaceBoardSchema.optional(),
|
|
435
|
+
parent: ReviewPlaceBoardSchema.optional(),
|
|
436
|
+
/** Empty for a top-level board. */
|
|
437
|
+
siblings: z.array(ReviewPlaceSiblingSchema),
|
|
438
|
+
/** A top-level board's children in sibling order; absent for a child. */
|
|
439
|
+
children: z.array(ReviewPlaceSiblingSchema).optional()
|
|
409
440
|
});
|
|
410
|
-
z.strictObject({ layers: z.array(ReviewStackLayerSchema) });
|
|
411
441
|
const ReviewCliInstallTargetSchema = z.enum([
|
|
412
442
|
"claude",
|
|
413
443
|
"codex",
|
|
@@ -673,13 +703,7 @@ const revealArgsSchema = z.strictObject({
|
|
|
673
703
|
path: ["endLine"]
|
|
674
704
|
});
|
|
675
705
|
});
|
|
676
|
-
|
|
677
|
-
const SCRATCHPAD_REVIEW_ID = "scratchpad";
|
|
678
|
-
const apiReviewIdSchema = z.union([
|
|
679
|
-
z.uuid(),
|
|
680
|
-
z.string().regex(/^shared-[a-f0-9]{64}$/),
|
|
681
|
-
z.literal(SCRATCHPAD_REVIEW_ID)
|
|
682
|
-
]);
|
|
706
|
+
const apiReviewIdSchema = z.union([z.uuid(), z.string().regex(/^shared-[a-f0-9]{64}$/)]);
|
|
683
707
|
const ReviewVerbRequestSchema = z.discriminatedUnion("name", [
|
|
684
708
|
z.strictObject({
|
|
685
709
|
name: z.literal("authoringCapabilities"),
|
|
@@ -727,7 +751,11 @@ const ReviewVerbRequestSchema = z.discriminatedUnion("name", [
|
|
|
727
751
|
name: z.literal("openReview"),
|
|
728
752
|
args: z.strictObject({
|
|
729
753
|
reviewUuid: apiReviewIdSchema,
|
|
730
|
-
active: z.boolean()
|
|
754
|
+
active: z.boolean(),
|
|
755
|
+
/** Block to scroll to after opening. */
|
|
756
|
+
blockId: requiredString$1.optional(),
|
|
757
|
+
/** View to show once it opens. */
|
|
758
|
+
view: reviewViewSchema.optional()
|
|
731
759
|
})
|
|
732
760
|
}),
|
|
733
761
|
z.strictObject({
|
|
@@ -797,7 +825,44 @@ z.discriminatedUnion("event", [
|
|
|
797
825
|
}),
|
|
798
826
|
z.strictObject({
|
|
799
827
|
event: z.literal("showReviewView"),
|
|
800
|
-
view: reviewViewSchema
|
|
828
|
+
view: reviewViewSchema,
|
|
829
|
+
/** The board to switch, from its sidebar; else the one asking. */
|
|
830
|
+
reviewId: requiredString$1.optional()
|
|
831
|
+
}),
|
|
832
|
+
z.strictObject({
|
|
833
|
+
event: z.literal("revealBlock"),
|
|
834
|
+
reviewId: requiredString$1,
|
|
835
|
+
blockId: requiredString$1
|
|
836
|
+
}),
|
|
837
|
+
z.strictObject({
|
|
838
|
+
event: z.literal("selectLens"),
|
|
839
|
+
reviewId: requiredString$1,
|
|
840
|
+
lensId: requiredString$1.nullable()
|
|
841
|
+
}),
|
|
842
|
+
z.strictObject({
|
|
843
|
+
event: z.literal("markLens"),
|
|
844
|
+
reviewId: requiredString$1,
|
|
845
|
+
lensId: requiredString$1
|
|
846
|
+
}),
|
|
847
|
+
z.strictObject({
|
|
848
|
+
event: z.literal("pickCommit"),
|
|
849
|
+
reviewId: requiredString$1,
|
|
850
|
+
commit: requiredString$1.nullable()
|
|
851
|
+
}),
|
|
852
|
+
z.strictObject({
|
|
853
|
+
event: z.literal("openStackLayer"),
|
|
854
|
+
reviewId: requiredString$1,
|
|
855
|
+
branch: requiredString$1,
|
|
856
|
+
active: z.boolean()
|
|
857
|
+
}),
|
|
858
|
+
z.strictObject({
|
|
859
|
+
event: z.literal("openAskThread"),
|
|
860
|
+
reviewId: requiredString$1,
|
|
861
|
+
threadId: requiredString$1
|
|
862
|
+
}),
|
|
863
|
+
z.strictObject({
|
|
864
|
+
event: z.literal("toggleAskColumn"),
|
|
865
|
+
reviewId: requiredString$1
|
|
801
866
|
})
|
|
802
867
|
]);
|
|
803
868
|
z.discriminatedUnion("ok", [z.strictObject({
|
|
@@ -1005,6 +1070,21 @@ function parseReviewBugReportResponse(value) {
|
|
|
1005
1070
|
return ReviewBugReportResponseSchema.parse(value);
|
|
1006
1071
|
}
|
|
1007
1072
|
//#endregion
|
|
1073
|
+
//#region ../review-protocol/src/board-icons.ts
|
|
1074
|
+
/** A board has code attached when its target is commits, a PR or a working
|
|
1075
|
+
* tree, even one with nothing to compare. A plan's target is its project. */
|
|
1076
|
+
const boardIconKind = (target) => target && target.kind !== "project" ? "code" : "board";
|
|
1077
|
+
/** What a board with no title is called wherever its title shows. */
|
|
1078
|
+
const UNTITLED_BOARD = "Untitled";
|
|
1079
|
+
/**
|
|
1080
|
+
* A board's title as every surface shows it. A person's new board keeps an
|
|
1081
|
+
* empty title until they name it; it reads "Untitled" everywhere. A title
|
|
1082
|
+
* someone typed, "Untitled" included, shows as typed.
|
|
1083
|
+
*/
|
|
1084
|
+
function boardTitle(title) {
|
|
1085
|
+
return title?.trim() ? title : UNTITLED_BOARD;
|
|
1086
|
+
}
|
|
1087
|
+
//#endregion
|
|
1008
1088
|
//#region ../review-protocol/src/index.ts
|
|
1009
1089
|
function parseReviewDesktopDiscovery(value) {
|
|
1010
1090
|
return parseZod(ReviewDesktopDiscoverySchema, value);
|
|
@@ -1039,4 +1119,4 @@ function formatIssuePath(path) {
|
|
|
1039
1119
|
return output;
|
|
1040
1120
|
}
|
|
1041
1121
|
//#endregion
|
|
1042
|
-
export {
|
|
1122
|
+
export { ReviewGatewayHostSchema as A, REVIEW_REMOTE_INSTALL_LOCK as C, ReviewConnectRequestSchema as D, ReviewCliInstallStampSchema as E, structuralChangeCounts as F, ReviewSelectedDiffSchema as M, reviewDiffrSummarizerInputSchema as N, ReviewFeedbackContactSchema as O, decodeStructuralDiffEvent as P, REVIEW_REMOTE_ATTACH_END as S, ReviewApiSelectionSourceSchema as T, REVIEW_DIFF_LAYOUTS as _, parseReviewVerbRequest as a, REVIEW_REMOTE_AGENT_IDS as b, boardIconKind as c, ReviewBugReportRequestSchema as d, parseReviewBugReportResponse as f, REVIEW_COLOR_THEME_KINDS as g, REVIEW_CLI_INSTALL_TARGET_LABELS as h, parseReviewDesktopVerbResult as i, ReviewOnboardingRunRequestSchema as j, ReviewFeedbackSchema as k, boardTitle as l, REVIEW_CLIENT_REMOTE as m, parseReviewDesktopDiscovery as n, parseReviewVerbResponse as o, REVIEW_CLIENT_HEADER as p, parseReviewDesktopVerbFrame as r, parseZod as s, parseReviewCliInstallApplyRequest as t, ReviewBugReportMetaV2Schema as u, REVIEW_DIFF_LAYOUT_SCOPES as v, REVIEW_REMOTE_WRAPPER_MARK as w, REVIEW_REMOTE_ATTACH_BEGIN as x, REVIEW_HOST_HEADER as y };
|