novolis-governance / extraction-briefs/pilot-channels.md
Pilot extraction brief: Channels → novolis-messaging
Policies that keep the org coherent
dotnetgovernancenovolis
Status: Ready for implementation after bootstrap gate opens.
Source
- Repo: frankhaugen/Frank.Channels.DependencyInjection
- Package:
Frank.Channels.DependencyInjection(net10.0)
Target
- Repo: Novolis-Platform/novolis-messaging
- Package:
Novolis.Messaging.Channels - Namespace:
Novolis.Messaging.Channels
In scope
AddChannel<T>()/AddChannel<T>(Action<ChannelOptions>)extensions- DI registration for
Channel<T>,ChannelReader<T>,ChannelWriter<T> - Tests (rewrite from Frank tests; drop
Frank.Testing.TestBasesor use minimal local test helpers until Wave 1)
Out of scope
- PulseFlow (wave 0b)
- Any transport or persistence
Steps
- Scaffold
novolis-messagingfromnovolis-template-dotnetif not already done. - Copy implementation; rename namespaces and package ID.
- Add
.novolis/packages.jsonentry. - CI green;
0.1.0-preview.1when gate open. - Update Frank repo README with migration pointer.
API breaking changes
| Frank | Novolis |
|---|---|
| `Frank.Channels.DependencyInjection` | `Novolis.Messaging.Channels` |
| `using Frank.Channels.DependencyInjection` | `using Novolis.Messaging.Channels` |
Success criteria
dotnet add package Novolis.Messaging.Channelsworks from GitHub Packages / configured feed- PulseFlow migration issue unblocked (depends on this package)
Effort
S (1–2 days after gate open)