Commit Graph

5 Commits

Author SHA1 Message Date
小橘 🍊 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
小橘 🍊 701198cb2c feat: @uncaged/pulse-hermes — watcher + executor adapter (#37)
* feat: @uncaged/pulse-hermes — watcher + executor adapter (closes #35)

New package: @uncaged/pulse-hermes

Watcher (hermes-watcher.ts):
- Reads gateway_state.json for gateway health, active sessions, platform states
- Checks process liveness via PID + pgrep fallback
- Checks cron scheduler liveness
- shouldWake triggers on: gateway death, error state, agent idle transition

Executor (hermes-executor.ts):
- CLI mode: spawns `hermes run` with prompt file
- Supports model override, toolset selection, timeout
- API and Telegram modes stubbed for future implementation

22 tests, all passing.

* fix: biome lint — template literals, unused imports, import order

---------

Co-authored-by: 鹿鸣 <luming@shazhou.work>
2026-04-14 23:16:42 +08:00
xiaoju 5a8195eec8 chore: clean up pnpm remnants, restore bun as package manager
Made-with: Cursor
2026-04-14 14:58:39 +00:00
xiaomo 1fb6178efa chore: migrate package manager from bun to pnpm
- Add pnpm-workspace.yaml for monorepo workspace
- Add root package.json with packageManager field
- Add .npmrc with shamefully-hoist=true
- Replace bun.lock with pnpm-lock.yaml
- Use workspace:* protocol for @uncaged/pulse dependency
- Update init.ts scaffold to use pnpm install
- Update CLI commands (tick/dev/deploy) to use pnpm/npx
- Update E2E test comments to reference pnpm
- Keep bun as TS runtime (bun:sqlite, bun:test still needed)

closes #19
2026-04-14 14:31:45 +00:00
小橘 🍊 b7d7ae9774 chore: add Biome linter + format all code + CI lint step (#26)
- biome.json: 2-space indent, single quotes, recommended rules
- All 30 source files formatted (auto-fix, no logic changes)
- CI: Biome lint runs before type check and tests
- Root package.json with lint/lint:fix scripts

89 unit tests green (82 core + 7 watcher).

小橘 🍊(NEKO Team)

Co-authored-by: 小橘 <xiaoju@shazhou.work>
2026-04-14 19:22:54 +08:00