Этап 4 добивка двух хвостов: settlement polarity и чистое разделение month_close / RBP в live acceptance
This commit is contained in:
@@ -26,6 +26,8 @@ export interface TemporalWindow {
|
||||
export interface ClaimBoundAnchorAudit {
|
||||
claim_type: ClaimType;
|
||||
settlement_role?: "supplier" | "customer" | "mixed" | "unknown";
|
||||
settlement_role_resolution_reason?: string[];
|
||||
polarity_resolution_status?: "resolved_supplier" | "resolved_customer" | "mixed" | "unknown" | "not_applicable";
|
||||
required_anchors: string[];
|
||||
resolved_anchors: Record<string, string[]>;
|
||||
missing_anchors: string[];
|
||||
@@ -431,12 +433,29 @@ export function resolveClaimBoundAnchors(input: {
|
||||
if (!allowedContextWindow && input.primaryPeriod) {
|
||||
reasonCodes.push("controlled_temporal_expansion_window_unavailable");
|
||||
}
|
||||
const settlementRole = resolveSettlementRole({
|
||||
const settlementRoleRaw = resolveSettlementRole({
|
||||
claimType,
|
||||
counterpartyScope: resolvedAnchors.counterparty_scope ?? [],
|
||||
accountPrefixes,
|
||||
userMessage: input.userMessage
|
||||
});
|
||||
const settlementRole = typeof settlementRoleRaw === "string" ? settlementRoleRaw : undefined;
|
||||
const settlementRoleReason: string[] =
|
||||
claimType === "prove_settlement_closure_state" || claimType === "prove_advance_offset_state"
|
||||
? settlementRole
|
||||
? [`settlement_role_resolved_${settlementRole}`]
|
||||
: ["no_supplier_customer_anchor"]
|
||||
: [];
|
||||
const polarityResolutionStatus =
|
||||
claimType === "prove_settlement_closure_state" || claimType === "prove_advance_offset_state"
|
||||
? settlementRole === "supplier"
|
||||
? "resolved_supplier"
|
||||
: settlementRole === "customer"
|
||||
? "resolved_customer"
|
||||
: settlementRole === "mixed"
|
||||
? "mixed"
|
||||
: "unknown"
|
||||
: "not_applicable";
|
||||
if (
|
||||
(claimType === "prove_settlement_closure_state" || claimType === "prove_advance_offset_state") &&
|
||||
(settlementRole === "mixed" || settlementRole === "unknown")
|
||||
@@ -447,6 +466,8 @@ export function resolveClaimBoundAnchors(input: {
|
||||
return {
|
||||
claim_type: claimType,
|
||||
settlement_role: settlementRole,
|
||||
settlement_role_resolution_reason: settlementRoleReason,
|
||||
polarity_resolution_status: polarityResolutionStatus,
|
||||
required_anchors: requiredAnchors,
|
||||
resolved_anchors: resolvedAnchors,
|
||||
missing_anchors: missingAnchors,
|
||||
|
||||
Reference in New Issue
Block a user