feat(kernel): finish phase3 bridge cutover and phase4 tree projection

- add generic mnote-web query transport and bridge routes for workspace/request/trace

- route sidebar compat traffic through mnote-web and tighten fixture fallback to dev/test

- unify sidebar/page tree/file tree/picker consumers on page_tree projection

- sync phase3/phase4 checklist, breakdown docs, and harness progress state
This commit is contained in:
lix-2026
2026-04-17 00:25:28 +08:00
parent b1d5d97142
commit ddf285b82d
27 changed files with 2650 additions and 340 deletions
+3 -5
View File
@@ -51,7 +51,7 @@ export type SidebarDatasetListQueryResult = {
active_workspace_id: string;
workspaces: WorkspaceSummary[];
documents: DocumentRecord[];
kernel_sidebar_projection?: KernelSidebarProjection | null;
kernel_sidebar_projection: KernelSidebarProjection;
trashed_documents: SidebarInitialData["trashedDocuments"];
media_assets: MediaAsset[];
trashed_media_assets: MediaAsset[];
@@ -241,16 +241,14 @@ export function buildSidebarDatasetListQueryResult(
export function mapSidebarDatasetListQueryResultToInitialData(
result: SidebarDatasetListQueryResult,
): SidebarInitialData {
const kernelSidebarProjection =
result.kernel_sidebar_projection ?? buildKernelSidebarProjection(result.documents);
return {
activeWorkspaceId: result.active_workspace_id,
workspaces: [...result.workspaces],
documents: [...result.documents],
kernelSidebarProjection,
kernelSidebarProjection: result.kernel_sidebar_projection,
kernelSidebarTree: buildSidebarTreeFromKernelProjection({
records: result.documents,
projection: kernelSidebarProjection,
projection: result.kernel_sidebar_projection,
}),
trashedDocuments: [...result.trashed_documents],
trashedMediaAssets: [...result.trashed_media_assets],