Converts Curator HTTP routes to call client.curatorActor.getOrCreate(["user", userId]).
Keeps curatorService as the direct internal facade for analytics/nightly calls.
Adds lightweight per-user actor state for action timestamps, sprint reads, plan generations, completions, and last event id.
Verification
npm run typecheck
npm run build
Evidence
src/actors/registry.ts includes curatorActor in setup({ use }).
/v1/curator/* routes now resolve the registered actor handle before calling Curator actions.
Branch is rebased on latest origin/staging commit 750a6ab.
## Summary
- Registers `curatorActor` in the Rivet registry.
- Converts Curator HTTP routes to call `client.curatorActor.getOrCreate(["user", userId])`.
- Keeps `curatorService` as the direct internal facade for analytics/nightly calls.
- Adds lightweight per-user actor state for action timestamps, sprint reads, plan generations, completions, and last event id.
## Verification
- `npm run typecheck`
- `npm run build`
## Evidence
- `src/actors/registry.ts` includes `curatorActor` in `setup({ use })`.
- `/v1/curator/*` routes now resolve the registered actor handle before calling Curator actions.
- Branch is rebased on latest `origin/staging` commit `750a6ab`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
curatorActorin the Rivet registry.client.curatorActor.getOrCreate(["user", userId]).curatorServiceas the direct internal facade for analytics/nightly calls.Verification
npm run typechecknpm run buildEvidence
src/actors/registry.tsincludescuratorActorinsetup({ use })./v1/curator/*routes now resolve the registered actor handle before calling Curator actions.origin/stagingcommit750a6ab.