7 Commits

Author SHA1 Message Date
xingyue 10a601c28b docs: update for executor loop, task events, pending-tasks projection
Reflect recent changes across all docs:
- README: add executor loop (fire-and-forget), task events lifecycle,
  pending-tasks projection, update architecture diagram, add pulse-hermes
  package, add RFC #58 reference
- CONTRIBUTING: add task-events.ts, defs.ts, projection-engine.ts,
  pending-tasks-projection.ts to code structure, update architecture
  diagram to three-layer decoupled model, add design principles 6-7,
  add ui/ directory, add migrate.ts, add RFC #58 reference
- DESIGN: update packages table with all current packages
2026-04-15 19:44:11 +08:00
小橘 🍊 a9be34f563 feat: @uncaged/pulse-openclaw — OpenClaw adapter package (closes #40)
* feat: @uncaged/pulse-oc — OpenClaw adapter package (closes #40)

- Extract gateway-health & llm-health watchers from core to pulse-oc
- Add gateway-health-guard rule and archive-sessions executor
- Update CI, README, CONTRIBUTING for the new package
- Fix E2E tests to use core ESSENTIAL_PROCESSES after openclaw removal

Made-with: Cursor

* feat: @uncaged/pulse-openclaw — OpenClaw adapter package (closes #40)

* chore: rename pulse-oc → pulse-openclaw

Made-with: Cursor

---------

Co-authored-by: 小橘 <xiaoju@shazhou.work>
2026-04-15 00:15:09 +08:00
小橘 🍊 e457f631c7 refactor: extract cursor-agent executor to @uncaged/pulse-cursor package
Made-with: Cursor

Co-authored-by: 小橘 <xiaoju@shazhou.work>
2026-04-14 23:52:24 +08:00
小橘 🍊 21a8c38040 chore: add pre-push hook for lint + tests (closes #29) (#38)
* chore: add pre-push hook for lint + tests (closes #29)

- scripts/install-hooks.mjs: zero-dep hook installer, runs on postinstall
- Pre-push runs: biome lint + pulse tests + pulse-hermes tests
- CI: add pulse-hermes type check + tests, use bun run lint
- CONTRIBUTING.md: document hook setup

Uses pure Node.js APIs (no Bun dependency) so postinstall works with any runtime.
Users can delete .git/hooks/pre-push to opt out.

* fix: TS2322 in findEffectiveEpoch — cast meta.to to string

meta is Record<string, unknown>, so meta.to is unknown.
Explicit cast to (string | undefined) satisfies codeRev: string param.

---------

Co-authored-by: 鹿鸣 <luming@shazhou.work>
2026-04-14 23:38:34 +08:00
xiaomo 84a5e58c52 docs: unify terminology — Percept/Understand/Execute + 一切皆业 2026-04-14 15:33:46 +00:00
小橘 🍊 d3bdf09a7e refactor: rename coding-agent executor to cursor-agent (closes #33)
- Rename coding-agent.ts → cursor-agent.ts
- Rename coding-agent.test.ts → cursor-agent.test.ts
- Rename CodingEffect → CursorEffect
- Rename createCodingExecutor → createCursorExecutor
- Update all imports, re-exports, and CONTRIBUTING.md references

Made-with: Cursor

Co-authored-by: 小橘 <xiaoju@shazhou.work>
2026-04-14 22:42:15 +08:00
xiaomo 0b32eef3c7 docs: rewrite README + add CONTRIBUTING guide
- README: update Rule signature to onion middleware, add architecture diagram,
  document watchers/survival/storage, link all RFCs
- CONTRIBUTING: code structure, architecture, dev workflow, testing conventions,
  Cursor Agent usage guide, design principles
2026-04-14 13:52:20 +00:00