* Regression tests for the alphabet a GSM message declares
* Declare the alphabet a GSM message is actually written in
* Reflow the composing-by-hand paragraph
* Drop the ASCII alias SMPP's flat table shares with the option's own
* Bound the receipt test's wait and tighten the notes around it
* Regression tests for the GSM 03.38 message class behind sms.flash
* Read the GSM 03.38 message class where the spec puts it, and refuse a flash message no alphabet can carry
* Keep the code span in the message-class decision on one line
* Stop offering the flash message class as an alphabet, and check the encoding option by name
* Settle every refusable send option in one check, and record what the review left open
* Say what the flash refusal and the encoding option actually do
* Keep the README off the alphabet whose long messages do not fit
* Fixtures for the receipt bodies operator documentation publishes
* Read the stat:FAILED several operators write as UNDELIVERABLE
* Cover the 16-bit UDH concatenation element with a fixture
* Record phase 9 of the interoperability plan
* Share the dummy SMSC and tighten the operator fixtures
* Correct what the test conventions claim about the doubles and the tree
* Read a receipt date that carries its century
* Read the stat spelling CM.com publishes
* Say what the receipt status table actually holds
* Regression tests for inbound sar_* concatenation
* Reassemble a concatenated message segmented with the sar_* TLVs
* Record the sar_* fix in the jasmin and Java-client findings
* Name the sar_* TLVs in the refusal, and separate group keys the addresses cannot forge
* Name the field a refused segment got wrong, and key groups on a separator no address holds
* Bound the new session tests, and derive Concat from the UDH fields
* Regression tests for a truncated TLV tail refused rather than accepted
* Refuse a PDU whose optional parameters do not end on command_length
* Assert the bare TLV header refusal against jsmpp instead of recording it as a defect
* Note the truncated TLV tail defect as fixed in the java-client findings
* Derive the padding position, share the bare TLV fixture and trim the decision record
* Regression tests for a PDU whose trailing C-Octet String a peer left out
* An absent trailing C-Octet String consumes no octet, so a bodyless PDU still parses
* Bound the TLV loop by the buffer it was given rather than a second spelling of its length
* Answer the stability review's questions in the record and pin the array contract
* Fail an interop run on an empty capture or a missing bind/bind_resp, and always tear down on analysis failure
* smppsim: wait for the capture sidecar to actually be capturing before node starts
* Clear the stale textdlr capture file too, and tidy the bind-check ordering
* Split the unlink comment so each line matches the unlink it explains
* 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
* Regression tests for answering every inbound segment as it arrives
* Answer every segment of an inbound concatenated message as it arrives
* Record the segment-by-segment answer in AGENTS.md and README
* Regression tests for an empty message_id on deliver_sm_resp
* Answer a deliver_sm with the empty message_id SMPP 3.4 makes it
* Record Jasmin's refusal of a deliver_sm_resp message_id
* Mark the Jasmin multipart deadlock fixed
* Regression tests for the architecture review's findings
* Give the segment id notation an owner, and every segment a status
* Correct what the ids reach and what a lost group tells the application
* Regression tests for a group lost to its own octet overrun
* Report a group lost to its own overrun, and refuse by the command it arrived on
* Keep the docs true about what a segment is answered with
* Count only the answered segments of a group lost to an overrun
* Report only what a lost group cost, and say which cap bit
* Regression tests for a receipt body read under a data_coding it is not written in
* Read a delivery receipt's body as the octets that arrived, not by its data_coding
* Assert SMPPSim's UCS2 receipt body parses like every other segment's
* Record the receipt-body defect as fixed
* Retain a multipart segment's octets once, not twice
* Sort the new type import into its file's order
* Regression tests: a PDU the codec cannot read costs that PDU, not the link
* Refuse a single unreadable PDU instead of the whole link
* smscsim interop asserts the first attempt gets every DLR
* Record the smscsim sequence number defect as fixed
* One framing rule and one response-command lookup, per the architecture review
* Apply the stability review's nits: honest sessionError docs and one link-survives assertion