Repository navigation
Conversation
…为项目形 项目所属线程经 /threads/:tid(projectless 形)打开时 useRouteState 把 route projectId 映射为 proj_personal,而 ThreadDetailView 以 `thread.projectId !== projectId` 守卫(views/thread-detail/ThreadDetailView.tsx:2420)渲染整页 "Not found"——线程真实存在,裸 404 是伪影(cap 仓 get-bb#476 走查伪影源;上游 bb 同码未修)。 SplitWorkspaceRoute 在路由层规范化:projectless 形 URL + 线程缓存行真项目非 personal → <Navigate replace> 至 /projects/:pid/threads/:tid,保留 ?message=/#event- 深链;缓存行只读(enabled:false),页面自身 bootstrap 负责 取数,零额外 GET;personal 线程与项目形 URL 不动(防环)。 测试:SplitWorkspaceRoute.projectless-thread.test.tsx 4 例(标准项目线程重定向 保 query/hash、行晚到后重定向、personal 线程保持、项目形 URL 不转);既有 SplitWorkspaceRoute.test.tsx 补 QueryClientProvider。@bb/app 全量 352 文件 / 2791 例绿,typecheck / lint / vite build 绿。
Samuka007
added a commit
to Samuka007/cloudflare-agent-project
that referenced
this pull request
Oct 7, 2026
…路由层规范化为项目形 (#492) bb PR Samuka007/bb#16(bb fork 的 Actions 从未触发——runs=0,历史 lane PR 同样零 checks;证据=本地 @bb/app 全量 352 文件/2791 例绿 + 本仓 CI 的 SPA stage 构建)。 根因=bb ThreadDetailView 的 `thread.projectId !== projectId` 裸 "Not found" (apps/app/src/views/thread-detail/ThreadDetailView.tsx:2420):/threads/:tid 的 route projectId=proj_personal 与线程真项目不符即整页 Not found(#476 伪影源)。 修复=SplitWorkspaceRoute 路由层读线程缓存行(enabled:false,零额外 GET), projectless 形 URL + 真项目非 personal → <Navigate replace> 至 /projects/:pid/threads/:tid(保 ?message=/#event- 深链);personal 线程与 项目形 URL 不转(防环)。裁决:重定向(非 404 文案)——线程真实存在、规范 URL 可导出,"Not found" 是伪影。
Owner
Author
|
consumed by parent pin 5ce4beb(cloudflare-agent-project PR get-bb#492 已并;fork Actions 无 CI,门=本地 2793 全绿+父仓 verify) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
症状(cap 仓 get-bb#479 实测复现)
项目所属线程用 projectless 形 URL
/threads/:tid打开 → 整页 "Not found"(实测thr_e4xhmu7ywb,属proj_43zec4qsv9;侧栏链接恒为项目形)。get-bb#476 走查首判即被此伪影污染。根因
useRouteState把/threads/:tid映射为proj_personal,而ThreadDetailView的thread.projectId !== projectId守卫(apps/app/src/views/thread-detail/ThreadDetailView.tsx:2420)对真项目线程必然不匹配 → 裸 "Not found"。上游 get-bb/bb 同码未修。修复(裁决:重定向,非 404 文案)
SplitWorkspaceRoute路由层规范化:projectless 形 URL + 线程缓存行真项目 ≠ personal →<Navigate replace>至/projects/:pid/threads/:tid,保留?message=/#event-深链。enabled:false),页面自身 bootstrap 负责取数 → 零额外 GET;缓存写入即触发本观察者重渲染,redirect 先于任何 "Not found" 帧。理由:线程真实存在、规范 URL 可导出,裸 "Not found" 是伪影;get-bb#479 验收两选项择「重定向到项目形」(可覆盖)。
测试
SplitWorkspaceRoute.projectless-thread.test.tsx4 例:标准项目线程重定向(保 query/hash)、行晚到后重定向、personal 线程保持、项目形 URL 不动。SplitWorkspaceRoute.test.tsx补 QueryClientProvider(组件新增 react-query 读取)。本地:@bb/app 全量 352 文件 / 2791 例绿;typecheck / lint(0 error)/ vite build 绿。
AGENT GENERATED: by zhipu-coding-plan/glm-5.3:max