@uwmd/core 1.1.2 → 1.3.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/README.md +3 -3
- package/dist/agents/bancroft.d.ts +22 -1
- package/dist/agents/bancroft.d.ts.map +1 -1
- package/dist/agents/bancroft.js +86 -60
- package/dist/agents/bancroft.js.map +1 -1
- package/dist/agents/provider.d.ts +62 -0
- package/dist/agents/provider.d.ts.map +1 -0
- package/dist/agents/provider.js +28 -0
- package/dist/agents/provider.js.map +1 -0
- package/dist/agents/providers/anthropic.d.ts +20 -0
- package/dist/agents/providers/anthropic.d.ts.map +1 -0
- package/dist/agents/providers/anthropic.js +104 -0
- package/dist/agents/providers/anthropic.js.map +1 -0
- package/dist/agents/providers/replay.d.ts +46 -0
- package/dist/agents/providers/replay.d.ts.map +1 -0
- package/dist/agents/providers/replay.js +162 -0
- package/dist/agents/providers/replay.js.map +1 -0
- package/dist/agents/schemas.d.ts +3 -3
- package/dist/agents/schemas.d.ts.map +1 -1
- package/dist/agents/schemas.js.map +1 -1
- package/dist/browser.d.ts +26 -3
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +23 -3
- package/dist/browser.js.map +1 -1
- package/dist/calc/builtins.d.ts +10 -0
- package/dist/calc/builtins.d.ts.map +1 -1
- package/dist/calc/builtins.js +64 -42
- package/dist/calc/builtins.js.map +1 -1
- package/dist/calc/errors.js +1 -1
- package/dist/calc/evaluator.js +6 -2
- package/dist/calc/evaluator.js.map +1 -1
- package/dist/calc/index.d.ts +7 -0
- package/dist/calc/index.d.ts.map +1 -1
- package/dist/calc/index.js +13 -1
- package/dist/calc/index.js.map +1 -1
- package/dist/calc/quantize.d.ts +56 -0
- package/dist/calc/quantize.d.ts.map +1 -0
- package/dist/calc/quantize.js +116 -0
- package/dist/calc/quantize.js.map +1 -0
- package/dist/cli-packages.d.ts +11 -0
- package/dist/cli-packages.d.ts.map +1 -0
- package/dist/cli-packages.js +177 -0
- package/dist/cli-packages.js.map +1 -0
- package/dist/cli.js +424 -28
- package/dist/cli.js.map +1 -1
- package/dist/context.js +23 -23
- package/dist/deal-package-context.d.ts +52 -0
- package/dist/deal-package-context.d.ts.map +1 -0
- package/dist/deal-package-context.js +132 -0
- package/dist/deal-package-context.js.map +1 -0
- package/dist/deal-package-zip.d.ts +36 -0
- package/dist/deal-package-zip.d.ts.map +1 -0
- package/dist/deal-package-zip.js +132 -0
- package/dist/deal-package-zip.js.map +1 -0
- package/dist/deal-package.d.ts +82 -0
- package/dist/deal-package.d.ts.map +1 -0
- package/dist/deal-package.js +189 -0
- package/dist/deal-package.js.map +1 -0
- package/dist/defaults.d.ts +48 -0
- package/dist/defaults.d.ts.map +1 -1
- package/dist/defaults.js +512 -0
- package/dist/defaults.js.map +1 -1
- package/dist/index.d.ts +32 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +27 -3
- package/dist/index.js.map +1 -1
- package/dist/init.js +1 -1
- package/dist/init.js.map +1 -1
- package/dist/integrity.d.ts +9 -0
- package/dist/integrity.d.ts.map +1 -1
- package/dist/integrity.js +12 -2
- package/dist/integrity.js.map +1 -1
- package/dist/lease-abstract.d.ts +82 -0
- package/dist/lease-abstract.d.ts.map +1 -0
- package/dist/lease-abstract.js +183 -0
- package/dist/lease-abstract.js.map +1 -0
- package/dist/lite-bridge.d.ts +58 -0
- package/dist/lite-bridge.d.ts.map +1 -0
- package/dist/lite-bridge.js +525 -0
- package/dist/lite-bridge.js.map +1 -0
- package/dist/lite.d.ts +63 -0
- package/dist/lite.d.ts.map +1 -0
- package/dist/lite.js +362 -0
- package/dist/lite.js.map +1 -0
- package/dist/modules.d.ts.map +1 -1
- package/dist/modules.js +278 -13
- package/dist/modules.js.map +1 -1
- package/dist/packs/excel-emit.d.ts +18 -1
- package/dist/packs/excel-emit.d.ts.map +1 -1
- package/dist/packs/excel-emit.js +18 -1
- package/dist/packs/excel-emit.js.map +1 -1
- package/dist/packs/hospitality.d.ts +3 -0
- package/dist/packs/hospitality.d.ts.map +1 -0
- package/dist/packs/hospitality.js +122 -0
- package/dist/packs/hospitality.js.map +1 -0
- package/dist/packs/index.d.ts +5 -1
- package/dist/packs/index.d.ts.map +1 -1
- package/dist/packs/index.js +13 -1
- package/dist/packs/index.js.map +1 -1
- package/dist/packs/land.d.ts +3 -0
- package/dist/packs/land.d.ts.map +1 -0
- package/dist/packs/land.js +124 -0
- package/dist/packs/land.js.map +1 -0
- package/dist/packs/senior-housing.d.ts +3 -0
- package/dist/packs/senior-housing.d.ts.map +1 -0
- package/dist/packs/senior-housing.js +123 -0
- package/dist/packs/senior-housing.js.map +1 -0
- package/dist/packs/student-housing.d.ts +3 -0
- package/dist/packs/student-housing.d.ts.map +1 -0
- package/dist/packs/student-housing.js +124 -0
- package/dist/packs/student-housing.js.map +1 -0
- package/dist/parser.d.ts +9 -0
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +40 -6
- package/dist/parser.js.map +1 -1
- package/dist/protocol.d.ts +69 -2
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +109 -1
- package/dist/protocol.js.map +1 -1
- package/dist/receipts.d.ts +216 -0
- package/dist/receipts.d.ts.map +1 -0
- package/dist/receipts.js +554 -0
- package/dist/receipts.js.map +1 -0
- package/dist/report.js +165 -165
- package/dist/runner.d.ts +13 -0
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +5 -5
- package/dist/runner.js.map +1 -1
- package/dist/source-representation.d.ts +40 -0
- package/dist/source-representation.d.ts.map +1 -0
- package/dist/source-representation.js +114 -0
- package/dist/source-representation.js.map +1 -0
- package/dist/types.d.ts +9 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +34 -0
- package/dist/types.js.map +1 -1
- package/dist/uwcsv.d.ts.map +1 -1
- package/dist/uwcsv.js +10 -78
- package/dist/uwcsv.js.map +1 -1
- package/dist/uwxml.d.ts.map +1 -1
- package/dist/uwxml.js +10 -2
- package/dist/uwxml.js.map +1 -1
- package/dist/validator.js +10 -10
- package/dist/validator.js.map +1 -1
- package/dist/version.d.ts +3 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +8 -0
- package/dist/version.js.map +1 -0
- package/dist/zip-safety.d.ts +15 -0
- package/dist/zip-safety.d.ts.map +1 -0
- package/dist/zip-safety.js +109 -0
- package/dist/zip-safety.js.map +1 -0
- package/package.json +12 -3
package/dist/index.d.ts
CHANGED
|
@@ -5,6 +5,12 @@ export { render, UnsupportedRenderFormatError } from './renderer.js';
|
|
|
5
5
|
export type { RenderFormat, RenderTier, RenderOptions, RenderResult } from './renderer.js';
|
|
6
6
|
export { renderReportHtml, REPORT_CSS } from './report.js';
|
|
7
7
|
export type { ReportOptions, ReportResult } from './report.js';
|
|
8
|
+
export { UW_LITE_REPRESENTATION_ID, UWX_REPRESENTATION_ID, UW_LITE_REPRESENTATION_VERSION, UWX_REPRESENTATION_VERSION, UW_LITE_MEDIA_TYPE, UWX_MEDIA_TYPE, UW_LITE_EXTENSION, UW_LITE_SOURCE_DESCRIPTOR, UWX_SOURCE_DESCRIPTOR, UWX_EXTENSION, UWSourceRepresentationError, detectUWSourceRepresentation, migrateLegacyUWMarkdown, } from './source-representation.js';
|
|
9
|
+
export type { UWSourceRepresentation, UWSourceDetection, UWSourceMigration, } from './source-representation.js';
|
|
10
|
+
export { UWLiteError, parseUWLite, canonicalizeUWLiteFinancial, renderCanonicalUWLite, } from './lite.js';
|
|
11
|
+
export type { UWLiteScalar, UWLiteSourceRange, UWLiteIssue, UWLiteNode, UWLiteFieldNode, ParsedUWLite, } from './lite.js';
|
|
12
|
+
export { UW_LITE_BRIDGE_PROFILE, UW_LITE_SOURCE_EXTENSION, UW_LITE_FIELD_MAPPINGS, UWLiteBridgeError, compileUWLite, projectUWEnvelopeToLite, stringifyUWX, } from './lite-bridge.js';
|
|
13
|
+
export type { UWLiteFieldMapping, UWLiteCompilationIssue, UWLiteCompilationReport, UWLiteCompilationResult, UWLiteProjectionReport, UWLiteProjectionResult, } from './lite-bridge.js';
|
|
8
14
|
export { UW_JSON_REPRESENTATION_VERSION, UW_JSON_MEDIA_TYPE, UWJsonError, toUWJson, stringifyUWEnvelope, stringifyUWJson, stringifyUWJsonWithDigest, parseUWJson, parseUWJsonVerified, fromUWJson, UW_JSON_CODEC, } from './uwjson.js';
|
|
9
15
|
export type { ToUWJsonOptions } from './uwjson.js';
|
|
10
16
|
export { UW_XML_REPRESENTATION_VERSION, UW_XML_MEDIA_TYPE, UW_XML_NAMESPACE, UWXmlError, stringifyUWXml, parseUWXml, parseUWXmlVerified, UW_XML_CODEC, } from './uwxml.js';
|
|
@@ -26,16 +32,36 @@ export { applyEdit, applyEditAsync, resolvePolicy } from './editor.js';
|
|
|
26
32
|
export type { EditContext, EditResult, EditOptions } from './editor.js';
|
|
27
33
|
export { evaluateCalc, parseExpression, evaluate, BUILTINS, CalcError, calcError } from './calc/index.js';
|
|
28
34
|
export type { CalcValue, Builtin, CalcErrorCode } from './calc/index.js';
|
|
29
|
-
export {
|
|
35
|
+
export { quantizeDecimal, resolveRoundTo, DEFAULT_ROUND_TO, DEFAULT_ROUND_TO_BY_UNIT, MAX_ROUND_TO, } from './calc/index.js';
|
|
36
|
+
export { MULTIFAMILY_PACK, OFFICE_PACK, RETAIL_PACK, INDUSTRIAL_PACK, SELF_STORAGE_PACK, HOSPITALITY_PACK, SENIOR_HOUSING_PACK, STUDENT_HOUSING_PACK, LAND_PACK, getPackForAssetClass, emitFromAst, emitExcelFormula, emitCalcExcelFormula, ExcelEmitError, } from './packs/index.js';
|
|
30
37
|
export type { ExcelEmitOptions } from './packs/index.js';
|
|
31
38
|
export { loadModuleManifest, createModuleRegistry, getModuleCalculationsForAssetClass, ModuleRegistryError, } from './modules.js';
|
|
32
39
|
export type { ModuleRegistry, LoadModuleOptions, CreateModuleRegistryOptions } from './modules.js';
|
|
40
|
+
export { BUILTIN_DOCUMENT_PROFILES, DEAL_UNDERWRITING_PROFILE, LEASE_ABSTRACT_PROFILE, SOURCE_NOTE_PROFILE, DOCUMENT_PROFILE_PATTERN, lookupDocumentProfile, BUILTIN_EDGE_TYPES, lookupEdgeType, isEdgeTypeValidOnLayer, } from './protocol.js';
|
|
41
|
+
export type { DocumentProfile, UWEdgeLayer, UWEdgeEndpointKind, UWEdgeTypeDef } from './protocol.js';
|
|
42
|
+
export { UW_PACKAGE_VERSION, UW_PACKAGE_ZIP_CODEC, UW_PACKAGE_ZIP_MEDIA_TYPE, UW_PACKAGE_CONTEXT_CODEC, UW_PACKAGE_CONTEXT_MEDIA_TYPE, CONTEXT_INLINABLE_ROLES, UWPackageError, isSafeMemberPath, validateUWDealPackageManifest, assertUWDealPackageManifest, projectPackageLinksToEntityEdges, edgeTypesForLayer, } from './deal-package.js';
|
|
43
|
+
export type { UWDealPackageManifest, UWPackageMember, UWPackageLink, UWMemberRole, UWSourceReference, UWEntityEdge, } from './deal-package.js';
|
|
44
|
+
export { projectUWDealPackageContext, validateUWDealPackageContext, verifyContextContentDigests, } from './deal-package-context.js';
|
|
45
|
+
export type { UWDealPackageContext, UWContextContent, UWSourceEvidenceDescriptor, ProjectContextOptions, } from './deal-package-context.js';
|
|
46
|
+
export { LEASE_ABSTRACT_PROFILE_ID, LEASE_ABSTRACT_GROUPS, LEASE_TERM_STATUSES, LEASE_ARTIFACT_KINDS, LeaseAbstractError, validateLeaseAbstract, assertLeaseAbstract, projectLeaseAbstractToRentRoll, } from './lease-abstract.js';
|
|
47
|
+
export type { LeaseAbstract, LeaseAbstractGroup, LeaseTermValue, LeaseTermStatus, LeaseArtifactKind, SourceRef, RentRollProjectionRow, RentRollProjectionReport, RentRollProjectionResult, } from './lease-abstract.js';
|
|
48
|
+
export { PACKAGE_MANIFEST_PATH, encodeUWDealPackageZip, decodeUWDealPackageZip, verifyUWDealPackage, } from './deal-package-zip.js';
|
|
49
|
+
export type { UWDealPackageInput, UWDealPackageDecoded, UWPackageDecodeOptions, PackageVerification, PackageVerificationStatus, } from './deal-package-zip.js';
|
|
50
|
+
export { inspectZipSafety, isSafeZipPath } from './zip-safety.js';
|
|
51
|
+
export type { ZipSafetyLimits, ZipSafetyViolation } from './zip-safety.js';
|
|
52
|
+
export { sha256BytesHex } from './integrity.js';
|
|
33
53
|
export { buildAgentContext, buildAgentPrompt, isContextReady, getLayerDependencies, BANCROFT_LAYERS, } from './context.js';
|
|
34
54
|
export type { AgentContext, BancroftPrompt, LayerDefinition } from './context.js';
|
|
35
55
|
export { runBancroftAgent, runBancroftAgentStreaming } from './agents/bancroft.js';
|
|
36
56
|
export type { BancroftRunOptions, BancroftRunResult, ProgressEvent } from './agents/bancroft.js';
|
|
37
57
|
export { WRITE_UW_SECTION_TOOL, WRITE_MULTIPLE_SECTIONS_TOOL, MULTI_SECTION_LAYERS } from './agents/schemas.js';
|
|
38
58
|
export type { ToolOutput } from './agents/schemas.js';
|
|
59
|
+
export { AgentProviderError } from './agents/provider.js';
|
|
60
|
+
export type { AgentProvider, AgentRequest, AgentCompletion, AgentToolCall, AgentToolSchema, AgentMessage, } from './agents/provider.js';
|
|
61
|
+
export { createAnthropicProvider } from './agents/providers/anthropic.js';
|
|
62
|
+
export type { AnthropicProviderOptions } from './agents/providers/anthropic.js';
|
|
63
|
+
export { createReplayProvider, createRecordingProvider, parseAgentCassette, agentRequestFingerprint, CASSETTE_VERSION, } from './agents/providers/replay.js';
|
|
64
|
+
export type { AgentCassette, RecordedExchange, RecordingProvider } from './agents/providers/replay.js';
|
|
39
65
|
export { generateBlankUWFile } from './init.js';
|
|
40
66
|
export { deriveRentRoll, rentRollVariant } from './rentroll.js';
|
|
41
67
|
export type { RentRollVariant, RentRollBasis, RentRollDerivation, DerivedField, DerivedKind, } from './rentroll.js';
|
|
@@ -49,17 +75,20 @@ export { deriveValuation } from './valuation.js';
|
|
|
49
75
|
export type { ValuationDerivation } from './valuation.js';
|
|
50
76
|
export { deriveDCF } from './dcf.js';
|
|
51
77
|
export type { DCFDerivation } from './dcf.js';
|
|
52
|
-
export { MULTIFAMILY_DEFAULTS, OFFICE_DEFAULTS, RETAIL_DEFAULTS, INDUSTRIAL_DEFAULTS, SELF_STORAGE_DEFAULTS, getAssetClassDefaults, getDefaultRange, listDefaultedFields, } from './defaults.js';
|
|
78
|
+
export { MULTIFAMILY_DEFAULTS, OFFICE_DEFAULTS, RETAIL_DEFAULTS, INDUSTRIAL_DEFAULTS, SELF_STORAGE_DEFAULTS, HOSPITALITY_DEFAULTS, SENIOR_HOUSING_DEFAULTS, STUDENT_HOUSING_DEFAULTS, LAND_DEFAULTS, getAssetClassDefaults, getDefaultRange, listDefaultedFields, } from './defaults.js';
|
|
53
79
|
export type { DefaultRange, DefaultUnit, AssetClassDefaults } from './defaults.js';
|
|
54
80
|
export { inferGaps, summarizeGaps, readGapsContent } from './gaps.js';
|
|
55
81
|
export type { GapItem, GapReason, GapSummary, GapsContent, InferGapsOptions } from './gaps.js';
|
|
56
82
|
export { sha256Hex, computeBlockHash, verifyChain, verifyProvenance, } from './integrity.js';
|
|
57
83
|
export type { IntegrityCode, IntegrityIssue, IntegrityResult } from './integrity.js';
|
|
58
84
|
export { canonicalize } from './integrity-canonical.js';
|
|
85
|
+
export { CORE_PACKAGE_NAME, CORE_VERSION } from './version.js';
|
|
86
|
+
export { UW_RECEIPT_VERSION, UW_LITE_CANONICALIZATION, UWX_CANONICALIZATION, RECEIPT_RESULT_TOLERANCE, BUILTIN_POLICY_SET, BUILTIN_POLICY_SET_VERSION, ReceiptError, resolveReceiptSubject, computeReceiptResults, computeResultsDigest, issueReceipt, receiptSigningPayload, verifyReceipt, assertUWReceipt, } from './receipts.js';
|
|
87
|
+
export type { UWReceipt, UWReceiptSubject, UWReceiptResult, UWReceiptComputation, UWReceiptPolicy, UWReceiptSignature, UWReceiptCanonicalization, UWReceiptVerdict, UWReceiptIssue, UWReceiptIssueCode, UWReceiptVerification, ReceiptErrorCode, ReceiptSignatureVerifier, ReceiptSubjectOptions, ReceiptSubjectResolution, ReceiptIssuanceOptions, ReceiptVerificationOptions, } from './receipts.js';
|
|
59
88
|
export { resolveValue, readInFile } from './cascade.js';
|
|
60
89
|
export type { CascadeContext, ResolvedValue, MarketDataLookup, InvestorProfile, GlobalDefaults, SystemDefaults, } from './cascade.js';
|
|
61
90
|
export type { UWBlock, UWFenceAnnotation, UWMeta, UWFieldOverride, UWFrontmatter, UWPipelineState, UWQuickMetrics, ParsedUWFile, ParsedSections, ParseOptions, InstitutionConfig, ValidationMessage, ValidationResult, StageReadiness, FinancialThresholds, ConfidenceLevel, PipelineStatus, ValidationSeverity, DealStage, AssetClass, } from './types.js';
|
|
62
|
-
export { DEFAULT_THRESHOLDS } from './types.js';
|
|
91
|
+
export { DEFAULT_THRESHOLDS, ASSET_CLASSES } from './types.js';
|
|
63
92
|
export { formatCurrency, formatPercent, formatRatio, formatCount, formatDate, formatNull, formatValue, formatPercentCsv, formatNumberCsv, } from './format.js';
|
|
64
93
|
export type { CurrencyOptions, PercentOptions, RatioOptions, CountOptions, DateOptions, NullOptions, } from './format.js';
|
|
65
94
|
export { PROTOCOL_VERSION, FORMAT_VERSION, DEFAULT_NUMBER_FORMAT, DEFAULT_DATE_FORMAT, BUILTIN_VIEW_MODELS, BUILTIN_EDIT_POLICIES, BUILTIN_REMEDIATIONS, BUILTIN_INCOMPLETE_DATA_POLICIES, CASCADE_ORDER, SOURCE_TAGS, lookupIncompleteDataPolicy, } from './protocol.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,4BAA4B,EAAE,MAAM,eAAe,CAAC;AACrE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -5,6 +5,9 @@ export { validateUWFile, lookupRemediation } from './validator.js';
|
|
|
5
5
|
export { compact, diff } from './compactor.js';
|
|
6
6
|
export { render, UnsupportedRenderFormatError } from './renderer.js';
|
|
7
7
|
export { renderReportHtml, REPORT_CSS } from './report.js';
|
|
8
|
+
export { UW_LITE_REPRESENTATION_ID, UWX_REPRESENTATION_ID, UW_LITE_REPRESENTATION_VERSION, UWX_REPRESENTATION_VERSION, UW_LITE_MEDIA_TYPE, UWX_MEDIA_TYPE, UW_LITE_EXTENSION, UW_LITE_SOURCE_DESCRIPTOR, UWX_SOURCE_DESCRIPTOR, UWX_EXTENSION, UWSourceRepresentationError, detectUWSourceRepresentation, migrateLegacyUWMarkdown, } from './source-representation.js';
|
|
9
|
+
export { UWLiteError, parseUWLite, canonicalizeUWLiteFinancial, renderCanonicalUWLite, } from './lite.js';
|
|
10
|
+
export { UW_LITE_BRIDGE_PROFILE, UW_LITE_SOURCE_EXTENSION, UW_LITE_FIELD_MAPPINGS, UWLiteBridgeError, compileUWLite, projectUWEnvelopeToLite, stringifyUWX, } from './lite-bridge.js';
|
|
8
11
|
export { UW_JSON_REPRESENTATION_VERSION, UW_JSON_MEDIA_TYPE, UWJsonError, toUWJson, stringifyUWEnvelope, stringifyUWJson, stringifyUWJsonWithDigest, parseUWJson, parseUWJsonVerified, fromUWJson, UW_JSON_CODEC, } from './uwjson.js';
|
|
9
12
|
export { UW_XML_REPRESENTATION_VERSION, UW_XML_MEDIA_TYPE, UW_XML_NAMESPACE, UWXmlError, stringifyUWXml, parseUWXml, parseUWXmlVerified, UW_XML_CODEC, } from './uwxml.js';
|
|
10
13
|
export { UW_CSV_BUNDLE_VERSION, UW_CSV_BUNDLE_MEDIA_TYPE, UWCSVError, encodeUWCSVBundle, decodeUWCSVBundle, encodeUWCSVZip, decodeUWCSVZip, UW_CSV_BUNDLE_CODEC, } from './uwcsv.js';
|
|
@@ -16,11 +19,30 @@ export { CodecRegistry, UWCodecError } from './codec.js';
|
|
|
16
19
|
export { writeAgentBlock, writeErrorEntry, buildMeta } from './runner.js';
|
|
17
20
|
export { applyEdit, applyEditAsync, resolvePolicy } from './editor.js';
|
|
18
21
|
export { evaluateCalc, parseExpression, evaluate, BUILTINS, CalcError, calcError } from './calc/index.js';
|
|
19
|
-
|
|
22
|
+
// The §VIII.5 quantization boundary. Exported because a host that reports its
|
|
23
|
+
// own derived numbers alongside pack results must quantize them the same way, or
|
|
24
|
+
// its receipt digest will not reproduce.
|
|
25
|
+
export { quantizeDecimal, resolveRoundTo, DEFAULT_ROUND_TO, DEFAULT_ROUND_TO_BY_UNIT, MAX_ROUND_TO, } from './calc/index.js';
|
|
26
|
+
export { MULTIFAMILY_PACK, OFFICE_PACK, RETAIL_PACK, INDUSTRIAL_PACK, SELF_STORAGE_PACK, HOSPITALITY_PACK, SENIOR_HOUSING_PACK, STUDENT_HOUSING_PACK, LAND_PACK, getPackForAssetClass, emitFromAst, emitExcelFormula, emitCalcExcelFormula, ExcelEmitError, } from './packs/index.js';
|
|
20
27
|
export { loadModuleManifest, createModuleRegistry, getModuleCalculationsForAssetClass, ModuleRegistryError, } from './modules.js';
|
|
28
|
+
// ─── RFC 0018: document profiles, lease abstracts, deal packages ─────────────
|
|
29
|
+
// All browser-safe: no I/O, no network, no hashing implementation imported.
|
|
30
|
+
export { BUILTIN_DOCUMENT_PROFILES, DEAL_UNDERWRITING_PROFILE, LEASE_ABSTRACT_PROFILE, SOURCE_NOTE_PROFILE, DOCUMENT_PROFILE_PATTERN, lookupDocumentProfile, BUILTIN_EDGE_TYPES, lookupEdgeType, isEdgeTypeValidOnLayer, } from './protocol.js';
|
|
31
|
+
export { UW_PACKAGE_VERSION, UW_PACKAGE_ZIP_CODEC, UW_PACKAGE_ZIP_MEDIA_TYPE, UW_PACKAGE_CONTEXT_CODEC, UW_PACKAGE_CONTEXT_MEDIA_TYPE, CONTEXT_INLINABLE_ROLES, UWPackageError, isSafeMemberPath, validateUWDealPackageManifest, assertUWDealPackageManifest, projectPackageLinksToEntityEdges, edgeTypesForLayer, } from './deal-package.js';
|
|
32
|
+
export { projectUWDealPackageContext, validateUWDealPackageContext, verifyContextContentDigests, } from './deal-package-context.js';
|
|
33
|
+
export { LEASE_ABSTRACT_PROFILE_ID, LEASE_ABSTRACT_GROUPS, LEASE_TERM_STATUSES, LEASE_ARTIFACT_KINDS, LeaseAbstractError, validateLeaseAbstract, assertLeaseAbstract, projectLeaseAbstractToRentRoll, } from './lease-abstract.js';
|
|
34
|
+
export { PACKAGE_MANIFEST_PATH, encodeUWDealPackageZip, decodeUWDealPackageZip, verifyUWDealPackage, } from './deal-package-zip.js';
|
|
35
|
+
export { inspectZipSafety, isSafeZipPath } from './zip-safety.js';
|
|
36
|
+
export { sha256BytesHex } from './integrity.js';
|
|
21
37
|
export { buildAgentContext, buildAgentPrompt, isContextReady, getLayerDependencies, BANCROFT_LAYERS, } from './context.js';
|
|
22
38
|
export { runBancroftAgent, runBancroftAgentStreaming } from './agents/bancroft.js';
|
|
23
39
|
export { WRITE_UW_SECTION_TOOL, WRITE_MULTIPLE_SECTIONS_TOOL, MULTI_SECTION_LAYERS } from './agents/schemas.js';
|
|
40
|
+
// The provider seam (RFC-free, additive). Deliberately NOT re-exported from
|
|
41
|
+
// browser.ts: `createAnthropicProvider` reaches `@anthropic-ai/sdk`, and the
|
|
42
|
+
// browser entry must never pull it in.
|
|
43
|
+
export { AgentProviderError } from './agents/provider.js';
|
|
44
|
+
export { createAnthropicProvider } from './agents/providers/anthropic.js';
|
|
45
|
+
export { createReplayProvider, createRecordingProvider, parseAgentCassette, agentRequestFingerprint, CASSETTE_VERSION, } from './agents/providers/replay.js';
|
|
24
46
|
export { generateBlankUWFile } from './init.js';
|
|
25
47
|
// ─── Section footing (line items → section totals) ────────────────────────────
|
|
26
48
|
export { deriveRentRoll, rentRollVariant } from './rentroll.js';
|
|
@@ -30,12 +52,14 @@ export { deriveSourcesUses } from './sourcesuses.js';
|
|
|
30
52
|
export { deriveValuation } from './valuation.js';
|
|
31
53
|
export { deriveDCF } from './dcf.js';
|
|
32
54
|
// ─── Asset-class defaults & cascade (Protocol §V.7-§V.8) ──────────────────────
|
|
33
|
-
export { MULTIFAMILY_DEFAULTS, OFFICE_DEFAULTS, RETAIL_DEFAULTS, INDUSTRIAL_DEFAULTS, SELF_STORAGE_DEFAULTS, getAssetClassDefaults, getDefaultRange, listDefaultedFields, } from './defaults.js';
|
|
55
|
+
export { MULTIFAMILY_DEFAULTS, OFFICE_DEFAULTS, RETAIL_DEFAULTS, INDUSTRIAL_DEFAULTS, SELF_STORAGE_DEFAULTS, HOSPITALITY_DEFAULTS, SENIOR_HOUSING_DEFAULTS, STUDENT_HOUSING_DEFAULTS, LAND_DEFAULTS, getAssetClassDefaults, getDefaultRange, listDefaultedFields, } from './defaults.js';
|
|
34
56
|
export { inferGaps, summarizeGaps, readGapsContent } from './gaps.js';
|
|
35
57
|
export { sha256Hex, computeBlockHash, verifyChain, verifyProvenance, } from './integrity.js';
|
|
36
58
|
export { canonicalize } from './integrity-canonical.js';
|
|
59
|
+
export { CORE_PACKAGE_NAME, CORE_VERSION } from './version.js';
|
|
60
|
+
export { UW_RECEIPT_VERSION, UW_LITE_CANONICALIZATION, UWX_CANONICALIZATION, RECEIPT_RESULT_TOLERANCE, BUILTIN_POLICY_SET, BUILTIN_POLICY_SET_VERSION, ReceiptError, resolveReceiptSubject, computeReceiptResults, computeResultsDigest, issueReceipt, receiptSigningPayload, verifyReceipt, assertUWReceipt, } from './receipts.js';
|
|
37
61
|
export { resolveValue, readInFile } from './cascade.js';
|
|
38
|
-
export { DEFAULT_THRESHOLDS } from './types.js';
|
|
62
|
+
export { DEFAULT_THRESHOLDS, ASSET_CLASSES } from './types.js';
|
|
39
63
|
// ─── Display formatting ───────────────────────────────────────────────────────
|
|
40
64
|
export { formatCurrency, formatPercent, formatRatio, formatCount, formatDate, formatNull, formatValue, formatPercentCsv, formatNumberCsv, } from './format.js';
|
|
41
65
|
// ─── Protocol surface ─────────────────────────────────────────────────────────
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,qBAAqB;AAErB,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,4BAA4B,EAAE,MAAM,eAAe,CAAC;AAErE,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/init.js
CHANGED
package/dist/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
package/dist/integrity.d.ts
CHANGED
|
@@ -7,6 +7,15 @@ import type { EditPolicy } from './protocol.js';
|
|
|
7
7
|
export declare function sha256Hex(value: unknown): Promise<string>;
|
|
8
8
|
/** SHA-256 of an exact UTF-8 string, without JSON canonicalization. */
|
|
9
9
|
export declare function sha256TextHex(text: string): Promise<string>;
|
|
10
|
+
/**
|
|
11
|
+
* SHA-256 of exact bytes.
|
|
12
|
+
*
|
|
13
|
+
* Required for binary payloads (a PDF in a deal package). Routing those through
|
|
14
|
+
* `sha256TextHex` would be wrong: any byte above 0x7F would be re-encoded as
|
|
15
|
+
* multi-byte UTF-8 and produce a digest for different bytes than the ones on
|
|
16
|
+
* disk.
|
|
17
|
+
*/
|
|
18
|
+
export declare function sha256BytesHex(bytes: Uint8Array): Promise<string>;
|
|
10
19
|
/**
|
|
11
20
|
* Compute the content_hash for a block. Strips the block's own
|
|
12
21
|
* `_meta.content_hash` and `_meta.signature` before hashing (handled by the
|
package/dist/integrity.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integrity.d.ts","sourceRoot":"","sources":["../src/integrity.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKhD;;;GAGG;AACH,wBAAsB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAE/D;AAED,uEAAuE;AACvE,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"integrity.d.ts","sourceRoot":"","sources":["../src/integrity.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKhD;;;GAGG;AACH,wBAAsB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAE/D;AAED,uEAAuE;AACvE,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAEjE;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAiBvE;AAWD;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAKtE;AAID,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE5F,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAID;;;;;;;;;;;GAWG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CA2EhF;AAID;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,YAAY,EACpB,QAAQ,GAAE,SAAS,UAAU,EAA0B,GACtD,eAAe,CA0CjB"}
|
package/dist/integrity.js
CHANGED
|
@@ -21,7 +21,17 @@ export async function sha256Hex(value) {
|
|
|
21
21
|
}
|
|
22
22
|
/** SHA-256 of an exact UTF-8 string, without JSON canonicalization. */
|
|
23
23
|
export async function sha256TextHex(text) {
|
|
24
|
-
|
|
24
|
+
return sha256BytesHex(new TextEncoder().encode(text));
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* SHA-256 of exact bytes.
|
|
28
|
+
*
|
|
29
|
+
* Required for binary payloads (a PDF in a deal package). Routing those through
|
|
30
|
+
* `sha256TextHex` would be wrong: any byte above 0x7F would be re-encoded as
|
|
31
|
+
* multi-byte UTF-8 and produce a digest for different bytes than the ones on
|
|
32
|
+
* disk.
|
|
33
|
+
*/
|
|
34
|
+
export async function sha256BytesHex(bytes) {
|
|
25
35
|
const g = globalThis;
|
|
26
36
|
const isNode = !!g.process?.versions?.node;
|
|
27
37
|
if (isNode) {
|
|
@@ -30,7 +40,7 @@ export async function sha256TextHex(text) {
|
|
|
30
40
|
}
|
|
31
41
|
const subtle = g.crypto?.subtle;
|
|
32
42
|
if (!subtle)
|
|
33
|
-
throw new Error('integrity.
|
|
43
|
+
throw new Error('integrity.sha256BytesHex: no crypto provider available.');
|
|
34
44
|
const digest = await subtle.digest('SHA-256', bytes);
|
|
35
45
|
return bytesToHex(new Uint8Array(digest));
|
|
36
46
|
}
|
package/dist/integrity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integrity.js","sourceRoot":"","sources":["../src/integrity.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4CAA4C;AAC5C,EAAE;AACF,gBAAgB;AAChB,uEAAuE;AACvE,yCAAyC;AACzC,8EAA8E;AAC9E,2EAA2E;AAC3E,0EAA0E;AAC1E,6EAA6E;AAC7E,qEAAqE;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,KAAc;IAC5C,OAAO,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY;IAC9C,
|
|
1
|
+
{"version":3,"file":"integrity.js","sourceRoot":"","sources":["../src/integrity.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4CAA4C;AAC5C,EAAE;AACF,gBAAgB;AAChB,uEAAuE;AACvE,yCAAyC;AACzC,8EAA8E;AAC9E,2EAA2E;AAC3E,0EAA0E;AAC1E,6EAA6E;AAC7E,qEAAqE;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,KAAc;IAC5C,OAAO,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY;IAC9C,OAAO,cAAc,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAiB;IAIpD,MAAM,CAAC,GAAG,UAGT,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC;IAC3C,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,CAA0B,CAAC;QACnE,OAAO,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9D,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC;IAChC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IACxF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAgC,CAAC,CAAC;IAChF,OAAO,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,UAAU,CAAC,KAAiB;IACnC,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACxB,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAAc;IACnD,sEAAsE;IACtE,qEAAqE;IACrE,iCAAiC;IACjC,OAAO,SAAS,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;AAC5D,CAAC;AAsBD,gFAAgF;AAEhF;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAoB;IACpD,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,IAAI,gBAAgB,GAAG,CAAC,CAAC;IACzB,IAAI,cAAc,GAAG,CAAC,CAAC;IAEvB,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrD,uEAAuE;QACvE,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,KAAK,GAAc,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC;QAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC;QAC9E,IAAI,CAAC,UAAU;YAAE,SAAS;QAC1B,gBAAgB,EAAE,CAAC;QAEnB,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,IAAI,QAAQ,GAAkB,IAAI,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YACxB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;YAExC,wBAAwB;YACxB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAChC,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,SAAS;oBACnB,OAAO,EAAE,SAAS;oBAClB,OAAO,EAAE,UAAU,KAAK,CAAC,IAAI,CAAC,OAAO,QAAQ,SAAS,yDAAyD;iBAChH,CAAC,CAAC;gBACH,OAAO,GAAG,KAAK,CAAC;gBAChB,SAAS;YACX,CAAC;YAED,wBAAwB;YACxB,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;gBAC3B,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,SAAS;oBACnB,OAAO,EAAE,SAAS;oBAClB,OAAO,EAAE,UAAU,KAAK,CAAC,IAAI,CAAC,OAAO,QAAQ,SAAS,oCAAoC;oBAC1F,QAAQ,EAAE,UAAU;oBACpB,MAAM,EAAE,OAAO;iBAChB,CAAC,CAAC;gBACH,OAAO,GAAG,KAAK,CAAC;YAClB,CAAC;YAED,+BAA+B;YAC/B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACV,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;gBACtC,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACxB,MAAM,CAAC,IAAI,CAAC;wBACV,IAAI,EAAE,QAAQ;wBACd,QAAQ,EAAE,OAAO;wBACjB,OAAO,EAAE,SAAS;wBAClB,OAAO,EAAE,UAAU,KAAK,CAAC,IAAI,CAAC,OAAO,QAAQ,SAAS,2CAA2C;wBACjG,QAAQ,EAAE,QAAQ,IAAI,QAAQ;wBAC9B,MAAM,EAAE,MAAM,IAAI,WAAW;qBAC9B,CAAC,CAAC;oBACH,OAAO,GAAG,KAAK,CAAC;gBAClB,CAAC;YACH,CAAC;YAED,QAAQ,GAAG,OAAO,CAAC;QACrB,CAAC;QACD,IAAI,OAAO;YAAE,cAAc,EAAE,CAAC;IAChC,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,CAAC;IACnE,OAAO;QACL,EAAE,EAAE,MAAM,KAAK,CAAC;QAChB,MAAM;QACN,eAAe,EAAE,cAAc;QAC/B,kBAAkB,EAAE,gBAAgB;KACrC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAoB,EACpB,WAAkC,qBAAqB;IAEvD,MAAM,MAAM,GAAqB,EAAE,CAAC;IAEpC,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM;YAAE,SAAS;QAEtB,0BAA0B;QAC1B,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC;YACnD,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,SAAS;gBAClB,OAAO,EAAE,UAAU,IAAI,CAAC,IAAI,CAAC,KAAK,aAAa,UAAU,+BAA+B,SAAS,wBAAwB,MAAM,CAAC,SAAS,KAAK;aAC/I,CAAC,CAAC;QACL,CAAC;QAED,2CAA2C;QAC3C,IACE,MAAM,CAAC,iBAAiB;YACxB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC;YACrB,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,EACjD,CAAC;YACD,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,SAAS;gBAClB,OAAO,EAAE,YAAY,SAAS,sBAAsB,MAAM,CAAC,cAAc,6CAA6C,IAAI,CAAC,IAAI,CAAC,OAAO,oCAAoC;aAC5K,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,CAAC;IACnE,OAAO;QACL,EAAE,EAAE,MAAM,KAAK,CAAC;QAChB,MAAM;QACN,eAAe,EAAE,CAAC;QAClB,kBAAkB,EAAE,CAAC;KACtB,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,SAAS,YAAY,CAAC,MAAoB,EAAE,SAAiB;IAC3D,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACzC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,YAAY,IAAK,KAAgB;QAAE,OAAO,KAAgB,CAAC;IAC/D,2EAA2E;IAC3E,yCAAyC;IACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,KAAgC,CAAC,CAAC;IACjE,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AAC7B,CAAC;AAED,SAAS,WAAW,CAAC,MAAc,EAAE,QAA+B;IAClE,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,SAAS,CAAC,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC;YAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,SAAS,CAAC,OAAe,EAAE,KAAa;IAC/C,yEAAyE;IACzE,IAAI,OAAO,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe;QACpD,OAAO,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACpC,OAAO,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAID,SAAS,aAAa,CAAC,KAAa,EAAE,MAAc;IAClD,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC;QAAE,OAAO,QAAQ,CAAC;IACvF,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,OAAO,CAAC;IAC9E,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,eAAe,CAAC,SAAkC,EAAE,KAAiB;IAC5E,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,QAAQ;YACX,OAAO,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,OAAO,CAAC;QAChD,KAAK,YAAY;YACf,OAAO,KAAK,KAAK,OAAO,CAAC;QAC3B,KAAK,YAAY;YACf,OAAO,KAAK,KAAK,OAAO,CAAC;QAC3B,KAAK,aAAa;YAChB,OAAO,KAAK,KAAK,QAAQ,CAAC;QAC5B;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { ProtocolError } from './protocol.js';
|
|
2
|
+
export declare const LEASE_ABSTRACT_PROFILE_ID: "lease-abstract-v1";
|
|
3
|
+
/** The six logical groups a lease abstract is organized into. */
|
|
4
|
+
export declare const LEASE_ABSTRACT_GROUPS: readonly ["lease_context", "lease_term", "lease_economics", "lease_obligations", "lease_credit", "lease_abstract_findings"];
|
|
5
|
+
export type LeaseAbstractGroup = (typeof LEASE_ABSTRACT_GROUPS)[number];
|
|
6
|
+
/** Why a term is absent. Never conflate these with "no such obligation exists". */
|
|
7
|
+
export type LeaseTermStatus = 'not_stated' | 'ambiguous' | 'not_reviewed';
|
|
8
|
+
export declare const LEASE_TERM_STATUSES: readonly LeaseTermStatus[];
|
|
9
|
+
export interface SourceRef {
|
|
10
|
+
/** Package member id, or an external immutable source identifier. */
|
|
11
|
+
source: string;
|
|
12
|
+
/** Human-readable locator, e.g. "§3.2, p. 14". Required — a citation with no locator is not a citation. */
|
|
13
|
+
locator: string;
|
|
14
|
+
[key: string]: unknown;
|
|
15
|
+
}
|
|
16
|
+
export interface LeaseTermValue {
|
|
17
|
+
value: unknown;
|
|
18
|
+
/** Required whenever `value` is null. Forbidden otherwise. */
|
|
19
|
+
status?: LeaseTermStatus;
|
|
20
|
+
source_ref?: SourceRef;
|
|
21
|
+
[key: string]: unknown;
|
|
22
|
+
}
|
|
23
|
+
export type LeaseArtifactKind = 'executed_lease' | 'proposal' | 'amendment' | 'guaranty' | 'estoppel' | 'other';
|
|
24
|
+
export declare const LEASE_ARTIFACT_KINDS: readonly LeaseArtifactKind[];
|
|
25
|
+
export interface LeaseAbstract {
|
|
26
|
+
document_id: string;
|
|
27
|
+
lease_id: string;
|
|
28
|
+
artifact_kind: LeaseArtifactKind;
|
|
29
|
+
tenant: string;
|
|
30
|
+
premises: string;
|
|
31
|
+
/** Package member ids or external identifiers the facts were read from. */
|
|
32
|
+
governing_documents: string[];
|
|
33
|
+
lease_context?: Record<string, LeaseTermValue>;
|
|
34
|
+
lease_term?: Record<string, LeaseTermValue>;
|
|
35
|
+
lease_economics?: Record<string, LeaseTermValue>;
|
|
36
|
+
lease_obligations?: Record<string, LeaseTermValue>;
|
|
37
|
+
lease_credit?: Record<string, LeaseTermValue>;
|
|
38
|
+
lease_abstract_findings?: Record<string, unknown>;
|
|
39
|
+
[key: string]: unknown;
|
|
40
|
+
}
|
|
41
|
+
export declare class LeaseAbstractError extends Error {
|
|
42
|
+
readonly code: string;
|
|
43
|
+
constructor(code: string, message: string);
|
|
44
|
+
}
|
|
45
|
+
export declare function validateLeaseAbstract(candidate: unknown): ProtocolError[];
|
|
46
|
+
export declare function assertLeaseAbstract(candidate: unknown): LeaseAbstract;
|
|
47
|
+
export interface RentRollProjectionRow {
|
|
48
|
+
unit_id?: string;
|
|
49
|
+
tenant: string;
|
|
50
|
+
[key: string]: unknown;
|
|
51
|
+
}
|
|
52
|
+
export interface RentRollProjectionReport {
|
|
53
|
+
profile: 'rent-roll-v1';
|
|
54
|
+
projected_fields: string[];
|
|
55
|
+
omitted: Array<{
|
|
56
|
+
term: string;
|
|
57
|
+
reason: string;
|
|
58
|
+
}>;
|
|
59
|
+
conflicts: Array<{
|
|
60
|
+
term: string;
|
|
61
|
+
reason: string;
|
|
62
|
+
}>;
|
|
63
|
+
lossy: true;
|
|
64
|
+
}
|
|
65
|
+
export interface RentRollProjectionResult {
|
|
66
|
+
row: RentRollProjectionRow | null;
|
|
67
|
+
report: RentRollProjectionReport;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Project a lease abstract into a single rent-roll row.
|
|
71
|
+
*
|
|
72
|
+
* Deliberately narrow. It maps only unambiguous, current lease facts, and it
|
|
73
|
+
* MUST NOT calculate a rent amount, annualize a partial period, or choose
|
|
74
|
+
* between conflicting amendments — those are underwriting judgments, and a
|
|
75
|
+
* projection that made them would be inventing facts under the guise of a
|
|
76
|
+
* format conversion.
|
|
77
|
+
*
|
|
78
|
+
* It never mutates a deal. The caller applies the resulting row through the
|
|
79
|
+
* normal Tier-2 editor contract, where byte preservation and provenance apply.
|
|
80
|
+
*/
|
|
81
|
+
export declare function projectLeaseAbstractToRentRoll(abstract: LeaseAbstract): RentRollProjectionResult;
|
|
82
|
+
//# sourceMappingURL=lease-abstract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lease-abstract.d.ts","sourceRoot":"","sources":["../src/lease-abstract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
// `lease-abstract-v1` document profile (RFC 0018 §2).
|
|
2
|
+
//
|
|
3
|
+
// A lease abstract is a portable, attributable record of one executed lease and
|
|
4
|
+
// its amendments. It carries *descriptive facts only* — no financial
|
|
5
|
+
// calculation is introduced, and no pack applies to it.
|
|
6
|
+
//
|
|
7
|
+
// Two rules carry the profile's weight:
|
|
8
|
+
//
|
|
9
|
+
// 1. Every asserted material term must be source-locatable.
|
|
10
|
+
// 2. `null` never means "an agent looked and found no obligation". A term may
|
|
11
|
+
// be absent only with an explicit status saying why.
|
|
12
|
+
//
|
|
13
|
+
// Rule 2 exists because the alternative is silent invention. An extractor that
|
|
14
|
+
// writes `null` for a term it could not find is indistinguishable from one
|
|
15
|
+
// asserting the lease has no such term, and those are very different claims to
|
|
16
|
+
// put in front of a credit committee.
|
|
17
|
+
export const LEASE_ABSTRACT_PROFILE_ID = 'lease-abstract-v1';
|
|
18
|
+
/** The six logical groups a lease abstract is organized into. */
|
|
19
|
+
export const LEASE_ABSTRACT_GROUPS = Object.freeze([
|
|
20
|
+
'lease_context',
|
|
21
|
+
'lease_term',
|
|
22
|
+
'lease_economics',
|
|
23
|
+
'lease_obligations',
|
|
24
|
+
'lease_credit',
|
|
25
|
+
'lease_abstract_findings',
|
|
26
|
+
]);
|
|
27
|
+
export const LEASE_TERM_STATUSES = Object.freeze([
|
|
28
|
+
'not_stated',
|
|
29
|
+
'ambiguous',
|
|
30
|
+
'not_reviewed',
|
|
31
|
+
]);
|
|
32
|
+
export const LEASE_ARTIFACT_KINDS = Object.freeze([
|
|
33
|
+
'executed_lease',
|
|
34
|
+
'proposal',
|
|
35
|
+
'amendment',
|
|
36
|
+
'guaranty',
|
|
37
|
+
'estoppel',
|
|
38
|
+
'other',
|
|
39
|
+
]);
|
|
40
|
+
export class LeaseAbstractError extends Error {
|
|
41
|
+
code;
|
|
42
|
+
constructor(code, message) {
|
|
43
|
+
super(`[${code}] ${message}`);
|
|
44
|
+
this.name = 'LeaseAbstractError';
|
|
45
|
+
this.code = code;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
function leaseError(code, message, pointer) {
|
|
49
|
+
return { category: 'validate', code, message, ...(pointer ? { pointer } : {}) };
|
|
50
|
+
}
|
|
51
|
+
function isRecord(v) {
|
|
52
|
+
return typeof v === 'object' && v !== null && !Array.isArray(v);
|
|
53
|
+
}
|
|
54
|
+
export function validateLeaseAbstract(candidate) {
|
|
55
|
+
const errors = [];
|
|
56
|
+
if (!isRecord(candidate)) {
|
|
57
|
+
return [leaseError('LEASE-001', 'Lease abstract must be an object.')];
|
|
58
|
+
}
|
|
59
|
+
const abstract = candidate;
|
|
60
|
+
for (const key of ['document_id', 'lease_id', 'tenant', 'premises']) {
|
|
61
|
+
if (typeof abstract[key] !== 'string' || abstract[key].length === 0) {
|
|
62
|
+
errors.push(leaseError('LEASE-002', `${key} is required.`, key));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
if (!LEASE_ARTIFACT_KINDS.includes(abstract.artifact_kind)) {
|
|
66
|
+
errors.push(leaseError('LEASE-003', 'artifact_kind must distinguish an executed lease from a proposal, amendment, guaranty, or estoppel.', 'artifact_kind'));
|
|
67
|
+
}
|
|
68
|
+
if (!Array.isArray(abstract.governing_documents) ||
|
|
69
|
+
abstract.governing_documents.length === 0 ||
|
|
70
|
+
!abstract.governing_documents.every((d) => typeof d === 'string' && d.length > 0)) {
|
|
71
|
+
errors.push(leaseError('LEASE-004', 'governing_documents must name at least one source artifact the facts were read from.', 'governing_documents'));
|
|
72
|
+
}
|
|
73
|
+
for (const group of LEASE_ABSTRACT_GROUPS) {
|
|
74
|
+
if (group === 'lease_abstract_findings')
|
|
75
|
+
continue; // narrative, not term/value
|
|
76
|
+
const value = abstract[group];
|
|
77
|
+
if (value === undefined)
|
|
78
|
+
continue;
|
|
79
|
+
if (!isRecord(value)) {
|
|
80
|
+
errors.push(leaseError('LEASE-005', `${group} must be an object.`, group));
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
for (const [term, entry] of Object.entries(value)) {
|
|
84
|
+
const at = `${group}.${term}`;
|
|
85
|
+
if (!isRecord(entry)) {
|
|
86
|
+
errors.push(leaseError('LEASE-006', 'Term must be an object with a value.', at));
|
|
87
|
+
continue;
|
|
88
|
+
}
|
|
89
|
+
const t = entry;
|
|
90
|
+
if (!('value' in t)) {
|
|
91
|
+
errors.push(leaseError('LEASE-007', 'Term must carry a value.', at));
|
|
92
|
+
continue;
|
|
93
|
+
}
|
|
94
|
+
if (t.value === null) {
|
|
95
|
+
if (!t.status || !LEASE_TERM_STATUSES.includes(t.status)) {
|
|
96
|
+
errors.push(leaseError('LEASE-008', 'A null term requires an explicit status (not_stated | ambiguous | not_reviewed). ' +
|
|
97
|
+
'Null must never be read as "no such obligation exists".', at));
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
if (t.status !== undefined) {
|
|
102
|
+
errors.push(leaseError('LEASE-009', 'status is only meaningful when value is null.', `${at}.status`));
|
|
103
|
+
}
|
|
104
|
+
// An asserted term without a resolvable citation is exactly the claim
|
|
105
|
+
// this profile exists to prevent.
|
|
106
|
+
if (!isRecord(t.source_ref)) {
|
|
107
|
+
errors.push(leaseError('LEASE-010', 'Every asserted term requires a source_ref.', `${at}.source_ref`));
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
const ref = t.source_ref;
|
|
111
|
+
if (typeof ref.source !== 'string' || ref.source.length === 0) {
|
|
112
|
+
errors.push(leaseError('LEASE-011', 'source_ref.source is required.', `${at}.source_ref.source`));
|
|
113
|
+
}
|
|
114
|
+
if (typeof ref.locator !== 'string' || ref.locator.length === 0) {
|
|
115
|
+
errors.push(leaseError('LEASE-012', 'source_ref.locator is required.', `${at}.source_ref.locator`));
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return errors;
|
|
122
|
+
}
|
|
123
|
+
export function assertLeaseAbstract(candidate) {
|
|
124
|
+
const errors = validateLeaseAbstract(candidate);
|
|
125
|
+
if (errors.length > 0) {
|
|
126
|
+
throw new LeaseAbstractError(errors[0].code, errors.map((e) => e.message).join('; '));
|
|
127
|
+
}
|
|
128
|
+
return candidate;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Project a lease abstract into a single rent-roll row.
|
|
132
|
+
*
|
|
133
|
+
* Deliberately narrow. It maps only unambiguous, current lease facts, and it
|
|
134
|
+
* MUST NOT calculate a rent amount, annualize a partial period, or choose
|
|
135
|
+
* between conflicting amendments — those are underwriting judgments, and a
|
|
136
|
+
* projection that made them would be inventing facts under the guise of a
|
|
137
|
+
* format conversion.
|
|
138
|
+
*
|
|
139
|
+
* It never mutates a deal. The caller applies the resulting row through the
|
|
140
|
+
* normal Tier-2 editor contract, where byte preservation and provenance apply.
|
|
141
|
+
*/
|
|
142
|
+
export function projectLeaseAbstractToRentRoll(abstract) {
|
|
143
|
+
const report = {
|
|
144
|
+
profile: 'rent-roll-v1',
|
|
145
|
+
projected_fields: [],
|
|
146
|
+
omitted: [],
|
|
147
|
+
conflicts: [],
|
|
148
|
+
lossy: true,
|
|
149
|
+
};
|
|
150
|
+
if (abstract.artifact_kind !== 'executed_lease') {
|
|
151
|
+
report.omitted.push({
|
|
152
|
+
term: '(entire abstract)',
|
|
153
|
+
reason: `artifact_kind is ${abstract.artifact_kind}; only an executed lease projects to a rent-roll row.`,
|
|
154
|
+
});
|
|
155
|
+
return { row: null, report };
|
|
156
|
+
}
|
|
157
|
+
const row = { tenant: abstract.tenant };
|
|
158
|
+
report.projected_fields.push('tenant');
|
|
159
|
+
const MAPPINGS = [
|
|
160
|
+
['lease_context', 'suite', 'unit_id'],
|
|
161
|
+
['lease_term', 'commencement', 'lease_start'],
|
|
162
|
+
['lease_term', 'expiration', 'lease_end'],
|
|
163
|
+
['lease_economics', 'base_rent_annual', 'base_rent_annual'],
|
|
164
|
+
];
|
|
165
|
+
for (const [group, term, target] of MAPPINGS) {
|
|
166
|
+
const entry = abstract[group]?.[term];
|
|
167
|
+
if (!entry) {
|
|
168
|
+
report.omitted.push({ term: `${group}.${term}`, reason: 'not present in the abstract' });
|
|
169
|
+
continue;
|
|
170
|
+
}
|
|
171
|
+
if (entry.value === null) {
|
|
172
|
+
// An ambiguous term is a conflict a human must resolve; a merely unstated
|
|
173
|
+
// one is an omission. Collapsing the two would hide the disagreement.
|
|
174
|
+
const bucket = entry.status === 'ambiguous' ? report.conflicts : report.omitted;
|
|
175
|
+
bucket.push({ term: `${group}.${term}`, reason: `status: ${entry.status ?? 'unknown'}` });
|
|
176
|
+
continue;
|
|
177
|
+
}
|
|
178
|
+
row[target] = entry.value;
|
|
179
|
+
report.projected_fields.push(target);
|
|
180
|
+
}
|
|
181
|
+
return { row, report };
|
|
182
|
+
}
|
|
183
|
+
//# sourceMappingURL=lease-abstract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lease-abstract.js","sourceRoot":"","sources":["../src/lease-abstract.ts"],"names":[],"mappings":"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"}
|