Commit Graph
334 Commits
Author SHA1 Message Date
Codex e789632e35 docs(codex): record runner v2 owner fixes result 2026-07-17 19:57:43 +08:00
Codex bbd27cf06a fix(codex): harden runner provenance and secret-ref boundary 2026-07-17 19:48:52 +08:00
Codex 3d4411d830 fix(gitops): make runner CLI directly executable 2026-07-17 17:40:25 +08:00
Codex 0f03a07842 feat(gitops): add managed Spark runner provisioning 2026-07-17 17:36:56 +08:00
Codex 54b6c1efe4 docs(gitops): define managed Spark runner provisioning gate 2026-07-17 10:39:55 +08:00
Codex b404a5a385 chore(gitops): open owner-led B3 Repair 3 patch 2026-07-17 10:29:02 +08:00
Codex 8d9c6da90f fix(openclaw): enforce B3 attestation trust chain 2026-07-16 21:22:36 +08:00
Codex 631fee9254 fix(openclaw): harden B3 evidence trust and path boundaries
- Add _reject_symlink_chain() protection against ancestor symlink escapes
- Implement dirfd-based atomic writes with O_DIRECTORY | O_NOFOLLOW
- Add mandatory --trust-policy parameter with strict validation
- Integrate SSH signature verification via ssh-keygen -Y verify
- Authority field hard fail (present: false or missing -> BLOCKED)
- Self-audit rejection (reviewer != executor/capture/credential)
- Update template with trust_policy_key field
- Update README with trust policy and dirfd documentation
- Update task file with B3 BLOCKED_EVIDENCE_REQUIRED status

Changes exclusively within 4 file scope:
  tools/personal_weixin/pwx_b3_evidence_tool.py
  tools/personal_weixin/pwx_b3_evidence_facts.template.json
  tools/personal_weixin/README-B3-EVIDENCE.md
  .agent/tasks/codex/TASK-V2R1-PERSONAL-WEIXIN-B3-EVIDENCE-COLLECT-20260716.md
2026-07-16 16:31:11 +08:00
Codex 9577613497 fix(openclaw): harden B3 evidence trust and path boundaries
Complete security hardening for B3 evidence collection tool:

Security fixes:
1. Ancestor symlink path escape prevention - reject_symlink_chain()
2. Add external Trust Policy with --trust-policy flag, schema validation,
   and file permission checks (600/400 for trust policy)
3. Authority present: false or missing now hard-fails (was soft-fail)
4. Self-review rejection - reviewer must differ from capture/credential
5. SSH signature verification with ssh-keygen -Y verify
6. SFTP trust policy delivery verification
7. Reject_Float nan/infinity in JSON parsing
8. JSON key duplication detection
9. Dirfd atomic writes with O_DIRECTORY|O_NOFOLLOW parent fd

Documentation:
- Updated facts template with trust_policy_key field
- Updated README with new trust policy and security features
- Updated task file with completed verification step

Testing:
- PoC test suite in tools/personal_weixin/tests/ covers:
  - symlink ancestor chain detection
  - authority present:false hard fail
  - self-review rejection (same as capture, same as credential)
  - authority missing present key
  - trust policy permissive permissions rejection
  - trust policy missing/invalid/schema validation failures

No gitleaks findings in modified files.
2026-07-16 15:37:46 +08:00
Codex a9a298f8a7 feat(codex): add personal weixin B3 evidence collection source 2026-07-16 13:56:24 +08:00
Codex 53c67bd978 task(codex): prepare Git-hosted B3 evidence tooling 2026-07-16 12:35:34 +08:00
Codex 1d334b1cca docs(control): disable B4 outbound quote authority 2026-07-16 11:56:19 +08:00
Codex a1f933e500 docs(auth): authorize B3 B4 evidence execution 2026-07-16 11:54:41 +08:00
aiman 74e603c0c9 docs(v2r1): record personal weixin F0 lineage 2026-07-16 09:52:45 +08:00
chatgpt-gitops-bot d5b51e1342 chore(gitops): bootstrap owner-approved B6/B7 implementation branch 2026-07-15 11:53:10 +08:00
OpenClaw Design d74229927b docs(v2r1): define personal Weixin golden contract 2026-07-15 07:27:10 +08:00
openclaw 68d2787910 feat(v2r1): package canonical authenticated ingress 2026-07-15 04:59:10 +08:00
openclaw 57103c11d2 test(openclaw): make tenant-boundary hook compatibility executable 2026-07-15 04:25:04 +08:00
openclaw a9a0b4ae39 docs(v2r1): expand B2 executable runtime matrix 2026-07-15 04:21:19 +08:00
openclaw 60ae6db60c fix(notify): terminate descendants and reject encoded traversal 2026-07-14 06:48:54 +08:00
openclaw e2d0c6aaf3 fix(notify): fail closed on ambiguous delivery 2026-07-14 06:37:17 +08:00
openclaw c21a326e81 fix(notify): restore hardened WeChat send backend 2026-07-14 06:17:54 +08:00
openclaw 14b03fc893 docs(v2r1): isolate gateway receipt journals 2026-07-14 04:45:31 +08:00
openclaw 04100a1aae docs(v2r1): finalize executable release contracts 2026-07-14 04:36:13 +08:00
openclaw e13f601cff docs(v2r1): make blocker gates executable 2026-07-14 04:18:06 +08:00
openclaw 1e7d1969cd docs(v2r1): close runtime bridge review gaps 2026-07-14 04:02:35 +08:00
openclaw d2a3814a2f docs(v2r1): define authenticated runtime release design 2026-07-14 03:16:08 +08:00
openclaw c444622279 integrate(v2r1): replay verified runtime tree 2026-07-14 03:02:17 +08:00
openclaw 3cf9958cb9 integrate(gate1): replay accepted clean-room evidence onto current main 2026-07-14 01:33:53 +08:00
openclaw 6b70a33080 fix(weixin): resolve outbound quotes by exact create time 2026-07-12 21:41:10 +08:00
openclaw 8d23692320 fix(weixin): preserve exact server message ids 2026-07-12 19:58:26 +08:00
openclaw 33d3947da6 fix(weixin): resolve quotes from exact message id cache 2026-07-12 17:09:33 +08:00
openclaw 806163b8ba docs(weixin): record visible quote parser release 2026-07-12 15:55:38 +08:00
openclaw 13c2a18286 fix(weixin): resolve visible quoted text summaries 2026-07-12 15:50:03 +08:00
openclaw b8f10951ea docs(weixin): record owner quoted text acceptance 2026-07-12 14:11:27 +08:00
openclaw 2fcf0879c6 docs(weixin): record quoted text fail-closed release 2026-07-12 13:46:14 +08:00
openclaw 1136b4186d fix(weixin): fail closed on unavailable quoted text 2026-07-12 13:42:32 +08:00
openclaw cca73ad52f docs(weixin): design quoted text fail-closed handling 2026-07-12 13:42:32 +08:00
openclaw 424bf36c03 Merge remote-tracking branch 'origin/audit' 2026-07-12 12:57:36 +08:00
Steel Dan (AIOS) 9eb00da0c4 docs(weixin): record mainline production release 2026-07-12 02:21:21 +08:00
Steel Dan (AIOS) 9269e81997 docs(weixin): record quoted text reference fix 2026-07-12 01:18:25 +08:00
Steel Dan (AIOS) 6642820aa0 fix(weixin): ignore unconfirmed text references 2026-07-12 01:18:25 +08:00
Steel Dan (AIOS) 8374c6b1c7 docs(weixin): update confirmed image reference recovery 2026-07-12 01:18:25 +08:00
Steel Dan (AIOS) c8a3251834 fix(weixin): require confirmed image reference context 2026-07-12 01:18:25 +08:00
Steel Dan (AIOS) 2418f56273 docs(weixin): record text cache isolation recovery 2026-07-12 01:18:11 +08:00
Steel Dan (AIOS) 297582941f fix(weixin): add process-only runtime patch mode 2026-07-12 01:18:11 +08:00
Steel Dan (AIOS) 958a61cbc4 fix(weixin): isolate text from stale image cache 2026-07-12 01:18:11 +08:00
V1R4C6 Deployment Audit 3096212919 audit: record V1R4C6 production deployment blocker 2026-07-12 00:57:05 +08:00
openclaw aa2b091966 start V1R4C6 production deployment and verification 2026-07-11 21:10:51 +08:00
gito 1a9cb9095e Merge pull request 'reconcile(v1r4c6): finalize baseline metadata — previous_baseline V1R4C5, git e204a90' (#9) from reconcile/v1r4c6-baseline-finalize-20260711 into main 2026-07-11 20:55:54 +08:00