Drop the store operator from the README's personas until the store ships #47

Merged
lilleman merged 1 commits from readme-personas into main 2026-09-28 21:08:39 +02:00
2 changed files with 7 additions and 6 deletions
+4 -4
View File
@@ -743,8 +743,9 @@ Who depends on this library, and what they may rely on.
- **The developer building the SMPP edge of something else.** What binds to `server()` in practice is
an aggregator's customer-facing edge, a bridge putting SMPP in front of a modern transport, or a
test double standing in for an SMSC. This is not a store-and-forward SMSC and will not become one:
spooling, scheduling, retry policy and billing belong to whatever this is the edge of, and state
shared between instances goes through the store in goal 9.
spooling, scheduling, retry policy and billing belong to whatever this is the edge of. State shared
between instances is for goal 9's store, which has not shipped: today every session keeps its own,
in memory.
- **Pre-1.0, so the minor is the breaking unit** and a patch never breaks. What a 0.4.0 consumer has
to change is in [MIGRATION.md](https://gitea.larvit.se/larvit/smpp-js/src/branch/main/MIGRATION.md);
what each later minor changes is in
@@ -755,8 +756,7 @@ Personas this README serves, in order:
1. The application developer sending or receiving SMS on the defaults, who should need no options.
2. The application developer who needs one thing retuned — an alphabet, a rate limit, a receipt
format — through an option or a hook rather than a fork.
3. The operator coordinating sessions across processes through a store.
4. The developer migrating from `larvitsmpp` 0.4.0.
3. The developer migrating from `larvitsmpp` 0.4.0.
## Development
+3 -2
View File
@@ -367,8 +367,7 @@ and 5. Every seat ranked the session's lifecycle hardest and least wanted to mod
`error`-event reason (hard rule 3 owns it) and the Audience bullets restating goal 8 and
Install; the `'use strict'` clause in both MIGRATION.md and CHANGELOG.md; the node-smpp
cross-check in MIGRATION.md; the planned work in `interop-tests/AGENTS.md` (an expected
malformed count per peer) and `benchmarks/README.md`. README persona 3 names a store nothing
ships yet — the maintainer's call, since it is the audience.
malformed count per peer) and `benchmarks/README.md`.
- [ ] **Make `LinkGate.isUp()`'s doc true or its state match it.** It says a link attached but not
yet bound cannot carry a request, while `up` starts `true`, so the first link and a server
@@ -725,3 +724,5 @@ Each lands under goal 7: an option or a hook, with the call that passes none unc
memory. Either way, an application that supplied no store never waits on one.
- **One spelling.** A store-backed cap and the limiter hook both reach a limit shared between
processes; settle which owns that case before building the second.
- **Restore the store operator to README's personas, and drop "which has not shipped" from the
Audience bullet, when the store ships.** Removed 2026-09-28, maintainer's call.