Is your feature request related to a problem? Please describe.
@tsed/pulse should now be deprecated in favor of @tsed/agenda on top of Agenda v6.
Today the repository still presents @tsed/pulse as an actively documented integration:
- package README:
packages/third-parties/pulse/readme.md
- tutorial page:
docs/tutorials/pulse.md
This creates two issues:
- consumers can still start new integrations on top of
@tsed/pulse
- the docs do not guide existing users toward the new recommended scheduling stack based on Agenda v6
Given the Agenda v6 migration work on @tsed/agenda, we should make the deprecation path explicit and update all Pulse docs accordingly.
Describe the solution you'd like
Deprecate @tsed/pulse at the package/documentation level and update its docs so users are redirected toward @tsed/agenda + Agenda v6.
Proposed scope
-
Deprecate @tsed/pulse
- mark the package as deprecated in its README and public-facing docs
- make it clear that new projects should use
@tsed/agenda
-
Update Pulse documentation
- update
packages/third-parties/pulse/readme.md
- update
docs/tutorials/pulse.md
- add migration notes in both places
-
Point users to the replacement
- recommend
@tsed/agenda
- recommend Agenda v6
- link to the Agenda v6 migration guidance from Ts.ED docs
Documentation changes required
A. Add a deprecation banner
Both Pulse docs entry points should start with a clear notice, for example:
> [!WARNING]
> `@tsed/pulse` is deprecated.
> For new projects, use `@tsed/agenda` with Agenda v6.
> Existing `@tsed/pulse` users should plan a migration to `@tsed/agenda`.
B. Replace installation guidance
Current install guidance promotes Pulse directly:
-npm install --save @tsed/pulse @pulsecron/pulse
+npm install --save @tsed/agenda agenda @agendajs/mongo-backend
Equivalent updates are needed for yarn, pnpm, and bun.
C. Add migration notes
Both docs should include a migration section that explains the target stack:
- replace
@tsed/pulse with @tsed/agenda
- replace
@pulsecron/pulse with agenda
- adopt Agenda v6 backend configuration using
MongoBackend
Suggested config diff:
import {Configuration} from "@tsed/di";
-import "@tsed/pulse";
+import "@tsed/agenda";
+import {MongoBackend} from "@agendajs/mongo-backend";
@Configuration({
- pulse: {
+ agenda: {
enabled: true,
- db: {
- address: mongoConnectionString
- }
+ backend: new MongoBackend({
+ address: mongoConnectionString
+ })
}
})
export class Server {}
Suggested decorator/service diff:
-import {Pulse, Every, Define, PulseModule} from "@tsed/pulse";
+import {JobsController, Every, Define, AgendaModule} from "@tsed/agenda";
-@Pulse({namespace: "email"})
+@JobsController({namespace: "email"})
export class EmailJobService {
@Inject()
- pulse: PulseModule;
+ agenda: AgendaModule;
}
D. Add AI-oriented migration notes
Both docs should include a short structured section for AI-assisted migrations with explicit rewrites such as:
pulse config key → agenda
import "@tsed/pulse" → import "@tsed/agenda"
@Pulse(...) → @JobsController(...)
PulseModule → AgendaModule
@pulsecron/pulse dependency → agenda + @agendajs/mongo-backend
- legacy
db config → backend: new MongoBackend(...)
This should be written as concrete before/after examples so coding agents can apply the migration deterministically.
Describe alternatives you've considered
-
Leave Pulse docs as-is
- Pros: no doc churn
- Cons: keeps sending users toward a package we no longer want to promote
-
Remove Pulse docs entirely
- Pros: strongest signal
- Cons: removes migration help for existing users
Recommended path: keep the docs, but convert them into deprecation + migration guides.
Additional context
Affected files
packages/third-parties/pulse/readme.md
docs/tutorials/pulse.md
Relationship with Agenda v6 work
This issue depends on the new recommended scheduling path being @tsed/agenda + Agenda v6.
Related parent ticket:
feat(agenda): migrate @tsed/agenda to Agenda v6
Suggested implementation checklist
Acceptance criteria
@tsed/pulse docs clearly state the package is deprecated
- both Pulse docs entry points redirect new users toward
@tsed/agenda + Agenda v6
- both Pulse docs include concrete migration notes and before/after diffs
- both Pulse docs include AI-oriented migration notes for deterministic rewrites
Is your feature request related to a problem? Please describe.
@tsed/pulseshould now be deprecated in favor of@tsed/agendaon top of Agenda v6.Today the repository still presents
@tsed/pulseas an actively documented integration:packages/third-parties/pulse/readme.mddocs/tutorials/pulse.mdThis creates two issues:
@tsed/pulseGiven the Agenda v6 migration work on
@tsed/agenda, we should make the deprecation path explicit and update all Pulse docs accordingly.Describe the solution you'd like
Deprecate
@tsed/pulseat the package/documentation level and update its docs so users are redirected toward@tsed/agenda+ Agenda v6.Proposed scope
Deprecate
@tsed/pulse@tsed/agendaUpdate Pulse documentation
packages/third-parties/pulse/readme.mddocs/tutorials/pulse.mdPoint users to the replacement
@tsed/agendaDocumentation changes required
A. Add a deprecation banner
Both Pulse docs entry points should start with a clear notice, for example:
B. Replace installation guidance
Current install guidance promotes Pulse directly:
Equivalent updates are needed for
yarn,pnpm, andbun.C. Add migration notes
Both docs should include a migration section that explains the target stack:
@tsed/pulsewith@tsed/agenda@pulsecron/pulsewithagendaMongoBackendSuggested config diff:
import {Configuration} from "@tsed/di"; -import "@tsed/pulse"; +import "@tsed/agenda"; +import {MongoBackend} from "@agendajs/mongo-backend"; @Configuration({ - pulse: { + agenda: { enabled: true, - db: { - address: mongoConnectionString - } + backend: new MongoBackend({ + address: mongoConnectionString + }) } }) export class Server {}Suggested decorator/service diff:
D. Add AI-oriented migration notes
Both docs should include a short structured section for AI-assisted migrations with explicit rewrites such as:
pulseconfig key →agendaimport "@tsed/pulse"→import "@tsed/agenda"@Pulse(...)→@JobsController(...)PulseModule→AgendaModule@pulsecron/pulsedependency →agenda+@agendajs/mongo-backenddbconfig →backend: new MongoBackend(...)This should be written as concrete before/after examples so coding agents can apply the migration deterministically.
Describe alternatives you've considered
Leave Pulse docs as-is
Remove Pulse docs entirely
Recommended path: keep the docs, but convert them into deprecation + migration guides.
Additional context
Affected files
packages/third-parties/pulse/readme.mddocs/tutorials/pulse.mdRelationship with Agenda v6 work
This issue depends on the new recommended scheduling path being
@tsed/agenda+ Agenda v6.Related parent ticket:
feat(agenda): migrate @tsed/agenda to Agenda v6Suggested implementation checklist
packages/third-parties/pulse/readme.mddocs/tutorials/pulse.md@tsed/agenda+ Agenda v6 dependenciespackages/third-parties/pulse/readme.mddocs/tutorials/pulse.md@tsed/pulseAcceptance criteria
@tsed/pulsedocs clearly state the package is deprecated@tsed/agenda+ Agenda v6