lili
|
6217029989
|
fix(gateway): route muse api through muse server
|
2026-06-19 07:46:15 -07:00 |
|
lili
|
9d5430b62c
|
test(studio): add live agent create e2e
|
2026-06-19 07:35:53 -07:00 |
|
lili
|
765bf749f2
|
docs: close stale ai stream drift todo
|
2026-06-19 06:23:36 -07:00 |
|
lili
|
bb59f98c16
|
chore(ai): remove empty contract server module
|
2026-06-19 04:30:01 -07:00 |
|
lili
|
134d7646c3
|
docs: consolidate dev baseline rules
|
2026-06-19 04:26:32 -07:00 |
|
lili
|
c66d2b9b82
|
ci: wire openapi diff workflow at root
|
2026-06-19 04:19:35 -07:00 |
|
lili
|
984c6db583
|
test(p1r): require coverage evidence test files
|
2026-06-19 02:38:29 -07:00 |
|
lili
|
a4659bf3f3
|
docs(ledger): 补前端 muse-studio 复验绿,完成整分支 CI-green 实证
后端 mvn -B package 已绿(前序 commit)。本 commit 记前端这半:muse-studio tsc -b 0 错误 + vitest run 12 文件/47 用例全过(2026-06-17 复跑,node_modules 直跑 .bin)。本分支 35 个前端改动全在 studio、admin 未动。至此整分支(后端 mvn package + 前端 tsc/vitest)deterministic CI 检查全绿,均本会话实证。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 15:22:51 -07:00 |
|
lili
|
08e8b97c88
|
docs(ledger): 精确化 GHA 触发残留诊断 + MuseAi skip-gate 反假绿双向实证
GHA 触发管道: 订正"待真实 PR 首跑"→"未接线"。诊断 2026-06-17: workflow 在 muse-cloud/.github/、仓库根无 .github/workflows/、remote 是自建 Gitea(101.200.34.71:2222 非 github.com)→ GHA/Gitea-Actions 只读仓库根故 monorepo 层不触发(真 PR 也不跑);需移 workflow 到仓库根或 muse-cloud 单独成库 + 确认 Gitea Actions 已启。mvn -B package[CI 确切命令]已本地实证全绿,接线属基建决策留人类。
MuseAiEventPublishOutboxMapperTest: 化解"零代码改动"矛盾——本会话已把无 PG 硬 fail 改 assumeTrue skip-gate;双向实证:有 PG(source infra.env + -DargLine 清 SOCKS 代理配方)→5/0/0/0 真跑 PASS、无 PG→skip 非 fail 不拖红 CI。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 15:14:30 -07:00 |
|
lili
|
8963383233
|
test(ci-green): 清全 reactor 4 处潜伏陈旧测试,mvn test 史上首次全绿
CI 从未在本特性分支跑过(maven.yml 仅 push/PR-to-main 触发),积累潜伏红。以 mvn -pl muse-server -am test -fae 全 reactor 逐模块解锁排查(上游 fail-fast 会 SKIP 下游),本提交清 4 处(另 2 处 market PublishRecordItem/coverage 台账已随前序 commit):
- knowledge/ai Content*WorkOwnerFacadeTest: 陈旧断言 @ConditionalOnBean(2026-06-14 单体修复已去除、改 @Primary 总注册压兜底)
- ai MuseAiEventPublishOutboxMapperTest: 真 PG 用例无 PG 时硬 fail→改 assumeTrue skip(与 P1r external-acceptance env 缺失即 skip 约定一致、honest 非假绿;有 PG 仍真跑保真)
- muse-server P1rKnowledgeMigrationSqlTest: 元测试钉死 TARGET_VERSION="14"→版本无关化(被验收 IT 已按 4d46d7a 动态自适应,元测试不应自犯硬编码版本病)
验收:mvn -pl muse-server -am test -fae 全 reactor BUILD SUCCESS、0 失败/错误、所有模块 SUCCESS(真 PG 类无 PG 时 skip)。教训:跨模块重构后须跑 -fae 全量,勿只跑改动模块。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 15:01:41 -07:00 |
|
lili
|
d6fc1994e6
|
docs(meta): meta-schema 用量投影评审版设计(Pull + 按 BC 拆贡献者端口,待确认)
承进度总账 §五A(MetaImpactFacade 置后判定)。基于本会话只读 grounding 调查
(有出处)产出评审版设计,供人类做架构决策——本提交不实现任何代码。
核心结论:
- 根因证实:消费方未持久化 schema 用量(仅 Content planning 存 schema_version、
无 schema_key;Knowledge/AI 不存)→ MetaImpactFacade 只能诚实 fail-closed
- 架构订正:现 MetaImpactFacade 单接口返 5 维度=单实现者须懂 5 BC 数据、违
BcBoundaryArchTest 边界门;须拆为 meta-api 定义贡献者端口、各 owner BC 提供适配器
- 推荐 Pull(按需查询贡献者)而非 Push(事件投影):impact preview 低频 admin +
gate destructive 治理动作、要准确,Pull 无投影漂移/回填/一致性窗口
- 分阶段:P0 端口就位→P1 Content 真实化→P2+ 其余维度;未做维度诚实 unknown 不伪造
- 5 个 open items 待人类定夺(尤:Knowledge/AI 是否真消费 schema、fail-closed 粒度)
台账 §五A 注册指针。待确认方向后再写主 spec + 执行版(数据契约/迁移/IT 验收)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 14:33:15 -07:00 |
|
lili
|
c219d7e205
|
test(bc): 跨域 .application 边界门(BcBoundaryArchTest 平行 .dal 规则)
承 bc-boundaries §四遗留 + MarketAccountProjectionFacade 收口(facade 端口统一上移 -api)。
- BcBoundaryArchTest 新增 no_business_bc_may_depend_on_another_bc_application
(平行既有 .dal 规则、共用 BUSINESS_BCS / KNOWN_VIOLATION_EXEMPTIONS):
禁任一业务 BC 依赖他域 .application(service / facade 实现);.application 端口
已无合规跨域通道(均在 -api),故直接禁止、无需为 facade 留例外
- 验收:BcBoundaryArchTest 2/0F(.dal + .application 均绿,ArchUnit 字节码级);
全仓扫描跨 BC .application import = 0
- 反假绿反向证:同款检测逻辑临时指向 .api(已知有跨 BC 引用)→ 找到 238 例违例,
证明检测机制非空转、绿是因真无跨域耦合(期间踩 Maven 增量编译陈旧坑:仅改谓词
不重编译致假绿,须 rm maven-status 或 -Dmaven.compiler.useIncrementalCompilation=false)
- 同步 bc-boundaries §二/§四 + 台账 §一 TODO
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 14:22:30 -07:00 |
|
lili
|
4e9923ce68
|
refactor(market): pom 坐标收口 market→member-api(facade 移入 member-api)+ tenant 依赖诚实化
承 bc-boundaries §三遗留(更深一层 BC 收口)。market-server pom 此前依赖
muse-module-member-server(可见 member 全部 internal),根因是 market 唯一引用的
member-server 类型 MarketAccountProjectionFacade(单方法读校验端口、无 DTO)。
- 接口 MarketAccountProjectionFacade 从 member-server application.account.facade
移到 member-api api.account(对称写端口 MuseAccountRecordProjectionApi:member 定义端口、
market 提供适配器 MarketAccountProjectionProvider、member-alone 回落 Unavailable*,
符合 bc-boundaries §一"本域定义端口、他域提供适配器")
- market-server pom: muse-module-member-server → muse-module-member-api
- market-server 直接声明 muse-spring-boot-starter-biz-tenant(此前经 member-server 传递,
收口暴露的隐性传递耦合 → 依赖诚实化)
- 顺带修预存潜伏 test 编译破损:AppMuseMarketPublishControllerTest 的 9 参
PublishRecordItem 构造(record 自 commit a00c758 加 marketAssetId/appealStatus 变 10 参、
test 未同步;因 CI 从未在本特性分支运行而潜伏)→补 marketAssetId=null
验收:member-api/member-server/market-server scoped reactor test-compile BUILD SUCCESS;
AccountMarketRecordServiceTest 8/0、MarketAccountProjectionFacadeConfigurationTest 3/0、
MarketAccountProjectionProviderTest 5/0、AppMuseMarketPublishControllerTest 10/0;
BcBoundaryArchTest 1/0(0 Architecture Violation)。同步 bc-boundaries §三 + 台账 §一 TODO。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 14:08:19 -07:00 |
|
lili
|
053caf192f
|
test(contract): openapi-diff 破坏性变更门禁本地实证 + 镜像钉 v1.19.1 + 复现脚本
- go install 同款 oasdiff v1.19.1 验证 openapi-diff.yml 检测逻辑+逐域循环聚合:
对全部 7 域真实契约 5/5——无变更/新增可选参数/新增端点→放行;
参数变必填(request-parameter-became-required)/删端点(api-path-removed-without-deprecation)→拦截
- workflow 镜像 tufin/oasdiff 钉 v1.19.1(机械门禁去 :latest 漂移)
- 新增可复现脚本 muse-cloud/scripts/verify-openapi-diff.sh(自举 oasdiff+临时 venv,冷启动 5/5 绿)
- 同步台账 §一②/TODO、contract-first §四(去内联 YAML 双源、指向 workflow SSOT)、knowledge §七
- 残留:GHA 触发管道(PR paths 触发/base.sha worktree/docker 拉取)待真实 PR 首跑
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 13:50:15 -07:00 |
|
lili
|
0cf6a6659e
|
test(p1r): approve remaining api coverage completions
|
2026-06-17 10:49:58 -07:00 |
|
lili
|
467d7184c7
|
test(p1r): clear remaining content verification debt
|
2026-06-17 07:58:07 -07:00 |
|
lili
|
94155e6b03
|
test(p1r): verify content admin task reads
|
2026-06-17 07:39:01 -07:00 |
|
lili
|
6802dcf115
|
test(p1r): verify content export task cluster
|
2026-06-17 05:03:42 -07:00 |
|
lili
|
4e5be1f029
|
test(p1r): 验收债批25 真实 PG IT(content import-task 簇 2 op:真实只读 + fail-closed) + 台账/.agent 同步
P1rContentImportTaskCompletedApprovalIT(真实 PG muse_p1r_content_import_task_test,
3/3 绿,独立复跑两次均绿)覆盖 getImportTask/createImportTask,经真实
/app-api/muse/import-tasks/{taskId} 与 /works/{id}/import-tasks 入口。
getImportTask 是 Content 自有事实 muse_content_import_task 的真实持久化只读:种真实任务行
后经 HTTP 读回库内字段(id/workId/status/fileName/fileSize/format/scanStatus/progress
全部断言、纯读 no-write),并验缺任务→CONTENT_NOT_FOUND、跨属主→CONTENT_FORBIDDEN
(owner 隔离不泄露)。createImportTask 依赖 FileService owner;单体内 ContentFileFacade
仅有 fail-closed 默认实现,故 FileService 不可用时 fail-closed→
CONTENT_EXTERNAL_OWNER_UNAVAILABLE 不伪造已可用导入任务、不新增任务行、预占命令随
@Transactional 回滚;非法格式→CONTENT_INVALID_STATUS_TRANSITION(先于命令预占)、
非法 API version→CONTENT_API_VERSION_UNSUPPORTED 守卫,失败路径 0 写。
content needs_verification 验收债 10→8(余导出 4 + 管理端列表 2 + createParseJob +
mergeBlockSuggestion;含真实只读 getExportTask/管理端列表)。台账 completed flip +
覆盖门禁 APPROVED_COMPLETED_OPERATIONS 仍须人工批准,agent 不自批。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 02:59:59 -07:00 |
|
lili
|
c8990fd2d2
|
test(p1r): 验收债批24 真实 PG IT(content parse-job 生命周期 4 op fail-closed) + 台账/.agent 同步
P1rContentParseJobLifecycleCompletedApprovalIT(真实 PG
muse_p1r_content_parse_job_test,3/3 绿,独立复跑两次均绿)覆盖
getParseJob/listParseJobChapters/retryParseJob/batchConfirmChapters,经真实
/app-api/muse/parse-jobs/{jobId}{,/chapters,/retry,/chapters/batch-confirm} 入口。
AI 解析任务与章节结果投影归 AI owner;单体内 ContentParseJobFacade/
ContentKnowledgeDraftFacade/ContentFileFacade 仅有 fail-closed 默认实现
(全 default = unavailable,@ConditionalOnMissingBean 兜底)。断言:AI owner 不可用时
四 op 全部 fail-closed→CONTENT_EXTERNAL_OWNER_UNAVAILABLE(解析任务投影在
requireParseJobProjection 处即不可用,故不伪造任务/章节/重试/批量确认结果);
两写 op(retry/batchConfirm)已预占命令随 @Transactional 回滚 0 残留,四 op 全程 0 写;
非法 API version→CONTENT_API_VERSION_UNSUPPORTED 守卫先于服务体且 0 写。
content needs_verification 验收债 14→10(余 10 全为 FileService/New-API/SSE
外部 owner fail-closed:导入/导出/管理端任务/createParseJob/合并建议)。
台账 completed flip + 覆盖门禁 APPROVED_COMPLETED_OPERATIONS 仍须人工批准,agent 不自批。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 02:53:20 -07:00 |
|
lili
|
517abbdb2a
|
test(p1r): 验收债批23 真实 PG IT(content chapter-parse-result 决策 2 op fail-closed) + 台账/.agent 同步
P1rContentChapterParseResultDecisionCompletedApprovalIT(真实 PG
muse_p1r_content_import_parse_test,3/3 绿,独立复跑两次均绿)覆盖
confirmChapterParseResult/rejectChapterParseResult,经真实
/app-api/muse/chapter-parse-results/{resultId}/confirm|reject 入口。
AI 解析任务/章节结果投影/知识草稿生成均归 AI owner;单体内 ContentParseJobFacade、
ContentKnowledgeDraftFacade、ContentFileFacade 仅有 fail-closed 默认实现
(全 default = unavailable,@ConditionalOnMissingBean 兜底)。断言:AI owner 不可用时
两 op 全部 fail-closed→CONTENT_EXTERNAL_OWNER_UNAVAILABLE(章节结果投影在
requireChapterResultProjection 处即不可用,故不生成知识草稿、不记录确认/拒绝决策);
两 op 均写路,已预占命令随 @Transactional 回滚 0 残留,全程 0 写;非法 API version→
CONTENT_API_VERSION_UNSUPPORTED 守卫先于服务体且 0 写。
content needs_verification 验收债 16→14(余 14 全为 FileService/New-API/SSE
外部 owner fail-closed:导入/导出/管理端任务/解析任务/合并建议)。台账 completed flip +
覆盖门禁 APPROVED_COMPLETED_OPERATIONS 仍须人工批准,agent 不自批。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 02:46:56 -07:00 |
|
lili
|
22ba9e84c6
|
test(p1r): 验收债批22 真实 PG IT(content style-check 簇 2 op fail-closed) + 台账/.agent 同步
P1rContentStyleCheckClusterCompletedApprovalIT(真实 PG
muse_p1r_content_style_check_test,3/3 绿,独立复跑两次均绿)覆盖
createStyleCheck/getStyleCheckResult,经真实
/app-api/muse/works/{id}/planning/style-checks* 入口。
风格检查任务生成与结果归 AI owner;单体内 ContentStyleCheckFacade 仅有
fail-closed 默认实现(全 default = unavailable,@ConditionalOnMissingBean 兜底)。
断言:AI owner 不可用时两 op 全部 fail-closed→CONTENT_EXTERNAL_OWNER_UNAVAILABLE,
绝不伪造 queued 任务或结果;createStyleCheck 写 op 已预占命令随 @Transactional 回滚
0 残留,两 op 全程 0 写;owner/存在性守卫先于外部调用——跨属主→CONTENT_FORBIDDEN、
缺作品→CONTENT_NOT_FOUND 且 0 写。
content needs_verification 验收债 18→16(余 parse-result confirm/reject 2 +
14 FileService/New-API/SSE 外部 owner fail-closed)。台账 completed flip + 覆盖门禁
APPROVED_COMPLETED_OPERATIONS 仍须人工批准,agent 不自批。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 02:39:23 -07:00 |
|
lili
|
a7d6a95824
|
test(p1r): 验收债批21 真实 PG IT(content meta-projection 簇 3 op fail-closed) + 台账/.agent 同步
P1rContentMetaProjectionClusterCompletedApprovalIT(真实 PG
muse_p1r_content_meta_projection_test,3/3 绿,独立复跑两次均绿)覆盖
listMetaProjections/getMetaProjection/validateDynamicFields,经真实
/app-api/muse/works/{id}/meta-projections* 与 /dynamic-fields/validate 入口。
MetaSchema 解释/Meta 投影/动态字段校验规则均归 Meta owner;单体内 ContentMetaFacade
仅有 fail-closed 默认实现(全 default = unavailable,@ConditionalOnMissingBean 兜底)。
断言:Meta owner 不可用时三 op 全部 fail-closed→CONTENT_EXTERNAL_OWNER_UNAVAILABLE,
绝不在 Content 侧伪造投影或复制 MetaSchema 规则,三 op 纯读全程 0 写;守卫先于外部调用——
非法 API version→CONTENT_API_VERSION_UNSUPPORTED、跨属主→CONTENT_FORBIDDEN、
缺作品→CONTENT_NOT_FOUND 且 0 写。
content needs_verification 验收债 21→18(余 createStyleCheck + parse-result
confirm/reject 2 + 约 15 FileService/New-API/SSE 外部 owner fail-closed)。
台账 completed flip + 覆盖门禁 APPROVED_COMPLETED_OPERATIONS 仍须人工批准,agent 不自批。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 02:33:57 -07:00 |
|
lili
|
7d3a69ca4d
|
test(p1r): 验收债批20 真实 PG IT(content planning candidate 簇 5 op fail-closed) + 台账/.agent 同步
P1rContentPlanningCandidateClusterCompletedApprovalIT(真实 PG
muse_p1r_content_planning_candidate_test,3/3 绿,独立复跑两次均绿)覆盖
createPlanningCandidate/listPlanningCandidates/getPlanningCandidate/
confirmPlanningCandidate/discardPlanningCandidate,经真实
/app-api/muse/works/{id}/planning/candidates* 入口。
规划候选生成/运行事实/状态投影归 AI owner;单体内 ContentPlanningCandidateFacade
仅有 fail-closed 默认实现(全 default = unavailable,等价生产
UnavailableContentPlanningCandidateFacade 的 @ConditionalOnMissingBean 兜底)。
断言:AI owner 不可用时五 op 全部 fail-closed→CONTENT_EXTERNAL_OWNER_UNAVAILABLE,
绝不伪造 queued/processing 任务、绝不在 Content 侧伪造 discarded;尤其
confirmPlanningCandidate(候选进正文唯一合法入口)拒绝写正式 planning section
(无候选投影即不落 canonical),create/confirm/discard 写 op 已预占命令随
@Transactional 回滚 0 残留,五 op 全程 0 写。owner/存在性守卫先于外部调用——
跨属主→CONTENT_FORBIDDEN、缺作品→CONTENT_NOT_FOUND 且 0 写。
content needs_verification 验收债 26→21(余约 15 FileService/New-API/SSE
外部 owner fail-closed + parse-result/dynamic-fields/meta-projection 真实持久化 op)。
台账 completed flip + 覆盖门禁 APPROVED_COMPLETED_OPERATIONS 仍须人工批准,agent 不自批。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 02:25:20 -07:00 |
|
lili
|
5d34b3d853
|
test(p1r): 验收债批19 真实 PG IT(market handoff 簇 4 op,market 验收债清零) + 台账/.agent 同步
P1rMarketHandoffClusterCompletedApprovalIT(真实 PG muse_p1r_market_handoff_test,
3/3 绿,独立复跑两次均绿)覆盖 createBindPrecheck/createMarketplaceHandoff/
getHandoffStatus/cancelHandoff,经真实 /app-api/muse/marketplace handoff 入口端到端:
已购 active 授权快照→来源授权摘要(handoffReady)→一次性 handoff token(明文不入库、
只存 sha256 hash,事件快照不含明文)→只读回显 pending→expectedStatus CAS 取消
(pending→cancelled + completed_at)。bind/handoff 回放幂等返回与首呼一致结果不双写;
cancel 终态后再取消被取消性守卫拒绝(MARKET_HANDOFF_NOT_CANCELLABLE,守卫先于 replay
短路)且 0 写。fail-closed:非法 API version、缺资产、无活跃授权(授权≠可达)、目标
owner 白名单外(LocalMarketTargetOwnerFacade 本地目标页 fail-closed)、跨属主 token
读取/取消(属主隔离 RESOURCE_FORBIDDEN)、取消 CAS 期望态不匹配(reserveCommand 为
Propagation.MANDATORY,预占命令随 @Transactional 回滚 0 残留),失败路径全程 0 写。
至此本战役 market 批15-19 补 14 op,叠加战役前 14 op = market needs_verification
28 op 全有 dedicated 真实 PG 证据,market 验收债清零。台账 completed flip + 覆盖门禁
APPROVED_COMPLETED_OPERATIONS 仍须人工批准,agent 不自批。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 02:08:23 -07:00 |
|
lili
|
cb6e5955ba
|
test(p1r): 批18 market 采纳链真实 PG IT(purchaseAsset → installMarketplaceAsset)
P1rMarketLicenseInstallCompletedApprovalIT 经真实 /app-api/muse/marketplace/assets/{id}/
purchase|install 覆盖 purchaseAsset/installMarketplaceAsset(MarketLicenseServiceImpl +
MarketInstallServiceImpl + MarketCommandServiceImpl + MarketAccountProjectionProvider/Outbox,
base-package=cn.iocoder.muse.module)。断言:购买写授权快照 + 购买事实 + completed 命令并把
purchase + license 两条 Account 投影经写端口跨 BC 同步(RecordingAccountProjectionApi 真实捕获、
读端绝不反写反假绿);安装要求已购 active 授权(无授权→MARKET_LICENSE_NOT_EXISTS)、仅 agent/kb
可安装(作品已购仍→MARKET_INSTALL_NOT_BINDABLE 且安装路径 0 写)、写 installed 安装记录 + completed
命令 + license 投影;purchase/install 命令幂等回放命中 completed 不写第二份事实;未上架(属主可见非
listed)→MARKET_ASSET_NOT_LISTED、缺资产→MARKET_ASSET_NOT_EXISTS、授权类型不符→
MARKET_LICENSE_NOT_PURCHASABLE、API version→MARKET_API_VERSION_UNSUPPORTED,失败路径全程 0 写。
真实 PG muse_p1r_market_license_install_test 3/3 绿,独立复跑两次均绿。
market 验收债 6→4(下一簇=createBindPrecheck + handoff 三件套)。同步 docs/mvp/进度总账.md §五B
与 market/.agent。completed 仍由人工批台账。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 01:45:43 -07:00 |
|
lili
|
63ad0c85e6
|
test(p1r): 批17 marketplace 发现读真实 PG IT(listAssets/recommendations/governanceImpact)
P1rMarketplaceDiscoveryReadsCompletedApprovalIT 经真实 /app-api/muse/marketplace/assets|
recommendations|assets/{id}/governance-impact 覆盖 listMarketplaceAssets/
listMarketplaceRecommendations/getGovernanceImpact(MarketAssetQueryServiceImpl + 收藏/命令依赖,
base-package=cn.iocoder.muse.module)。断言:列表按 App 可见性(listed 公开;draft 等非公开仅 publisher
自见)+ assetType 过滤分页 + 卡片字段回填(publisherName/version=unknown/isFavorite/isAcquired/
isInstalled=false);fallback 推荐返回可见资产卡片 + 推荐理由;治理影响读按 publisher/受影响者门禁
(publisher 自见返回治理结果摘要 + 空受影响列表;非属主且无关联授权/安装/绑定→fail-closed
MARKET_RESOURCE_FORBIDDEN,杜绝借治理接口探测非公开资产);缺资产→MARKET_ASSET_NOT_EXISTS、非法
API version→MARKET_API_VERSION_UNSUPPORTED,三 op 全程纯读 no-write(资产/收藏/命令/治理表
row_to_json 快照零变更)。真实 PG muse_p1r_marketplace_discovery_test 4/4 绿,独立复跑两次均绿。
market 验收债 9→6(下一簇=采纳链 createBindPrecheck/purchaseAsset/installMarketplaceAsset)。
同步 docs/mvp/进度总账.md §五B 与 market/.agent。completed 仍由人工批台账。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 01:30:56 -07:00 |
|
lili
|
482fb31e14
|
test(p1r): 批16 market 管理端资产治理写真实 PG IT(preview→delist/recall)
P1rMarketGovernanceWriteCompletedApprovalIT 经真实 /admin-api/muse/market/assets/{id}/
governance-impact|delist|recall 覆盖 adminPreviewGovernanceImpact/adminDelistAsset/adminRecallAsset
(同 批15 配置 + 治理 @PreAuthorize method security)。断言治理写生命周期:影响预览写 ready 预览 +
预览影响 + completed 命令并返回影响计数/通知范围(关联表空→计数全 0)→ 凭预览下架(listed→delisted 的
expectedStatus CAS + applied 治理动作 + 治理影响 + 事件发布 outbox + completed 命令)→ 凭预览召回
(listed→recalled + 目标 owner 传播 fail-closed:如实记录 source_status_event
recalled/recorded/TARGET_OWNER_UNAVAILABLE 而非伪造成功)。命令幂等回放命中 completed 不写第二条 fact;
fail-closed 全覆盖:合同枚举 VO @Pattern→BAD_REQUEST(service requireAllowed 为防御纵深)、缺/非 ready
预览→MARKET_GOVERNANCE_PREVIEW_REQUIRED、CAS 阻断→MARKET_ASSET_GOVERNANCE_BLOCKED(命令预占随
@Transactional 回滚、0 残留)、缺资产→MARKET_ASSET_NOT_EXISTS、API version、RBAC deny→FORBIDDEN,
失败路径全程 0 写。真实 PG muse_p1r_market_governance_test 4/4 绿,独立复跑两次均绿。
market 验收债 12→9(下一簇=marketplace 发现读)。同步 docs/mvp/进度总账.md §五B 与 market/.agent。
completed 仍由人工批台账。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 01:19:30 -07:00 |
|
lili
|
ca50d5a162
|
test(p1r): 批15 market 管理端资产治理读真实 PG IT(adminList/GetMarketAssets)
P1rMarketAdminAssetReadsCompletedApprovalIT 经真实 /admin-api/muse/market/assets 覆盖
adminListMarketAssets/adminGetMarketAsset(market 模块整组治理 mapper + MarketCommandServiceImpl +
MarketEventPublishOutboxServiceImpl,base-package=cn.iocoder.muse.module,admin @PreAuthorize
method security)。断言:列表按 tenant 隔离 + assetType/listingStatus/publisherId 过滤
(listingStatus 的 not_listed↔draft 由服务端 toInternalListingStatus/normalizeListingStatus 双向归一)、
publisherName/version(无当前版本→unknown)回填、关联计数(安装/绑定/申诉=0,关联表空);详情按 tenant
隔离返回资产快照 + 授权/安装/绑定/受影响任务计数全 0 + 版本/治理历史/申诉空集合;缺资产/跨租户→
MARKET_ASSET_NOT_EXISTS、非法 API version→MARKET_API_VERSION_UNSUPPORTED、RBAC
(muse:market:asset:query)deny→FORBIDDEN,两 op 全程纯读 no-write(资产/命令/治理/来源状态/事件
outbox 表 row_to_json 快照零变更)。真实 PG muse_p1r_market_admin_asset_test 2/2 绿,独立复跑两次均绿。
market 验收债 14→12(下一簇=治理写 previewGovernanceImpact/delist/recall)。同步
docs/mvp/进度总账.md §五B 与 market/.agent。completed 仍由人工批台账。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 00:57:35 -07:00 |
|
lili
|
26e1dd145f
|
test(p1r): 批14 account 管理端购买记录读真实 PG IT(adminListPurchaseRecords)+ account 验收债清零
P1rAccountAdminPurchaseRecordsCompletedApprovalIT 经真实 /admin-api/muse/account/purchase-records
覆盖 adminListPurchaseRecords:跨模块(base-package=cn.iocoder.muse.module)由单体内 market 的
MarketAccountProjectionProvider 真实判定 purchase 投影可用,读端只读 Account 自有投影表
muse_account_record_projection。断言无 userId→跨用户全量、userId 过滤→owner 限定 +
source_status→admin status 归一 + 资产信息从 title/snapshot 回填、userId+status=completed 命中、
status=refunded 该用户空、非法 status→BAD_REQUEST、API version 守卫、RBAC(muse:account:query)
deny→FORBIDDEN,全程纯读 no-write(member_user + 投影表 row_to_json 快照零变更);Account 投影
写端口用抛错 stub 越界反假绿。真实 PG muse_p1r_account_admin_purchase_test 2/2 绿,独立复跑两次均绿。
至此 account needs_verification 验收债清零(批3 + 批7-14 全部补真实 PG 证据、证据就绪待人工批,
completed 仍由人工批台账)。同步 docs/mvp/进度总账.md §五B(account 1→0)与 member/.agent。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 00:35:11 -07:00 |
|
lili
|
77ab684baa
|
test(p1r): 验收债批13 account 安全事件确认真实 PG IT(1 op,2/2 绿)
新增 P1rAccountSecurityEventAckCompletedApprovalIT,经真实 HTTP 入口 + 真实
PostgreSQL(muse_p1r_account_security_ack_test,独立复跑两次 2/2 绿)覆盖
appAcknowledgeSecurityEvent:
- 属主确认:按 owner 校验事件归属,向追加表 muse_account_security_event_ack
追加处理轨迹 + 把基础事件 acknowledged 置真 + 命令 + 成功审计;
- 相同 commandId 幂等回放(不追加第二条轨迹);
- 非法 action→BAD_REQUEST、跨 owner→NOT_FOUND(owner 隔离不泄露)、非数字
eventId→NOT_FOUND、缺用户→ACCOUNT_USER_NOT_EXISTS、API version 守卫,
全程 fail-closed 且 0 写;
- 命令/审计走真实实现,无外部依赖;仅对专属 _test 库缺库自动创建,保留
_test/密码仅 env/凭据 query 守卫。
同步 §五B(剩余 account 2→1)+ muse-module-member/.agent。
证据就绪,completed 待人工批(不自批台账=反假绿)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 00:19:45 -07:00 |
|
lili
|
0521ac2602
|
test(p1r): 验收债批12 account 管理端写路收尾真实 PG IT(2 op,3/3 绿)
新增 P1rAccountAdminWritesCompletedApprovalIT,经真实 HTTP 入口 + 真实
PostgreSQL(muse_p1r_account_admin_writes_test,独立复跑两次 3/3 绿)覆盖
adminCreateNewApiBinding / adminCreateCallAttributionJob:
- adminCreateNewApiBinding:单体 New-API facade(UnavailableNewApiAccountFacade)
不可用时正确 fail-closed —— 业务 @Transactional 回滚命令预占(0 残留)+ 不写
binding,失败外部调用经 REQUIRES_NEW 独立落库一条 unavailable,客户端收
ACCOUNT_NEW_API_UNAVAILABLE;目标用户不存在/RBAC(muse:account:new-api:manage)/
API version 守卫全程 0 写;
- adminCreateCallAttributionJob:基于已存在 correlationId 外部调用建立 queued
归因 job + 命令(items 暂空),命令幂等回放(idempotent_hit 不写第二条),
callIds 白名单未命中 BAD_REQUEST、expectedCallRevision 版本冲突
ACCOUNT_VERSION_CONFLICT、缺调用记录 ACCOUNT_INTEGRATION_CALL_NOT_EXISTS、
RBAC(muse:account:attribution:manage)/API version fail-closed,失败路径 0 写;
- 命令走真实实现,归因来源/审计/配额/用量附带依赖用抛错 mock 反假绿越界;
- 仅对专属 _test 库缺库自动创建,保留 _test/密码仅 env/凭据 query 守卫。
同步 §五B(剩余 account 4→2)+ muse-module-member/.agent。
证据就绪,completed 待人工批(不自批台账=反假绿)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 00:11:51 -07:00 |
|
lili
|
500860208e
|
test(p1r): 验收债批11 account 管理端只读补全真实 PG IT(2 op,3/3 绿)
新增 P1rAccountAdminReadsCompletedApprovalIT,经真实 HTTP 入口 + 真实
PostgreSQL(muse_p1r_account_admin_reads_test,独立复跑两次 3/3 绿)覆盖
adminListUsageRecords / adminGetCallAttributionJob:
- adminListUsageRecords:以账户用户为分页主表在库内聚合(token 输入 150/
输出 230/合计 380 求和、pending 计数 1/failed 0、attributionStatus=pending),
非法 period→BAD_REQUEST;
- adminGetCallAttributionJob:按 jobId 读 job+items 并归一状态(completed)+
分桶计数(attributed 1/failed 1/pending 0),not-found→
ACCOUNT_INTEGRATION_CALL_NOT_EXISTS;
- 两 op 均 RBAC(muse:account:query)fail-closed、API version 守卫、纯读
no-write(命令/审计/外部调用表保持为空);归因写路外部来源 facade 用抛错
mock 反假绿越界;
- 仅对专属 _test 库缺库自动创建,保留 _test/密码仅 env/凭据 query 守卫。
同步 §五B(剩余 account 6→4)+ muse-module-member/.agent。
证据就绪,completed 待人工批(不自批台账=反假绿)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 00:02:30 -07:00 |
|
lili
|
14d7884a1f
|
test(p1r): 验收债批10 account 导出/下载簇真实 PG IT(3 op,4/4 绿)
新增 P1rAccountExportDownloadClusterCompletedApprovalIT,经真实 HTTP 入口 +
真实 PostgreSQL(muse_p1r_account_export_test,独立复跑两次 4/4 绿)覆盖
appCreateExportTask / appGetExportTask / appDownloadExport:
- appCreateExportTask:FileService(UnavailableAccountFileServiceFacade,单体
默认)未接入时,按合同把非敏感导出(profile)落库为 queued 任务 + 命令 +
成功审计,绝不伪造 completed/fileRef/下载凭证,不写安全事件;相同 commandId
幂等回放(idempotent_hit 不写第二条);敏感类型(usage)缺 step-up→BAD_REQUEST
回滚;非法 exportType/缺用户/API version 均 fail-closed;
- appGetExportTask:按 owner 读任务状态归一、跨 owner not found、纯读 no-write;
- appDownloadExport:校验下载凭证(无效→ACCOUNT_DOWNLOAD_CREDENTIAL_INVALID),
凭证可用但 FileService 不可用时正确 fail-closed —— @Transactional 回滚
一次性消费(凭证 consumed_at 仍空可重试)+ 不写下载审计,客户端收
ACCOUNT_FILE_SERVICE_UNAVAILABLE;
- 命令/审计走真实实现,仅对专属 _test 库缺库自动创建,保留 _test/密码仅 env/
凭据 query 守卫。
同步 §五B(剩余 account 9→6)+ muse-module-member/.agent。
证据就绪,completed 待人工批(不自批台账=反假绿)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-16 23:52:51 -07:00 |
|
lili
|
91f223acd8
|
test(p1r): 验收债批9 account New-API 绑定簇真实 PG IT(3 op,4/4 绿)
新增 P1rAccountNewApiBindingClusterCompletedApprovalIT,经真实 HTTP 入口 +
真实 PostgreSQL(muse_p1r_account_newapi_binding_test,独立复跑两次 4/4 绿)
覆盖 getAppNewApiBinding / adminListNewApiBindings / appRecheckNewApiBinding:
- getAppNewApiBinding:按 owner 读绑定摘要 + 存储态归一(active→bound、
无绑定→unbound 且不可重验),纯读 no-write;
- adminListNewApiBindings:以账户用户为分页主表(无筛选按 id 倒序返
bound/unbound/sync_failed 三态 + syncErrorMessage)、bindingStatus 走
EXISTS/NOT EXISTS 筛选、非法状态 BAD_REQUEST、RBAC(muse:account:query)
fail-closed,纯读 no-write;
- appRecheckNewApiBinding:单体 New-API facade(UnavailableNewApiAccountFacade)
不可用时正确 fail-closed —— 业务 @Transactional 回滚命令预占(0 残留),
失败外部调用经 REQUIRES_NEW 独立落库一条 unavailable(error_code 可排障),
binding 不被改写,客户端收 ACCOUNT_NEW_API_UNAVAILABLE;binding 不存在/
缺用户/API version 三守卫全程 0 写;
- 控制器/服务附带依赖(quota/usage/audit service)用抛错 mock 反假绿越界;
- 仅对专属 _test 库缺库自动创建,保留 _test/密码仅 env/凭据 query 守卫。
同步 §五B(剩余 account 12→9)+ muse-module-member/.agent。
证据就绪,completed 待人工批(不自批台账=反假绿)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-16 23:42:09 -07:00 |
|
lili
|
fa9dae84ce
|
test(p1r): 验收债批8 account 用量/外部调用可观测读端真实 PG IT(3 op,4/4 绿)
新增 P1rAccountUsageObservabilityCompletedApprovalIT,经真实 HTTP 入口 +
真实 PostgreSQL(muse_p1r_account_usage_observability_test,独立复跑两次 4/4 绿)
覆盖 getAppUsage / appGetIntegrationCallByCorrelation /
adminGetIntegrationCallByCorrelation 三个只读 operation:
- getAppUsage:按 owner 聚合(token 输入/输出求和、pending/anomaly 计数、
byModel、byAttribution)+ 跨用户隔离(他人用量不计入)+ period 规范化/白名单;
- 外部调用读:app 侧 owner 守卫(越权 ACCOUNT_RESOURCE_FORBIDDEN)、
admin 侧无 owner 限制可跨用户读 + RBAC(muse:account:query),status/
requestType/attributionStatus/retryGroup 归一化;
- 三 op 纯读全程 no-write(member_user/usage_record/integration_call/
command/audit 快照前后一致);fail-closed:缺用户/not-found/API version/
RBAC deny 全部经真实 GlobalExceptionHandler 命中;
- 控制器附带依赖(权益/绑定/配额/归因 service)用抛错 mock 反假绿越界;
- 仅对专属 _test 库缺库自动创建,保留 _test/密码仅 env/凭据 query 守卫。
同步 §五B(剩余 account 15→12)+ muse-module-member/.agent。
证据就绪,completed 待人工批(不自批台账=反假绿)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-16 23:26:24 -07:00 |
|
lili
|
e10a547b04
|
test(p1r): 验收债批7 真实 PG IT(account 配额请求 3 op,5/5 绿)
P1rAccountQuotaRequestCompletedApprovalIT 覆盖 appCreateQuotaRequest/
appGetQuotaRequest/adminCreateQuotaRequest,经真实 /app-api/muse/account/
quota-requests 与 /admin-api/muse/account/users/{userId}/quota-requests
(member 租户行拦截器 + member_user fixture + admin @PreAuthorize method security):
create 入队写 quota_request(queued)+pending_attribution 外部调用占位+completed
command(app:actor=owner=登录用户/amount=0;admin:actor=操作者、owner=目标用户、
amount=targetQuota.limit);命令幂等回放(idempotent_hit 不写第二条);相同 commandId
不同请求 hash→ACCOUNT_COMMAND_ID_CONFLICT 事务回滚;get 按 owner+tenant 隔离归一化
状态、纯读 no-write;fail-closed(类型白名单/API version/缺用户/越权 owner/not-found/
RBAC deny)全程 0 写、0 command 预占;配额请求链路不写 Account 审计(audit/outbox 桩
抛错反假绿)。10 条负路经真实 GlobalExceptionHandler 实测命中(9 serviceException+
1 accessDenied)。真实 PG muse_p1r_account_quota_request_test 5/5 绿(0F/0E,
独立复跑两次)。总账 §五B 记批7 证据就绪待人工批,剩余 account 18→15;member .agent 同步。
agent 不自批台账/coverage gate=反假绿。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-16 23:07:54 -07:00 |
|
lili
|
4848743ed9
|
test(p1r): 验收债批6 真实 PG IT(market 生产者申诉写路 3 op,7/7 绿)
P1rMarketProducerAppealCompletedApprovalIT 覆盖 submitAppeal/supplementAppeal/
withdrawAppeal,经真实 /app-api/muse/marketplace/appeals/**(app 侧无 method
security,owner 隔离在服务层):submit 走 review_rejection 关联(自有资产+7 天内被拒
发布申请)写 appeal(pending)+submitted event(含 originalResult/source)+completed
command;supplement 脱敏只存摘要(sk-*/token=*→[REDACTED])+supplementing→reviewing
状态 CAS(rev→2)+材料落库;withdraw →closed(rev→2)+resolution 记录;三写命令回放
幂等;fail-closed(非属主/无关联/超期/资产不存在/越权他人/未确认隐私)全程 0 写;状态
冲突 + expectedStatus 冲突均事务回滚(reserveCommand 预占=0)。
真实 PG muse_p1r_market_producer_appeal_test 7/7 绿(0F/0E,独立复跑两次均绿);
专属 _test 库缺库自动创建,保留 _test/密码 env/凭据 query 守卫,迁移到 V23+ latest。
总账 §五B 记批6 证据就绪待人工批,剩余 market 17→14;market .agent 同步。
agent 不自批台账/coverage gate=反假绿。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-16 22:11:17 -07:00 |
|
lili
|
9be03d5078
|
docs(p1r): record market admin review evidence
|
2026-06-16 18:31:39 -07:00 |
|
lili
|
9f6faacf9c
|
docs(progress): 验收债批2/3/4 证据就绪待批 + market/member .agent 同步
总账 §五B 记入批2/3/4(market发布5 + account记录3 + market申诉3,真实 PG 12/12 绿),
剩余口径更新为 content 26 + market 20 + account 18;market/member .agent 补真实 PG
验收证据指针。三批均「证据就绪,completed 待人工批」——agent 不自批台账=反假绿。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-16 17:32:23 -07:00 |
|
lili
|
9634842f2f
|
docs(progress): 验收债真实 IT 战役开张 + 批1(content 11 op)证据就绪待批
§五B:校正实际 needs_verification=content37/market28/account21=86;批1 P1rContentWorkLifecycleCompletedApprovalIT(11 content CRUD op,1/1 绿)证据就绪,completed 待人工批(加 APPROVED_COMPLETED_OPERATIONS);剩余 content26(含~15 fail-closed)+market28+account21 按批续推。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-15 23:43:10 -07:00 |
|
lili
|
888217deee
|
docs(p1r): 真实 PG IT 基线 23/23 全绿 + 完整跑法配方(reuseForks=false 等)落档
§四:23/23 P1r*IT 在 mini-infra PG 全量重跑全绿(99 用例 0F/0E,2 例 external-acceptance 跳过);补批量跑要点⑥(-DreuseForks=false 避 Market IT 属性脱敏污染复用 fork)⑦(argLine 传 p1r.flyway.*);旧硬编码版本断言需动态化TODO 已闭(MigrateResult 动态)。§五B:基线落档,指向 §四 完整配方。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-15 20:57:14 -07:00 |
|
lili
|
338b33a406
|
docs(progress): MuseAiEventPublishOutboxMapperTest 真实 PG 实跑 5/5——ai/平台预存红三项全清
该测本就是真 PG focused test(自读 infra.env、隔离 schema 自建自清),原红仅缺真 PG 环境;mini-infra PG(100.64.0.8:5433)+ source infra.env + argLine SOCKS 清下实跑 5/5,零代码改动。连同 MuseAiTaskServiceTest(40/40)、QiniuSmsClientTest(5/5),§五B/§一 三项预存红全部消除。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-15 20:25:45 -07:00 |
|
lili
|
043ba0814f
|
test(system): 整改 QiniuSmsClientTest 时区硬编码——断言改用生产同款换算,机器无关 5/5
原断言硬编码 delivrd_at(epoch 1724591666)的 +8 结果 21:14:26,在非 +8 机器(本机 -07:00)必红。改用与生产 QiniuSmsClient 同款 LocalDateTimeUtil.of(epoch*1000)(系统默认时区)换算期望值→任意机器时区下稳定一致,零产代码改动,5/5 绿。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-15 19:41:00 -07:00 |
|
lili
|
4a5e1e479d
|
test(ai): 整改 MuseAiTaskServiceTest 预存红——11 例 NPE→40/40(补 outbox/审 服务桩)
「审」字段补齐(2026-06-14)后 runtimeProjectionService 新增 eventPublishOutboxService/candidateReviewService 依赖,旧测未补桩→@InjectMocks 注 null→投影路径 11 例 NPE。整改:补两 @Mock + 显式 ReflectionTestUtils 接桩 + candidateReviewService.review lenient 返回通过审(镜像 MuseAiRuntimeProjectionServiceTest)。零产代码改动,40/40 绿。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-15 19:37:43 -07:00 |
|
lili
|
b3922ebca7
|
test(knowledge): confirm 重名干净冲突单测回归守护 + publish 勘察定论(fail-closed)
MuseKnowledgeDraftServiceTest 新增 should_failClosedWithDuplicateCodeWhenCanonicalEntityIdentityExists:预检命中既有同身份实体→KNOWLEDGE_ENTITY_DUPLICATE+markConflicted+绝不 insert(守住重名冒泡 500 的回归,task_497da70f),18/0 绿。
§五C:knowledge publish 活体勘察=正确 fail-closed(EXTERNAL_RIGHTS_PRIVACY_VALIDATOR_NOT_CONFIGURED 无条件 block);至此 knowledge 前端可建旅程已尽(confirm+graph),bindings/publish 均受阻于事件驱动投影/外部校验器→后置。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-15 19:31:05 -07:00 |
|
lili
|
3e3e656424
|
docs(progress): e2e 可入库种子已落地(globalSetup)——20/20 一键可复现
更新 §五C:一次性 /tmp 种子教训已闭环为 e2e/global-setup.ts + playwright globalSetup/workers:1,source infra.env 后 pnpm test:e2e 即 20/20 零手工种子。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-15 18:36:25 -07:00 |
|
lili
|
fa64280819
|
docs(progress): e2e 全套 20/20 单次全绿(reseed 后,真实后端 MSW-off)
加 knowledge-graph 后共 20 例;reseed 三个每轮种子依赖旅程(accept happy/security-ack/market 申诉补充)后 --workers=1 串行整套 20 passed。记教训:一次性 /tmp 种子脚本每会话丢失需反推,宜落地可入库 e2e 种子/globalSetup。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-15 17:03:09 -07:00 |
|
lili
|
cefdadca6f
|
docs(progress): bindings 活体勘察结论——写路真实绿但读回投影 gap,不建一侧 UI
§五C:precheck→bind 写路 curl 证真实+绿(user_kb→bindingId 写 muse_knowledge_binding);但 local-knowledge.sourceBindings 读事件驱动投影、bind 不同步填充→无诚实读回。判定:bindings 属事件驱动副路径待投影接线,不建一侧写 UI(反一侧设计)。下一前端候选转 publish。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-15 08:45:58 -07:00 |
|
lili
|
63fd977df7
|
docs(progress): 总账同步——知识图谱视图 + confirm 重名 500 修复(知识库工作台收口推进)
§五C 知识库工作台:graph UI ✅(仍剩 bindings/publish);confirm 重名实体 500→干净冲突 1043002004 已修;per-BC tracker(knowledge)+ §四时间线同步。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-15 08:36:23 -07:00 |
|