@cosyte/x12 0.0.11 → 0.0.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -0
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1166,6 +1166,29 @@ string, …` - which `esc` cannot, being unary.
|
|
|
1166
1166
|
slot for a silent normalization; the tiers now name it, and note that a Tier-2 unexpected segment is
|
|
1167
1167
|
warned about but not kept.
|
|
1168
1168
|
|
|
1169
|
+
- **The universal about a stray 837 `LX` is cut back in the `src/` comments and 837 test-file headers
|
|
1170
|
+
the release before this one disclosed it in** (`X12-837-LOOP-RESIDUALS`). That release deleted it
|
|
1171
|
+
from the documents this package publishes and disclosed, rather than claimed closed, that it still
|
|
1172
|
+
stood in those two places; this is the rest of that sweep. **No count and no completeness claim is
|
|
1173
|
+
published**, because both are what went stale twice here: the sites swept are the `NM1` and `LX`
|
|
1174
|
+
case comments in `src/transactions/claim/get-837.ts`, and the headers, section comments and case
|
|
1175
|
+
titles of `test/transactions-claim-837-loop-residuals.test.ts`,
|
|
1176
|
+
`test/transactions-claim-837-discard-after-stray-lx.test.ts` and
|
|
1177
|
+
`test/transactions-claim-837-variant-lookup.test.ts`. Each said a trailing `N3` / `N4` / `PER` /
|
|
1178
|
+
`REF` "attached to" or "landed on" whichever party the last `NM1` left active, or that a party
|
|
1179
|
+
named after the `LX` "is addressable again", all of which read as all four kinds reaching every
|
|
1180
|
+
party. They do not: this reader does not surface every one of those kinds on every party. Each copy
|
|
1181
|
+
takes the qualifier already graded on the shipped surfaces, "wherever this reader surfaces that
|
|
1182
|
+
segment kind on that party at all", or is cut back to the measured instance beside it and that
|
|
1183
|
+
instance is named - a payer in every case but one, where it is a Loop 2320 other subscriber; no
|
|
1184
|
+
copy is given a new wording and **no per-kind, per-party map is published.** Counterfactual headings ("no longer attaches", "no longer leaves the last `NM1`
|
|
1185
|
+
addressable") lose the counterfactual only. The bullet in `documentation/agent-notes.md` beginning
|
|
1186
|
+
"RESIDUAL 1, MEASURED AT `93b2428`", and the identically-scoped paragraph in the test header it was
|
|
1187
|
+
written from, are **not** copies - both are scoped by "every trailing segment that attaches to a
|
|
1188
|
+
named party" - and are deliberately left alone. Nothing a consumer reads at runtime changed:
|
|
1189
|
+
neither the warning registry nor any `docs-content/` page nor the README carried the wording, and
|
|
1190
|
+
the executable behaviour of the swept comments is nil.
|
|
1191
|
+
|
|
1169
1192
|
### Documented, not fixed
|
|
1170
1193
|
|
|
1171
1194
|
> **Superseded in part by the "Fixed" entry above, which ships in the same release.** The model half
|
|
@@ -1174,6 +1197,20 @@ string, …` - which `esc` cannot, being unary.
|
|
|
1174
1197
|
> not re-emit an orphan, so the warning still does not survive. The two entries are kept separate
|
|
1175
1198
|
> because they were separate changes, and the sentences below describe the release before this one.
|
|
1176
1199
|
|
|
1200
|
+
- **🩺 A repeated `NM1*87` inside one 837 Loop 2000A fuses two pay-to addresses into one**
|
|
1201
|
+
(`X12-837-LOOP-RESIDUALS`). The `N3` line collector appends and the `N4` merge falls back, so
|
|
1202
|
+
`X12Claim.payToAddress` carries a street from each of two addresses and an `N4` field the second
|
|
1203
|
+
address omitted. Reproduces unchanged at `0.0.11` and is **not** fixed here: two remedies were
|
|
1204
|
+
built and both were refuted for moving the loss rather than removing it, so per ADR 0016 the unit
|
|
1205
|
+
was cut back rather than given a third. Clearing the accumulator at the `NM1*87` erases the
|
|
1206
|
+
address a repeat with no `N3` / `N4` of its own did state; replacing at the first following write
|
|
1207
|
+
erases it on a VALUELESS `N3~` / `N4~`. **Neither erasure is a neutral absence, and that is the
|
|
1208
|
+
constraint the next attempt starts from:** `build837P/I/D` emits Loop 2010AB only where the slot
|
|
1209
|
+
is defined, and `emitAddress` emits `N3` only for a non-empty `lines` and `N4` only for a defined
|
|
1210
|
+
field, so an emptied slot re-emits as **no pay-to loop at all** and a half-emptied one re-emits a
|
|
1211
|
+
bare `NM1*87` with neither. **The emit side is therefore in scope for that fix from the start**,
|
|
1212
|
+
which is what makes it its own unit. `documentation/agent-notes.md` carries the measurements.
|
|
1213
|
+
|
|
1177
1214
|
- **A segment that falls outside a transaction is dropped from the model, and its warning does not
|
|
1178
1215
|
survive a round trip.** The envelope walker keeps body segments only while an ST..SE transaction is
|
|
1179
1216
|
open; anything else raises `X12_UNEXPECTED_SEGMENT` and is then discarded. A **blank** line between
|
package/dist/index.cjs
CHANGED
|
@@ -10192,7 +10192,7 @@ var profiles = Object.freeze({
|
|
|
10192
10192
|
});
|
|
10193
10193
|
|
|
10194
10194
|
// src/index.ts
|
|
10195
|
-
var VERSION = "0.0.
|
|
10195
|
+
var VERSION = "0.0.12";
|
|
10196
10196
|
|
|
10197
10197
|
exports.ACK_BUILD_ERROR_CODES = ACK_BUILD_ERROR_CODES;
|
|
10198
10198
|
exports.ALL_WARNING_MESSAGES = ALL_WARNING_MESSAGES;
|