k88936
|
3e3c3df41f
|
删除空的 run-status 用例文件与其注册
- 删除 apps/ai-game-creator-shell/tests/appSurface/project-preview/run-status.suite.ts(只剩一个空的 registerProjectRunStatusTests)
- apps/ai-game-creator-shell/tests/appSurface/project-preview.suite.ts 去掉对应 import 与调用
- 空注册函数挂在测试入口上会让人以为运行状态还有用例覆盖,实际一条都没有
|
2026-09-19 23:19:29 +08:00 |
|
k88936
|
051c21d97f
|
删掉立项策划用例里传给 App 的无效 agentDockVisible prop
- apps/ai-game-creator-shell/tests/appSurface/plan-gdd.suite.ts 三处 React.createElement(App, {...}) 不再传 agentDockVisible
- 同 design-agent.suite:该 prop 属于 ProjectDevelopmentView,AppProps 未声明,传入不影响任何渲染,只会误导读者以为 Agent dock 被隐藏
|
2026-09-19 23:18:49 +08:00 |
|
k88936
|
21382926dc
|
删掉设计 Agent 用例里传给 App 的无效 agentDockVisible prop
- apps/ai-game-creator-shell/tests/appSurface/design-agent.suite.ts 四处 React.createElement(App, {...}) 不再传 agentDockVisible
- agentDockVisible 是 ProjectDevelopmentView(工作台)的 prop,AppProps 里没有它,传了也不会生效;它替换掉的旧 orchestrationMode/projectSupervisorOnly 曾经是真实的 App prop,留着会让人误以为这里会隐藏 Agent dock
|
2026-09-19 23:18:39 +08:00 |
|
k88936
|
62f1ec83bf
|
让工作台壳写入的运行态提示不被通用错误兜底覆盖
- apps/ai-game-creator-shell/src/features/agent-runtime/model.ts 的 projectRuntimeVisibleError 公共文案白名单补上「待回答问题已变更,请刷新策划状态」「需要在 Tauri App 内运行。」「请先初始化本地项目」
- 这三条是 App.tsx setProjectChatError 直接写入的给用户看的动作指引,此前不在白名单,经策划运行态窄条渲染时会被替换成通用的「策划 Agent 执行失败,请稍后重试」
|
2026-09-19 23:17:30 +08:00 |
|
k88936
|
263588af6a
|
把运行中回合的秒级计时下移到耗时文案组件
- apps/ai-game-creator-shell/src/view/project-development/chat/components/DirectProjectConversation/DirectProjectConversation.tsx 新增 DirectTurnElapsed,自己持有 1 秒 tick 与已耗时渲染
- apps/ai-game-creator-shell/src/view/project-development/chat/DirectProjectChatView.tsx 删除 turnUsageNow state 与其 interval,不再把每秒 tick 传给会话区
- 原先每秒 tick 触发的是整个聊天视图重渲染(含 Markdown 回合列表、工具调用组与队列芯片),现在只重渲染耗时那一小块
|
2026-09-19 23:16:42 +08:00 |
|
k88936
|
50291a5e77
|
订阅过期恢复后补跑被搁置的 consume
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectThreadChatSubscription.ts 在 consume 的 finally 之后补一次 consumeAgain 重排
- SUBSCRIPTION_EXPIRED 恢复期间到达的通知会因 consuming 仍为 true 只置位 consumeAgain,而 do/while 已因异常退出,原先这批事件要等下一次通知才会被消费
|
2026-09-19 23:15:48 +08:00 |
|
k88936
|
8aa737e032
|
「显示更早」读取失败时补上项目路径守卫
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts 的历史分页 catch 在写 statusNotice 前先比对 projectPathRef.current
- 与成功路径和首个屏幕加载一致;原先切换项目后旧项目在飞读取的失败会显示成新项目的错误
|
2026-09-19 23:15:15 +08:00 |
|
k88936
|
9243bb42a1
|
去掉 Direct 回合成功后多余的第二次清单刷新
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts 的 runTurn 不再在成功路径刷新清单,统一由 startTurn 的 finally 刷新
- 原先一轮成功会先后调用两次 get_local_game_manifest,finally 那次已覆盖成功与报错路径
|
2026-09-19 23:14:51 +08:00 |
|
k88936
|
67252d36b2
|
修掉写权限门拒绝后 Direct 发送队列永久卡住的问题
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts 在 ensureConversationWriteAllowed 返回 false 且未重跑时,主动放下忙态并继续 dispatchNextQueuedTurn
- 该轮已由 dispatchNextQueuedTurn 出队,原先 finally 只在 invoked 为真时继续出队,导致后续排队消息再也不发送且提示/队列芯片一直显示
|
2026-09-19 23:14:18 +08:00 |
|
k88936
|
97fc1918c4
|
给 Direct 回合的前置步骤补上错误出口
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts 在 startTurn 的异步 IIFE 里加 catch,按项目路径守卫后把错误交给 onRuntimeError
- 原先只有 try/finally:写权限门 rejection 会成为未处理拒绝,回合静默失败且已乐观追加的用户消息没有解释
|
2026-09-19 23:13:53 +08:00 |
|
k88936
|
034c369b88
|
排队发送后不再立刻抹掉「已加入发送队列」提示
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts 拆出 clearDraftInput(只清输入与附件),排队成功分支改用它
- 原先同一事件里先 enqueueTurn 写提示、紧接着 clearPendingInput 把 composerNotice 置空,React 批处理下用户永远看不到队列确认文案
|
2026-09-19 23:13:13 +08:00 |
|
k88936
|
884aabe6d7
|
Direct 聊天权限门改为必填,去掉默认放行
- apps/ai-game-creator-shell/src/view/project-development/chat/DirectProjectChatView.tsx 删除 ALLOW_CONVERSATION_ACCESS 及两个权限门 prop 的默认值,改为必填
- 原先缺省实现恒返回 true,调用方漏传等于静默跳过工作台壳的读写权限判定;唯一调用方 App.tsx 本来就会传入两个门
|
2026-09-19 23:12:28 +08:00 |
|
k88936
|
f58249a75e
|
给 clientTurnId 的回退生成补上随机熵
- apps/ai-game-creator-shell/src/view/project-development/chat/conversation/directCodexConversation.ts 在无 crypto.randomUUID 的回退分支追加 Math.random 派生的随机串
- 原先只有时间戳 + 页内序号,多个 WebView 在同一毫秒创建首轮会得到同一个 clientTurnId,而 Rust 侧用它做项目级唯一校验与历史关联键
- 结果仍是 ASCII 字母数字与连字符组成、长度在 6..160 之间,满足 native 校验
|
2026-09-19 23:12:02 +08:00 |
|
k88936
|
38fb9aa7ac
|
删除 Direct 输入区发送按钮里不可达的忙态分支
- apps/ai-game-creator-shell/src/view/project-development/chat/components/DirectProjectComposer/DirectProjectComposer.tsx 发送按钮只在非 busy 分支渲染,去掉 '思考中' 文案、Loader2 转圈与 disabled 里的 busy 条件,并移除不再使用的 Loader2 import
- busy 时仍由既有 ComposerStopButton 承担停止入口,渲染结果不变
|
2026-09-19 23:11:14 +08:00 |
|
k88936
|
b5e10f3851
|
合并 Direct 输入区来自同一模块的两条 type import
- apps/ai-game-creator-shell/src/view/project-development/chat/components/DirectProjectComposer/DirectProjectComposer.tsx 把 gameCreationApp 的 GameCreationAppAssetManifestEntry 与 GameIterationVersion 合并成一条 import type
- 不涉及任何运行时行为
|
2026-09-19 23:10:51 +08:00 |
|
k88936
|
c4e2793db1
|
把回合执行过程渲染的两层三目抽成 renderTurnProcess
- apps/ai-game-creator-shell/src/view/project-development/chat/components/DirectProjectConversation/DirectProjectTurn.tsx 新增 renderTurnProcess,负责空过程、运行中平铺与结束后折叠三种分支
- 组件主体不再嵌套三目,渲染结果与 data-testid="turn-process" 等 DOM 结构保持不变
|
2026-09-19 23:10:35 +08:00 |
|
k88936
|
79cb510891
|
把排队消息标题的嵌套三元改成提前返回
- apps/ai-game-creator-shell/src/view/project-development/chat/components/DirectProjectComposer/chatComposerQueue.ts 的 queuedChatTurnLabel 先处理空文本再判断截断
- 返回值不变
|
2026-09-19 23:10:01 +08:00 |
|
k88936
|
3160131889
|
给澄清问答卡提交路径补上 rejection 兜底
- apps/ai-game-creator-shell/src/view/project-development/planning/PlanningUserInputCard.tsx 在 Promise.resolve(onSubmit(...)).finally(...) 之间加 .catch(() => undefined)
- onSubmit 的契约允许返回 rejected promise,原先只挂 finally 会把 rejection 变成未处理拒绝;与 GddApprovalCard 的处理口径一致
|
2026-09-19 23:09:38 +08:00 |
|
k88936
|
c46687f0ef
|
把澄清问答卡提交按钮文案的嵌套三元改成顺序分支
- apps/ai-game-creator-shell/src/view/project-development/planning/PlanningUserInputCard.tsx 把 answerPrepared / controlBusy||submitting 的嵌套三元改成先取默认值再覆盖的 submitLabel
- 文案取值不变
|
2026-09-19 23:09:20 +08:00 |
|
k88936
|
137533484b
|
抽出策划视图共用的 Design 模式判据与回调兜底
- apps/ai-game-creator-shell/src/view/project-development/planning/PlanningChatView.tsx 新增 designMode、designActionsBusy 与三个 Design 回调兜底常量
- DesignAgentPhaseStatus(顶部)与 DesignAgentPendingActions(底部)原先各自重复 designView||onDesignApprove、controlBusy||planGddDecisionBusy 和 ?? (()=>undefined),现在共用同一份取值
|
2026-09-19 23:09:00 +08:00 |
|
k88936
|
00063ba882
|
抽出策划输入区与提交按钮共用的禁用判据
- apps/ai-game-creator-shell/src/view/project-development/planning/PlanningChatView.tsx 新增 composerDisabled,替换 ResourceReferenceInput 与提交按钮上逐字重复的四条件表达式
- 判据取值不变,后续改条件时不会只改到其中一处
|
2026-09-19 23:08:02 +08:00 |
|
k88936
|
cb3d452a44
|
把策划输入框提交按钮文案的嵌套三元改成顺序分支
- apps/ai-game-creator-shell/src/view/project-development/planning/PlanningChatView.tsx 的 submitLabel 改为先给默认值再按 needsUserInput / controlBusy 覆盖
- 取值结果不变,只是去掉三层嵌套三元表达式
|
2026-09-19 23:07:42 +08:00 |
|
k88936
|
257e407df7
|
策划会话 GDD 展示的 agentId 改用 PLANNING_SESSION_AGENT_ID 常量
- apps/ai-game-creator-shell/src/view/project-development/planning/planningSessionV2.ts 的 gddDisplayFromArtifact 不再写死 'planning-agent-v2' 字面量
- 与同结构里的 rootAgentId 共用 planningSessionContract.ts 的常量,避免 id 变更时要改两处
|
2026-09-19 23:07:25 +08:00 |
|
k88936
|
0d3ab25499
|
删除输入区里只会在挂载时跑一次的草稿清空 effect
- apps/ai-game-creator-shell/src/features/project-workspace/ResourceReferenceInput.tsx 删除依赖只有 resetPromptPolish(稳定 useCallback)的 effect
- 该 effect 读 liveDraftRef.current 却把它排除在依赖外,实际只在挂载时执行一次;清空草稿时重置润色状态的逻辑已由 OnChangePlugin 内联承担
|
2026-09-19 23:07:02 +08:00 |
|
k88936
|
2a8063a83a
|
让技能清单查询失败后可以重试
- apps/ai-game-creator-shell/src/features/project-workspace/ResourceReferenceInput.tsx 在 list_agc_skill_catalog / list_client_extensions 的 catch 里放开 skillCatalogRequestedRef
- 原先标记在调用前就置位且失败时不回退,一次瞬时失败会让该输入区此后不再拉取技能候选
|
2026-09-19 23:06:05 +08:00 |
|
k88936
|
37c7477068
|
修正草稿文本把附件引用误回读成 $名称的问题
- apps/ai-game-creator-shell/src/features/project-workspace/ResourceReferenceInput.tsx 的 readDraftFromNodes 改为按 part.type 显式分支:附件引用回读为 @名称,技能引用回读为 $名称,未知类型返回空串
- 该 text 会被受控同步比较(对照 directCodexContentToPromptText 展开的 value),附件口径不一致会让受控输入区每次都判定草稿变化而重建编辑器
- 顺带去掉该处嵌套三元,与 resourceReferences.ts 的渲染口径对齐
|
2026-09-19 23:05:34 +08:00 |
|
k88936
|
e259106267
|
拆出引用草稿键与 token 的取值 helper 消除嵌套三元
- apps/ai-game-creator-shell/src/features/project-workspace/ResourceReferenceInput.tsx 新增 referenceDraftKey/referenceDraftToken,替换 readDraftFromNodes 里构造 labels 时的嵌套三元表达式
- 行为与原先一致,只是把「resource 取 id、skill 取 name、其余取 label」的规则收敛到一处
|
2026-09-19 23:04:47 +08:00 |
|
k88936
|
7a89a119d9
|
校正 check-config 免调用白名单中三条命令的说明
- apps/ai-game-creator-shell/scripts/check-config.mjs 为 delete_local_game_memory、delete_local_project_file、pick_local_file 补写准确的剩余调用方说明(前两条只剩 Rust 测试直接调用命令函数,pick_local_file 前端与 Rust 均无调用方)
- 修正原先「命令由 native Runtime、CLI swarm 与 Rust 测试使用」这一对三条命令不成立的笼统说明
|
2026-09-19 23:03:51 +08:00 |
|
k88936
|
57b28ce5cd
|
删除 ts-rs 生成器漂移产生的 DirectCodexUserMessageEnvelope 死文件
- 删除 apps/ai-game-creator-shell/src/view/project-development/chat/generated/DirectCodexUserMessageEnvelope.ts
- 该文件是 ts-rs 导出按本机依赖版本漂移时多出来的产物,前端无任何引用,按 project-memory/pitfalls.md 的口径不提交
|
2026-09-19 23:03:27 +08:00 |
|
k88936
|
876529e668
|
删除 Project Supervisor 前端链路并将项目对话收敛到 DirectProject 与立项策划
- 删除 ProjectSupervisorView、SupervisorChatOnlyView、ProjectWorkspaceChatPane、AgentConversationOverlay、DeveloperProjectPanels、DeveloperRuntimePanels 与 features/agent-runtime/panels.tsx
- 删除 Supervisor 独立调试窗口:windows.rs 的 supervisor_chat_window_url / open_project_supervisor_chat_window、main.rs 的 invoke 注册、?supervisor-chat 与 ?agent-chat 前端入口、developer.json capability 和对应 Rust 用例
- 删除工作台壳的开发者 Agent 面板:DeveloperAgentPanel、useDeveloperAgentPanel、useDeveloperAgentState、developerAgentControls
- App.tsx 删除只服务退役面板的 state/ref/effect/handler(agentConversation*、文件/记忆/资产/画板/预览面板处理、commandLog、llmConfigStatus、editorBaseUrl、回放历史与 trace 面板状态、selectedAgent 等)以及由此产生的空分支,并把 requestRuntimeConfigOpen 接回本地 RuntimeConfigDialog
- 立项策划独立成模块:Design Agent 与 Planning V2 的容器和表现移到 view/project-development/planning/(PlanningChatView、PlanningUserInputCard、GddApprovalCard、DesignAgentSurface、PlanningLaneRuntimeStrip、planningLane、planningSessionV2、planningSessionContract)
- 改名到中性概念:ProjectSupervisorComponentProps→ProjectChatComponentProps、WorkspaceLauncherShellProps.ProjectSupervisor→ProjectChat、ProjectDevelopmentView.supervisor→chat、orchestrationMode→agentDockVisible、initialSupervisorMessageClaims→initialTurnClaims、ProjectManifestSnapshotSource 'supervisor'→'chat'、CSS project-supervisor-*/project-planning-*→project-chat-*
- 删除 PROJECT_SUPERVISOR_AGENT_ID 与 PROJECT_SUPERVISOR_PLAN_SOURCE 常量
- 工作台壳自己订阅 game-creator-manifest-invalidated,用 revision→清单→revision 配对读(source: asset-event)并入 currentProjectContext,且不重新检查项目目录;测试夹具改为按监听器集合广播该事件
- 删除只钉住退役界面的 appSurface 用例(旧调试窗口、开发者面板、Agent 对话浮层、运行历史面板)
- 同步文档:ADR、DirectProject 聊天模块抽离实施计划与里程碑、Provider 推理里程碑、策划会话 RuntimeV2、AI 游戏创作实施计划,并在 decision-log 新增 2026-09-19 条
- 删除随退役面板失去调用方的模块与导出:projectSummaryCommands.ts(1054 行旧 Supervisor 斜杠命令处理器)、AGENT_RUN_HISTORY_* 常量、agent-runtime/model.ts 与 project-summary/agentPresentation.ts 里的死导出,以及 agentRunTrace / memoryCommands / projectCommandPolicy 中无调用方的校验与解析函数
- 更新 scripts/check-config.mjs 与 scripts/check-native-shells.mjs 的窗口与命令守卫
|
2026-09-19 21:59:44 +08:00 |
|
k88936
|
99be1d76fe
|
抽离 DirectProject 独立聊天容器并删除工作台壳 Direct 状态
- 新增 view/project-development/chat 模块:DirectProjectChatView 自己持有项目清单订阅、首屏锚点、历史分页、发送队列、附件、终止、草稿与本地消息
- DirectProjectChatView 入参收窄为项目路径、入口首轮需求(canonical content[])和两条权限门,Direct 状态不再穿过 App.tsx
- 线程订阅与聊天 reducer 提成 useDirectThreadChatSubscription:subscribe/consume/notify 单飞循环、订阅欠账、SUBSCRIPTION_EXPIRED 重订与 DirectThreadChatState
- chat/components 按「一个组件一个目录、逻辑与表现同目录」重组(ChatHeader、Composer、Conversation、SettingsDialog、ToolCallGroup)
- DirectProjectChatView 拆成聊天头、会话区、回合、输入盒四个组件
- App.tsx 删除 Direct 专属 state/ref/effect/handler 与 directCodex 分支,首轮需求按 canonical content 交给聊天
- 工作台级动作(运行本地预览等)经 DirectProjectChatHandle.announce 交给聊天自己的本地消息流
- Direct 首轮认领记录提成 app/initialSupervisorMessageClaims,供各入口共用
- Rust 侧 Direct 契约 ts-rs 导出目录改到 chat/generated
- 补齐 direct_codex_user_item/wire.rs 既有的 rustfmt 空格漂移
- 同步 ADR、实施计划、decision-log、pitfalls 与 Direct 技术文档
|
2026-09-19 15:08:31 +08:00 |
|
k88936
|
38ad2ce256
|
抽离项目开发 DirectProject 聊天模块
Project CI / AI game creator shell Rust shard 1/4 (pull_request) Failing after 5m42s
Project CI / AI game creator shell Rust shard 3/4 (pull_request) Successful in 5m31s
Project CI / AI game creator shell Rust shard 2/4 (pull_request) Successful in 6m9s
Project CI / Backend tests (pull_request) Failing after 30s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 2m16s
Project CI / AI game creator shell Rust smoke (pull_request) Successful in 2m54s
Project CI / Repository checks (pull_request) Failing after 10s
Project CI / AI game creator shell Rust shard 4/4 (pull_request) Successful in 5m32s
Project CI / Frontend tests (pull_request) Failing after 16m6s
Project CI / Native shell tests (pull_request) Successful in 24m45s
Project CI / AI game creator shell web tests (pull_request) Failing after 24m28s
将 DirectProject 表现与 controller 移到 view/project-development/chat
删除运行时 Direct feature flag 与 ProjectSupervisorView 的 Direct 行为分支
迁移 ts-rs 生成契约并删除无意义 generated/index.ts
将钱包入口提升到工作台布局并保留现有 Direct 测试覆盖
|
2026-09-18 22:06:15 +08:00 |
|
k88936
|
ade1b7803e
|
修复 DirectProject 校验清单合并
Project CI / AI game creator shell Rust shard 3/4 (pull_request) Successful in 7m3s
Project CI / AI game creator shell Rust shard 1/4 (pull_request) Successful in 7m25s
Project CI / AI game creator shell Rust shard 2/4 (pull_request) Successful in 7m30s
Project CI / Backend tests (pull_request) Failing after 11s
Project CI / AI game creator shell Rust shard 4/4 (pull_request) Successful in 7m41s
Project CI / AI game creator shell Rust smoke (pull_request) Successful in 2m9s
Project CI / Repository checks (pull_request) Failing after 10s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 2m40s
Project CI / Frontend tests (pull_request) Failing after 7m45s
Project CI / AI game creator shell web tests (pull_request) Failing after 8m31s
Project CI / Native shell tests (pull_request) Successful in 13m1s
让校验函数返回已读取的项目清单
补齐附件在 Codex 输入转换中的分支;图片 part 已退役,只保留附件 part
|
2026-09-18 14:27:23 +08:00 |
|
k88936
|
71000b6df1
|
通过 Tauri command 提供 Skill 候选
从已校验的 AGC Skill manifest 派生 list_agc_skill_catalog 命令
移除前端内置 Skill 名称硬编码并增加读取命令测试
|
2026-09-18 14:27:23 +08:00 |
|
k88936
|
c047543825
|
复用 DirectProject 引用摘要构造
提取素材与运行区域摘要 helper
让历史投影和 turn 输入转换共用同一份摘要逻辑
|
2026-09-18 14:27:21 +08:00 |
|
k88936
|
34b3af1d2a
|
复用已校验的项目清单
DirectProject wire 转换只读取一次项目 manifest
避免每个素材引用重复 I/O 与解析并缩小校验到解析之间的竞态窗口
|
2026-09-18 14:26:50 +08:00 |
|
k88936
|
f7cba30b6b
|
拒绝保留路径段的 Skill 名称
在 DirectProject Skill 校验中拒绝 . 与 ..
阻止 Skill 路径解析通过父目录段逃逸配置根目录
|
2026-09-18 14:26:50 +08:00 |
|
k88936
|
273f12633c
|
按字符数限制 Skill 名称
使用 Unicode 字符数量而非 UTF-8 字节长度执行 120 字符上限
让多字节 Skill 名称与资源 ID 的长度校验口径一致
|
2026-09-18 14:26:50 +08:00 |
|
k88936
|
5f5aa17152
|
展开引用列表指纹分支
将资源、Skill 与运行区域 key 生成改为显式分支
移除 chatReferenceListKey 的嵌套三元表达式
|
2026-09-18 14:26:50 +08:00 |
|
k88936
|
3a57d9fbdf
|
移除未使用的 JSON 类型导入
删除 codex_app_server 中未被直接引用的 serde_json::Value 导入
|
2026-09-18 14:26:50 +08:00 |
|
k88936
|
382b925ab9
|
复用引用节点插入逻辑
统一资源与 Skill 候选的 Lexical 节点插入流程
避免两个选择处理器在删除查询和关闭菜单行为上漂移
|
2026-09-18 14:26:50 +08:00 |
|
k88936
|
c1482012c6
|
整理引用芯片标题分支
提取资源、Skill 与运行区域标题计算 helper
移除 ResourceReferenceChip 的嵌套三元表达式
|
2026-09-18 14:26:50 +08:00 |
|
k88936
|
1bfdc3a760
|
接通Skill提及Codex输入
将 canonical Skill part 按原顺序转换为 type skill 输入项
沿用客户端隔离 Skill root 解析受控路径
|
2026-09-18 14:26:50 +08:00 |
|
k88936
|
1e27cd229d
|
接入客户端已启用Skill候选
从扩展索引读取启用状态并合并内置 Skill 清单
输入提示只展示可用 Skill 并保持取消安全
|
2026-09-18 14:26:49 +08:00 |
|
k88936
|
774710452f
|
校验Skill提及用户输入
为 canonical Skill part 增加名称边界校验
将 Skill 提及保留为 Codex 可识别的 $name 文本
|
2026-09-18 14:26:49 +08:00 |
|
k88936
|
aaecb82622
|
增加输入框Skill提及候选
扩展聊天引用模型支持 Skill 节点与 canonical content
复用 Lexical typeahead 增加 $Skill 候选和芯片展示
Conflicts:
apps/ai-game-creator-shell/src/features/project-workspace/ResourceReferenceInput.tsx
Conflicts:
apps/ai-game-creator-shell/src/features/project-workspace/ResourceReferenceInput.tsx
Conflicts:
apps/ai-game-creator-shell/src/features/project-workspace/ResourceReferenceInput.tsx
apps/ai-game-creator-shell/src/features/project-workspace/resourceReferences.ts
|
2026-09-18 14:26:49 +08:00 |
|
k88936
|
75ec3361dc
|
限制附件元数据格式与长度
校验 inline 附件名称和媒体类型的控制字符、格式与长度。
共享附件清洗上限常量并补充异常元数据拒绝测试。
|
2026-09-18 14:12:47 +08:00 |
|
k88936
|
bc1dc868a1
|
校验已导入附件的项目路径
imported 附件必须携带有效非空的项目相对路径。
failed 附件仍允许无路径,并补充状态路径组合测试。
|
2026-09-18 14:07:07 +08:00 |
|
k88936
|
50204ff7aa
|
限制 DirectProject inline 附件数量
为 canonical 附件增加独立的八个条目上限。
补充超限附件拒绝测试,避免绕过素材引用数量门禁。
|
2026-09-18 14:03:30 +08:00 |
|
k88936
|
70fa160819
|
清洗附件摘要元数据
wire 投影复用附件名称与媒体类型的安全清洗。
附件项目路径输出归一化结果,避免原始控制字符进入模型提示。
|
2026-09-18 14:00:00 +08:00 |
|