Commit Graph

89 Commits

Author SHA1 Message Date
lilleman 5c797f5383 Forget the base closed longest ago rather than the one handed out again 2026-08-30 11:31:22 +02:00
lilleman aa3cf41c7f Merge a message id base once so a straggler cannot join a later report 2026-08-30 11:17:02 +02:00
lilleman 8a71dbbc87 Drop the arrangement comment and record the review's DlrMerger findings 2026-08-28 15:09:47 +02:00
lilleman f4e55909a1 Keep the delivery-receipt merges across a reconnect instead of dropping them 2026-08-28 14:44:32 +02:00
lilleman 30e0cfd38a Record what re-declaring the listener methods costs a subclass 2026-08-27 23:15:46 +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 0c55e5ee11 Cap the CI jobs at ten minutes so a hang fails fast 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 3c6195a938 Collapse the two id emptiness tests into one and pin the reassembler wording 2026-08-27 16:42:26 +02:00
lilleman cf315737b7 Keep the body scrape for reserved message types and an empty receipt id marker 2026-08-27 16:32:01 +02:00
lilleman c9c3121d40 Give the esm_class bits one owner beside the constants 2026-08-27 16:18:05 +02:00
lilleman b9f77ec969 Decode a receipt body before reading it and stop an unnameable state TLV overriding it 2026-08-27 16:08:54 +02:00
lilleman 4c08fe8fa3 Classify a deliver_sm by esm_class and document the messageDlr precondition 2026-08-27 15:52:33 +02:00
lilleman 9225f6ca23 Surface the session-layer features in a table at the top of the README 2026-08-27 15:35:49 +02:00
lilleman 3c06ba6e2f Record the teardown data loss and drain-on-shutdown follow-ups 2026-08-27 14:31:34 +02:00
lilleman f5fdbb3a53 Record the DLR correlation follow-ups and why throttling stays out 2026-08-27 14:18:26 +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 ff3667e120 Reject a renumbered multipart total and check abort before the send window 2026-08-27 12:43:17 +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 1e5807f647 Record the TLS certificate decision 2026-08-26 21:50:09 +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 694c3a506e Bind as SMPP 3.4 by default, with interfaceVersion to override it 2026-08-26 15:41:44 +02:00
lilleman 54b73205ac Document the finished API and make the test scripts portable across Node versions 2026-08-25 17:02:57 +02:00
lilleman b671ebafb2 Fix merged DLR counting and close event, cover reconnect and reassembly 2026-08-25 16:58:13 +02:00
lilleman 2e4699944b Validate the wire format against node-smpp and add CI 2026-08-25 16:52:33 +02:00
lilleman fd2f98464f Add session, client and server with the promise result API 2026-08-25 16:46:32 +02:00
lilleman 1827ab5964 Add PDU framing and delivery receipt parsing 2026-08-25 16:31:27 +02:00
lilleman 649e93cdde Add the PDU codec with bounds-checked parsing and typed encoding 2026-08-25 16:28:59 +02:00
lilleman db5dc8cd15 Add message helpers: segmentation, bit counting and SMPP time 2026-08-25 16:23:23 +02:00
lilleman 79c9df79c6 Record wire-format defects and drop the dormant filters layer 2026-08-25 16:20:25 +02:00
lilleman 4299a8cc35 Add TLV and command tables with per-command parameter types 2026-08-25 16:19:06 +02:00
lilleman 854c89f609 Port SMPP definitions: constants, errors, encodings and wire types 2026-08-25 16:07:34 +02:00
lilleman 16c935bb18 Scaffold ESM TypeScript rewrite as @larvit/smpp 2026-08-25 16:02:27 +02:00