@uwmd/core 1.3.0 → 1.6.0

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.
Files changed (63) hide show
  1. package/dist/browser.d.ts +14 -6
  2. package/dist/browser.d.ts.map +1 -1
  3. package/dist/browser.js +8 -4
  4. package/dist/browser.js.map +1 -1
  5. package/dist/capital-stack.d.ts +116 -0
  6. package/dist/capital-stack.d.ts.map +1 -0
  7. package/dist/capital-stack.js +227 -0
  8. package/dist/capital-stack.js.map +1 -0
  9. package/dist/cascade.d.ts +60 -6
  10. package/dist/cascade.d.ts.map +1 -1
  11. package/dist/cascade.js +93 -14
  12. package/dist/cascade.js.map +1 -1
  13. package/dist/cli.js +269 -11
  14. package/dist/cli.js.map +1 -1
  15. package/dist/composition.d.ts +182 -0
  16. package/dist/composition.d.ts.map +1 -0
  17. package/dist/composition.js +536 -0
  18. package/dist/composition.js.map +1 -0
  19. package/dist/context.js +23 -23
  20. package/dist/defaults.d.ts +18 -0
  21. package/dist/defaults.d.ts.map +1 -1
  22. package/dist/defaults.js +64 -0
  23. package/dist/defaults.js.map +1 -1
  24. package/dist/index.d.ts +14 -6
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +8 -4
  27. package/dist/index.js.map +1 -1
  28. package/dist/lite-bridge.d.ts +9 -0
  29. package/dist/lite-bridge.d.ts.map +1 -1
  30. package/dist/lite-bridge.js +44 -5
  31. package/dist/lite-bridge.js.map +1 -1
  32. package/dist/lite.js +37 -1
  33. package/dist/lite.js.map +1 -1
  34. package/dist/market-data.d.ts +134 -0
  35. package/dist/market-data.d.ts.map +1 -0
  36. package/dist/market-data.js +292 -0
  37. package/dist/market-data.js.map +1 -0
  38. package/dist/packs/index.d.ts +1 -0
  39. package/dist/packs/index.d.ts.map +1 -1
  40. package/dist/packs/index.js +3 -0
  41. package/dist/packs/index.js.map +1 -1
  42. package/dist/packs/mixed-use.d.ts +3 -0
  43. package/dist/packs/mixed-use.d.ts.map +1 -0
  44. package/dist/packs/mixed-use.js +204 -0
  45. package/dist/packs/mixed-use.js.map +1 -0
  46. package/dist/protocol.d.ts +57 -8
  47. package/dist/protocol.d.ts.map +1 -1
  48. package/dist/protocol.js +153 -4
  49. package/dist/protocol.js.map +1 -1
  50. package/dist/receipts.d.ts +189 -9
  51. package/dist/receipts.d.ts.map +1 -1
  52. package/dist/receipts.js +373 -14
  53. package/dist/receipts.js.map +1 -1
  54. package/dist/report.js +165 -165
  55. package/dist/types.d.ts +54 -1
  56. package/dist/types.d.ts.map +1 -1
  57. package/dist/types.js.map +1 -1
  58. package/dist/validator.d.ts.map +1 -1
  59. package/dist/validator.js +263 -6
  60. package/dist/validator.js.map +1 -1
  61. package/dist/version.d.ts +1 -1
  62. package/dist/version.js +1 -1
  63. package/package.json +1 -1
package/dist/validator.js CHANGED
@@ -102,6 +102,8 @@ export function validateUWFile(parsed, thresholdOverrides) {
102
102
  const issues = [];
103
103
  checkFinancialValidity(parsed, thresholds, issues);
104
104
  checkCrossSectionConsistency(parsed, issues);
105
+ checkComponents(parsed, issues);
106
+ checkCapitalStack(parsed, issues);
105
107
  checkMetaIntegrity(parsed, issues);
106
108
  checkScopeReadiness(parsed, issues);
107
109
  checkDataQuality(parsed, issues);
@@ -284,14 +286,24 @@ function checkCrossSectionConsistency(parsed, issues) {
284
286
  }
285
287
  }
286
288
  }
287
- // CC-03: Loan amount in sources_uses must match debt_structure.loan_amount
288
- if (sourcesUses && debtStructure) {
289
- const suLoan = deepGet(sourcesUses.content, 'sources.loan_amount')
290
- ?? deepGet(sourcesUses.content, 'sources.debt_proceeds');
291
- const dsLoan = deepGet(debtStructure.content, 'loan_amount');
292
- if (suLoan != null && dsLoan != null && Math.abs(suLoan - dsLoan) > 100) {
289
+ // CC-03: the senior loan reconciles across sources_uses, debt_structure, and
290
+ // (when present) the capital_stack senior_debt tranche — one senior view stated
291
+ // once and agreeing everywhere (RFC 0026 §4.24).
292
+ {
293
+ const suLoan = deepGet(sourcesUses?.content ?? {}, 'sources.loan_amount')
294
+ ?? deepGet(sourcesUses?.content ?? {}, 'sources.debt_proceeds');
295
+ const dsLoan = deepGet(debtStructure?.content ?? {}, 'loan_amount');
296
+ if (sourcesUses && debtStructure && suLoan != null && dsLoan != null && Math.abs(suLoan - dsLoan) > 100) {
293
297
  issues.push({ code: 'CC-03', severity: 'error', section: 'sources_uses', field: 'sources.loan_amount', message: `CC-03: Loan amount in Sources & Uses ($${suLoan.toLocaleString()}) does not match Debt Structure loan amount ($${dsLoan.toLocaleString()})`, value: Math.abs(suLoan - dsLoan) });
294
298
  }
299
+ const senior = seniorDebtTranche(parsed);
300
+ if (senior) {
301
+ const seniorAmount = typeof senior['amount'] === 'number' ? senior['amount'] : undefined;
302
+ const reference = dsLoan ?? suLoan;
303
+ if (seniorAmount != null && reference != null && Math.abs(seniorAmount - reference) > 100) {
304
+ issues.push({ code: 'CC-03', severity: 'error', section: 'capital_stack', field: 'tranches.senior_debt.amount', message: `CC-03: the capital_stack senior_debt tranche ($${seniorAmount.toLocaleString()}) does not match the senior loan amount ($${reference.toLocaleString()})`, value: Math.abs(seniorAmount - reference) });
305
+ }
306
+ }
295
307
  }
296
308
  // CC-04: Sources must equal uses in sources_uses (within $1)
297
309
  if (sourcesUses) {
@@ -359,6 +371,234 @@ function checkCrossSectionConsistency(parsed, issues) {
359
371
  }
360
372
  }
361
373
  }
374
+ // ─── §4.23 Mixed-use components (RFC 0019) ───────────────────────────────────
375
+ // The eight income classes admissible as a mixed-use component. `land` is
376
+ // excluded (its NOI model nets negative) and `mixed_use` cannot nest in itself.
377
+ const ADMISSIBLE_COMPONENT_CLASSES = new Set([
378
+ 'multifamily', 'retail', 'office', 'industrial', 'self_storage',
379
+ 'hospitality', 'senior_housing', 'student_housing',
380
+ ]);
381
+ // Validates the `components` section: the CC-11 asset-class gate, the CC-12
382
+ // footing check (property NOI == Σ component NOI), and the section-internal
383
+ // MU-* rules. A no-op for any document without a components section.
384
+ function checkComponents(parsed, issues) {
385
+ const components = getSection(parsed, 'components');
386
+ if (!components)
387
+ return;
388
+ const assetClass = parsed.frontmatter.asset_class;
389
+ // CC-11: a components section is only valid under asset_class mixed_use.
390
+ if (assetClass !== 'mixed_use') {
391
+ issues.push({
392
+ code: 'CC-11', severity: 'error', section: 'components', field: 'asset_class',
393
+ message: `CC-11: a components section is only valid when asset_class is mixed_use (found "${String(assetClass)}")`,
394
+ value: assetClass,
395
+ });
396
+ return; // the mixed-use-specific rules below do not apply to a mis-typed doc
397
+ }
398
+ // Present components are every key that is not the _meta / _notes envelope.
399
+ const entries = Object.entries(components.content).filter(([k]) => !k.startsWith('_'));
400
+ const admissible = entries.filter(([k]) => ADMISSIBLE_COMPONENT_CLASSES.has(k));
401
+ // MU-01: at least two admissible components.
402
+ if (admissible.length < 2) {
403
+ issues.push({
404
+ code: 'MU-01', severity: 'error', section: 'components', field: 'components',
405
+ message: `MU-01: a mixed-use property must declare at least two components (found ${admissible.length})`,
406
+ value: admissible.length,
407
+ });
408
+ }
409
+ const allocations = [];
410
+ for (const [key, raw] of entries) {
411
+ // MU-02: only the eight income classes are admissible; land and unknowns are not.
412
+ if (!ADMISSIBLE_COMPONENT_CLASSES.has(key)) {
413
+ issues.push({
414
+ code: 'MU-02', severity: 'error', section: 'components', field: key,
415
+ message: `MU-02: "${key}" is not an admissible component class (land and unknown classes are excluded)`,
416
+ value: key,
417
+ });
418
+ continue;
419
+ }
420
+ const comp = raw && typeof raw === 'object' ? raw : {};
421
+ // MU-03: the key must equal the entry's component_class.
422
+ if (comp['component_class'] !== key) {
423
+ issues.push({
424
+ code: 'MU-03', severity: 'error', section: 'components', field: `${key}.component_class`,
425
+ message: `MU-03: component "${key}" must declare component_class "${key}" (found "${String(comp['component_class'])}")`,
426
+ value: comp['component_class'],
427
+ });
428
+ }
429
+ // MU-04: a present component must state net_operating_income, never zero-by-omission.
430
+ const noi = comp['net_operating_income'];
431
+ if (noi === undefined || noi === null) {
432
+ issues.push({
433
+ code: 'MU-04', severity: 'error', section: 'components', field: `${key}.net_operating_income`,
434
+ message: `MU-04: present component "${key}" omits net_operating_income; a present use with no NOI is an incomplete document, not zero income`,
435
+ });
436
+ }
437
+ // MU-06: a component must not carry its own debt_structure. Component
438
+ // financing is a component-level capital_stack (§4.24, RFC 0026), which
439
+ // checkCapitalStack accepts and validates with the CS-* rules.
440
+ if (comp['debt_structure'] !== undefined) {
441
+ issues.push({
442
+ code: 'MU-06', severity: 'error', section: 'components', field: `${key}.debt_structure`,
443
+ message: `MU-06: component "${key}" carries its own debt_structure; express component-level financing as a component capital_stack (§4.24, RFC 0026) instead`,
444
+ });
445
+ }
446
+ const alloc = comp['allocation_pct'];
447
+ if (typeof alloc === 'number')
448
+ allocations.push(alloc);
449
+ }
450
+ // MU-05: when allocation is used at all, it must sum to 1.0 across present components.
451
+ if (allocations.length > 0) {
452
+ const sum = allocations.reduce((a, b) => a + b, 0);
453
+ if (Math.abs(sum - 1) > 0.0001) {
454
+ issues.push({
455
+ code: 'MU-05', severity: 'error', section: 'components', field: 'allocation_pct',
456
+ message: `MU-05: allocation_pct across components must sum to 1.0 within 0.0001 (found ${sum})`,
457
+ value: sum,
458
+ });
459
+ }
460
+ }
461
+ // CC-12: property NOI must equal the sum of component NOIs. Only assert footing
462
+ // when every admissible component states a numeric NOI — a missing one is
463
+ // MU-04's job, not a footing mismatch.
464
+ const noiModel = getSection(parsed, 'noi_model');
465
+ if (noiModel) {
466
+ const propNOI = deepGet(noiModel.content, 'net_operating_income');
467
+ const compNOIs = admissible
468
+ .map(([, raw]) => raw && typeof raw === 'object'
469
+ ? raw['net_operating_income']
470
+ : undefined)
471
+ .filter((v) => typeof v === 'number');
472
+ if (propNOI != null && admissible.length > 0 && compNOIs.length === admissible.length) {
473
+ const sum = compNOIs.reduce((a, b) => a + b, 0);
474
+ if (Math.abs(sum - propNOI) > 1) {
475
+ issues.push({
476
+ code: 'CC-12', severity: 'error', section: 'noi_model', field: 'net_operating_income',
477
+ message: `CC-12: property NOI ($${propNOI.toLocaleString()}) must equal the sum of component NOIs ($${sum.toLocaleString()})`,
478
+ value: Math.abs(sum - propNOI),
479
+ });
480
+ }
481
+ }
482
+ }
483
+ }
484
+ // ─── Capital stack checks (RFC 0026 §4.24) ────────────────────────────────────
485
+ const TRANCHE_CLASSES = new Set([
486
+ 'senior_debt', 'mezzanine_debt', 'preferred_equity', 'common_equity',
487
+ 'bridge', 'seller_financing', 'other_debt',
488
+ ]);
489
+ // Classes that MUST state a rate (a debt coupon or the preferred return).
490
+ const RATE_BEARING_CLASSES = new Set([
491
+ 'senior_debt', 'mezzanine_debt', 'preferred_equity', 'bridge', 'seller_financing', 'other_debt',
492
+ ]);
493
+ // Section- or tranche-level keys that would encode a distribution waterfall,
494
+ // which is out of scope for this version (RFC 0026 §E).
495
+ const WATERFALL_MARKERS = [
496
+ 'waterfall', 'distribution_waterfall', 'distributions', 'distribution_tiers',
497
+ 'tiers', 'promote', 'hurdle', 'hurdles', 'catch_up', 'carried_interest',
498
+ ];
499
+ /** The capital_stack `senior_debt` tranche, if the section and tranche exist. */
500
+ function seniorDebtTranche(parsed) {
501
+ const cs = getSection(parsed, 'capital_stack');
502
+ if (!cs)
503
+ return null;
504
+ const tranches = cs.content['tranches'];
505
+ if (!Array.isArray(tranches))
506
+ return null;
507
+ const senior = tranches.find((t) => t && typeof t === 'object' && t['class'] === 'senior_debt');
508
+ return senior && typeof senior === 'object' ? senior : null;
509
+ }
510
+ // Validates one capital-stack payload's structure: CS-01 (well-formed, unique
511
+ // tranches), CS-02 (a rate where the class requires one and none where it does
512
+ // not), and CS-WATERFALL-UNSUPPORTED (the deferred distribution waterfall is
513
+ // refused). The senior-loan reconciliation is CC-03 and applies only to the
514
+ // top-level section (a component stack has no property-level debt_structure to
515
+ // reconcile with). The stated sizing figures are recomputed by
516
+ // `verifyCapitalStack` (capital-stack.ts), not here. `section` and `prefix`
517
+ // aim the issue fields: '' for the top-level section, `<key>.capital_stack.`
518
+ // for a mixed-use component's own stack (§4.23, RFC 0026 compatibility).
519
+ function checkStackContent(content, section, prefix, issues) {
520
+ // CS-WATERFALL-UNSUPPORTED: a distribution waterfall at the stack level.
521
+ for (const key of Object.keys(content)) {
522
+ if (WATERFALL_MARKERS.includes(key)) {
523
+ issues.push({
524
+ code: 'CS-WATERFALL-UNSUPPORTED', severity: 'error', section, field: `${prefix}${key}`,
525
+ message: `CS-WATERFALL-UNSUPPORTED: the distribution waterfall ("${key}") is out of scope for this version; model it in x_partnership_structure until a later phase adds it (RFC 0026 §E)`,
526
+ });
527
+ }
528
+ }
529
+ const tranches = Array.isArray(content['tranches']) ? content['tranches'] : [];
530
+ const seenIds = new Set();
531
+ const seenPositions = new Set();
532
+ for (let i = 0; i < tranches.length; i++) {
533
+ const raw = tranches[i];
534
+ const t = raw && typeof raw === 'object' ? raw : {};
535
+ const id = t['id'];
536
+ const cls = t['class'];
537
+ const position = t['position'];
538
+ const amount = t['amount'];
539
+ const label = typeof id === 'string' && id ? id : `tranches[${i}]`;
540
+ // CS-01: structural — id, class, position, amount present and well-typed; id and position unique.
541
+ if (typeof id !== 'string' || id.length === 0) {
542
+ issues.push({ code: 'CS-01', severity: 'error', section, field: `${prefix}${label}.id`, message: `CS-01: tranche ${label} must state a non-empty string id` });
543
+ }
544
+ else if (seenIds.has(id)) {
545
+ issues.push({ code: 'CS-01', severity: 'error', section, field: `${prefix}${label}.id`, message: `CS-01: duplicate tranche id "${id}"; ids must be unique within the stack` });
546
+ }
547
+ else {
548
+ seenIds.add(id);
549
+ }
550
+ if (typeof cls !== 'string' || !TRANCHE_CLASSES.has(cls)) {
551
+ issues.push({ code: 'CS-01', severity: 'error', section, field: `${prefix}${label}.class`, message: `CS-01: tranche ${label} has an invalid class "${String(cls)}"` });
552
+ }
553
+ if (typeof position !== 'number' || !Number.isInteger(position)) {
554
+ issues.push({ code: 'CS-01', severity: 'error', section, field: `${prefix}${label}.position`, message: `CS-01: tranche ${label} must state an integer position` });
555
+ }
556
+ else if (seenPositions.has(position)) {
557
+ issues.push({ code: 'CS-01', severity: 'error', section, field: `${prefix}${label}.position`, message: `CS-01: duplicate position ${position}; positions must be unique within the stack` });
558
+ }
559
+ else {
560
+ seenPositions.add(position);
561
+ }
562
+ if (typeof amount !== 'number') {
563
+ issues.push({ code: 'CS-01', severity: 'error', section, field: `${prefix}${label}.amount`, message: `CS-01: tranche ${label} must state a numeric amount` });
564
+ }
565
+ // CS-02: a rate where the class requires one, and none on common equity.
566
+ const hasRate = t['rate'] !== undefined && t['rate'] !== null;
567
+ if (typeof cls === 'string') {
568
+ if (RATE_BEARING_CLASSES.has(cls) && !hasRate) {
569
+ issues.push({ code: 'CS-02', severity: 'error', section, field: `${prefix}${label}.rate`, message: `CS-02: tranche ${label} (${cls}) must state a rate` });
570
+ }
571
+ if (cls === 'common_equity' && hasRate) {
572
+ issues.push({ code: 'CS-02', severity: 'error', section, field: `${prefix}${label}.rate`, message: `CS-02: common_equity tranche ${label} must not state a rate` });
573
+ }
574
+ }
575
+ // A waterfall smuggled in at the tranche level (promote/hurdle/catch-up).
576
+ for (const key of Object.keys(t)) {
577
+ if (WATERFALL_MARKERS.includes(key)) {
578
+ issues.push({ code: 'CS-WATERFALL-UNSUPPORTED', severity: 'error', section, field: `${prefix}${label}.${key}`, message: `CS-WATERFALL-UNSUPPORTED: tranche ${label} carries waterfall field "${key}"; distributions are out of scope for this version (RFC 0026 §E)` });
579
+ }
580
+ }
581
+ }
582
+ }
583
+ // The top-level capital_stack section, plus any mixed-use component's own
584
+ // stack (§4.23: a component MAY carry a capital_stack; its bare debt_structure
585
+ // stays refused as MU-06). A no-op for documents carrying neither.
586
+ function checkCapitalStack(parsed, issues) {
587
+ const cs = getSection(parsed, 'capital_stack');
588
+ if (cs)
589
+ checkStackContent(cs.content, 'capital_stack', '', issues);
590
+ const comps = getSection(parsed, 'components');
591
+ if (!comps)
592
+ return;
593
+ for (const [key, raw] of Object.entries(comps.content)) {
594
+ if (key.startsWith('_') || !raw || typeof raw !== 'object' || Array.isArray(raw))
595
+ continue;
596
+ const stack = raw['capital_stack'];
597
+ if (stack && typeof stack === 'object' && !Array.isArray(stack)) {
598
+ checkStackContent(stack, 'components', `${key}.capital_stack.`, issues);
599
+ }
600
+ }
601
+ }
362
602
  // ─── Meta integrity checks ────────────────────────────────────────────────────
363
603
  function checkMetaIntegrity(parsed, issues) {
364
604
  const REQUIRED_META_FIELDS = ['section', 'version', 'source', 'timestamp', 'confidence'];
@@ -526,6 +766,23 @@ export function checkDataQuality(parsed, issues, opts = {}) {
526
766
  message: `Block ${sectionId} is marked partial but has no field_overrides[] enumeration.`,
527
767
  });
528
768
  }
769
+ // DQ-06: a promoted market observation that cannot be traced back to the
770
+ // observation set it came from (RFC 0022 §4). An error, not a warning:
771
+ // without the reference the `market_data_accepted` tag is an
772
+ // unfalsifiable claim, and a reviewer can see that *something* was
773
+ // accepted but never recover which observations, of which vintage. That
774
+ // is precisely the gap the profile exists to close, so a block asserting
775
+ // the tag without the reference is worse than one tagged plainly.
776
+ const promoted = m.source === 'market_data_accepted' ||
777
+ m.field_overrides?.some((o) => o.source === 'market_data_accepted');
778
+ if (promoted && !m.market_data_ref) {
779
+ issues.push({
780
+ code: 'DQ-06',
781
+ severity: 'error',
782
+ section: sectionId,
783
+ message: `Block ${sectionId} carries a market_data_accepted value but no _meta.market_data_ref naming the observation set, vintage, and digest it was promoted from.`,
784
+ });
785
+ }
529
786
  }
530
787
  }
531
788
  // DQ-05: stale gaps
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  export declare const CORE_PACKAGE_NAME: "@uwmd/core";
2
- export declare const CORE_VERSION = "1.3.0";
2
+ export declare const CORE_VERSION = "1.6.0";
3
3
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -4,5 +4,5 @@
4
4
  // available in the browser bundle and in every module system. `version.test.ts`
5
5
  // asserts it stays in lockstep with the package manifest — update both together.
6
6
  export const CORE_PACKAGE_NAME = '@uwmd/core';
7
- export const CORE_VERSION = '1.3.0';
7
+ export const CORE_VERSION = '1.6.0';
8
8
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uwmd/core",
3
- "version": "1.3.0",
3
+ "version": "1.6.0",
4
4
  "description": "Reference implementation of the UW Markdown standard — parser, validator, renderer, and CLI for .uw.md underwriting files.",
5
5
  "repository": {
6
6
  "type": "git",