Skip to content

feat(7.1): BSP HOT multi-currency + exchange/conjunction cross-refs (#143) - #163

Merged
telivity-otaip merged 3 commits into
mainfrom
cursor/bsp-hot-multi-currency-crossrefs-0561
Aug 24, 2026
Merged

feat(7.1): BSP HOT multi-currency + exchange/conjunction cross-refs (#143)#163
telivity-otaip merged 3 commits into
mainfrom
cursor/bsp-hot-multi-currency-crossrefs-0561

Conversation

@telivity-otaip

@telivity-otaip telivity-otaip commented Aug 24, 2026

Copy link
Copy Markdown
Collaborator

What does this PR do?

Implements GitHub issue #143 for Agent 7.1 BSP Reconciliation: DISH Rev 23 knowledge base, multi-currency HOT matching (transaction CUTP vs reporting currency), and exchange / conjunction / ADM–ACM cross-refs. Synthetic fixtures only — no live HOT dumps.

Closes #143

Type of change

  • Bug fix
  • New agent or adapter
  • Enhancement to existing agent
  • Domain logic correction
  • Documentation
  • Infrastructure / CI
  • Refactor (no behavior change)

Checklist

  • pnpm test passes for reconciliation package (152 tests)
  • pnpm typecheck passes for @otaip/agents-reconciliation
  • pnpm lint passes with zero errors
  • No any types without a justification comment
  • No floating point for currency — use string-based decimal or decimal.js
  • Agent spec in agents/specs/ updated if behavior changed
  • New domain logic has a source (IATA DISH Rev 23 / public bspdish + IROE/ICER product pages)
  • Tests encode domain knowledge, not just expect(result).toBeDefined()

Domain impact

  • Authoritative KB: docs/knowledge-base/bsp-hot-reconciliation.md from DISH Revision 23 (https://www.iata.org/en/publications/bspdish/)
  • Explicit: do not assume single-currency HOT; per-txn CUTP vs BOH03 reporting currency
  • IROE ≠ ICER — never auto-convert amounts for matching
  • Conjunction / exchange / EMD / ADM are separate patterns (not ticket-number equality alone)
  • Generic X12 parsers miss DISH fixed-width sections
  • Remittance market calendars left as DQ-HOT-1 (no invented grace tables)

Test plan

  • New synthetic fixture hot-dish-rev23-synthetic.txt (multi-currency GBP/EUR/USD/HKD, EX+ORIT, CNJ set, ADMA+RTDN, EMDS)
  • Parser tests: DISH detect, CUTP currencies, exchange ORIT, conjunction TRNN, ADM RTDN, EMD separate
  • Matcher tests: multi-currency warning, currency mismatch without FX, exchange match/unmatched, conjunction set mismatch, ADM via RTDN, end-to-end fixture reconcile
  • Full @otaip/agents-reconciliation suite: 152 passed; package typecheck clean
  • Regenerated agents.manifest.json / graph / agent-map after 7.1 0.2.0 bump
Open in Web Open in Cursor 

cursoragent and others added 2 commits August 24, 2026 08:02
…143)

Add DISH Rev 23 KB (transaction vs reporting CUTP; IROE≠ICER; conjunction/
exchange/EMD/ADM separate; generic X12 misses fixed-width). Extend HOT types,
synthetic DISH fixtures, parser, and matcher for cross-ref reconciliation.
No live HOT dumps.

Co-authored-by: telivity-otaip <telivity-otaip@users.noreply.github.com>
Co-authored-by: telivity-otaip <telivity-otaip@users.noreply.github.com>
@telivity-otaip
telivity-otaip marked this pull request as ready for review August 24, 2026 09:07
Resolve docs/agent-map.html conflict by regenerating manifest (both
branches touched generated graph HTML after independent agent updates).

Co-authored-by: telivity-otaip <telivity-otaip@users.noreply.github.com>
@telivity-otaip telivity-otaip self-assigned this Aug 24, 2026
@telivity-otaip
telivity-otaip merged commit 90187c3 into main Aug 24, 2026
1 check passed
@telivity-otaip
telivity-otaip deleted the cursor/bsp-hot-multi-currency-crossrefs-0561 branch August 24, 2026 09:26
cursor Bot pushed a commit that referenced this pull request Aug 24, 2026
Main advanced with #163 (BSP HOT multi-currency). Only conflict was
generated docs/agent-map.html; regenerated manifest to combine both sides.

Co-authored-by: telivity-otaip <telivity-otaip@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Help wanted] BSP HOT reconciliation: multi-currency + exchange/conjunction cross-refs

2 participants