|
12655
|
12
|
5
|
12
|
42
|
0
|
0
|
refs/heads/yckjstb2
|
1
|
{"Commits":[],"HeadCommit":{"S {"Commits":[],"HeadCommit":{"Sha1":"80fe3765b4bdb4a8c4dddc9b9f4eafcaafa47472","Message":"lua-bindings:auto:lua_cocos2dx_auto:lua_cocos2dx_Application_checkLicenseStatus: Fix forget to add lua_Number for tolua_pushnumber\n\nlua_cocos2dx_Application_checkLicenseStatus will return unexpected\nvalues to lua without lua_Number converter in tolua_pushnumber when\nsizeof(int) != sizeof(lua_Number).\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2018-06-05T15:48:40+08:00"},"CompareURL":"zhengpeizhong/cocos2d-x/compare/3719c...80fe3765b4bdb4a8c4dddc9b9f4eafcaafa47472","Len":0}...
|
1781583215
|
Edit
Delete
|
|
12656
|
12
|
5
|
12
|
42
|
0
|
0
|
refs/heads/youcstb
|
1
|
|
1781583215
|
Edit
Delete
|
|
12657
|
12
|
5
|
12
|
42
|
0
|
0
|
refs/heads/youcstb
|
1
|
{"Commits":[],"HeadCommit":{"S {"Commits":[],"HeadCommit":{"Sha1":"401927b1716a8f50691335c337b22dbf3eea4654","Message":"external:ipvod:ipvodasync:LIBCURLWrapper: Fix generating partial downloaded file with valid filename after program crash or system reboot\n\nBecause the partial downloaded file has a valid filename, then lua will\nthink the file is valid and willn't request for download, but because\nthe file isn't complete, it will causes display issue, black screen, etc.\n\nThis patch fixes it.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2018-03-09T15:12:44+08:00"},"CompareURL":"zhengpeizhong/cocos2d-x/compare/3719c...401927b1716a8f50691335c337b22dbf3eea4654","Len":0}...
|
1781583215
|
Edit
Delete
|
|
12658
|
12
|
5
|
12
|
42
|
0
|
0
|
refs/heads/youcstb-old
|
1
|
|
1781583216
|
Edit
Delete
|
|
12659
|
12
|
5
|
12
|
42
|
0
|
0
|
refs/heads/youcstb-old
|
1
|
{"Commits":[{"Sha1":"28159914d {"Commits":[{"Sha1":"28159914df5754de37a25d4a4ef37cc791a8a0d1","Message":"platform:linux:player:Ipvod3dAudioUpload: avoid calling CAudioUploadOPUSWrapper::Init on BCM725XX platform\n\nI haven't update the audioupload library for BCM725XX platform, and it\nmakes no harm without calling it, so I decide to disable it temporarily.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-04-30T10:45:31+08:00"},{"Sha1":"a804c51f6ea676d22dbedcc315c0028567a10e3d","Message":"platform:linux:player: disable speech recognition function\n\nThe implementation of speech recognition function has been moved\nto another process, aiui.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2018-06-27T14:53:00+08:00"},{"Sha1":"61ee27edb6c9eefdd6f2dae038efadf3f519075d","Message":"platform:linux:CCApplication-linux: Convert ipvodfile_[init|SetPathNameOfFilesIni|efreshlist] to ipvodfilelocal_[init|SetPathNameOfFilesIni|efreshlist]\n\nI have renamed these functions in libipvodfilelocal to the new\nfunctions which have prefix \"ipvodfilelocal_\" instead of the\nold \"ipvodfile_\".\n\nNote: this patch also adds mssing ipvodfilelocal_init calling.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-04-30T09:44:33+08:00"},{"Sha1":"c9f48ae685901eb01c3ee991ea935a133811dfb6","Message":"cocos:platform:CMakeLists: add mssing header file search path for BCM725XX platform\n\nAdd \"../external/ipvod/effectorupdater/\" into header file search paths\nof BCM725XX platform.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-04-30T10:20:53+08:00"}],"HeadCommit":{"Sha1":"28159914df5754de37a25d4a4ef37cc791a8a0d1","Message":"platform:linux:player:Ipvod3dAudioUpload: avoid calling CAudioUploadOPUSWrapper::Init on BCM725XX platform\n\nI haven't update the audioupload library for BCM725XX platform, and it\nmakes no harm without calling it, so I decide to disable it temporarily.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-04-30T10:45:31+08:00"},"CompareURL":"zhengpeizhong/cocos2d-x/compare/06f15d94a0afef7a5978d03801aa5220566e382b...28159914df5754de37a25d4a4ef37cc791a8a0d1","Len":4}...
|
1781583216
|
Edit
Delete
|
|
12660
|
12
|
5
|
12
|
42
|
0
|
0
|
refs/heads/youcstbnext
|
1
|
|
1781583217
|
Edit
Delete
|
|
12661
|
12
|
5
|
12
|
42
|
0
|
0
|
refs/heads/youcstbnext
|
1
|
{"Commits":[{"Sha1":"8b97bb6ad {"Commits":[{"Sha1":"8b97bb6ad1fcc5bf705e44b178ceb038acca8b2b","Message":"platform:linux:player: disable speech recognition function\n\nThe implementation of speech recognition function has been moved\nto another process, aiui.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2018-06-27T14:53:00+08:00"},{"Sha1":"96f74c036d5d824f9623e3de819c79ba51c54798","Message":"platform:linux:CCApplication-linux: Convert ipvodfile_[init|SetPathNameOfFilesIni|efreshlist] to ipvodfilelocal_[init|SetPathNameOfFilesIni|efreshlist]\n\nI have renamed these functions in libipvodfilelocal to the new\nfunctions which have prefix \"ipvodfilelocal_\" instead of the\nold \"ipvodfile_\".\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2020-04-30T09:44:33+08:00"}],"HeadCommit":{"Sha1":"8b97bb6ad1fcc5bf705e44b178ceb038acca8b2b","Message":"platform:linux:player: disable speech recognition function\n\nThe implementation of speech recognition function has been moved\nto another process, aiui.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2018-06-27T14:53:00+08:00"},"CompareURL":"zhengpeizhong/cocos2d-x/compare/401927b1716a8f50691335c337b22dbf3eea4654...8b97bb6ad1fcc5bf705e44b178ceb038acca8b2b","Len":2}...
|
1781583217
|
Edit
Delete
|
|
12662
|
12
|
5
|
12
|
42
|
0
|
0
|
refs/heads/youcstbnext-old
|
1
|
|
1781583218
|
Edit
Delete
|
|
12663
|
12
|
5
|
12
|
42
|
0
|
0
|
refs/heads/youcstbnext-old
|
1
|
{"Commits":[{"Sha1":"7bde14155 {"Commits":[{"Sha1":"7bde141554a30004838d301ca9d4724bdadfa014","Message":"external:ipvod:ipvodasync:LIBCURLWrapper: Fix generating partial downloaded file with valid filename after program crash or system reboot\n\nBecause the partial downloaded file has a valid filename, then lua will\nthink the file is valid and willn't request for download, but because\nthe file isn't complete, it will causes display issue, black screen, etc.\n\nThis patch fixes it.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2018-03-09T15:12:44+08:00"},{"Sha1":"43b7a08a837567dc2a4dbbc763eda1eab6b235eb","Message":"external:ipvod:ipvodasync:LIBCURLWrapper: Using CURLOPT_SHARE instead of CURLOPT_DNS_USE_GLOBAL_CACHE\n\nCURLOPT_DNS_USE_GLOBAL_CACHE isn't thread-safe, it will causes program crash\nwhen there are more than one threads using LIBCURLWrapper concurrently.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2018-01-30T16:06:19+08:00"}],"HeadCommit":{"Sha1":"7bde141554a30004838d301ca9d4724bdadfa014","Message":"external:ipvod:ipvodasync:LIBCURLWrapper: Fix generating partial downloaded file with valid filename after program crash or system reboot\n\nBecause the partial downloaded file has a valid filename, then lua will\nthink the file is valid and willn't request for download, but because\nthe file isn't complete, it will causes display issue, black screen, etc.\n\nThis patch fixes it.\n","AuthorEmail":"udknight@gmail.com","AuthorName":"Wang YanQing","CommitterEmail":"udknight@gmail.com","CommitterName":"Wang YanQing","Timestamp":"2018-03-09T15:12:44+08:00"},"CompareURL":"zhengpeizhong/cocos2d-x/compare/06f15d94a0afef7a5978d03801aa5220566e382b...7bde141554a30004838d301ca9d4724bdadfa014","Len":2}...
|
1781583218
|
Edit
Delete
|
|
29186
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.1.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"06b8b98f483723103dcd01449e6ec6772ad10c13","Message":"docs(governance): 回灌远端绿盘——f17d34a 的 GitHub run 33707057068 三 job 全绿,两远端对齐\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-02T19:23:08-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...bbc16b5c5f9610df1b16192c8f393e23b371a007","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29187
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.10.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"2df710d670c6be4c7e2d8d8a321b88bd4d24dc94","Message":"feat(release): 版本兼容矩阵 + 升级指南(FW-06)\n\n- COMPATIBILITY.md:运行基座矩阵、按版本派生仓必做动作(0.1.0→0.10.0 回填)、收据版本支持、0.x 弃用策略\n- check:docs-truth compat-* 断言:CHANGELOG 每个已发布版本有 ### [x.y.z] 升级小节;Node/pnpm/PG/Redis 与 package.json、CI 一致\n- migration:plan 报告 upgrade{from,to,versions[]}:目标凭证版本之后的动作累加并打印\n- 版本 0.10.0(root + contracts)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:42:00-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...bfa7cafcfa2cfbe8c68756ce2a276cc0631f494d","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29188
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.11.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"6c60640adc403fed09fba13e9f258dd19e031a1e","Message":"feat(outbox): 死信处置与告警入口 pnpm outbox:remediate(G16 部分闭环)\n\n- scripts/outbox-remediate.mjs:--status(有死信 exit 2)/ --list-dead / --inspect / --retry / --discard --reason;\n 写库需 --execute,默认 dry-run;与 dispatcher 阻断语义一致(retry 重置三列按 seq 重投;discard 标 dispatchedAt、保留 deadLetteredAt)\n- NestJS test/outbox.remediate.test.ts:真实 DB 4 用例(告警退出码、dry-run、retry 后重投、discard 后放行、拒绝非死信)\n- 版本 0.11.0;COMPATIBILITY / CHANGELOG / CLAUDE.md G16 更新\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:52:39-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...08358ed9bd2af9c934d8758e1d9af7e7e8f52dc6","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29189
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.12.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"fa77b22af701d7a40ce19ebf1d6c14614b3afd6b","Message":"fix(redis): REDIS_URL 的 rediss:// TLS 与 ACL 用户名透传给 BullMQ(C28,09-05 审查 P1)\n\n- 两后端 parseRedisConnection:username(URL 解码)、tls.servername(rediss://)、只认 redis/rediss 协议\n- NestJS app.module 改消费共享解析器并透传 username/tls(消灭内联第二份拆解)\n- check:dual-backend C28 绊网(负向 exit 1);两后端各 5 个 infra-url 纯函数单测\n- 版本 0.12.0;CHANGELOG / COMPATIBILITY / CLAUDE.md(真源地图、G18、C28)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T23:34:56-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...569fbabead2b43b2e014e559173029626b5f2014","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29190
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.13.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"c19f40747f61aca6d61f82b34cdf124f842e5811","Message":"fix(acceptance): turbo 透传 RLS/告警环境变量;UI runner 先构建契约包\n\n- turbo.json globalEnv 加 DATABASE_RUNTIME_URL / DATABASE_SYSTEM_URL / TENANT_RLS_MODE(否则 turbo 严格环境把它们滤掉,\n 测试在 off 模式下跑、tenant.rls 套件因缺变量红)与 ALERT_* 三项\n- check:ui 在首个后端 build 前先 pnpm --filter @repo/contracts build(干净检出里 dist 不存在会 TS2307)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:29:53-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...d27a31d4a658835949a6c0cff50f33ebc94587de","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29191
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.14.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"079557145ee7bc44c618a6c4748b12a60a7fa74c","Message":"feat(alerts): 告警推送通道(G20 半边,0.14.0)——AlertSink 端口、log/webhook 投递器、HMAC 签名、去重,dispatcher 死信/流阻断事务后推送\n\n- 内核 contracts/alert.ts:alertSchema/buildAlert、KERNEL_ALERT_CODES、resolveAlertChannel(生产必须显式 ALERT_CHANNEL)、\n createLogAlertSink / createWebhookAlertSink(稳定序列化、x-alert-id、x-alert-signature、超时 + 一次重试、失败可见不抛错)、AlertDeduper\n- NestJS AlertsModule(ALERT_SINK) + common/alerts.ts;Fastify plugins/alerts.ts + lib/alerts.ts(app.alerts);HMAC/fetch 由后端注入\n- 两后端 outbox dispatcher:outbox.dead_letter / outbox.stream_blocked 在事务提交后推送(按行 id 去重)\n- 两后端 alerts.webhook.test.ts 各 3 例(本地 http 真实收 POST 验签名/重试/去重/生产拒绝);deadletter 测试追加告警断言;C30 绊网\n- docs/alerting.md、.env.example、CHANGELOG/COMPATIBILITY 0.14.0;地板 ownTests 37→40、ownTestCases 267→280\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:41:00-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...0579ade1ffe5f67e3d8de207291a173588b3f870","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29192
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.15.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"927c3c3be52110dc7c66b6ef17845e477b04470f","Message":"fix(strip): EventFeed 事件色表的 order.* 行加 sample-domain 标记(剥离后 web typecheck 红)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T03:42:51-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...18d33851e0661e36d5f89bd85fd050490650578b","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29193
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.16.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"36bd170ad4ddc011d55f87a90e880fc053e205b0","Message":"feat(kernel): 内核成为独立可发布包 @juhai/kernel,源码留框架仓(0.16.0)\n\n- packages/kernel(@juhai/kernel):15 个内核模块与单测自 packages/contracts/src 整体移入;只依赖 zod;版本随框架;\n files=[dist]、sideEffects:false、publishConfig 指向 Gitea luoanwu npm registry;.npmrc 配 @juhai 作用域\n- @repo/contracts 依赖 @juhai/kernel 并只转发(kernel.ts = export * from);根入口/子路径与应用 import 不变;order.ts 改从内核取 MachineDefinition\n- contracts 单测拆分:内核契约单测随模块入内核包,contracts 留 layering.test.ts(F10)与 order.test.ts\n- F10 改校验内核包(不 import 示例域/@repo/contracts、不内嵌域事件字面量、contracts kernel.ts 只转发);F11 新增内核包形状断言\n- 差分与 UI runner 经 turbo 按依赖序构建内核→contracts;contract-consumers job 断言指向 packages/kernel;docs 路径同步\n- framework:pack 双制品(juhai-kernel / repo-contracts)、framework:publish;CHANGELOG/COMPATIBILITY 0.16.0;pnpm-lock 更新\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T06:34:14-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...478d30cb08ea5b6dc9c38cdd2a04dfe79d6202f6","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29194
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.2.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"ad327f9ff09953f9ecb81f28337ee9db41d78b59","Message":"feat(governance): 建立框架版本轴 + 收口治理文档漂移(G25 / C26,登记 G26)\n\n- 版本轴:CHANGELOG.md、package.json 0.1.0→0.2.0、v0.1.0 补打在 06b8b98、\n migration:plan / migration:record 记录两侧 frameworkVersion(凭证 schemaVersion 不变)\n- check:docs-truth 新增 changelog-exists / changelog-has-released-version /\n changelog-version-matches-package 三条断言;负向(package.json 改 0.3.0、删 CHANGELOG)均 exit 1\n- C26:PR 模板路由检查项改为实际口径 /api/{resources};发布状态快照按 2026-09-09\n ls-remote 重写(两远端停在 06b8b98,本地领先未推送)\n- 登记 G26:框架经 products/juhai.baseframework peerDeps 与两道 os-product 门禁反向绑定基座(OPEN)\n- G20 写明 GOV-PRODUCTION-OPS-001 的两份报告没有生产者脚本\n\n静态 pnpm check 全绿;未跑 runtime/UI,不改变 4f48008 的三级证据。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T18:13:46-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...e0a7caf3154f253fd72e03eed17207315d4367be","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29195
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.3.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"e54cf14a3304da99b2db34e0086a39eaa1f5ced4","Message":"feat(contracts): 内核 / 示例域分层 + F10 门禁;check 链与 OS 解耦(G27 关闭,G26 门禁侧解耦)\n\n- @repo/contracts 新增 kernel.ts / sample.ts 两个 barrel 与 ./kernel、./sample 子路径导出;\n ApiErrorBody / AUTH_ERROR_CODES / HealthResponse 移入 api-error.ts / health.ts(导出名不变)\n- realtime.ts:KERNEL_REALTIME_EVENT_TYPES + defineRealtimeEventTypes();order.ts / user.ts 各自声明域事件类型;\n REALTIME_EVENT_TYPES 全集在 index.ts 组合(集合不变 11 项);makeEnvelope(type: string)\n- subscription.ts resourceIdOf 去掉 orderId / userId 枚举:取 data.id,否则首个以 Id 结尾的字符串键\n- check:fork-readiness F10:内核不得 import 示例域 / 不得内嵌域事件字面量 / index 只组合两个 barrel;\n 三条负向均 exit 1\n- package.json 0.3.0;删除 check:full,新增 check:os(OS 两级验收独立入口)\n- contracts 新增 3 个分层回归用例(91/91);typecheck / lint / 静态 pnpm check 全绿\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T18:28:43-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...eb5dc275a5be05940878bd0558dd175e6cdb439a","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29196
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.4.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"3e061f2335a08a218ca6ba090978450ed11ed865","Message":"feat(seams): 平台接缝第一批——请求上下文 + fail-closed 平台端口 + 契约包可依赖形态(G28 关闭,登记 G29)\n\n- contracts 内核新增 request-context.ts(I9-A 六字段、受限 x-request-id、W3C traceparent、APP_ID 生产必填)\n 与 platform-ports.ts(权限/审计/事实出口/服务凭据端口 + createFailClosedPlatformPorts;权限永拒不抛,其余未配置即抛)\n- 两后端 AsyncLocalStorage 接线:x-request-id 回显 / x-trace-id / 鉴权后 enrich / pino mixin 六字段;\n Fastify genReqId 单源于 contracts,NestJS 由 create-app 装配中间件\n- 矩阵 +HTTP-REQUEST-CONTEXT-001/002(matrixVersion 3)、差分 +DIFF-REQUEST-CONTEXT-001(其余 checkpoint 抹平 headers)\n- check:fork-readiness F11:契约包 version = 框架版本、files=[\"dist\"]、kernel/sample 子路径、sideEffects:false(负向 exit 1)\n- package.json 0.4.0;@repo/contracts 0.0.0→0.4.0;新增 pnpm framework:pack(dist-artifacts/*.tgz,gitignore)\n- contracts 99/99、typecheck/lint/静态 pnpm check 全绿;ownTestCases 210→222、ownTests 29→31(地板随 runtime 结果收紧)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:00:14-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...bd055b25f760754089b736217ee75c1e57f1f9d8","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29197
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.5.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"d2797f1b1f19c364477013490e881968ddf56ba2","Message":"fix(tooling): migration:rollback 的 dirty 判定排除自身报告;bootstrap 回滚点只红在新鲜度断言时降为 finding;G30 经验回灌\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:25:52-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...838251be5715460031778974df3f21a53d7cab2b","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29198
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.6.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"c1af4695da80550a56a0bf4e6629f840c6f5978f","Message":"feat(context): 请求上下文贯通 Outbox → Redis → 消费者(I9-B)+ 平台端口束接入装配点(G29 第一半)\n\n- Outbox 新增可空 request_id / trace_id(两后端迁移 20260910090000_outbox_request_context);10 处写链同 tx 落入\n- RealtimeEnvelope 可选 context{requestId,traceId};dispatcher/重放从 outbox 行带出;schema 校验;README 与 docs-truth 断言同步\n- 队列载荷携带 context,两后端 worker restoreRequestContext 后处理\n- NestJS PlatformPortsModule(PLATFORM_PORTS) / Fastify app.platformPorts:默认 createFailClosedPlatformPorts\n- 矩阵 +HTTP-REQUEST-CONTEXT-003、PORTS-FAIL-CLOSED-001(matrixVersion 4);差分 DIFF-OUTBOX-001 含 request id 存在性\n- contracts 101/101、typecheck/lint/迁移/矩阵/静态 pnpm check 全绿;版本 0.6.0\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:45:56-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...0783dab348684e810ca2183f3888fa30f2d7e2d8","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29199
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.7.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"c710b36306840b237fd6fb93f3be39f59b1a36c4","Message":"fix(ports): NestJS permit() 把 PermissionDeniedError 映射为 403(此前在 try/catch 外冒泡成 500,矩阵负向用例抓出);G29 经验回灌\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T20:35:10-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...61d40d84fcc9a61ed9d6d487e8dea4544759402f","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29200
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.8.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"55a27fdd836fc5c8aa393aa4831f18da6eccf8bb","Message":"feat(boundary): OS 产品扩展与两道 OS 门禁整体移出主仓——框架零依赖(G26 关闭)\n\n- 移出:products/juhai.baseframework、kernel.products.json、docs/os-product-extension.md、check-os-product-{compat,runtime}.mjs\n → 同级独立仓 base-framework-os-product(只依赖 OS 检出,不依赖本仓)\n- 删除 extension profile 与 GOV-EXTENSION-OS-001(registryVersion 4→5,schema 同步)、osProduct* 指标与地板、\n check:os-product / check:os-product:runtime / check:os / check:extension 入口、CI artifact 排除项、owner-matrix 两条 OS 对象行\n- scaffold 在源仓无 kernel.products.json 时跳过产品重绑定;迁移技能 SKILL/协议/模板改为\"若目标携带\"\n- 主仓 @repo/product-runtime / @repo/tool-runtime / @os/* 零命中;静态 pnpm check 全绿;版本 0.8.0\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:11:43-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...11462f99f5f9d930c376b340b2d6aa4f2422b531","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29201
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/fw-v0.9.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"eccb5c8098c5d0b6edb2b25ab8e26ac0265ab5ac","Message":"feat(ui-matrix): check:ui 支持 nestjs/fastify × ws/sse 矩阵;修复 Fastify SSE 两条浏览器分叉(G17 关闭,C27)\n\n- check:ui:UI_BACKEND / UI_TRANSPORT / UI_MATRIX=1,每组合独立起后端与前端跑同一套 Playwright 用例;\n 报告 matrix[],uiTestsPassed 取最小值对地板\n- web:NEXT_PUBLIC_REALTIME_TRANSPORT 设实时通路起始值\n- Fastify /sse/events:开流即写 \": connected\" 注释帧(否则经代理 EventSource 永不 open);\n Cache-Control 加 no-transform(否则 gzip 代理缓冲事件)——UI 矩阵 fastify/sse 首轮精确红盘抓出\n- 版本 0.9.0\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:25:25-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...5f190bbd89bb73e4b96138115c42dc5df11721eb","Len":0}...
|
1789198036
|
Edit
Delete
|
|
12856
|
10
|
9
|
10
|
43
|
0
|
0
|
refs/tags/lab/baseline/pay-260616
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"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/0000000000000000000000000000000000000000...7b787fdd2a6574dfd7fc647b28b9633e4ed18ee2","Len":0}...
|
1781593767
|
Edit
Delete
|
|
29232
|
5
|
9
|
5
|
116
|
0
|
0
|
refs/tags/packages-v1.0.0-rc.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"e5aca81c94597d4cb18cc65fa5b0855d4333aaf6","Message":"Merge branch 'main' into codex/ms1-integration\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-12T01:23:38-07:00"},"CompareURL":"luoanwu/enterprise-platform/compare/0000000000000000000000000000000000000000...3751d8d2f6565c2279968baff86333f16d83241a","Len":0}...
|
1789202369
|
Edit
Delete
|
|
29275
|
5
|
9
|
5
|
116
|
0
|
0
|
refs/tags/packages-v1.0.0-rc.1
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"5db0d428fd63faa7efad95d0bfa13a6b389d1007","Message":"Merge pull request #11 from laoluojuhai/sync/main-20260912-r6\n\nsync(main): 合并已批准 Catalog 与 RC1 治理门禁","AuthorEmail":"158980461+laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"noreply@github.com","CommitterName":"GitHub","Timestamp":"2026-09-12T06:34:31-07:00"},"CompareURL":"luoanwu/enterprise-platform/compare/0000000000000000000000000000000000000000...f6046f3c3a64fc85f63bb462f2af9471352fc13b","Len":0}...
|
1789220645
|
Edit
Delete
|
|
31185
|
5
|
9
|
5
|
116
|
0
|
0
|
refs/tags/packages-v1.0.0-rc.4
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"557a95c4422518cf3d9fdff04d261114ab389169","Message":"chore(release): 三包推到 1.0.0-rc.4——clients 扫描面与这轮 contracts 硬化一起上车\n\n发 rc.4 的直接动因:e61bfcf 给 check:module-imports 补的 clients 扫描面与两条规则\n(CLIENT_FORBIDDEN_IMPORT / ESCAPES_CLIENT)不在任何已发布版本里,而 @juhai/governance\n的 rc.0—rc.3 已全部被占用,按 G-12 的边界只能往前发下一个 RC。\n\n随车发出的远不止这些。自 rc.3 的源 036a308 起:\n contracts 147 个文件 / 51 条提交(九域规则的入参体检与门禁覆盖那一大轮)\n governance 61 个文件 / 48 条提交\n runtime/clients/fact 5 个文件 / 5 条提交\n三包版本一致,符合 CL-5「一次发布 = 一个 tag = 一组同版本包」;包目录单源仍是\ngovernance/release-packages.json。\n\n通道:本地旁路(G-12 第三次使用)。CI 正道 2026-09-18 实测双重不可用——GitHub Actions\n最近三次 run 全部 failure(账户计费,最新 35215270797 即 CLAUDE.md 记的那条注解),\n且 GitHub 镜像落后 237 条提交、因分支保护的 required check 跑不起来而推不动,\ne61bfcf 的代码根本不在 GitHub 上。按 G-12 边界,rc.4 同样不得宣称经过发布门禁验证。\n\n本次按 CL-5 补打 tag packages-v1.0.0-rc.4——rc.2 / rc.3 两趟都漏了这一步。\n\nCo-Authored-By: Claude Opus 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-18T16:08:15-07:00"},"CompareURL":"luoanwu/enterprise-platform/compare/0000000000000000000000000000000000000000...557a95c4422518cf3d9fdff04d261114ab389169","Len":0}...
|
1789773457
|
Edit
Delete
|
|
31201
|
5
|
9
|
5
|
116
|
0
|
0
|
refs/tags/packages-v1.0.0-rc.5
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"cf05344e117a84fedf092613be5fc13b7a07072b","Message":"chore(release): 三包推到 1.0.0-rc.5——pins 三层判据随包出去,fact-pii 有意留在仓内\n\n动因:check:pins 的三层判据(63ff31f)还不在任何已发布版本里,而 @juhai/governance 的\nrc.0—rc.4 已全部被占用,按 G-12 的边界只能往前发下一个 RC。\n\n**发布物里有什么、没有什么,说清楚免得下一个人误读:** check-pins.mjs 在 governance 包的\nfiles 里,所以三层判据随包出去,消费者仓跑 juhai-governance check:pins 会拿到新判据\n(他们没有 pins-baseline.json,第三方层不启用,行为与 rc.4 一致——这是设计好的向后兼容)。\n而 check-fact-pii.mjs 与 fact-pii-rules.json **有意不进 files**:它扫的是\ncontracts/schemas/facts/ 与 contracts/candidates/facts/,消费者仓根本没有这两个目录,\n发过去是道跑不起来的门禁。它属于本轮源码,但不是本轮发布物的一部分。\n\n自 rc.4 源 557a95c 起的随车内容(比 rc.4 那趟小得多):\n contracts 14 文件 / 6 提交(7 个代码文件,三个域的 fixture-evaluator 与其单测)\n governance 10 文件 / 3 提交(两道新门禁 + 夹具覆盖度算法入文档)\n runtime/clients/fact 1 文件 / 1 提交 —— **只有 package.json,零内容变更,纯跟车**\n\n通道:本地旁路(G-12 第四次使用)。2026-09-18 实测:GitHub Actions 最新 run 35404565689 仍\nfailure(两个 job failure、其余 skipped,计费停摆的典型形态),正道仍不可满足。\n\n**一处新情况:推送死锁已解开。** rc.4 那趟记的是「GitHub 镜像落后 237 条、因分支保护的\nrequired check 跑不起来而推不动」;本次实测镜像落后已降到 24 条,github/main 指向 54e6324,\n说明有人把提交推上去了。但 Actions 仍不启动,所以正道仍差这一半——计费恢复后即可直接走正道,\n不必再先解死锁。\n\n按 CL-5 打 tag packages-v1.0.0-rc.5。\n\nCo-Authored-By: Claude Opus 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-18T16:45:09-07:00"},"CompareURL":"luoanwu/enterprise-platform/compare/0000000000000000000000000000000000000000...cf05344e117a84fedf092613be5fc13b7a07072b","Len":0}...
|
1789775554
|
Edit
Delete
|
|
31206
|
5
|
9
|
5
|
116
|
0
|
0
|
refs/tags/packages-v1.0.0-rc.6
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"7eadfb1a5af353077f1a32eef51389f4a6f7fbfa","Message":"chore(release): 三包推到 1.0.0-rc.6——check:fact-pii 这次真的随包出去\n\nrc.5 发的时候 check-fact-pii.mjs 还不在 governance 包的 files 里,消费者拿到的 rc.5 不含它。\neb275b1 把它与 fact-pii-rules.json 加进 files、在 CLI 注册 check:fact-pii 子命令,\n并补上了让它在消费者仓真跑得起来的两处(--dir 指定 Fact schema 目录、判据回落到包内自带)。\n这趟车就是为了把那些送出去。\n\n自 rc.5 源 cf05344 起的随车内容:\n governance 7 文件 / 2 提交(fact-pii 进包 + 消费者可用性)\n contracts 3 文件 / 1 提交\n runtime/clients/fact 0 文件 / 0 提交 —— **完全没有变化,纯跟车**(同 rc.5)\n\n通道:本地旁路(G-12 第五次)。2026-09-18 实测 GitHub Actions 仍停在 run 35404565689\n(failure,计费),没有新 run;GitHub 镜像落后 35 条。正道仍不可满足。\n\n按 CL-5 打 tag packages-v1.0.0-rc.6(连续第三趟)。\n\nCo-Authored-By: Claude Opus 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-18T16:56:38-07:00"},"CompareURL":"luoanwu/enterprise-platform/compare/0000000000000000000000000000000000000000...7eadfb1a5af353077f1a32eef51389f4a6f7fbfa","Len":0}...
|
1789776004
|
Edit
Delete
|
|
30314
|
5
|
9
|
5
|
97
|
0
|
0
|
refs/tags/retired-20260915
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"b4b17ab8285db6991daf85e768f0252cbb1c9470","Message":"chore(reports): refresh final static evidence\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"hillao","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"hillao","Timestamp":"2026-09-04T19:15:26-07:00"},"CompareURL":"luoanwu/fact-backbone/compare/0000000000000000000000000000000000000000...b4b17ab8285db6991daf85e768f0252cbb1c9470","Len":0}...
|
1789541864
|
Edit
Delete
|
|
30315
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/retired-20260915
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"f978ade7e90469ee1a0a8992c1073d4275b00b51","Message":"docs: scope-snapshot-blueprint 把 DEC-001—005 从\"仍待裁决\"改为\"已裁定、权威 Resolver 未实现\"\n\n治理层 check-workspace-consistency L10 最后一条命中:DEC-001—005 已于 2026-09-12 批准,本文仍写作未决前置。\n改为\"卡在没做\"而不是\"卡在裁决\"(真源仓 runtime/modules/scope 仍 state=shape)。清扫后 L10 归零,工作区一致性 4 → 3 条。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"hillao","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"hillao","Timestamp":"2026-09-15T05:53:28-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...f978ade7e90469ee1a0a8992c1073d4275b00b51","Len":0}...
|
1789541865
|
Edit
Delete
|
|
30316
|
5
|
9
|
5
|
108
|
0
|
0
|
refs/tags/retired-20260915
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"fa567527d297679347044b92de17fb137023d3c4","Message":"chore(reports): refresh final static evidence\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"hillao","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"hillao","Timestamp":"2026-09-04T19:15:26-07:00"},"CompareURL":"luoanwu/permission-platform/compare/0000000000000000000000000000000000000000...fa567527d297679347044b92de17fb137023d3c4","Len":0}...
|
1789541869
|
Edit
Delete
|
|
30407
|
5
|
9
|
5
|
107
|
0
|
0
|
refs/tags/retired-20260916
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"5a638a9a615f513177534b4c8d7c9e3efbb949a7","Message":"chore(reports): refresh clean final static evidence\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"hillao","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"hillao","Timestamp":"2026-09-04T18:50:51-07:00"},"CompareURL":"luoanwu/delivery-platform/compare/0000000000000000000000000000000000000000...5a638a9a615f513177534b4c8d7c9e3efbb949a7","Len":0}...
|
1789560161
|
Edit
Delete
|
|
30440
|
5
|
9
|
5
|
102
|
0
|
0
|
refs/tags/retired-20260916
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"56cff29d5bebc4328cb8c76e88a5bab7ec60dcff","Message":"chore(reports): refresh clean final static evidence\n","AuthorEmail":"luoguoguo@gmail.com","AuthorName":"hillao","CommitterEmail":"luoguoguo@gmail.com","CommitterName":"hillao","Timestamp":"2026-09-04T18:50:51-07:00"},"CompareURL":"luoanwu/app-registry/compare/0000000000000000000000000000000000000000...56cff29d5bebc4328cb8c76e88a5bab7ec60dcff","Len":0}...
|
1789561019
|
Edit
Delete
|
|
28835
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.1.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"06b8b98f483723103dcd01449e6ec6772ad10c13","Message":"docs(governance): 回灌远端绿盘——f17d34a 的 GitHub run 33707057068 三 job 全绿,两远端对齐\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-02T19:23:08-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...bbc16b5c5f9610df1b16192c8f393e23b371a007","Len":0}...
|
1789003213
|
Edit
Delete
|
|
29202
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/v0.1.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"06b8b98f483723103dcd01449e6ec6772ad10c13","Message":"docs(governance): 回灌远端绿盘——f17d34a 的 GitHub run 33707057068 三 job 全绿,两远端对齐\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-02T19:23:08-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...bbc16b5c5f9610df1b16192c8f393e23b371a007","Len":0}...
|
1789198036
|
Edit
Delete
|
|
29365
|
16
|
9
|
16
|
86
|
0
|
0
|
refs/tags/v0.1.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"29ffde871be14c6230d5547ca84cdb1c66667dbd","Message":"docs(docs): 重整 README 功能概览与开发指南\n\nREADME 未完整覆盖新增能力,启动说明也缺少 Go 构建依赖。\n\n实现内容:\n- 补齐团队分组、设备问题历史、远程预览与控制及传输加速说明\n- 更新开发环境、启动和打包命令、项目结构与文档导航\n- 明确同步范围与功能边界,将操作细节链接到已有文档\n- 仅修改 README.md,刷新最后更新日期\n\n验证:\n- 对照当前源码、package.json 和 Go 模块配置核实描述\n- 30 个本地链接与 16 个 npm 脚本校验通过\n- git diff --check 与 staged diff 检查通过\n- 纯文档变更,未运行应用测试、类型检查或构建\n","AuthorEmail":"gamebyteyu@gmail.com","AuthorName":"starry","CommitterEmail":"gamebyteyu@gmail.com","CommitterName":"starry","Timestamp":"2026-09-13T20:00:02+08:00"},"CompareURL":"pengzhiyu/JuhaiOpsDesk/compare/0000000000000000000000000000000000000000...29ffde871be14c6230d5547ca84cdb1c66667dbd","Len":0}...
|
1789301586
|
Edit
Delete
|
|
29366
|
16
|
24
|
16
|
86
|
0
|
0
|
refs/tags/v0.1.0
|
0
|
巨嗨运维助手首发版本
|
1789301586
|
Edit
Delete
|
|
28929
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.10.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"2df710d670c6be4c7e2d8d8a321b88bd4d24dc94","Message":"feat(release): 版本兼容矩阵 + 升级指南(FW-06)\n\n- COMPATIBILITY.md:运行基座矩阵、按版本派生仓必做动作(0.1.0→0.10.0 回填)、收据版本支持、0.x 弃用策略\n- check:docs-truth compat-* 断言:CHANGELOG 每个已发布版本有 ### [x.y.z] 升级小节;Node/pnpm/PG/Redis 与 package.json、CI 一致\n- migration:plan 报告 upgrade{from,to,versions[]}:目标凭证版本之后的动作累加并打印\n- 版本 0.10.0(root + contracts)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:42:00-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...bfa7cafcfa2cfbe8c68756ce2a276cc0631f494d","Len":0}...
|
1789026271
|
Edit
Delete
|
|
29203
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/v0.10.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"2df710d670c6be4c7e2d8d8a321b88bd4d24dc94","Message":"feat(release): 版本兼容矩阵 + 升级指南(FW-06)\n\n- COMPATIBILITY.md:运行基座矩阵、按版本派生仓必做动作(0.1.0→0.10.0 回填)、收据版本支持、0.x 弃用策略\n- check:docs-truth compat-* 断言:CHANGELOG 每个已发布版本有 ### [x.y.z] 升级小节;Node/pnpm/PG/Redis 与 package.json、CI 一致\n- migration:plan 报告 upgrade{from,to,versions[]}:目标凭证版本之后的动作累加并打印\n- 版本 0.10.0(root + contracts)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:42:00-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...bfa7cafcfa2cfbe8c68756ce2a276cc0631f494d","Len":0}...
|
1789198036
|
Edit
Delete
|
|
28930
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.11.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"6c60640adc403fed09fba13e9f258dd19e031a1e","Message":"feat(outbox): 死信处置与告警入口 pnpm outbox:remediate(G16 部分闭环)\n\n- scripts/outbox-remediate.mjs:--status(有死信 exit 2)/ --list-dead / --inspect / --retry / --discard --reason;\n 写库需 --execute,默认 dry-run;与 dispatcher 阻断语义一致(retry 重置三列按 seq 重投;discard 标 dispatchedAt、保留 deadLetteredAt)\n- NestJS test/outbox.remediate.test.ts:真实 DB 4 用例(告警退出码、dry-run、retry 后重投、discard 后放行、拒绝非死信)\n- 版本 0.11.0;COMPATIBILITY / CHANGELOG / CLAUDE.md G16 更新\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:52:39-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...08358ed9bd2af9c934d8758e1d9af7e7e8f52dc6","Len":0}...
|
1789026271
|
Edit
Delete
|
|
29204
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/v0.11.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"6c60640adc403fed09fba13e9f258dd19e031a1e","Message":"feat(outbox): 死信处置与告警入口 pnpm outbox:remediate(G16 部分闭环)\n\n- scripts/outbox-remediate.mjs:--status(有死信 exit 2)/ --list-dead / --inspect / --retry / --discard --reason;\n 写库需 --execute,默认 dry-run;与 dispatcher 阻断语义一致(retry 重置三列按 seq 重投;discard 标 dispatchedAt、保留 deadLetteredAt)\n- NestJS test/outbox.remediate.test.ts:真实 DB 4 用例(告警退出码、dry-run、retry 后重投、discard 后放行、拒绝非死信)\n- 版本 0.11.0;COMPATIBILITY / CHANGELOG / CLAUDE.md G16 更新\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:52:39-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...08358ed9bd2af9c934d8758e1d9af7e7e8f52dc6","Len":0}...
|
1789198036
|
Edit
Delete
|
|
28931
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.12.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"fa77b22af701d7a40ce19ebf1d6c14614b3afd6b","Message":"fix(redis): REDIS_URL 的 rediss:// TLS 与 ACL 用户名透传给 BullMQ(C28,09-05 审查 P1)\n\n- 两后端 parseRedisConnection:username(URL 解码)、tls.servername(rediss://)、只认 redis/rediss 协议\n- NestJS app.module 改消费共享解析器并透传 username/tls(消灭内联第二份拆解)\n- check:dual-backend C28 绊网(负向 exit 1);两后端各 5 个 infra-url 纯函数单测\n- 版本 0.12.0;CHANGELOG / COMPATIBILITY / CLAUDE.md(真源地图、G18、C28)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T23:34:56-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...569fbabead2b43b2e014e559173029626b5f2014","Len":0}...
|
1789026271
|
Edit
Delete
|
|
29205
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/v0.12.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"fa77b22af701d7a40ce19ebf1d6c14614b3afd6b","Message":"fix(redis): REDIS_URL 的 rediss:// TLS 与 ACL 用户名透传给 BullMQ(C28,09-05 审查 P1)\n\n- 两后端 parseRedisConnection:username(URL 解码)、tls.servername(rediss://)、只认 redis/rediss 协议\n- NestJS app.module 改消费共享解析器并透传 username/tls(消灭内联第二份拆解)\n- check:dual-backend C28 绊网(负向 exit 1);两后端各 5 个 infra-url 纯函数单测\n- 版本 0.12.0;CHANGELOG / COMPATIBILITY / CLAUDE.md(真源地图、G18、C28)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T23:34:56-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...569fbabead2b43b2e014e559173029626b5f2014","Len":0}...
|
1789198036
|
Edit
Delete
|
|
28942
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.13.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"c19f40747f61aca6d61f82b34cdf124f842e5811","Message":"fix(acceptance): turbo 透传 RLS/告警环境变量;UI runner 先构建契约包\n\n- turbo.json globalEnv 加 DATABASE_RUNTIME_URL / DATABASE_SYSTEM_URL / TENANT_RLS_MODE(否则 turbo 严格环境把它们滤掉,\n 测试在 off 模式下跑、tenant.rls 套件因缺变量红)与 ALERT_* 三项\n- check:ui 在首个后端 build 前先 pnpm --filter @repo/contracts build(干净检出里 dist 不存在会 TS2307)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:29:53-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...d27a31d4a658835949a6c0cff50f33ebc94587de","Len":0}...
|
1789037412
|
Edit
Delete
|
|
29206
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/v0.13.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"c19f40747f61aca6d61f82b34cdf124f842e5811","Message":"fix(acceptance): turbo 透传 RLS/告警环境变量;UI runner 先构建契约包\n\n- turbo.json globalEnv 加 DATABASE_RUNTIME_URL / DATABASE_SYSTEM_URL / TENANT_RLS_MODE(否则 turbo 严格环境把它们滤掉,\n 测试在 off 模式下跑、tenant.rls 套件因缺变量红)与 ALERT_* 三项\n- check:ui 在首个后端 build 前先 pnpm --filter @repo/contracts build(干净检出里 dist 不存在会 TS2307)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:29:53-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...d27a31d4a658835949a6c0cff50f33ebc94587de","Len":0}...
|
1789198036
|
Edit
Delete
|
|
28943
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.14.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"079557145ee7bc44c618a6c4748b12a60a7fa74c","Message":"feat(alerts): 告警推送通道(G20 半边,0.14.0)——AlertSink 端口、log/webhook 投递器、HMAC 签名、去重,dispatcher 死信/流阻断事务后推送\n\n- 内核 contracts/alert.ts:alertSchema/buildAlert、KERNEL_ALERT_CODES、resolveAlertChannel(生产必须显式 ALERT_CHANNEL)、\n createLogAlertSink / createWebhookAlertSink(稳定序列化、x-alert-id、x-alert-signature、超时 + 一次重试、失败可见不抛错)、AlertDeduper\n- NestJS AlertsModule(ALERT_SINK) + common/alerts.ts;Fastify plugins/alerts.ts + lib/alerts.ts(app.alerts);HMAC/fetch 由后端注入\n- 两后端 outbox dispatcher:outbox.dead_letter / outbox.stream_blocked 在事务提交后推送(按行 id 去重)\n- 两后端 alerts.webhook.test.ts 各 3 例(本地 http 真实收 POST 验签名/重试/去重/生产拒绝);deadletter 测试追加告警断言;C30 绊网\n- docs/alerting.md、.env.example、CHANGELOG/COMPATIBILITY 0.14.0;地板 ownTests 37→40、ownTestCases 267→280\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:41:00-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...0579ade1ffe5f67e3d8de207291a173588b3f870","Len":0}...
|
1789037412
|
Edit
Delete
|
|
29207
|
5
|
9
|
5
|
106
|
0
|
0
|
refs/tags/v0.14.0
|
1
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"079557145ee7bc44c618a6c4748b12a60a7fa74c","Message":"feat(alerts): 告警推送通道(G20 半边,0.14.0)——AlertSink 端口、log/webhook 投递器、HMAC 签名、去重,dispatcher 死信/流阻断事务后推送\n\n- 内核 contracts/alert.ts:alertSchema/buildAlert、KERNEL_ALERT_CODES、resolveAlertChannel(生产必须显式 ALERT_CHANNEL)、\n createLogAlertSink / createWebhookAlertSink(稳定序列化、x-alert-id、x-alert-signature、超时 + 一次重试、失败可见不抛错)、AlertDeduper\n- NestJS AlertsModule(ALERT_SINK) + common/alerts.ts;Fastify plugins/alerts.ts + lib/alerts.ts(app.alerts);HMAC/fetch 由后端注入\n- 两后端 outbox dispatcher:outbox.dead_letter / outbox.stream_blocked 在事务提交后推送(按行 id 去重)\n- 两后端 alerts.webhook.test.ts 各 3 例(本地 http 真实收 POST 验签名/重试/去重/生产拒绝);deadletter 测试追加告警断言;C30 绊网\n- docs/alerting.md、.env.example、CHANGELOG/COMPATIBILITY 0.14.0;地板 ownTests 37→40、ownTestCases 267→280\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:41:00-07:00"},"CompareURL":"luoanwu/tenant-scope/compare/0000000000000000000000000000000000000000...0579ade1ffe5f67e3d8de207291a173588b3f870","Len":0}...
|
1789198036
|
Edit
Delete
|