|
23992
|
5
|
5
|
7
|
57
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"5fbcad0bc {"Commits":[{"Sha1":"5fbcad0bceea9e81914ae6b7e8bfb05265845598","Message":"merge(main): 合并拍摄脚本与云端渲染能力\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-18T16:58:46+08:00"},{"Sha1":"eb6483fa7aadc8d2d4e715274c2519f67005e135","Message":"Merge pull request 'feat(script): 接入大语言模型——歌词/文案 → 拍摄脚本 → 角色确认 → 定格图' (#3) from feat/llm-shooting-script into main\n\nReviewed-on: https://gitea.g-hi.com/luoanwu/image-generation/pulls/3\n","AuthorEmail":"law@g-hi.com","AuthorName":"luoanwu","CommitterEmail":"law@g-hi.com","CommitterName":"luoanwu","Timestamp":"2026-08-18T14:00:06+08:00"},{"Sha1":"b9d34cfb7e777377776325d7b2e73f1a15ff19e8","Message":"feat(script): 分镜可编辑、定格图可微调可回滚\n\nC10 交付后脚本是只读的——LLM 出完就不能改,定格图也只能整张重出。本轮补齐「改」。\n\n分镜编辑\n- 字段编辑 + 增删 + 重排;镜号唯一约束下走两阶段负号位移,1..N 恒连续不撞号\n- 重排要求全量顺序,拒绝增量语义歧义\n- 改角色 appearance 强制退回 DRAFT 并解绑参考图(描述与图不能各说各话);只改 name 不解绑\n- ARCHIVED / ROLES_LOCKED 从装饰性状态变成真实写约束\n\n定格图调整\n- 三模式:FROM_ROLES 从角色重出 / ADJUST 在当前图上按指令迭代微调 / VARIATION 换种子出候选\n- buildStillAdjustInstruction 把「只改这一点、构图与角色都别动」写死进指令\n (迭代微调最常见的失败是模型顺手重画整张)\n- 历史版本表 script_still_versions:每次出图/微调/换版追加一版,可回滚\n\n失效判据(契约单源,双端同源消费)\n- computeShotFingerprint 把所有影响成图的输入拼成规范串——刻意不哈希:\n 碰撞意味着「该失效却没标失效」,那是静默错误;规范串几百字节可肉眼比对\n- isShotStillStale 据此判断;策略是标记失效不自动删图\n (删掉人已满意的图是不可逆破坏,决定权留给人)\n\n三处刻意的「不静默」\n1. ADJUST 无底图 → NO_STILL_TO_ADJUST 明确报错,不悄悄改成整张重出\n2. 回滚连该版本的 fingerprint 一起还原,否则回滚回来的旧图会被误判成新鲜的\n3. 指纹用规范串而非哈希\n\n验收\n- contracts 新增 13 条失效判据单测(61 tests 全绿)\n- 双后端 acceptance 各 21 passed + 1 skipped-live(原 8)\n- pnpm check / check:runtime / check:script 均 exit 0;own-tests floor 14→15\n- 浏览器实测:过期横幅、编辑表单预填真实值、UI 改动落库并发 material.script.shot.updated、\n 新增与上移后镜号仍连续且未撞唯一约束\n\n诚实边界不变:liveLlmAsserted 仍为 false(本机无 DASHSCOPE_API_KEY);\ncheck:inference 仍因权重是 git-lfs 存根而红,与本轮无关。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-17T22:52:19-07:00"},{"Sha1":"4c34ff4ff22ff5aab34e0492fd7fef9c2c989b02","Message":"feat(script): 接入大语言模型——歌词/文案 → 拍摄脚本 → 角色确认 → 定格图\n\n本仓此前零 LLM 接入(全仓只有 DashScope 的图像调用),「歌词成图」屏是纯前端\n原型(procedural.ts 画色块 + setTimeout 假装推理,不落库不接后端)。本轮把这条\n动线升级为真链路 + 真持久化。\n\n契约单源(packages/contracts/src/script.ts)\n- 角色确认状态机 scriptRoleMachine、脚本状态机 shootingScriptMachine\n- 景别/运镜用枚举而非自由文本:LLM 一旦自由发挥,下游 prompt 与统计就没有稳定口径\n- scriptDraftSchema 是 LLM 输出的唯一判据;prompt 构造器单源,两后端禁止各拼一份\n- evaluateRoleReadiness:本域核心不变量,双后端硬拦截 + 前端同源即时反馈\n- 前端私有的 findBannedHits 上收为 contracts 的 findBannedWords(后端也要逐镜标记,\n 两份并行就是双真源)\n\nLLM 不是权威\n- sidecar /v1/script 只保证「返回长得像脚本的 JSON」,两个后端各自再 parse 一次才落库\n- 模型引用未声明角色键 → 422 SCRIPT_ROLE_KEYS_DANGLING(幻觉护栏)\n- 连续给不出合法 JSON → 502 LLM_OUTPUT_UNPARSEABLE,绝不返回占位脚本\n- parse_json_object 只剥围栏、截首尾花括号,不做字段猜测或补齐\n\n角色必须先确认才允许出定格图\n- 判据 = status CONFIRMED 且有 referenceAssetId(没有参考图就没有一致性锚点)\n- CONFIRMED --reset--\u003e DRAFT 会解除参考图绑定:人确认的是那一张图,不是那个名字\n- 出图时按 roleKeys 顺序喂参考图,与指令里「第 N 张参考图」编号严格对齐\n\n写链纪律与物料链路同构:tenant 全覆盖、updateMany 带状态前置条件(0 行即 409)、\n终态与 outbox 同 tx、能力不可用 → job BLOCKED + 诚实 reason,禁止静默降级。\n品牌准绳只逐镜标记不拒绝整份脚本(脚本属创作内容),硬拦截点在出定格图这个受控出口,\n显式放行需带参数且落审计事件。\n\n顺带修掉三个既有缺陷\n1. 合并遗留:sidecarEdit 用 sidecarGenerateResponseSchema 校验响应(要求 steps/\n loadSeconds),但 run_hosted_edit 两个字段都不返回 —— 托管改字会在客户端边界\n 直接 Zod 抛错(本地路径返回这两个字段,所以一直没暴露)\n2. check-migrations 的列检查只扫 CREATE TABLE,凡 ALTER TABLE ADD COLUMN 追加的\n @map 列一律误报 drift(此前唯一的 ALTER 列 brand_kits.profile 没 @map 才没现形)\n3. ktv-poster-master.png 血统在合并两侧打架,git log --all 证明该文件自初始化提交后\n 从未重新生成,取诚实标注 prototype-demo-master\n\n验收\n- 新增 pnpm check:script → reports/script-acceptance.latest.json(双后端各 8 passed\n + 1 skipped-live);own-tests floor 10→14,棘轮已收紧\n- pnpm check / check:runtime 均 exit 0\n- 浏览器实测:未确认角色 → 按钮 disabled 且提示缺哪个角色;绕过前端直打后端 → 422\n ROLE_NOT_CONFIRMED;跨租户 404;无凭证生成 → UI 显示 503 且不产生占位脚本\n\n诚实边界(已写入 CLAUDE.md)\n- liveLlmAsserted=false:本机无 DASHSCOPE_API_KEY,真调 LLM 的 live 断言被 skip,\n 门禁成立 ≠ LLM 出脚本已验证\n- check:inference 在本机为 failed(动手前即为 failed):本工作副本的模型权重是\n git-lfs 指针存根,非本轮改动导致;基线表该行已从 GREEN 改为 OPEN\n- ui-acceptance 报告早于本屏,未覆盖 script 屏,已标 STALE\n- 新开缺口 G16(LLM 只做结构校验、无事实性校验)、G17(同步 HTTP 挂分钟级推理 /\n render_jobs 索引非 CONCURRENTLY / 本地多图 I2I 未在本机验证)\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-17T22:04:48-07:00"},{"Sha1":"9af0a397ce69cf03623a495ee3ef49943598f5a4","Message":"Merge origin/main: 双推理路线合流为「本地优先 / 托管兜底」能力路由\n\n远端 PR #1(本地权重真跑,面向 128 GiB 主机)与本地 a3b0b41(托管 DashScope\nQwen-Image 3.0,面向 24 GiB 主机)各自独立实现了改字,在 /v1/edit 与双后端\nrender-pipeline 上正面冲突——同一事实两份运行时口径(违治理原则 1)。\n本次不做二选一,合流为一条按能力路由的通路。\n\ncontracts(路由单源)\n- 新增 RENDER_KIND_FALLBACK_CAPABILITIES + resolveRenderCapabilityKeys():\n 主能力=本地 qwen-image-edit,兜底=托管 qwen-image-3-api,双后端禁止各自\n 展开再拼一遍降级逻辑\n- 修掉三方自动合并留下的语义漂移:RENDER_KIND_CAPABILITIES 曾被并成\n 「改字 kind 只映射托管」,与本地优先矛盾\n- 新增 LOCAL_MODEL_KINDS;MATERIAL_MODEL_ROUTING 改字标签体现双通路\n- 契约测试同步断言新语义(主/兜底/解析顺序/无兜底 kind)\n\nsidecar\n- run_edit 改为路由版:本地可跑优先走本地(不外传底图、不产生云端调用费),\n 本地不可用才降到托管;显式传 modelKey 则锁定该条路径不做隐式回退\n- HEAD 的托管实现降为 run_hosted_edit() 分支,EditRequest / run_edit 各唯一\n- 两条都不可用 → 503 NO_EDIT_BACKEND_AVAILABLE 且同时带上两侧 capability,\n 禁止静默降级\n\n双后端\n- sidecarEdit 的 modelKey 由硬编码 'qwen-image-edit' 改为路由解析结果,\n 否则小内存主机上托管兜底永远走不到\n- BLOCKED reason 逐条列出每个候选能力为何不可用\n- 清理两处悬空的 hostedEdit 引用(声明在冲突块、使用在自动合并区,\n 靠 typecheck 兜住)——该分支只在 procedural 路径可达,直接调 sidecarRender\n\n前端\n- 血统标注按证据判定:ktv-poster-master.png 由初始化提交 fc2ce50 引入且\n 远端从未改动,远端将其标为「Qwen-Image-2512 产物」属误标,保留\n 「原型演示静态素材」口径(P3:不冒充模型产物)\n- constants.ts 模型口径一律从 MATERIAL_MODEL_ROUTING 派生,不留第二真源\n\n验收(诚实记录)\n- pnpm check 全项 exit 0\n- pnpm check:runtime 真实 DB+Redis 通过(迁移 deploy/status + 双后端测试)\n- pnpm check:inference 在本机失败:权重实体已删除、仅剩 git-lfs 指针,\n sidecar-health 阶段诚实报 PaddleOCR 权重不完整。属环境限制非代码缺陷,\n 已记为 G16,未因此放宽任何断言\n\nCLAUDE.md 回灌:C10 闭环记录、G14 合并两侧真实证据、G16 新增\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-17T21:19:49-07:00"}],"HeadCommit":{"Sha1":"5fbcad0bceea9e81914ae6b7e8bfb05265845598","Message":"merge(main): 合并拍摄脚本与云端渲染能力\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-18T16:58:46+08:00"},"CompareURL":"luoanwu/image-generation/compare/549ea31448ec1e62e8f10039ed3f8c7d384e07f8...5fbcad0bceea9e81914ae6b7e8bfb05265845598","Len":7}...
|
1787043527
|
Edit
Delete
|
|
24190
|
7
|
5
|
7
|
72
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"083385f1c {"Commits":[{"Sha1":"083385f1c38217147aacf74d0f2251a65fbce450","Message":"feat(integrations): 接入报价优惠券核销\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-19T13:12:36+08:00"},{"Sha1":"be60de1f7e3c6183500ea7d65fc2bf039a86f1d0","Message":"Merge remote-tracking branch 'origin/main' into hljTest\n\n# Conflicts:\n#\tCLAUDE.md\n#\tapps/api-fastify/prisma/schema.prisma\n#\tapps/api-fastify/src/routes/quotations.ts\n#\tapps/api-nestjs/prisma/schema.prisma\n#\tapps/api-nestjs/src/quotations/quotations.service.ts\n#\tapps/web/src/features/quotations/api/quotations-api.ts\n#\tapps/web/src/features/quotations/components/PublicQuotationView.tsx\n#\tapps/web/src/hooks/useRealtime.ts\n#\tdeploy/vm/Dockerfile\n#\tdeploy/vm/compose.yaml\n#\tdocs/governance-experience.md\n#\tpackages/contracts/src/index.ts\n#\tpackages/contracts/src/quotation.ts\n#\tpackages/contracts/src/realtime.ts\n#\tscripts/vm-deploy.sh\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-19T09:54:43+08:00"},{"Sha1":"125c54d328d3da221b5d91c0a2dd0475712c6e96","Message":"Merge pull request #12 from laoluojuhai/fix/vm-dockerfile-build-path\n\nfix(vm): 打通容器构建路径——保住 slim 运行镜像,不靠放宽红线换构建成功","AuthorEmail":"158980461+laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"noreply@github.com","CommitterName":"GitHub","Timestamp":"2026-08-17T07:09:44-07:00"},{"Sha1":"6f13a78de9c02ae6a36fcebfb4bde63fbd092158","Message":"fix(vm): 打通容器构建路径——保住 slim 运行镜像,不靠放宽红线换构建成功\n\n`deploy/vm/Dockerfile` 的构建路径从未真正跑通过(并发治理会话只用 pnpm/turbo 跑门禁,\n从不 docker build)。而 check:vm-deploy 一直是绿的——它查 Dockerfile 的**结构**\n(每个 stage 用哪个 FROM、有没有 fat runtime),不查它**能不能构建出来**。\n于是棘轮报告写着「镜像瘦身非 root、可回滚、备份可恢复」✅,而那个镜像根本产不出来。\n\n5 处构建 bug:\n1. contracts 的 `prepare`(tsc) 在只有 manifest 的依赖层里跑,找不到 tsconfig/src → TS5058。\n 先 COPY contracts 的 tsconfig + src 给它当输入。\n2. 新 workspace 包 @repo/password-auth(两后端 runtime 依赖)未进 manifest COPY、\n 也没被显式 build。\n3. `pnpm deploy --prod --legacy`:pnpm 9.15.9 不认 `--legacy`(Unknown option)。\n 旧注释称「未开启 inject-workspace-packages 时需要 --legacy」——实测在本仓版本上\n 不成立,去掉即可正常打平 workspace 包(sharp 这类 lockfile 原生依赖也照常带出)。\n4. `pnpm deploy` 只按 lockfile 物化依赖,而 .prisma/client(含平台相关 query engine)\n 是 `prisma generate` **生成**的、不在任何 lockfile 里,永远不会被带出去 →\n 新增一步从 build 树复制。路径由 @prisma/client 的解析结果反推,不硬编码 pnpm store\n 的哈希目录名;且必须从 app 目录解析(workspace 根 node_modules 里没有它)。\n5. web stage `COPY apps/web/public` 失败——git 未跟踪任何 public 资产。\n ⚠️ 本机可能有个空的 public/(git 不跟踪空目录),docker build 读本地上下文因而能过,\n CI 与全新 clone 上必挂,注释已写明这个陷阱。\n\n**刻意不采用**此前 `dockerfile-vm-deploy-fixes-ec411c0.patch` 的策略(放弃 slim、\n运行镜像改 FROM build):那会撞 4 条门禁红线(runtime-from-base-* / no-fat-runtime-*),\n而实测 slim 路径的两个阻塞点(3、4)都可解,「镜像瘦身作为后续项不阻塞」的前提不成立。\n体积实测:api-nestjs 741MB / api-fastify 695MB / web 546MB,\n对照 fat 方案 8.46GB、2026-08-06 实际部署的 2.69GB。非 root 由镜像层 USER node 保证,\n而非仅靠 compose 的 user: 覆盖。\n\n顺带两处断链(均为 MinIO 进 compose 后没人跟上):\n- .env.example 与 vm:init 都不认识 S3_*,而它们是 compose 的必填变量 → 新机器\n `vm:init` 后 `vm:up` 必然卡在变量插值。已补占位符 + 随机生成 + 存量 .env 自愈。\n- .dockerignore 只写 `**/.next`,匹配不到本仓工具链自建的 distDir\n (.next-ui-* / .next-dev-* / .next-manual-*),也没排除 sites/(G26 那套独立\n Cloudflare 系统,其 .sites-runtime 本机 1.0GB)→ COPY . . 层 3.79GB → 270MB。\n\n证据(作用域=本地工作区):\n- docker build 四个 target 全部 EXIT=0(api-nestjs / api-fastify / web / migrate)\n- 镜像内实测 @prisma/client 与原生模块 sharp 均可加载、dist 入口就位、uid=1000 非 root\n- Dockerfile 里那条「Prisma Client 缺失即构建失败」的断言**首次真正执行并通过**\n- pnpm vm:config EXIT=0(7 个服务解析通过)\n- pnpm check 22 项全绿 exit=0\n\n未验证:未跑 vm:up / vm:smoke(整栈起停与真实写链冒烟),故不得宣称「可部署」。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-17T06:57:55-07:00"},{"Sha1":"8ae98649e077fa188f8e9c1b0a11b78a2377c836","Message":"Merge pull request #11 from laoluojuhai/feat/product-catalog-search-and-image-upload\n\nfeat(products): 商品库服务端搜索筛选 + 图片上传至对象存储","AuthorEmail":"158980461+laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"noreply@github.com","CommitterName":"GitHub","Timestamp":"2026-08-17T04:16:44-07:00"}],"HeadCommit":{"Sha1":"083385f1c38217147aacf74d0f2251a65fbce450","Message":"feat(integrations): 接入报价优惠券核销\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-19T13:12:36+08:00"},"CompareURL":"luoanwu/juhai-quotation-system/compare/d2c99c9fc71e8a1c48d1aa3684c30ead3eb110c0...083385f1c38217147aacf74d0f2251a65fbce450","Len":51}...
|
1787116369
|
Edit
Delete
|
|
24191
|
5
|
5
|
7
|
72
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"083385f1c {"Commits":[{"Sha1":"083385f1c38217147aacf74d0f2251a65fbce450","Message":"feat(integrations): 接入报价优惠券核销\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-19T13:12:36+08:00"},{"Sha1":"be60de1f7e3c6183500ea7d65fc2bf039a86f1d0","Message":"Merge remote-tracking branch 'origin/main' into hljTest\n\n# Conflicts:\n#\tCLAUDE.md\n#\tapps/api-fastify/prisma/schema.prisma\n#\tapps/api-fastify/src/routes/quotations.ts\n#\tapps/api-nestjs/prisma/schema.prisma\n#\tapps/api-nestjs/src/quotations/quotations.service.ts\n#\tapps/web/src/features/quotations/api/quotations-api.ts\n#\tapps/web/src/features/quotations/components/PublicQuotationView.tsx\n#\tapps/web/src/hooks/useRealtime.ts\n#\tdeploy/vm/Dockerfile\n#\tdeploy/vm/compose.yaml\n#\tdocs/governance-experience.md\n#\tpackages/contracts/src/index.ts\n#\tpackages/contracts/src/quotation.ts\n#\tpackages/contracts/src/realtime.ts\n#\tscripts/vm-deploy.sh\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-19T09:54:43+08:00"},{"Sha1":"125c54d328d3da221b5d91c0a2dd0475712c6e96","Message":"Merge pull request #12 from laoluojuhai/fix/vm-dockerfile-build-path\n\nfix(vm): 打通容器构建路径——保住 slim 运行镜像,不靠放宽红线换构建成功","AuthorEmail":"158980461+laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"noreply@github.com","CommitterName":"GitHub","Timestamp":"2026-08-17T07:09:44-07:00"},{"Sha1":"6f13a78de9c02ae6a36fcebfb4bde63fbd092158","Message":"fix(vm): 打通容器构建路径——保住 slim 运行镜像,不靠放宽红线换构建成功\n\n`deploy/vm/Dockerfile` 的构建路径从未真正跑通过(并发治理会话只用 pnpm/turbo 跑门禁,\n从不 docker build)。而 check:vm-deploy 一直是绿的——它查 Dockerfile 的**结构**\n(每个 stage 用哪个 FROM、有没有 fat runtime),不查它**能不能构建出来**。\n于是棘轮报告写着「镜像瘦身非 root、可回滚、备份可恢复」✅,而那个镜像根本产不出来。\n\n5 处构建 bug:\n1. contracts 的 `prepare`(tsc) 在只有 manifest 的依赖层里跑,找不到 tsconfig/src → TS5058。\n 先 COPY contracts 的 tsconfig + src 给它当输入。\n2. 新 workspace 包 @repo/password-auth(两后端 runtime 依赖)未进 manifest COPY、\n 也没被显式 build。\n3. `pnpm deploy --prod --legacy`:pnpm 9.15.9 不认 `--legacy`(Unknown option)。\n 旧注释称「未开启 inject-workspace-packages 时需要 --legacy」——实测在本仓版本上\n 不成立,去掉即可正常打平 workspace 包(sharp 这类 lockfile 原生依赖也照常带出)。\n4. `pnpm deploy` 只按 lockfile 物化依赖,而 .prisma/client(含平台相关 query engine)\n 是 `prisma generate` **生成**的、不在任何 lockfile 里,永远不会被带出去 →\n 新增一步从 build 树复制。路径由 @prisma/client 的解析结果反推,不硬编码 pnpm store\n 的哈希目录名;且必须从 app 目录解析(workspace 根 node_modules 里没有它)。\n5. web stage `COPY apps/web/public` 失败——git 未跟踪任何 public 资产。\n ⚠️ 本机可能有个空的 public/(git 不跟踪空目录),docker build 读本地上下文因而能过,\n CI 与全新 clone 上必挂,注释已写明这个陷阱。\n\n**刻意不采用**此前 `dockerfile-vm-deploy-fixes-ec411c0.patch` 的策略(放弃 slim、\n运行镜像改 FROM build):那会撞 4 条门禁红线(runtime-from-base-* / no-fat-runtime-*),\n而实测 slim 路径的两个阻塞点(3、4)都可解,「镜像瘦身作为后续项不阻塞」的前提不成立。\n体积实测:api-nestjs 741MB / api-fastify 695MB / web 546MB,\n对照 fat 方案 8.46GB、2026-08-06 实际部署的 2.69GB。非 root 由镜像层 USER node 保证,\n而非仅靠 compose 的 user: 覆盖。\n\n顺带两处断链(均为 MinIO 进 compose 后没人跟上):\n- .env.example 与 vm:init 都不认识 S3_*,而它们是 compose 的必填变量 → 新机器\n `vm:init` 后 `vm:up` 必然卡在变量插值。已补占位符 + 随机生成 + 存量 .env 自愈。\n- .dockerignore 只写 `**/.next`,匹配不到本仓工具链自建的 distDir\n (.next-ui-* / .next-dev-* / .next-manual-*),也没排除 sites/(G26 那套独立\n Cloudflare 系统,其 .sites-runtime 本机 1.0GB)→ COPY . . 层 3.79GB → 270MB。\n\n证据(作用域=本地工作区):\n- docker build 四个 target 全部 EXIT=0(api-nestjs / api-fastify / web / migrate)\n- 镜像内实测 @prisma/client 与原生模块 sharp 均可加载、dist 入口就位、uid=1000 非 root\n- Dockerfile 里那条「Prisma Client 缺失即构建失败」的断言**首次真正执行并通过**\n- pnpm vm:config EXIT=0(7 个服务解析通过)\n- pnpm check 22 项全绿 exit=0\n\n未验证:未跑 vm:up / vm:smoke(整栈起停与真实写链冒烟),故不得宣称「可部署」。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-17T06:57:55-07:00"},{"Sha1":"8ae98649e077fa188f8e9c1b0a11b78a2377c836","Message":"Merge pull request #11 from laoluojuhai/feat/product-catalog-search-and-image-upload\n\nfeat(products): 商品库服务端搜索筛选 + 图片上传至对象存储","AuthorEmail":"158980461+laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"noreply@github.com","CommitterName":"GitHub","Timestamp":"2026-08-17T04:16:44-07:00"}],"HeadCommit":{"Sha1":"083385f1c38217147aacf74d0f2251a65fbce450","Message":"feat(integrations): 接入报价优惠券核销\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-19T13:12:36+08:00"},"CompareURL":"luoanwu/juhai-quotation-system/compare/d2c99c9fc71e8a1c48d1aa3684c30ead3eb110c0...083385f1c38217147aacf74d0f2251a65fbce450","Len":51}...
|
1787116369
|
Edit
Delete
|
|
24580
|
7
|
5
|
7
|
72
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"04432cff2 {"Commits":[{"Sha1":"04432cff2b306ecd33ca2bea6e2e256814f978f0","Message":"fix(web): preserve /jh authentication and realtime paths\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-20T16:25:36+08:00"}],"HeadCommit":{"Sha1":"04432cff2b306ecd33ca2bea6e2e256814f978f0","Message":"fix(web): preserve /jh authentication and realtime paths\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-20T16:25:36+08:00"},"CompareURL":"luoanwu/juhai-quotation-system/compare/083385f1c38217147aacf74d0f2251a65fbce450...04432cff2b306ecd33ca2bea6e2e256814f978f0","Len":1}...
|
1787214380
|
Edit
Delete
|
|
24581
|
5
|
5
|
7
|
72
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"04432cff2 {"Commits":[{"Sha1":"04432cff2b306ecd33ca2bea6e2e256814f978f0","Message":"fix(web): preserve /jh authentication and realtime paths\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-20T16:25:36+08:00"}],"HeadCommit":{"Sha1":"04432cff2b306ecd33ca2bea6e2e256814f978f0","Message":"fix(web): preserve /jh authentication and realtime paths\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-20T16:25:36+08:00"},"CompareURL":"luoanwu/juhai-quotation-system/compare/083385f1c38217147aacf74d0f2251a65fbce450...04432cff2b306ecd33ca2bea6e2e256814f978f0","Len":1}...
|
1787214380
|
Edit
Delete
|
|
26123
|
7
|
5
|
7
|
72
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"08df317af {"Commits":[{"Sha1":"08df317afac31db70f0394580a0bb8686f49671c","Message":"Merge remote-tracking branch 'origin/codex/catalog-customer-quotation-workflows' into hljTest\n\n# Conflicts:\n#\tdeploy/vm/Dockerfile\n#\tscripts/lib/component-size.mjs\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-26T13:12:50+08:00"},{"Sha1":"8f11b6bc4df9f709414e306e9c9225bd45bccb65","Message":"feat: complete catalog customer and quotation workflows\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-24T01:18:51-07:00"},{"Sha1":"2de7545076ac90e4aa88e89cdf310f72ca9692ce","Message":"fix(vm): Prisma 生成物拷到运行时真正解析的位置——旧断言查的是拷贝目标而非读取路径\n\n`pnpm vm:up` 首次真跑起整栈,api-nestjs 容器启动即崩溃重启循环:\n`@prisma/client did not initialize yet. Please run \"prisma generate\"`。\n而构建期那条\"Prisma Client 必须在部署树里\"的断言是**绿的**。\n\n根因:`pnpm deploy` 把 @prisma/client 放进\n`node_modules/.pnpm/@prisma+client@\u003chash\u003e/node_modules/`,而 @prisma/client 是相对\n**自身**去找同级 `.prisma` 的——部署树顶层那份它根本不看。上一版把生成物拷到了顶层\n扁平路径,于是:\n- 运行时解析到 .pnpm 内嵌的那份,那是 @prisma/client **自带的桩**\n (`default.js` 第 43 行专门抛 \"did not initialize yet\"),没有 query engine;\n- 而断言 `test -d /runtime/\u003capp\u003e/node_modules/.prisma/client` 查的正是我刚拷过去的\n 顶层目录,\"往哪拷就查哪\",必然通过。\n\n这是「断言检查的位置 ≠ 运行时读取的位置」,与 C23(typecheck 读 src、运行时读 dist)\n同型:不是断言写得弱,而是它锚在一条运行时不走的路径上。\n\n两处一起修:\n1. 拷贝目标改为 .pnpm 内嵌位置(顶层那份保留,覆盖 hoist 布局),glob 取不到即 fail。\n2. 断言改为**按运行时同一方式推导路径**(从 require.resolve('@prisma/client/package.json')\n 反推同级 .prisma),并断言 **query engine 二进制存在**——只 `test -d` 等于没查,\n 因为那个桩目录永远存在。\n\n负向测试(实跑):去掉 .pnpm 拷贝那行后构建 EXIT=1,报\n`ERROR: no generated query engine at /runtime/api-nestjs/node_modules/.pnpm/@prisma+client@.../.prisma/client`\n——新断言会在构建期拦下这个 bug,而不是等容器启动才炸。\n\n证据(作用域=本地工作区):\n- pnpm vm:up 全流程通过:6 个服务全 healthy、migrate Exited(0)\n- 迁移真实应用到部署库(含 20260805120000_product_image_thumbnail /\n 20260807120000_quotation_void_and_restore)\n- 冒烟:Gateway + web + NestJS health passed;\n Write-chain smoke passed(create + read-back under a throwaway tenant)\n- 独立复核(不依赖脚本自述):curl 网关 /api/health -\u003e ok(db=up,redis=up)、首页 200、\n 容器内 `new PrismaClient()` 实例化成功\n- pnpm check 22 项全绿 exit=0\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-17T17:36:43-07:00"}],"HeadCommit":{"Sha1":"08df317afac31db70f0394580a0bb8686f49671c","Message":"Merge remote-tracking branch 'origin/codex/catalog-customer-quotation-workflows' into hljTest\n\n# Conflicts:\n#\tdeploy/vm/Dockerfile\n#\tscripts/lib/component-size.mjs\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-26T13:12:50+08:00"},"CompareURL":"luoanwu/juhai-quotation-system/compare/04432cff2b306ecd33ca2bea6e2e256814f978f0...08df317afac31db70f0394580a0bb8686f49671c","Len":3}...
|
1787721223
|
Edit
Delete
|
|
26124
|
5
|
5
|
7
|
72
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"08df317af {"Commits":[{"Sha1":"08df317afac31db70f0394580a0bb8686f49671c","Message":"Merge remote-tracking branch 'origin/codex/catalog-customer-quotation-workflows' into hljTest\n\n# Conflicts:\n#\tdeploy/vm/Dockerfile\n#\tscripts/lib/component-size.mjs\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-26T13:12:50+08:00"},{"Sha1":"8f11b6bc4df9f709414e306e9c9225bd45bccb65","Message":"feat: complete catalog customer and quotation workflows\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-24T01:18:51-07:00"},{"Sha1":"2de7545076ac90e4aa88e89cdf310f72ca9692ce","Message":"fix(vm): Prisma 生成物拷到运行时真正解析的位置——旧断言查的是拷贝目标而非读取路径\n\n`pnpm vm:up` 首次真跑起整栈,api-nestjs 容器启动即崩溃重启循环:\n`@prisma/client did not initialize yet. Please run \"prisma generate\"`。\n而构建期那条\"Prisma Client 必须在部署树里\"的断言是**绿的**。\n\n根因:`pnpm deploy` 把 @prisma/client 放进\n`node_modules/.pnpm/@prisma+client@\u003chash\u003e/node_modules/`,而 @prisma/client 是相对\n**自身**去找同级 `.prisma` 的——部署树顶层那份它根本不看。上一版把生成物拷到了顶层\n扁平路径,于是:\n- 运行时解析到 .pnpm 内嵌的那份,那是 @prisma/client **自带的桩**\n (`default.js` 第 43 行专门抛 \"did not initialize yet\"),没有 query engine;\n- 而断言 `test -d /runtime/\u003capp\u003e/node_modules/.prisma/client` 查的正是我刚拷过去的\n 顶层目录,\"往哪拷就查哪\",必然通过。\n\n这是「断言检查的位置 ≠ 运行时读取的位置」,与 C23(typecheck 读 src、运行时读 dist)\n同型:不是断言写得弱,而是它锚在一条运行时不走的路径上。\n\n两处一起修:\n1. 拷贝目标改为 .pnpm 内嵌位置(顶层那份保留,覆盖 hoist 布局),glob 取不到即 fail。\n2. 断言改为**按运行时同一方式推导路径**(从 require.resolve('@prisma/client/package.json')\n 反推同级 .prisma),并断言 **query engine 二进制存在**——只 `test -d` 等于没查,\n 因为那个桩目录永远存在。\n\n负向测试(实跑):去掉 .pnpm 拷贝那行后构建 EXIT=1,报\n`ERROR: no generated query engine at /runtime/api-nestjs/node_modules/.pnpm/@prisma+client@.../.prisma/client`\n——新断言会在构建期拦下这个 bug,而不是等容器启动才炸。\n\n证据(作用域=本地工作区):\n- pnpm vm:up 全流程通过:6 个服务全 healthy、migrate Exited(0)\n- 迁移真实应用到部署库(含 20260805120000_product_image_thumbnail /\n 20260807120000_quotation_void_and_restore)\n- 冒烟:Gateway + web + NestJS health passed;\n Write-chain smoke passed(create + read-back under a throwaway tenant)\n- 独立复核(不依赖脚本自述):curl 网关 /api/health -\u003e ok(db=up,redis=up)、首页 200、\n 容器内 `new PrismaClient()` 实例化成功\n- pnpm check 22 项全绿 exit=0\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-17T17:36:43-07:00"}],"HeadCommit":{"Sha1":"08df317afac31db70f0394580a0bb8686f49671c","Message":"Merge remote-tracking branch 'origin/codex/catalog-customer-quotation-workflows' into hljTest\n\n# Conflicts:\n#\tdeploy/vm/Dockerfile\n#\tscripts/lib/component-size.mjs\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-26T13:12:50+08:00"},"CompareURL":"luoanwu/juhai-quotation-system/compare/04432cff2b306ecd33ca2bea6e2e256814f978f0...08df317afac31db70f0394580a0bb8686f49671c","Len":3}...
|
1787721223
|
Edit
Delete
|
|
26204
|
7
|
5
|
7
|
72
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"fc0729c51 {"Commits":[{"Sha1":"fc0729c51eaa6fb61e5c2c39bdc6d4bd30696570","Message":"fix(vm): make smoke honor the web base path\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-26T13:51:23+08:00"}],"HeadCommit":{"Sha1":"fc0729c51eaa6fb61e5c2c39bdc6d4bd30696570","Message":"fix(vm): make smoke honor the web base path\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-26T13:51:23+08:00"},"CompareURL":"luoanwu/juhai-quotation-system/compare/08df317afac31db70f0394580a0bb8686f49671c...fc0729c51eaa6fb61e5c2c39bdc6d4bd30696570","Len":1}...
|
1787723483
|
Edit
Delete
|
|
26205
|
5
|
5
|
7
|
72
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"fc0729c51 {"Commits":[{"Sha1":"fc0729c51eaa6fb61e5c2c39bdc6d4bd30696570","Message":"fix(vm): make smoke honor the web base path\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-26T13:51:23+08:00"}],"HeadCommit":{"Sha1":"fc0729c51eaa6fb61e5c2c39bdc6d4bd30696570","Message":"fix(vm): make smoke honor the web base path\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-26T13:51:23+08:00"},"CompareURL":"luoanwu/juhai-quotation-system/compare/08df317afac31db70f0394580a0bb8686f49671c...fc0729c51eaa6fb61e5c2c39bdc6d4bd30696570","Len":1}...
|
1787723483
|
Edit
Delete
|
|
26507
|
7
|
5
|
7
|
57
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"dc10d6356 {"Commits":[{"Sha1":"dc10d6356138564bf70fcfa6370ba66d99f0b0d7","Message":"feat(material): 完成正式生产与导演交付链路\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-27T14:12:06+08:00"},{"Sha1":"cf66be23009de5ecbefad6083c173eb1df3f4c8b","Message":"Refresh UI acceptance evidence\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-25T17:52:24-07:00"},{"Sha1":"8e23fd115535dda184b584cb62396fa8286ef383","Message":"feat(governance): harden formal production trust boundaries\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-25T17:46:37-07:00"},{"Sha1":"58ffde2d1e2a662a18b4fadf901b0f6f5233f30a","Message":"feat: 完善分镜导演终审与对抗治理\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-25T11:55:23-07:00"},{"Sha1":"f094101357dc511e450e0e18fab5c91baaed9865","Message":"fix(governance): make source fingerprints commit-stable\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-25T09:40:28-07:00"}],"HeadCommit":{"Sha1":"dc10d6356138564bf70fcfa6370ba66d99f0b0d7","Message":"feat(material): 完成正式生产与导演交付链路\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-27T14:12:06+08:00"},"CompareURL":"luoanwu/image-generation/compare/5fbcad0bceea9e81914ae6b7e8bfb05265845598...dc10d6356138564bf70fcfa6370ba66d99f0b0d7","Len":26}...
|
1787813227
|
Edit
Delete
|
|
26508
|
5
|
5
|
7
|
57
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"dc10d6356 {"Commits":[{"Sha1":"dc10d6356138564bf70fcfa6370ba66d99f0b0d7","Message":"feat(material): 完成正式生产与导演交付链路\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-27T14:12:06+08:00"},{"Sha1":"cf66be23009de5ecbefad6083c173eb1df3f4c8b","Message":"Refresh UI acceptance evidence\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-25T17:52:24-07:00"},{"Sha1":"8e23fd115535dda184b584cb62396fa8286ef383","Message":"feat(governance): harden formal production trust boundaries\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-25T17:46:37-07:00"},{"Sha1":"58ffde2d1e2a662a18b4fadf901b0f6f5233f30a","Message":"feat: 完善分镜导演终审与对抗治理\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-25T11:55:23-07:00"},{"Sha1":"f094101357dc511e450e0e18fab5c91baaed9865","Message":"fix(governance): make source fingerprints commit-stable\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"luoguoguo","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"luoguoguo","Timestamp":"2026-08-25T09:40:28-07:00"}],"HeadCommit":{"Sha1":"dc10d6356138564bf70fcfa6370ba66d99f0b0d7","Message":"feat(material): 完成正式生产与导演交付链路\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-08-27T14:12:06+08:00"},"CompareURL":"luoanwu/image-generation/compare/5fbcad0bceea9e81914ae6b7e8bfb05265845598...dc10d6356138564bf70fcfa6370ba66d99f0b0d7","Len":26}...
|
1787813227
|
Edit
Delete
|
|
26990
|
7
|
5
|
7
|
57
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"acf98e305 {"Commits":[{"Sha1":"acf98e305c9119899658833425da4ec0e240eb81","Message":"fix(deploy): build public file declarations in containers\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-01T12:37:46+08:00"},{"Sha1":"4f9e26991be55cebd9581ee270d986def4c2eb17","Message":"Merge remote-tracking branch 'origin/main' into hljTest\n\n# Conflicts:\n#\tapps/web/src/components/material-factory/FactoryShell.tsx\n#\tdeploy/vm/sidecar.Dockerfile\n#\tmodels/material-factory/manifest.json\n#\treports/adversarial-acceptance-audit.latest.md\n#\treports/baseline.json\n#\treports/contract-consumers.latest.json\n#\treports/governance-docs.latest.json\n#\treports/governance.latest.json\n#\treports/inference-acceptance.latest.json\n#\treports/material-models.latest.json\n#\treports/material-review-concurrency-guard.latest.json\n#\treports/migrations.latest.json\n#\treports/module-boundary.latest.json\n#\treports/naming.latest.json\n#\treports/order-concurrency-guard.latest.json\n#\treports/production-acceptance.latest.json\n#\treports/production-security.latest.json\n#\treports/runtime-acceptance.latest.json\n#\treports/runtime-governance.latest.json\n#\treports/schema-sync.latest.json\n#\treports/startup-acceptance.latest.json\n#\treports/storyboard-director-guard.latest.json\n#\treports/ui-acceptance.desktop.png\n#\treports/ui-acceptance.latest.json\n#\treports/ui-acceptance.mobile.png\n#\treports/ui-acceptance.production.png\n#\treports/validation-source.latest.json\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-01T11:13:05+08:00"},{"Sha1":"c16f03b05ec70a53ac99f27dc7901ad3ad99a45a","Message":"feat: add governed public file delivery\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-08-31T19:41:05-07:00"},{"Sha1":"0c21eecc828c12daebc00845c14482c3b9d58823","Message":"feat(web): improve end-to-end creation UX\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-08-28T19:18:11-07:00"}],"HeadCommit":{"Sha1":"acf98e305c9119899658833425da4ec0e240eb81","Message":"fix(deploy): build public file declarations in containers\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-01T12:37:46+08:00"},"CompareURL":"luoanwu/image-generation/compare/dc10d6356138564bf70fcfa6370ba66d99f0b0d7...acf98e305c9119899658833425da4ec0e240eb81","Len":4}...
|
1788237491
|
Edit
Delete
|
|
26991
|
5
|
5
|
7
|
57
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"acf98e305 {"Commits":[{"Sha1":"acf98e305c9119899658833425da4ec0e240eb81","Message":"fix(deploy): build public file declarations in containers\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-01T12:37:46+08:00"},{"Sha1":"4f9e26991be55cebd9581ee270d986def4c2eb17","Message":"Merge remote-tracking branch 'origin/main' into hljTest\n\n# Conflicts:\n#\tapps/web/src/components/material-factory/FactoryShell.tsx\n#\tdeploy/vm/sidecar.Dockerfile\n#\tmodels/material-factory/manifest.json\n#\treports/adversarial-acceptance-audit.latest.md\n#\treports/baseline.json\n#\treports/contract-consumers.latest.json\n#\treports/governance-docs.latest.json\n#\treports/governance.latest.json\n#\treports/inference-acceptance.latest.json\n#\treports/material-models.latest.json\n#\treports/material-review-concurrency-guard.latest.json\n#\treports/migrations.latest.json\n#\treports/module-boundary.latest.json\n#\treports/naming.latest.json\n#\treports/order-concurrency-guard.latest.json\n#\treports/production-acceptance.latest.json\n#\treports/production-security.latest.json\n#\treports/runtime-acceptance.latest.json\n#\treports/runtime-governance.latest.json\n#\treports/schema-sync.latest.json\n#\treports/startup-acceptance.latest.json\n#\treports/storyboard-director-guard.latest.json\n#\treports/ui-acceptance.desktop.png\n#\treports/ui-acceptance.latest.json\n#\treports/ui-acceptance.mobile.png\n#\treports/ui-acceptance.production.png\n#\treports/validation-source.latest.json\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-01T11:13:05+08:00"},{"Sha1":"c16f03b05ec70a53ac99f27dc7901ad3ad99a45a","Message":"feat: add governed public file delivery\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-08-31T19:41:05-07:00"},{"Sha1":"0c21eecc828c12daebc00845c14482c3b9d58823","Message":"feat(web): improve end-to-end creation UX\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-08-28T19:18:11-07:00"}],"HeadCommit":{"Sha1":"acf98e305c9119899658833425da4ec0e240eb81","Message":"fix(deploy): build public file declarations in containers\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-01T12:37:46+08:00"},"CompareURL":"luoanwu/image-generation/compare/dc10d6356138564bf70fcfa6370ba66d99f0b0d7...acf98e305c9119899658833425da4ec0e240eb81","Len":4}...
|
1788237491
|
Edit
Delete
|
|
28245
|
7
|
5
|
7
|
57
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"ef5432214 {"Commits":[{"Sha1":"ef543221435ddd53ee13b45920881c2663bab887","Message":"feat(workflow): harden streaming media delivery flows\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-07T16:06:53+08:00"},{"Sha1":"3a392852dfbefe00c51c9562f0a424d1901cde37","Message":"chore(workspace): capture current models and workflow evidence\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-06T21:14:10+08:00"},{"Sha1":"bdbe40689699fc993019a4d9a270e0a8e9130433","Message":"feat(web): improve asset library and delivery center\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-06T19:10:14+08:00"},{"Sha1":"ed8b878c3069355c8389d58208f4926fb4feed9a","Message":"feat(workflow): complete governed media delivery flows\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-06T18:08:55+08:00"},{"Sha1":"1f0499711bd1206d67c1628df7c00f2eff4b9981","Message":"feat(production): support batch imports and verified sidecar inputs\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-06T14:30:32+08:00"}],"HeadCommit":{"Sha1":"ef543221435ddd53ee13b45920881c2663bab887","Message":"feat(workflow): harden streaming media delivery flows\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-07T16:06:53+08:00"},"CompareURL":"luoanwu/image-generation/compare/acf98e305c9119899658833425da4ec0e240eb81...ef543221435ddd53ee13b45920881c2663bab887","Len":8}...
|
1788768998
|
Edit
Delete
|
|
28246
|
5
|
5
|
7
|
57
|
0
|
0
|
refs/heads/hljTest
|
0
|
{"Commits":[{"Sha1":"ef5432214 {"Commits":[{"Sha1":"ef543221435ddd53ee13b45920881c2663bab887","Message":"feat(workflow): harden streaming media delivery flows\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-07T16:06:53+08:00"},{"Sha1":"3a392852dfbefe00c51c9562f0a424d1901cde37","Message":"chore(workspace): capture current models and workflow evidence\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-06T21:14:10+08:00"},{"Sha1":"bdbe40689699fc993019a4d9a270e0a8e9130433","Message":"feat(web): improve asset library and delivery center\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-06T19:10:14+08:00"},{"Sha1":"ed8b878c3069355c8389d58208f4926fb4feed9a","Message":"feat(workflow): complete governed media delivery flows\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-06T18:08:55+08:00"},{"Sha1":"1f0499711bd1206d67c1628df7c00f2eff4b9981","Message":"feat(production): support batch imports and verified sidecar inputs\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-06T14:30:32+08:00"}],"HeadCommit":{"Sha1":"ef543221435ddd53ee13b45920881c2663bab887","Message":"feat(workflow): harden streaming media delivery flows\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","AuthorEmail":"hlj@g-hi.com","AuthorName":"huangliujian","CommitterEmail":"hlj@g-hi.com","CommitterName":"huangliujian","Timestamp":"2026-09-07T16:06:53+08:00"},"CompareURL":"luoanwu/image-generation/compare/acf98e305c9119899658833425da4ec0e240eb81...ef543221435ddd53ee13b45920881c2663bab887","Len":8}...
|
1788768998
|
Edit
Delete
|
|
26530
|
4
|
5
|
4
|
85
|
0
|
0
|
refs/heads/intent/device-online-stats-by-region
|
1
|
|
1787817208
|
Edit
Delete
|
|
26531
|
4
|
5
|
4
|
85
|
0
|
0
|
refs/heads/intent/device-online-stats-by-region
|
1
|
{"Commits":[{"Sha1":"d994d4d99 {"Commits":[{"Sha1":"d994d4d99fc07d3344930bb26e52e2d218236a13","Message":"intent: 按省市统计设备月度新增上线数量报表\n\n- 数据报表 \u003e 设备分析 子菜单\n- 按月筛选,柱状图展示省份新激活设备排行\n- 支持下钻到城市维度\n- 权限跟随现有角色体系(agent_id 过滤)\n","AuthorEmail":"qiaojielai@gmail.com","AuthorName":"laiqiaojie","CommitterEmail":"qiaojielai@gmail.com","CommitterName":"laiqiaojie","Timestamp":"2026-08-27T15:53:26+08:00"}],"HeadCommit":{"Sha1":"d994d4d99fc07d3344930bb26e52e2d218236a13","Message":"intent: 按省市统计设备月度新增上线数量报表\n\n- 数据报表 \u003e 设备分析 子菜单\n- 按月筛选,柱状图展示省份新激活设备排行\n- 支持下钻到城市维度\n- 权限跟随现有角色体系(agent_id 过滤)\n","AuthorEmail":"qiaojielai@gmail.com","AuthorName":"laiqiaojie","CommitterEmail":"qiaojielai@gmail.com","CommitterName":"laiqiaojie","Timestamp":"2026-08-27T15:53:26+08:00"},"CompareURL":"laiqiaojie/jh-project/compare/4f5a2cd980dfa98346814d03d74e54ab7fbd07d6...d994d4d99fc07d3344930bb26e52e2d218236a13","Len":1}...
|
1787817208
|
Edit
Delete
|
|
26533
|
4
|
5
|
4
|
85
|
0
|
0
|
refs/heads/intent/device-online-stats-by-region
|
1
|
{"Commits":[{"Sha1":"02efbbce8 {"Commits":[{"Sha1":"02efbbce8a06c0354b34c136e4a84bb849c526c5","Message":"intent: 补充需求背景截图\n","AuthorEmail":"qiaojielai@gmail.com","AuthorName":"laiqiaojie","CommitterEmail":"qiaojielai@gmail.com","CommitterName":"laiqiaojie","Timestamp":"2026-08-27T16:12:33+08:00"}],"HeadCommit":{"Sha1":"02efbbce8a06c0354b34c136e4a84bb849c526c5","Message":"intent: 补充需求背景截图\n","AuthorEmail":"qiaojielai@gmail.com","AuthorName":"laiqiaojie","CommitterEmail":"qiaojielai@gmail.com","CommitterName":"laiqiaojie","Timestamp":"2026-08-27T16:12:33+08:00"},"CompareURL":"laiqiaojie/jh-project/compare/d994d4d99fc07d3344930bb26e52e2d218236a13...02efbbce8a06c0354b34c136e4a84bb849c526c5","Len":1}...
|
1787818356
|
Edit
Delete
|
|
26560
|
4
|
5
|
4
|
85
|
0
|
0
|
refs/heads/intent/device-online-stats-by-region
|
1
|
{"Commits":[{"Sha1":"0bae283b2 {"Commits":[{"Sha1":"0bae283b2180dc0e8cb8a7fe0a3f5803a4a9d310","Message":"docs: 补充 Intent PR 审核清单到 REVIEW.md\n","AuthorEmail":"qiaojielai@gmail.com","AuthorName":"laiqiaojie","CommitterEmail":"qiaojielai@gmail.com","CommitterName":"laiqiaojie","Timestamp":"2026-08-27T17:25:19+08:00"}],"HeadCommit":{"Sha1":"0bae283b2180dc0e8cb8a7fe0a3f5803a4a9d310","Message":"docs: 补充 Intent PR 审核清单到 REVIEW.md\n","AuthorEmail":"qiaojielai@gmail.com","AuthorName":"laiqiaojie","CommitterEmail":"qiaojielai@gmail.com","CommitterName":"laiqiaojie","Timestamp":"2026-08-27T17:25:19+08:00"},"CompareURL":"laiqiaojie/jh-project/compare/02efbbce8a06c0354b34c136e4a84bb849c526c5...0bae283b2180dc0e8cb8a7fe0a3f5803a4a9d310","Len":1}...
|
1787822723
|
Edit
Delete
|
|
26562
|
4
|
5
|
4
|
85
|
0
|
0
|
refs/heads/intent/device-online-stats-by-region
|
1
|
{"Commits":[{"Sha1":"91f462a24 {"Commits":[{"Sha1":"91f462a24d33ba2091d76c149d0f3daa57429c8d","Message":"docs: 补充版本里程碑审核流程到 REVIEW.md\n","AuthorEmail":"qiaojielai@gmail.com","AuthorName":"laiqiaojie","CommitterEmail":"qiaojielai@gmail.com","CommitterName":"laiqiaojie","Timestamp":"2026-08-27T17:29:36+08:00"}],"HeadCommit":{"Sha1":"91f462a24d33ba2091d76c149d0f3daa57429c8d","Message":"docs: 补充版本里程碑审核流程到 REVIEW.md\n","AuthorEmail":"qiaojielai@gmail.com","AuthorName":"laiqiaojie","CommitterEmail":"qiaojielai@gmail.com","CommitterName":"laiqiaojie","Timestamp":"2026-08-27T17:29:36+08:00"},"CompareURL":"laiqiaojie/jh-project/compare/0bae283b2180dc0e8cb8a7fe0a3f5803a4a9d310...91f462a24d33ba2091d76c149d0f3daa57429c8d","Len":1}...
|
1787822981
|
Edit
Delete
|
|
26566
|
4
|
5
|
4
|
85
|
0
|
0
|
refs/heads/intent/device-online-stats-by-region
|
1
|
{"Commits":[{"Sha1":"662f1fc01 {"Commits":[{"Sha1":"662f1fc01b9d49729084b3f245dda30c1d59b836","Message":"intent: 补充当月新增设备总数汇总指标(PM评论反馈)\n","AuthorEmail":"qiaojielai@gmail.com","AuthorName":"laiqiaojie","CommitterEmail":"qiaojielai@gmail.com","CommitterName":"laiqiaojie","Timestamp":"2026-08-27T17:38:48+08:00"}],"HeadCommit":{"Sha1":"662f1fc01b9d49729084b3f245dda30c1d59b836","Message":"intent: 补充当月新增设备总数汇总指标(PM评论反馈)\n","AuthorEmail":"qiaojielai@gmail.com","AuthorName":"laiqiaojie","CommitterEmail":"qiaojielai@gmail.com","CommitterName":"laiqiaojie","Timestamp":"2026-08-27T17:38:48+08:00"},"CompareURL":"laiqiaojie/jh-project/compare/91f462a24d33ba2091d76c149d0f3daa57429c8d...662f1fc01b9d49729084b3f245dda30c1d59b836","Len":1}...
|
1787823532
|
Edit
Delete
|
|
12599
|
12
|
5
|
12
|
41
|
0
|
0
|
refs/heads/iptv
|
1
|
|
1781582669
|
Edit
Delete
|
|
12600
|
12
|
5
|
12
|
41
|
0
|
0
|
refs/heads/iptv
|
1
|
{"Commits":[],"HeadCommit":{"S {"Commits":[],"HeadCommit":{"Sha1":"fc6f203023196b338f8ff0f2f79089de2c6e9e76","Message":"v1.0.13\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-04-28T10:54:10+08:00"},"CompareURL":"zhengpeizhong/jhplayer/compare/master...fc6f203023196b338f8ff0f2f79089de2c6e9e76","Len":0}...
|
1781582669
|
Edit
Delete
|
|
12601
|
12
|
5
|
12
|
41
|
0
|
0
|
refs/heads/iptv_juhai
|
1
|
|
1781582669
|
Edit
Delete
|
|
12602
|
12
|
5
|
12
|
41
|
0
|
0
|
refs/heads/iptv_juhai
|
1
|
{"Commits":[{"Sha1":"cd80fc782 {"Commits":[{"Sha1":"cd80fc782942966e9cde390e19ad89c5bf6d564e","Message":"v1.0.17\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-06-21T14:46:24+08:00"},{"Sha1":"4ee0ad719256bac7bbe2844e8c3017e839a697b4","Message":"jhplayer:MyTinyAlsa:hasSndCard: add support for a new usbid\n\nAdd new usbid:\n0c76:161f\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-06-21T14:42:29+08:00"},{"Sha1":"86d91d5e28330b5530164f78049865525699b347","Message":"v1.0.16\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-05-13T18:17:37+08:00"},{"Sha1":"8ff7d0ed6669229faee525e88bf81288c2f29fbc","Message":"jhplayer:MyTinyAlsa: add support to amplify audio\n\nThe amplification alogrithm I use is simple:\npcm = pcm * GAIN_FACTOR\n\nThe default value of GAIN_FACTOR is 30.0, user could\nchange its value through \"-usbgain\" parameter with the\nsetRecorderInitArgv function.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-05-13T18:12:33+08:00"},{"Sha1":"40dcd0382c87277a99a8a15cd941d222b122e45c","Message":"jhplayer:MyTinyAlsa: using usbid-based usb sound card detection logic\n\nMany peripheral devices have audio codec, e.g., infrared remote\ncontroller, camera, etc. So we need to use usbid to find out our\ndesired audio codec.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-05-13T15:00:57+08:00"}],"HeadCommit":{"Sha1":"cd80fc782942966e9cde390e19ad89c5bf6d564e","Message":"v1.0.17\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-06-21T14:46:24+08:00"},"CompareURL":"zhengpeizhong/jhplayer/compare/5a319ed4213e1d2d91b0d9706f4e69bd7b446b81...cd80fc782942966e9cde390e19ad89c5bf6d564e","Len":10}...
|
1781582669
|
Edit
Delete
|
|
12603
|
12
|
5
|
12
|
41
|
0
|
0
|
refs/heads/iptv_serial
|
1
|
|
1781582669
|
Edit
Delete
|
|
12604
|
12
|
5
|
12
|
41
|
0
|
0
|
refs/heads/iptv_serial
|
1
|
{"Commits":[{"Sha1":"be20ab44b {"Commits":[{"Sha1":"be20ab44b53eff18de137c8a2068e24d6149ce66","Message":"jni:jhplayer: add support for serial-based communication with the Effector\n\nThis patch ports lua_serial.c (comes from cocos2d-x repository) into jhplayer\nproject, and exports the interfaces to java instead of lua.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2019-09-12T14:38:08+08:00"}],"HeadCommit":{"Sha1":"be20ab44b53eff18de137c8a2068e24d6149ce66","Message":"jni:jhplayer: add support for serial-based communication with the Effector\n\nThis patch ports lua_serial.c (comes from cocos2d-x repository) into jhplayer\nproject, and exports the interfaces to java instead of lua.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2019-09-12T14:38:08+08:00"},"CompareURL":"zhengpeizhong/jhplayer/compare/c5dd7a7bfc6358f8e6783206058708f6decbd3dc...be20ab44b53eff18de137c8a2068e24d6149ce66","Len":1}...
|
1781582669
|
Edit
Delete
|
|
33316
|
5
|
5
|
5
|
121
|
0
|
0
|
refs/heads/k3-3-policy-definition
|
1
|
|
1790674342
|
Edit
Delete
|
|
33317
|
5
|
5
|
5
|
121
|
0
|
0
|
refs/heads/k3-3-policy-definition
|
1
|
{"Commits":[{"Sha1":"274993966 {"Commits":[{"Sha1":"274993966104a52e89bc81dda4db05c332923a56","Message":"wip(K3.3): PolicyDefinition — preserved snapshot of uncommitted work (base 0.71, not for merge)\n\nPreservation snapshot (R0, 2026-09-29) of work that only existed as uncommitted changes in a /tmp worktree.\nNothing here was verified by this commit: no tests were ever written for it and it was not run against a database.\n\nWhat the snapshot contains:\n- sql/072_policy_definition.sql: governance.policy_definition_version (EXECUTION_AUTHORIZATION with maxTtlSeconds),\n a ten-state lifecycle, immutable content, one ACTIVE version per tenant and type, FORCE RLS; also replaces the\n authority_assignment action CHECK with governance.manage_policy / governance.approve_policy added. The file header\n is a copy of the K3.2 header.\n- src/contexts/policy-definition.js: the PolicyDefinition commands (create, validate, request review, approve,\n reject, publish, activate, deprecate, retire, revoke) with self-approval denial and authority checks.\n- registrations in commands.js, owner-roles.js, rejection-target.js, kernel.js, catalog and the payload / event\n contracts.\n\nKnown state when preserved:\n- Based on 0490b8e (0.71). Main is 0.103.x with migrations up to 095; 072 already exists there\n (072_task_case_correlation_immutable), so the migration must be renumbered, and kernel.js / catalog / contracts\n will need a real rebase.\n- Missing for the slice: tests, contract document, smoke, and the binding of a GovernanceDecision to the active\n policy version with drift rejection (K3.3b).\n\nCo-Authored-By: Claude Sonnet 5.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-29T02:31:23-07:00"}],"HeadCommit":{"Sha1":"274993966104a52e89bc81dda4db05c332923a56","Message":"wip(K3.3): PolicyDefinition — preserved snapshot of uncommitted work (base 0.71, not for merge)\n\nPreservation snapshot (R0, 2026-09-29) of work that only existed as uncommitted changes in a /tmp worktree.\nNothing here was verified by this commit: no tests were ever written for it and it was not run against a database.\n\nWhat the snapshot contains:\n- sql/072_policy_definition.sql: governance.policy_definition_version (EXECUTION_AUTHORIZATION with maxTtlSeconds),\n a ten-state lifecycle, immutable content, one ACTIVE version per tenant and type, FORCE RLS; also replaces the\n authority_assignment action CHECK with governance.manage_policy / governance.approve_policy added. The file header\n is a copy of the K3.2 header.\n- src/contexts/policy-definition.js: the PolicyDefinition commands (create, validate, request review, approve,\n reject, publish, activate, deprecate, retire, revoke) with self-approval denial and authority checks.\n- registrations in commands.js, owner-roles.js, rejection-target.js, kernel.js, catalog and the payload / event\n contracts.\n\nKnown state when preserved:\n- Based on 0490b8e (0.71). Main is 0.103.x with migrations up to 095; 072 already exists there\n (072_task_case_correlation_immutable), so the migration must be renumbered, and kernel.js / catalog / contracts\n will need a real rebase.\n- Missing for the slice: tests, contract document, smoke, and the binding of a GovernanceDecision to the active\n policy version with drift rejection (K3.3b).\n\nCo-Authored-By: Claude Sonnet 5.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-29T02:31:23-07:00"},"CompareURL":"luoanwu/seven-domain-five-dimension-unified-model/compare/0490b8e294be66821900eb885014ff550abf5770...274993966104a52e89bc81dda4db05c332923a56","Len":1}...
|
1790674342
|
Edit
Delete
|
|
12801
|
10
|
5
|
10
|
43
|
0
|
0
|
refs/heads/lab-main
|
1
|
|
1781590077
|
Edit
Delete
|
|
12802
|
10
|
5
|
10
|
43
|
0
|
0
|
refs/heads/lab-main
|
1
|
{"Commits":[{"Sha1":"c75e0875c {"Commits":[{"Sha1":"c75e0875c743c320314cab8ca1c8441d89582640","Message":"Merge pull request 'Merge pull request '260519分支分支' (#3) from pay into pay-260616' (#308) from pay-260616 into pay\n\nReviewed-on: https://gitea.g-hi.com/vodtest/pay/pulls/308\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-06-11T09:38:51+08:00"}],"HeadCommit":{"Sha1":"c75e0875c743c320314cab8ca1c8441d89582640","Message":"Merge pull request 'Merge pull request '260519分支分支' (#3) from pay into pay-260616' (#308) from pay-260616 into pay\n\nReviewed-on: https://gitea.g-hi.com/vodtest/pay/pulls/308\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-06-11T09:38:51+08:00"},"CompareURL":"linyangrui/pay-lab/compare/4d40b955cab3e5bede94a249da333a532ffec85e...c75e0875c743c320314cab8ca1c8441d89582640","Len":1}...
|
1781590077
|
Edit
Delete
|
|
12853
|
10
|
17
|
10
|
43
|
0
|
0
|
refs/heads/lab-main
|
1
|
|
1781593601
|
Edit
Delete
|
|
12854
|
10
|
5
|
10
|
43
|
0
|
0
|
refs/heads/lab-main
|
1
|
|
1781593640
|
Edit
Delete
|
|
12855
|
10
|
5
|
10
|
43
|
0
|
0
|
refs/heads/lab-main
|
1
|
{"Commits":[{"Sha1":"3f387dae5 {"Commits":[{"Sha1":"3f387dae5333e71ab1224a27432c86850c455ce6","Message":"bug修复\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-06-16T14:37:48+08:00"},{"Sha1":"afbb1b7d6b070035db6a51b7f44f48ebf519d3f7","Message":"1\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-06-16T14:23:30+08:00"},{"Sha1":"fdd52049bb93c74346006644341bfbe1a8377bc3","Message":"1\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-06-16T14:21:08+08:00"},{"Sha1":"710ad86b8a19a9aa0941c3d834212b95cedb59a9","Message":"1\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-06-16T14:15:05+08:00"},{"Sha1":"f344dcf8d9bd9150b520dd95bd17099d0f3e1fad","Message":"Merge branch 'pay-260616' of https://gitea.g-hi.com/vodtest/pay into pay-260616\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-06-16T13:59:18+08:00"}],"HeadCommit":{"Sha1":"3f387dae5333e71ab1224a27432c86850c455ce6","Message":"bug修复\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-06-16T14:37:48+08:00"},"CompareURL":"linyangrui/pay-lab/compare/2d193b5f7c3be863dc8e5e0845187eee407ee313...3f387dae5333e71ab1224a27432c86850c455ce6","Len":9}...
|
1781593640
|
Edit
Delete
|
|
12995
|
10
|
5
|
10
|
43
|
0
|
0
|
refs/heads/lab-main
|
1
|
{"Commits":[{"Sha1":"e1a6c4d1e {"Commits":[{"Sha1":"e1a6c4d1e482b99be48e2b948f9e3b31ccb8b59e","Message":"文档初稿\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-06-16T18:26:45+08:00"}],"HeadCommit":{"Sha1":"e1a6c4d1e482b99be48e2b948f9e3b31ccb8b59e","Message":"文档初稿\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-06-16T18:26:45+08:00"},"CompareURL":"linyangrui/pay-lab/compare/3f387dae5333e71ab1224a27432c86850c455ce6...e1a6c4d1e482b99be48e2b948f9e3b31ccb8b59e","Len":1}...
|
1781605629
|
Edit
Delete
|
|
13053
|
10
|
5
|
10
|
43
|
0
|
0
|
refs/heads/lab-main
|
1
|
{"Commits":[{"Sha1":"1fdc100dd {"Commits":[{"Sha1":"1fdc100dd9a8d94f0c89f1ff0b52b988f0e13b49","Message":"完善门店详情模块flow\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-06-17T15:55:24+08:00"}],"HeadCommit":{"Sha1":"1fdc100dd9a8d94f0c89f1ff0b52b988f0e13b49","Message":"完善门店详情模块flow\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-06-17T15:55:24+08:00"},"CompareURL":"linyangrui/pay-lab/compare/e1a6c4d1e482b99be48e2b948f9e3b31ccb8b59e...1fdc100dd9a8d94f0c89f1ff0b52b988f0e13b49","Len":1}...
|
1781682958
|
Edit
Delete
|
|
13176
|
10
|
5
|
10
|
43
|
0
|
0
|
refs/heads/lab-main
|
1
|
{"Commits":[{"Sha1":"7b728ac19 {"Commits":[{"Sha1":"7b728ac19d7a3d0a899649c9b00ba4b861736def","Message":"黑名单相关功能和flow\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-06-17T18:15:01+08:00"}],"HeadCommit":{"Sha1":"7b728ac19d7a3d0a899649c9b00ba4b861736def","Message":"黑名单相关功能和flow\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-06-17T18:15:01+08:00"},"CompareURL":"linyangrui/pay-lab/compare/1fdc100dd9a8d94f0c89f1ff0b52b988f0e13b49...7b728ac19d7a3d0a899649c9b00ba4b861736def","Len":1}...
|
1781691346
|
Edit
Delete
|
|
6
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
|
1770359932
|
Edit
Delete
|
|
7
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
|
1770359932
|
Edit
Delete
|
|
8
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"2cd9494b8 {"Commits":[{"Sha1":"2cd9494b833e4bff0771dceb179fc359a19f83c9","Message":"Initial commit\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T14:29:40+08:00"}],"HeadCommit":{"Sha1":"2cd9494b833e4bff0771dceb179fc359a19f83c9","Message":"Initial commit\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T14:29:40+08:00"},"CompareURL":"","Len":1}...
|
1770359932
|
Edit
Delete
|
|
9
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"2cd9494b8 {"Commits":[{"Sha1":"2cd9494b833e4bff0771dceb179fc359a19f83c9","Message":"Initial commit\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T14:29:40+08:00"}],"HeadCommit":{"Sha1":"2cd9494b833e4bff0771dceb179fc359a19f83c9","Message":"Initial commit\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T14:29:40+08:00"},"CompareURL":"","Len":1}...
|
1770359932
|
Edit
Delete
|
|
16
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"d9ade4fb0 {"Commits":[{"Sha1":"d9ade4fb0b23546fa112583d8bdad18a73948eb0","Message":"添加 .gitea/workflows/hello-world.yaml\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:27:15+08:00"}],"HeadCommit":{"Sha1":"d9ade4fb0b23546fa112583d8bdad18a73948eb0","Message":"添加 .gitea/workflows/hello-world.yaml\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:27:15+08:00"},"CompareURL":"juhai/testpc/compare/2cd9494b833e4bff0771dceb179fc359a19f83c9...d9ade4fb0b23546fa112583d8bdad18a73948eb0","Len":1}...
|
1770362836
|
Edit
Delete
|
|
17
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"d9ade4fb0 {"Commits":[{"Sha1":"d9ade4fb0b23546fa112583d8bdad18a73948eb0","Message":"添加 .gitea/workflows/hello-world.yaml\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:27:15+08:00"}],"HeadCommit":{"Sha1":"d9ade4fb0b23546fa112583d8bdad18a73948eb0","Message":"添加 .gitea/workflows/hello-world.yaml\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:27:15+08:00"},"CompareURL":"juhai/testpc/compare/2cd9494b833e4bff0771dceb179fc359a19f83c9...d9ade4fb0b23546fa112583d8bdad18a73948eb0","Len":1}...
|
1770362836
|
Edit
Delete
|
|
18
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"eeeea6507 {"Commits":[{"Sha1":"eeeea65072a95dcb64d00de48d403734fce896f6","Message":"更新 .gitea/workflows/hello-world.yaml\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:28:03+08:00"}],"HeadCommit":{"Sha1":"eeeea65072a95dcb64d00de48d403734fce896f6","Message":"更新 .gitea/workflows/hello-world.yaml\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:28:03+08:00"},"CompareURL":"juhai/testpc/compare/d9ade4fb0b23546fa112583d8bdad18a73948eb0...eeeea65072a95dcb64d00de48d403734fce896f6","Len":1}...
|
1770362885
|
Edit
Delete
|
|
19
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"eeeea6507 {"Commits":[{"Sha1":"eeeea65072a95dcb64d00de48d403734fce896f6","Message":"更新 .gitea/workflows/hello-world.yaml\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:28:03+08:00"}],"HeadCommit":{"Sha1":"eeeea65072a95dcb64d00de48d403734fce896f6","Message":"更新 .gitea/workflows/hello-world.yaml\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:28:03+08:00"},"CompareURL":"juhai/testpc/compare/d9ade4fb0b23546fa112583d8bdad18a73948eb0...eeeea65072a95dcb64d00de48d403734fce896f6","Len":1}...
|
1770362885
|
Edit
Delete
|
|
20
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"74f43da4b {"Commits":[{"Sha1":"74f43da4be5c177e5405226efa5f1f7303a4b2bb","Message":"提交测试\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:31:02+08:00"}],"HeadCommit":{"Sha1":"74f43da4be5c177e5405226efa5f1f7303a4b2bb","Message":"提交测试\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:31:02+08:00"},"CompareURL":"juhai/testpc/compare/eeeea65072a95dcb64d00de48d403734fce896f6...74f43da4be5c177e5405226efa5f1f7303a4b2bb","Len":1}...
|
1770363133
|
Edit
Delete
|
|
21
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"74f43da4b {"Commits":[{"Sha1":"74f43da4be5c177e5405226efa5f1f7303a4b2bb","Message":"提交测试\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:31:02+08:00"}],"HeadCommit":{"Sha1":"74f43da4be5c177e5405226efa5f1f7303a4b2bb","Message":"提交测试\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:31:02+08:00"},"CompareURL":"juhai/testpc/compare/eeeea65072a95dcb64d00de48d403734fce896f6...74f43da4be5c177e5405226efa5f1f7303a4b2bb","Len":1}...
|
1770363133
|
Edit
Delete
|
|
22
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"648e5d31e {"Commits":[{"Sha1":"648e5d31ec4f94695fa3cb16e919fa6f6b504503","Message":"提交测试22\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:48:57+08:00"}],"HeadCommit":{"Sha1":"648e5d31ec4f94695fa3cb16e919fa6f6b504503","Message":"提交测试22\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:48:57+08:00"},"CompareURL":"juhai/testpc/compare/74f43da4be5c177e5405226efa5f1f7303a4b2bb...648e5d31ec4f94695fa3cb16e919fa6f6b504503","Len":1}...
|
1770364148
|
Edit
Delete
|
|
23
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"648e5d31e {"Commits":[{"Sha1":"648e5d31ec4f94695fa3cb16e919fa6f6b504503","Message":"提交测试22\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:48:57+08:00"}],"HeadCommit":{"Sha1":"648e5d31ec4f94695fa3cb16e919fa6f6b504503","Message":"提交测试22\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-06T15:48:57+08:00"},"CompareURL":"juhai/testpc/compare/74f43da4be5c177e5405226efa5f1f7303a4b2bb...648e5d31ec4f94695fa3cb16e919fa6f6b504503","Len":1}...
|
1770364148
|
Edit
Delete
|
|
24
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"7d4d92036 {"Commits":[{"Sha1":"7d4d920368182d2222ed4f7dd18933b433f88ec2","Message":"测试修改\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-11T16:57:25+08:00"}],"HeadCommit":{"Sha1":"7d4d920368182d2222ed4f7dd18933b433f88ec2","Message":"测试修改\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-11T16:57:25+08:00"},"CompareURL":"juhai/testpc/compare/648e5d31ec4f94695fa3cb16e919fa6f6b504503...7d4d920368182d2222ed4f7dd18933b433f88ec2","Len":1}...
|
1770800268
|
Edit
Delete
|