lilleman
2ac72fb3f4
Refuse a bind bound() cannot record, and document it for a 0.4.0 consumer
Mirror / push (push) Successful in 6s
Test / lint (pull_request) Successful in 23s
Test / test (18) (pull_request) Successful in 31s
Test / test (20) (pull_request) Successful in 45s
Test / test (22) (pull_request) Successful in 32s
Test / test (24) (pull_request) Successful in 31s
Test / test (26) (pull_request) Successful in 32s
2026-09-28 04:01:51 +02:00
lilleman
b70f0d6ade
Let the session own its bind state, written by bound() alone
Mirror / push (push) Successful in 7s
Test / lint (pull_request) Successful in 26s
Test / test (18) (pull_request) Successful in 32s
Test / test (20) (pull_request) Successful in 40s
Test / test (22) (pull_request) Successful in 31s
Test / test (24) (pull_request) Successful in 37s
Test / test (26) (pull_request) Successful in 38s
2026-09-28 03:55:40 +02:00
lilleman
75d4794522
Type each known TLV's value by its tag, on read and on write
Test / lint (pull_request) Successful in 32s
Test / test (18) (pull_request) Successful in 31s
Test / test (20) (pull_request) Successful in 30s
Test / test (22) (pull_request) Successful in 31s
Test / test (24) (pull_request) Successful in 38s
Test / test (26) (pull_request) Successful in 30s
Mirror / push (push) Successful in 4s
2026-09-27 15:12:09 +02:00
lilleman
b54f5b02f3
Leave alert_notification and outbind unanswered
Mirror / push (push) Has been cancelled
Test / test (18) (pull_request) Successful in 30s
Test / test (20) (pull_request) Successful in 29s
Test / test (22) (pull_request) Successful in 30s
Test / test (24) (pull_request) Successful in 30s
Test / test (26) (pull_request) Successful in 30s
Test / lint (pull_request) Successful in 21s
2026-09-22 21:43:57 +02:00
lilleman
bcbb042c1b
Give server() consumers the onRequest hook the docs promise ( #86 )
...
* Regression tests for an onRequest hook on server()
* Compose the application's onRequest hook into server() past bind
* Document the server's onRequest hook and record the composition decision
* Pin that a re-bind and a pre-bind unbind never reach the hook, and that a non-function hook is refused at startup
* Keep every bind and all pre-bind traffic out of the application's hook
* Make the hook's published promises exact, and record the src layout deferral
* Trim the record to what the tests do not already forbid
* Pin that nothing answers a request whose hook failed
* Answer nothing for a request whose hook failed, on both surfaces alike
* State the hook's failure policy as it now behaves
* Name the request a failed handler left unanswered, and say what a wedged hook reports
2026-09-06 17:20:45 +02:00
lilleman
184d1dc7af
Read a body from message_payload and accept data_sm ( #84 )
...
* Regression tests for a body in message_payload and for data_sm
* Read a body from message_payload and accept data_sm
* Assert the fixed message_payload and data_sm behaviour against Jasmin
* Record the message_payload and data_sm fixes in the Jasmin findings
* Read an inbound data_sm as the direction it travelled, and export messageOctets
* Refuse a segment with the code its stand-in command defines
* Name the stand-in the refusal status is read from
2026-09-06 05:59:27 +02:00
lilleman
2e422c7584
Contain a throw from the application's logger instead of letting it escape
2026-09-04 11:33:20 +02:00
lilleman
7e8af3c308
Tear down at once on a peer unbind and stop reporting a reconnect after close
2026-08-30 21:01:46 +02:00
lilleman
5c618e0061
Stop accepting before the drain and report the link that dropped during it
2026-08-30 20:27:38 +02:00
lilleman
bebd74b42b
Drain the requests already on the wire before close() and unbind() tear down
2026-08-30 20:08:36 +02:00
lilleman
344249b080
Accept an async listener in the types and normalise any rejection reason
2026-08-27 23:07:48 +02:00
lilleman
a5fe43d7a9
Normalise a listener's rejection reason before routing it to sessionError
2026-08-27 22:41:26 +02:00
lilleman
0e8f298957
Route a rejecting async listener to sessionError instead of the process
2026-08-27 22:22:51 +02:00
lilleman
366fa26b1c
Enforce bind direction, cap segments per message and pin the README examples
2026-08-27 14:07:42 +02:00
lilleman
8d245c82c4
Declare the logger contract in the library instead of depending on @larvit/log
2026-08-27 13:42:58 +02:00
lilleman
8a182604b7
Address the CodeRabbit review: inbound SMS, binary payloads and untrusted input
2026-08-27 11:52:43 +02:00
lilleman
884afdb87b
Stop a thrown listener escaping, bound what a peer can pin, and drop the body from failure responses
2026-08-27 10:55:34 +02:00
lilleman
5af75a3c57
Close the stability findings and settle the sendResp, sendSms and unbind contracts
2026-08-27 00:17:48 +02:00
lilleman
435fa42708
Decompose the codec, document the session surface and record the review decisions
2026-08-26 22:59:39 +02:00
lilleman
6d842a8539
Split the session, gate optional parameters on the peer version, own the SMPP version in defs
2026-08-26 22:41:28 +02:00
lilleman
f0858aacf8
Answer 3.4 binds with sc_interface_version and cover TLS with tests
2026-08-26 17:16:54 +02:00
lilleman
fd2f98464f
Add session, client and server with the promise result API
2026-08-25 16:46:32 +02:00