@uwmd/core 2.6.2 → 2.7.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.
- package/dist/block-roles.d.ts +20 -0
- package/dist/block-roles.d.ts.map +1 -0
- package/dist/block-roles.js +54 -0
- package/dist/block-roles.js.map +1 -0
- package/dist/browser.d.ts +6 -2
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +3 -1
- package/dist/browser.js.map +1 -1
- package/dist/calc/dependencies.d.ts +3 -0
- package/dist/calc/dependencies.d.ts.map +1 -1
- package/dist/calc/dependencies.js +14 -1
- package/dist/calc/dependencies.js.map +1 -1
- package/dist/calc/errors.d.ts +1 -1
- package/dist/calc/errors.d.ts.map +1 -1
- package/dist/calc/errors.js.map +1 -1
- package/dist/calc/evaluator.d.ts +1 -1
- package/dist/calc/evaluator.d.ts.map +1 -1
- package/dist/calc/evaluator.js +10 -0
- package/dist/calc/evaluator.js.map +1 -1
- package/dist/calc/parser.d.ts +10 -0
- package/dist/calc/parser.d.ts.map +1 -1
- package/dist/calc/parser.js +25 -1
- package/dist/calc/parser.js.map +1 -1
- package/dist/editor.d.ts.map +1 -1
- package/dist/editor.js +23 -1
- package/dist/editor.js.map +1 -1
- package/dist/index.d.ts +6 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/packs/excel-emit.d.ts.map +1 -1
- package/dist/packs/excel-emit.js +2 -0
- package/dist/packs/excel-emit.js.map +1 -1
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +12 -3
- package/dist/parser.js.map +1 -1
- package/dist/period-path.d.ts +20 -0
- package/dist/period-path.d.ts.map +1 -0
- package/dist/period-path.js +70 -0
- package/dist/period-path.js.map +1 -0
- package/dist/period-validation.d.ts +4 -0
- package/dist/period-validation.d.ts.map +1 -0
- package/dist/period-validation.js +84 -0
- package/dist/period-validation.js.map +1 -0
- package/dist/periods.d.ts +17 -0
- package/dist/periods.d.ts.map +1 -0
- package/dist/periods.js +92 -0
- package/dist/periods.js.map +1 -0
- package/dist/protocol.d.ts +40 -3
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +45 -1
- package/dist/protocol.js.map +1 -1
- package/dist/refinement.d.ts.map +1 -1
- package/dist/refinement.js +4 -1
- package/dist/refinement.js.map +1 -1
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +5 -0
- package/dist/runner.js.map +1 -1
- package/dist/types.d.ts +9 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/validator.d.ts.map +1 -1
- package/dist/validator.js +96 -36
- package/dist/validator.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"period-validation.d.ts","sourceRoot":"","sources":["../src/period-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAW,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAQ3E,0FAA0F;AAC1F,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAI,CA6BzF"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { PERIOD_SERIES } from './protocol.js';
|
|
2
|
+
import { getPathSegment } from './parser.js';
|
|
3
|
+
import { parseExpression, periodReferencePath } from './calc/parser.js';
|
|
4
|
+
import { getPeriodReferences } from './calc/dependencies.js';
|
|
5
|
+
import { parsePeriodSelector, periodKindMatches, scanPeriodSeries } from './periods.js';
|
|
6
|
+
import { periodPayload, periodSection } from './period-path.js';
|
|
7
|
+
/** Structural inspection covers every active variant, not only the selected statement. */
|
|
8
|
+
export function checkPeriodSeries(parsed, issues) {
|
|
9
|
+
for (const entry of PERIOD_SERIES) {
|
|
10
|
+
const [section, ...segments] = entry.path.split('.');
|
|
11
|
+
const stored = parsed.sections[section];
|
|
12
|
+
if (!stored)
|
|
13
|
+
continue;
|
|
14
|
+
const blocks = 'annotation' in stored ? [stored] : Object.values(stored);
|
|
15
|
+
for (const block of blocks) {
|
|
16
|
+
const payload = periodPayload(block);
|
|
17
|
+
let series = payload;
|
|
18
|
+
for (const segment of segments)
|
|
19
|
+
series = getPathSegment(series, segment);
|
|
20
|
+
if (series === undefined || series === null)
|
|
21
|
+
continue;
|
|
22
|
+
const scan = scanPeriodSeries(entry, series, payload);
|
|
23
|
+
const label = `${entry.path}${block.annotation.variant ? ` variant=${block.annotation.variant}` : ''}`;
|
|
24
|
+
for (const position of scan.invalid)
|
|
25
|
+
issues.push({
|
|
26
|
+
code: 'PS-01', severity: 'warning', section: section, field: segments.join('.'),
|
|
27
|
+
message: `PS-01: ${label} has a malformed period or row at ${position}.`, value: position,
|
|
28
|
+
});
|
|
29
|
+
for (const identity of scan.duplicates)
|
|
30
|
+
issues.push({
|
|
31
|
+
code: 'PS-02', severity: 'error', section: section, field: segments.join('.'),
|
|
32
|
+
message: `PS-02: ${label} states duplicate period ${identity}.`, value: identity,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
for (const section of ['custom_calculations', 'custom_scenarios']) {
|
|
37
|
+
for (const block of parsed[section]) {
|
|
38
|
+
if (block.meta?.superseded || block.annotation.superseded === true)
|
|
39
|
+
continue;
|
|
40
|
+
inspectStaticReferences(block.content, section, parsed, issues, new Set(), 0);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
function inspectStaticReferences(value, section, parsed, issues, seen, depth) {
|
|
45
|
+
if (!value || typeof value !== 'object' || depth > 64 || seen.has(value))
|
|
46
|
+
return;
|
|
47
|
+
seen.add(value);
|
|
48
|
+
for (const [field, child] of Object.entries(value)) {
|
|
49
|
+
if (field.startsWith('_'))
|
|
50
|
+
continue;
|
|
51
|
+
if ((field === 'formula' || field === 'base_formula') && typeof child === 'string') {
|
|
52
|
+
let refs;
|
|
53
|
+
try {
|
|
54
|
+
refs = getPeriodReferences(parseExpression(child));
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
for (const ref of refs) {
|
|
60
|
+
const path = [ref.head, ...ref.series].join('.');
|
|
61
|
+
const entry = PERIOD_SERIES.find(candidate => candidate.path === path);
|
|
62
|
+
const key = parsePeriodSelector(ref.selector);
|
|
63
|
+
if (!entry || !key)
|
|
64
|
+
continue;
|
|
65
|
+
let payload;
|
|
66
|
+
try {
|
|
67
|
+
const block = periodSection(parsed, ref.head);
|
|
68
|
+
payload = block ? periodPayload(block) : undefined;
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
continue;
|
|
72
|
+
} // A static reference cannot choose an ambiguous runtime variant.
|
|
73
|
+
if (!periodKindMatches(entry, key, payload))
|
|
74
|
+
issues.push({
|
|
75
|
+
code: 'PS-03', severity: 'warning', section, field,
|
|
76
|
+
message: `PS-03: ${periodReferencePath(ref)} uses a period kind incompatible with ${entry.path}.`,
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
else
|
|
81
|
+
inspectStaticReferences(child, section, parsed, issues, seen, depth + 1);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=period-validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"period-validation.js","sourceRoot":"","sources":["../src/period-validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { PeriodKey, PeriodSeriesEntry } from './protocol.js';
|
|
2
|
+
/** Gregorian calendar identities; no row positions or implicit holding-year conversions. */
|
|
3
|
+
export declare function parsePeriodSelector(value: string): PeriodKey | null;
|
|
4
|
+
export declare function canonicalPeriod(entry: PeriodSeriesEntry, value: unknown): PeriodKey | null;
|
|
5
|
+
export declare function periodKeyIdentity(key: PeriodKey): string;
|
|
6
|
+
export interface PeriodSeriesScan {
|
|
7
|
+
rows: ReadonlyMap<string, {
|
|
8
|
+
key: PeriodKey;
|
|
9
|
+
value: unknown;
|
|
10
|
+
}>;
|
|
11
|
+
invalid: string[];
|
|
12
|
+
duplicates: string[];
|
|
13
|
+
}
|
|
14
|
+
/** Inspect a whole series before choosing a row; validation is not a prerequisite. */
|
|
15
|
+
export declare function scanPeriodSeries(entry: PeriodSeriesEntry, value: unknown, payload: unknown): PeriodSeriesScan;
|
|
16
|
+
export declare function periodKindMatches(entry: PeriodSeriesEntry, key: PeriodKey, payload?: unknown): boolean;
|
|
17
|
+
//# sourceMappingURL=periods.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"periods.d.ts","sourceRoot":"","sources":["../src/periods.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAMlE,4FAA4F;AAC5F,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAQnE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CAa1F;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,CAOxD;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE;QAAE,GAAG,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC9D,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,sFAAsF;AACtF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,gBAAgB,CA4B7G;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAMtG"}
|
package/dist/periods.js
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { getPathSegment } from './parser.js';
|
|
2
|
+
import { parseISODate } from './calc/day-count.js';
|
|
3
|
+
function positiveYear(value) {
|
|
4
|
+
return typeof value === 'number' && Number.isSafeInteger(value) && value >= 1 ? { kind: 'year', index: value } : null;
|
|
5
|
+
}
|
|
6
|
+
/** Gregorian calendar identities; no row positions or implicit holding-year conversions. */
|
|
7
|
+
export function parsePeriodSelector(value) {
|
|
8
|
+
if (/^Y[1-9][0-9]*$/.test(value))
|
|
9
|
+
return positiveYear(Number(value.slice(1)));
|
|
10
|
+
let match = /^([0-9]{4})-Q([1-4])$/.exec(value);
|
|
11
|
+
if (match)
|
|
12
|
+
return { kind: 'quarter', year: Number(match[1]), quarter: Number(match[2]) };
|
|
13
|
+
match = /^([0-9]{4})-(0[1-9]|1[0-2])$/.exec(value);
|
|
14
|
+
if (match)
|
|
15
|
+
return { kind: 'month', year: Number(match[1]), month: Number(match[2]) };
|
|
16
|
+
if (parseISODate(value))
|
|
17
|
+
return { kind: 'date', date: value };
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
export function canonicalPeriod(entry, value) {
|
|
21
|
+
if (entry.grammar === 'year_index') {
|
|
22
|
+
if (entry.shape === 'keyed' && typeof value === 'string') {
|
|
23
|
+
const match = /^year_([0-9]+)$/.exec(value);
|
|
24
|
+
return match ? positiveYear(Number(match[1])) : null;
|
|
25
|
+
}
|
|
26
|
+
return positiveYear(value);
|
|
27
|
+
}
|
|
28
|
+
if (typeof value !== 'string')
|
|
29
|
+
return null;
|
|
30
|
+
const key = parsePeriodSelector(value);
|
|
31
|
+
if (!key)
|
|
32
|
+
return null;
|
|
33
|
+
if (entry.grammar === 'iso_date')
|
|
34
|
+
return key.kind === 'date' ? key : null;
|
|
35
|
+
return key.kind === 'quarter' || key.kind === 'month' ? key : null;
|
|
36
|
+
}
|
|
37
|
+
export function periodKeyIdentity(key) {
|
|
38
|
+
switch (key.kind) {
|
|
39
|
+
case 'year': return `year:${key.index}`;
|
|
40
|
+
case 'quarter': return `quarter:${key.year}:${key.quarter}`;
|
|
41
|
+
case 'month': return `month:${key.year}:${key.month}`;
|
|
42
|
+
case 'date': return `date:${key.date}`;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/** Inspect a whole series before choosing a row; validation is not a prerequisite. */
|
|
46
|
+
export function scanPeriodSeries(entry, value, payload) {
|
|
47
|
+
const rows = new Map();
|
|
48
|
+
const invalid = [];
|
|
49
|
+
const duplicates = [];
|
|
50
|
+
if (value === null || value === undefined)
|
|
51
|
+
return { rows, invalid, duplicates };
|
|
52
|
+
const pairs = [];
|
|
53
|
+
if (entry.shape === 'rows') {
|
|
54
|
+
if (!Array.isArray(value))
|
|
55
|
+
return { rows, invalid: ['series must be an array'], duplicates };
|
|
56
|
+
for (let i = 0; i < value.length; i++)
|
|
57
|
+
pairs.push([String(i), getPathSegment(value, String(i))]);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
if (typeof value !== 'object' || Array.isArray(value))
|
|
61
|
+
return { rows, invalid: ['series must be a keyed object'], duplicates };
|
|
62
|
+
pairs.push(...Object.entries(value));
|
|
63
|
+
}
|
|
64
|
+
const cadence = entry.cadence_field ? getPathSegment(payload, entry.cadence_field) : undefined;
|
|
65
|
+
if (entry.grammar === 'calendar_period' && cadence !== 'monthly' && cadence !== 'quarterly')
|
|
66
|
+
invalid.push('period_granularity must be monthly or quarterly');
|
|
67
|
+
for (const [position, row] of pairs) {
|
|
68
|
+
const raw = entry.shape === 'keyed' ? position : getPathSegment(row, entry.period_field);
|
|
69
|
+
const key = canonicalPeriod(entry, raw);
|
|
70
|
+
if (!key || row === null || typeof row !== 'object' || Array.isArray(row)
|
|
71
|
+
|| (entry.grammar === 'calendar_period' && ((cadence === 'monthly' && key.kind !== 'month') || (cadence === 'quarterly' && key.kind !== 'quarter')))) {
|
|
72
|
+
invalid.push(position);
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
const identity = periodKeyIdentity(key);
|
|
76
|
+
if (rows.has(identity))
|
|
77
|
+
duplicates.push(identity);
|
|
78
|
+
else
|
|
79
|
+
rows.set(identity, { key, value: row });
|
|
80
|
+
}
|
|
81
|
+
return { rows, invalid, duplicates: [...new Set(duplicates)].sort() };
|
|
82
|
+
}
|
|
83
|
+
export function periodKindMatches(entry, key, payload) {
|
|
84
|
+
if (entry.grammar === 'year_index')
|
|
85
|
+
return key.kind === 'year';
|
|
86
|
+
if (entry.grammar === 'iso_date')
|
|
87
|
+
return key.kind === 'date';
|
|
88
|
+
const cadence = getPathSegment(payload, entry.cadence_field ?? 'period_granularity');
|
|
89
|
+
return cadence === 'monthly' ? key.kind === 'month' : cadence === 'quarterly' ? key.kind === 'quarter'
|
|
90
|
+
: key.kind === 'month' || key.kind === 'quarter';
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=periods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"periods.js","sourceRoot":"","sources":["../src/periods.ts"],"names":[],"mappings":"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"}
|
package/dist/protocol.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { AssetClass, ConfidenceLevel, DealStage, FinancialThresholds, ParsedUWFile, PipelineStatus, UWBlock, UWMeta, UWSignatureAlgorithm, ValidationMessage, ValidationSeverity } from './types.js';
|
|
1
|
+
import type { AssetClass, BlockRole, ConfidenceLevel, DealStage, FinancialThresholds, ParsedUWFile, PipelineStatus, UWBlock, UWMeta, UWSignatureAlgorithm, ValidationMessage, ValidationSeverity } from './types.js';
|
|
2
2
|
/** Semver of this protocol. Bumped independently of @uwmd/core's npm version. */
|
|
3
|
-
export declare const PROTOCOL_VERSION: "2.
|
|
3
|
+
export declare const PROTOCOL_VERSION: "2.8.0";
|
|
4
4
|
/**
|
|
5
5
|
* The format version this implementation *authors* — what a fresh scaffold
|
|
6
6
|
* declares. Reading is wider: see {@link SUPPORTED_FORMAT_VERSIONS}.
|
|
@@ -22,7 +22,7 @@ export declare const SUPPORTED_FORMAT_VERSIONS: readonly ["1.0", "1.1", "2.0"];
|
|
|
22
22
|
* v2 §1.3), so a module written against the 1.x protocol line still loads:
|
|
23
23
|
* its `requires_protocol` range is satisfied against any member of this set.
|
|
24
24
|
*/
|
|
25
|
-
export declare const SUPPORTED_PROTOCOL_VERSIONS: readonly ["1.14.0", "2.0.0", "2.1.0", "2.2.0", "2.
|
|
25
|
+
export declare const SUPPORTED_PROTOCOL_VERSIONS: readonly ["1.14.0", "2.0.0", "2.1.0", "2.2.0", "2.8.0"];
|
|
26
26
|
/** The four conformance tiers defined in UW_PROTOCOL_v1.md Part II. */
|
|
27
27
|
export type ViewerTier = 'tier-1-reader' | 'tier-2-editor' | 'tier-3-calc-host' | 'tier-4-agent-host';
|
|
28
28
|
/** What kind of actor the implementation serves. Informational. */
|
|
@@ -454,12 +454,16 @@ export type EditOperation = {
|
|
|
454
454
|
variant?: string;
|
|
455
455
|
content: Record<string, unknown>;
|
|
456
456
|
meta: Partial<UWMeta>;
|
|
457
|
+
/** Trusted host assignment: undefined preserves, null removes. Never copy from model content. */
|
|
458
|
+
role?: BlockRole | null;
|
|
457
459
|
} | {
|
|
458
460
|
kind: 'section_supersede';
|
|
459
461
|
section_id: string;
|
|
460
462
|
variant?: string;
|
|
461
463
|
content: Record<string, unknown>;
|
|
462
464
|
meta: Partial<UWMeta>;
|
|
465
|
+
/** Trusted host assignment: undefined preserves, null removes. Never copy from model content. */
|
|
466
|
+
role?: BlockRole | null;
|
|
463
467
|
} | {
|
|
464
468
|
kind: 'pipeline_log_append';
|
|
465
469
|
entry: Record<string, unknown>;
|
|
@@ -482,7 +486,36 @@ export interface IssueRemediation {
|
|
|
482
486
|
* Variables made available to a custom_calculation expression. The host
|
|
483
487
|
* resolves `parsed` paths via parser.deepGet semantics.
|
|
484
488
|
*/
|
|
489
|
+
/** Exact period identity; holding years and calendar identities never convert implicitly. */
|
|
490
|
+
export type PeriodKey = {
|
|
491
|
+
kind: 'year';
|
|
492
|
+
index: number;
|
|
493
|
+
} | {
|
|
494
|
+
kind: 'quarter';
|
|
495
|
+
year: number;
|
|
496
|
+
quarter: number;
|
|
497
|
+
} | {
|
|
498
|
+
kind: 'month';
|
|
499
|
+
year: number;
|
|
500
|
+
month: number;
|
|
501
|
+
} | {
|
|
502
|
+
kind: 'date';
|
|
503
|
+
date: string;
|
|
504
|
+
};
|
|
505
|
+
export interface PeriodSeriesEntry {
|
|
506
|
+
readonly path: string;
|
|
507
|
+
readonly shape: 'rows' | 'keyed';
|
|
508
|
+
readonly period_field?: string;
|
|
509
|
+
readonly key_pattern?: string;
|
|
510
|
+
readonly grammar: 'year_index' | 'calendar_period' | 'iso_date';
|
|
511
|
+
readonly cadence_field?: string;
|
|
512
|
+
readonly spec_ref: string;
|
|
513
|
+
}
|
|
514
|
+
/** Standard registry only; module-defined series are deferred (RFC 0041). */
|
|
515
|
+
export declare const PERIOD_SERIES: readonly PeriodSeriesEntry[];
|
|
485
516
|
export interface CalcEvaluationContext {
|
|
517
|
+
/** Exact section variants for period references only; no fallback when supplied. */
|
|
518
|
+
sectionVariants?: Readonly<Record<string, string>>;
|
|
486
519
|
parsed: ParsedUWFile;
|
|
487
520
|
/** Result map of previously-evaluated calculations in the same batch. */
|
|
488
521
|
prior_results: Readonly<Record<string, number | string | boolean | null>>;
|
|
@@ -899,6 +932,10 @@ export declare const CROSS_CHECK_RULE_IDS: readonly string[];
|
|
|
899
932
|
* first; a lone variant is taken last; anything else is unresolvable.
|
|
900
933
|
*/
|
|
901
934
|
export declare const CROSS_CHECK_VARIANT_PREFERENCE: readonly string[];
|
|
935
|
+
/** Closed, scalar vocabulary for the signed `_role` block annotation. */
|
|
936
|
+
export declare const BLOCK_ROLES: readonly BlockRole[];
|
|
937
|
+
/** Per-check role preference, consulted before generic primary/default/base. */
|
|
938
|
+
export declare const CROSS_CHECK_ROLE_PREFERENCE: Readonly<Record<string, Readonly<Record<string, BlockRole>>>>;
|
|
902
939
|
/** The closed set for `dcf.returns.tax_basis` (format §4.9, RFC 0038). */
|
|
903
940
|
export declare const RETURN_TAX_BASES: readonly ["pre_tax", "after_tax"];
|
|
904
941
|
/** The basis a `returns` object carries when it states none (RFC 0038). */
|
package/dist/protocol.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
|
package/dist/protocol.js
CHANGED
|
@@ -13,7 +13,7 @@ import { deepGet, getSection, getSectionVariant } from './parser.js';
|
|
|
13
13
|
import { CORE_VERSION } from './version.js';
|
|
14
14
|
// ─── Versioning ───────────────────────────────────────────────────────────────
|
|
15
15
|
/** Semver of this protocol. Bumped independently of @uwmd/core's npm version. */
|
|
16
|
-
export const PROTOCOL_VERSION = '2.
|
|
16
|
+
export const PROTOCOL_VERSION = '2.8.0';
|
|
17
17
|
/**
|
|
18
18
|
* The format version this implementation *authors* — what a fresh scaffold
|
|
19
19
|
* declares. Reading is wider: see {@link SUPPORTED_FORMAT_VERSIONS}.
|
|
@@ -528,6 +528,14 @@ export function lookupStageContract(stage, section, field_path, assetClass) {
|
|
|
528
528
|
}
|
|
529
529
|
return best;
|
|
530
530
|
}
|
|
531
|
+
/** Standard registry only; module-defined series are deferred (RFC 0041). */
|
|
532
|
+
export const PERIOD_SERIES = Object.freeze([
|
|
533
|
+
Object.freeze({ path: 'dcf.annual_cash_flows', shape: 'rows', period_field: 'year', grammar: 'year_index', spec_ref: 'UW_FORMAT_SPEC_v1.md §4.9' }),
|
|
534
|
+
Object.freeze({ path: 'noi_model.projections', shape: 'keyed', key_pattern: '^year_(\\d+)$', grammar: 'year_index', spec_ref: 'UW_FORMAT_SPEC_v1.md §4.5' }),
|
|
535
|
+
Object.freeze({ path: 'lease_up_schedule.schedule', shape: 'rows', period_field: 'period', grammar: 'calendar_period', cadence_field: 'period_granularity', spec_ref: 'UW_FORMAT_SPEC_v1.md §4.25' }),
|
|
536
|
+
Object.freeze({ path: 'cash_flow_series.series', shape: 'rows', period_field: 'date', grammar: 'iso_date', spec_ref: 'UW_FORMAT_SPEC_v1.md §4.26' }),
|
|
537
|
+
Object.freeze({ path: 'distribution_waterfall.stated_schedule', shape: 'rows', period_field: 'date', grammar: 'iso_date', spec_ref: 'UW_FORMAT_SPEC_v1.md §4.27' }),
|
|
538
|
+
]);
|
|
531
539
|
// ─── Standard section registry (FORMAT_SPEC Part IV) ─────────────────────────
|
|
532
540
|
/**
|
|
533
541
|
* The section ids the format registers in `UW_FORMAT_SPEC_v1.md` Part IV: the
|
|
@@ -1098,6 +1106,8 @@ export const VALIDATOR_CODE_FAMILIES = Object.freeze([
|
|
|
1098
1106
|
{ prefix: 'WF', description: 'Distribution waterfall (RFC 0035)', capabilities: ['validate'] },
|
|
1099
1107
|
{ prefix: 'RT', description: 'Return-metric declarations — dcf.returns basis fields (RFC 0038)', capabilities: ['validate'] },
|
|
1100
1108
|
{ prefix: 'LOC', description: 'Display locale (RFC 0001)', capabilities: ['validate'] },
|
|
1109
|
+
{ prefix: 'PS', description: 'Period series identity (RFC 0041)', capabilities: ['validate'] },
|
|
1110
|
+
{ prefix: 'ROLE', description: 'Signed block role (RFC 0040)', capabilities: ['validate'] },
|
|
1101
1111
|
{ prefix: 'META', description: '_meta shape by uw_version (RFC 0009)', capabilities: ['validate'] },
|
|
1102
1112
|
{
|
|
1103
1113
|
prefix: 'INVALID-ASSET-CLASS',
|
|
@@ -1151,6 +1161,16 @@ export const CROSS_CHECK_RULE_IDS = Object.freeze([
|
|
|
1151
1161
|
* first; a lone variant is taken last; anything else is unresolvable.
|
|
1152
1162
|
*/
|
|
1153
1163
|
export const CROSS_CHECK_VARIANT_PREFERENCE = Object.freeze(['default', 'base']);
|
|
1164
|
+
/** Closed, scalar vocabulary for the signed `_role` block annotation. */
|
|
1165
|
+
export const BLOCK_ROLES = Object.freeze(['primary', 'senior', 'junior', 'summary', 'detail', 'component']);
|
|
1166
|
+
/** Per-check role preference, consulted before generic primary/default/base. */
|
|
1167
|
+
export const CROSS_CHECK_ROLE_PREFERENCE = Object.freeze({
|
|
1168
|
+
'CC-01': Object.freeze({ rent_roll: 'detail' }),
|
|
1169
|
+
'CC-02': Object.freeze({ debt_structure: 'senior' }),
|
|
1170
|
+
'CC-03': Object.freeze({ debt_structure: 'senior' }),
|
|
1171
|
+
'CC-05': Object.freeze({ debt_structure: 'senior' }),
|
|
1172
|
+
'CC-09': Object.freeze({ debt_structure: 'senior' }),
|
|
1173
|
+
});
|
|
1154
1174
|
/** The closed set for `dcf.returns.tax_basis` (format §4.9, RFC 0038). */
|
|
1155
1175
|
export const RETURN_TAX_BASES = ['pre_tax', 'after_tax'];
|
|
1156
1176
|
/** The basis a `returns` object carries when it states none (RFC 0038). */
|
|
@@ -1271,6 +1291,30 @@ export const BUILTIN_REMEDIATIONS = Object.freeze([
|
|
|
1271
1291
|
remediation: 'Reconcile the trajectory endpoint with the stabilized-year model, or document why they diverge. The 2% tolerance is deliberate — the two are independent models of stabilization and exact agreement is not the goal (RFC 0008).',
|
|
1272
1292
|
spec_ref: '§5.3 CC-15',
|
|
1273
1293
|
},
|
|
1294
|
+
{
|
|
1295
|
+
code: 'PS-01', severity: 'warning', title: 'Malformed period series',
|
|
1296
|
+
description: 'A registered series has an invalid shape or period identity.',
|
|
1297
|
+
remediation: 'State valid periods in the registered grammar; do not infer dates or years.',
|
|
1298
|
+
spec_ref: 'UW_PROTOCOL_v1.md §VIII.2a',
|
|
1299
|
+
},
|
|
1300
|
+
{
|
|
1301
|
+
code: 'PS-02', severity: 'error', title: 'Duplicate period identity',
|
|
1302
|
+
description: 'A registered series states the same canonical period more than once.',
|
|
1303
|
+
remediation: 'Resolve the duplicate statements with the responsible producer; do not choose by row order.',
|
|
1304
|
+
spec_ref: 'UW_PROTOCOL_v1.md §VIII.2a',
|
|
1305
|
+
},
|
|
1306
|
+
{
|
|
1307
|
+
code: 'PS-03', severity: 'warning', title: 'Period kind mismatch',
|
|
1308
|
+
description: 'A static selector uses a different period kind from its registered series.',
|
|
1309
|
+
remediation: 'Use the series period kind; calendar dates and holding years do not convert implicitly.',
|
|
1310
|
+
spec_ref: 'UW_PROTOCOL_v1.md §VIII.2a',
|
|
1311
|
+
},
|
|
1312
|
+
{
|
|
1313
|
+
code: 'ROLE-01', severity: 'error', title: 'Invalid block role',
|
|
1314
|
+
description: 'A block declares a role outside the closed scalar vocabulary.',
|
|
1315
|
+
remediation: 'Have the responsible host correct or remove _role; do not infer a role from financial values.',
|
|
1316
|
+
spec_ref: 'UW_FORMAT_SPEC_v1.md §2.8',
|
|
1317
|
+
},
|
|
1274
1318
|
{
|
|
1275
1319
|
code: 'CC-16', severity: 'info',
|
|
1276
1320
|
title: 'Section unresolvable for cross-checking',
|