| event_payload |
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"eb7613dc5b7daff586c599829c91c8878e5bd914","after":"232ef934a21af0761d830c8f090baf69eed266f1","compare_url":"https://gitea.g-hi.com/luoanwu/juhai-thing-cloud/compare/eb7613dc5b7daff586c599829c91c8878e5bd914...232ef934a21af0761d830c8f090baf69eed266f1","commits":[{"id":"232ef934a21af0761d830c8f090baf69eed266f1","message":"chore(evidence): record C50/C51 runtime 150/0 and UI 2x9 on 17c13a8\n\nDeployment levels not run here: image build needs the user's registry\nread credential (DEPLOY_NPMRC), previously user-run.\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhai-thing-cloud/commit/232ef934a21af0761d830c8f090baf69eed266f1","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-27T17:54:07-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/evidence-current.latest.json","reports/runtime-acceptance.latest.json","reports/ui-acceptance.latest.json"]},{"id":"17c13a8132bf7e28dde1b54cb3c2922835c1b1fc","message":"fix(security): adopt framework C50/C51 loopback defaults for listen host and dev data stores\n\nFrom base-framework main 4a50469 (2026-10-27):\n- API defaults to 127.0.0.1 when HOST is unset or empty; the image sets\n ENV HOST=0.0.0.0 in the runtime target. Host-side publishing of the\n production API stays governed by PROD_BIND_HOST (compose-bind).\n- Dev base binds PostgreSQL/Redis to 127.0.0.1 (production compose\n already did).\n- F14 port parsing via scripts/lib/compose-ports.mjs (same bytes as the\n framework) with the data-store loopback assertion; check:dual-backend\n gains the C51 listen-default tripwire.\n\nNegative: main.ts back to 0.0.0.0, Dockerfile without ENV HOST, Redis\nwithout loopback each exit 1; green after restore. pnpm check passed on\nthe dirty worktree (scripts 113/113).\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhai-thing-cloud/commit/17c13a8132bf7e28dde1b54cb3c2922835c1b1fc","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-27T17:49:39-07:00","added":["scripts/lib/compose-ports.mjs","scripts/lib/compose-ports.test.mjs"],"removed":[],"modified":["CHANGELOG.md","apps/api-nestjs/Dockerfile","apps/api-nestjs/docker-compose.yml","apps/api-nestjs/src/main.ts","docs/nestjs-convergence.md","docs/standards/backend-standard.md","scripts/check-dual-backend-parity.mjs","scripts/check-fork-readiness.mjs"]}],"total_commits":0,"head_commit":{"id":"232ef934a21af0761d830c8f090baf69eed266f1","message":"chore(evidence): record C50/C51 runtime 150/0 and UI 2x9 on 17c13a8\n\nDeployment levels not run here: image build needs the user's registry\nread credential (DEPLOY_NPMRC), previously user-run.\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhai-thing-cloud/commit/232ef934a21af0761d830c8f090baf69eed266f1","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-27T17:54:07-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/evidence-current.latest.json","reports/runtime-acceptance.latest.json","reports/ui-acceptance.latest.json"]},"repository":{"id":135,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhai-thing-cloud","full_name":"luoanwu/juhai-thing-cloud","description":"物云:02「物」域应用,自设备云 juhai-device-cloud 4652ce0 分叉","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":4359,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-thing-cloud/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhai-thing-cloud","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-thing-cloud","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhai-thing-cloud.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhai-thing-cloud.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-10-12T21:14:44+08:00","updated_at":"2026-10-28T08:19:16+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":true,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}... |