@mj-biz-apps/contracts-core-entities-server 0.1.1 → 0.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.
@@ -226,6 +226,24 @@ export declare class ContractEntityServer extends ContractEntity {
226
226
  * is the primary flow this rule exists to police. Gated on `isNewlySelected` instead, so an ordinary
227
227
  * re-save of an existing chain is not re-policed and legacy rows are not retro-refused.
228
228
  */
229
+ /**
230
+ * R-4 — a contract may only be superseded by another contract for the SAME CUSTOMER.
231
+ *
232
+ * `supersede.panel.ts` filters the picker to the same customer, and that decides what is OFFERED.
233
+ * This decides what is ALLOWED, which is a different question: the operation is reachable without
234
+ * the picker — `Contracts.Supersede` is a remote operation, and `SupersededByContractID` is a
235
+ * writable column — so a rule enforced only in the dropdown is a rule enforced nowhere.
236
+ *
237
+ * WHY IT MATTERS BEYOND TIDINESS. Linking across customers points one organisation's lineage at
238
+ * another's, so the successor's terms read as governing a party that never signed them, and the
239
+ * predecessor's customer loses the trail to whatever actually replaced their agreement.
240
+ *
241
+ * `CustomerOrganizationID` is NOT NULL on this table, so both sides always have one and there is no
242
+ * "unknown customer" case to be lenient about. A row that cannot be read is reported by
243
+ * {@link refuseCrossLevelSupersession}, which runs first and returns on the same not-found; this
244
+ * skips a second message for a failure already recorded rather than trusting another layer.
245
+ */
246
+ private refuseCrossCustomerSupersession;
229
247
  private refuseCrossLevelSupersession;
230
248
  /**
231
249
  * Walk up `<column>` from `startID`; return the chain as text if it reaches this record, else null.
@@ -1 +1 @@
1
- {"version":3,"file":"ContractEntityServer.d.ts","sourceRoot":"","sources":["../src/ContractEntityServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EACH,UAAU,EAEV,KAAK,mBAAmB,EAIxB,gBAAgB,EACnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAuB,MAAM,iCAAiC,CAAC;AAGtF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAK9E;AAqBD,qBACa,oBAAqB,SAAQ,cAAc;IACpD;;;;;;;;;;OAUG;IACmB,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IA0B9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACmB,aAAa,IAAI,OAAO,CAAC,gBAAgB,CAAC;IA+EhE;;;;;;;;;;;;OAYG;IACmB,MAAM,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAiC7E;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;YACW,uBAAuB;IAmCrC;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;;;;OAOG;YACW,mBAAmB;IA6BjC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;YACW,mBAAmB;IA4CjC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,OAAO,CAAC,oBAAoB;IAY5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;YACW,4BAA4B;IA6D1C;;;;;;;;;;;OAWG;YACW,kBAAkB;IA0BhC;;;;;;;;;;;;;;;OAeG;IACH,OAAO,KAAK,EAAE,GAEb;IAED;;;;OAIG;YACW,qBAAqB;IAkBnC;;;;;;OAMG;YACW,QAAQ;IAkBtB;;;;OAIG;IACH,OAAO,CAAC,cAAc,CAAkD;IAGxE;;;;;;;;;;;;;;;;;;;OAmBG;YACW,sBAAsB;IAuDpC;;;;;;;;;;;;;;;OAeG;YACW,iCAAiC;IA0B/C,wFAAwF;YAC1E,4BAA4B;IAgB1C;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;YACW,oBAAoB;CAyBrC;AAED,yDAAyD;AACzD,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C"}
1
+ {"version":3,"file":"ContractEntityServer.d.ts","sourceRoot":"","sources":["../src/ContractEntityServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EACH,UAAU,EAEV,KAAK,mBAAmB,EAIxB,gBAAgB,EACnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAuB,MAAM,iCAAiC,CAAC;AAGtF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAK9E;AAqBD,qBACa,oBAAqB,SAAQ,cAAc;IACpD;;;;;;;;;;OAUG;IACmB,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IA0B9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACmB,aAAa,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAgFhE;;;;;;;;;;;;OAYG;IACmB,MAAM,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAiC7E;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;YACW,uBAAuB;IAmCrC;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;;;;OAOG;YACW,mBAAmB;IA6BjC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;YACW,mBAAmB;IA4CjC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,OAAO,CAAC,oBAAoB;IAY5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH;;;;;;;;;;;;;;;;OAgBG;YACW,+BAA+B;YAqC/B,4BAA4B;IA6D1C;;;;;;;;;;;OAWG;YACW,kBAAkB;IA0BhC;;;;;;;;;;;;;;;OAeG;IACH,OAAO,KAAK,EAAE,GAEb;IAED;;;;OAIG;YACW,qBAAqB;IAkBnC;;;;;;OAMG;YACW,QAAQ;IAkBtB;;;;OAIG;IACH,OAAO,CAAC,cAAc,CAAkD;IAGxE;;;;;;;;;;;;;;;;;;;OAmBG;YACW,sBAAsB;IAuDpC;;;;;;;;;;;;;;;OAeG;YACW,iCAAiC;IA0B/C,wFAAwF;YAC1E,4BAA4B;IAgB1C;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;YACW,oBAAoB;CAyBrC;AAED,yDAAyD;AACzD,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C"}
@@ -177,6 +177,7 @@ let ContractEntityServer = class ContractEntityServer extends ContractEntity {
177
177
  this.refuseSelfReferences(result);
178
178
  await this.refuseLineageCycles(result);
179
179
  await this.refuseCrossLevelSupersession(result);
180
+ await this.refuseCrossCustomerSupersession(result);
180
181
  return result;
181
182
  }
182
183
  /**
@@ -434,6 +435,48 @@ let ContractEntityServer = class ContractEntityServer extends ContractEntity {
434
435
  * is the primary flow this rule exists to police. Gated on `isNewlySelected` instead, so an ordinary
435
436
  * re-save of an existing chain is not re-policed and legacy rows are not retro-refused.
436
437
  */
438
+ /**
439
+ * R-4 — a contract may only be superseded by another contract for the SAME CUSTOMER.
440
+ *
441
+ * `supersede.panel.ts` filters the picker to the same customer, and that decides what is OFFERED.
442
+ * This decides what is ALLOWED, which is a different question: the operation is reachable without
443
+ * the picker — `Contracts.Supersede` is a remote operation, and `SupersededByContractID` is a
444
+ * writable column — so a rule enforced only in the dropdown is a rule enforced nowhere.
445
+ *
446
+ * WHY IT MATTERS BEYOND TIDINESS. Linking across customers points one organisation's lineage at
447
+ * another's, so the successor's terms read as governing a party that never signed them, and the
448
+ * predecessor's customer loses the trail to whatever actually replaced their agreement.
449
+ *
450
+ * `CustomerOrganizationID` is NOT NULL on this table, so both sides always have one and there is no
451
+ * "unknown customer" case to be lenient about. A row that cannot be read is reported by
452
+ * {@link refuseCrossLevelSupersession}, which runs first and returns on the same not-found; this
453
+ * skips a second message for a failure already recorded rather than trusting another layer.
454
+ */
455
+ async refuseCrossCustomerSupersession(result) {
456
+ if (!this.SupersededByContractID)
457
+ return;
458
+ if (!this.isNewlySelected('SupersededByContractID'))
459
+ return;
460
+ if (UUIDsEqual(this.SupersededByContractID, this.ID))
461
+ return;
462
+ const target = await this.RunViewProviderToUse.RunView({
463
+ EntityName: 'MJ_BizApps_Contracts: Contracts',
464
+ ExtraFilter: `ID = '${this.SupersededByContractID}'`,
465
+ Fields: ['ContractNumber', 'CustomerOrganizationID'],
466
+ ResultType: 'simple',
467
+ }, this.ContextCurrentUser);
468
+ const row = target?.Results?.[0];
469
+ // Not-found is refuseCrossLevelSupersession's to report — see the note above.
470
+ if (!row)
471
+ return;
472
+ if (UUIDsEqual(row.CustomerOrganizationID, this.CustomerOrganizationID))
473
+ return;
474
+ result.Success = false;
475
+ result.Errors.push(new ValidationErrorInfo('SupersededByContractID', `Contract ${this.ContractNumber ?? this.ID} cannot be superseded by ` +
476
+ `${row.ContractNumber ?? 'that contract'}: they belong to different customers. A re-papering ` +
477
+ `replaces one customer's agreement with another agreement for that same customer. Pick a ` +
478
+ `successor for this contract's customer, or correct whichever customer is wrong.`, this.SupersededByContractID, ValidationErrorType.Failure));
479
+ }
437
480
  async refuseCrossLevelSupersession(result) {
438
481
  if (!this.SupersededByContractID)
439
482
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"ContractEntityServer.js","sourceRoot":"","sources":["../src/ContractEntityServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContractEntityServer.js","sourceRoot":"","sources":["../src/ContractEntityServer.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;GAQG;AACH,OAAO,EACH,UAAU,EAGV,QAAQ,EACR,mBAAmB,EACnB,mBAAmB,GAEtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE1D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,eAAe,CAAC,MAAkB,EAAE,SAAiB;IACjE,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAClG,CAAC;AAeD,iGAAiG;AACjG,MAAM,OAAO,GAAG,UAAU,CAAC;AAE3B,wEAAwE;AACxE,MAAM,UAAU,GAAG,+EAA+E,CAAC;AAG5F,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,cAAc;IAAjD;;QAmqBH;;;;WAIG;QACK,mBAAc,GAAwC,SAAS,CAAC;IA8L5E,CAAC;IAr2BG;;;;;;;;;;OAUG;IACa,KAAK,CAAC,IAAI;QACtB,IAAI,CAAC;YACD,yEAAyE;YACzE,EAAE;YACF,4FAA4F;YAC5F,uFAAuF;YACvF,2FAA2F;YAC3F,4FAA4F;YAC5F,yFAAyF;YACzF,qFAAqF;YACrF,0FAA0F;YAC1F,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBACvD,IAAI,CAAC,cAAc,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACxD,sFAAsF;gBACtF,uFAAuF;gBACvF,wEAAwE;gBACxE,0DAA0D;gBAC1D,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;YACxC,CAAC;YACD,OAAO,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,QAAQ,CAAC,iDAAiD,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;YACpG,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACa,KAAK,CAAC,aAAa;QAC/B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,aAAa,EAAE,CAAC;QAE3C,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,gBAAgB,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC,EAAE,CAAC;YAC1F,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,kBAAkB,EAClB,YAAY,IAAI,CAAC,cAAc,IAAI,EAAE,mDAAmD;gBACpF,yFAAyF;gBACzF,+BAA+B,EACnC,IAAI,CAAC,gBAAgB,EACrB,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;QACN,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YAEnC,oFAAoF;YACpF,6FAA6F;YAC7F,wFAAwF;YACxF,IAAI,IAAI,EAAE,WAAW,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC9C,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,kBAAkB,EAClB,YAAY,IAAI,CAAC,cAAc,IAAI,EAAE,SAAS,IAAI,CAAC,IAAI,oCAAoC;oBACvF,uFAAuF;oBACvF,sBAAsB,EAC1B,IAAI,CAAC,gBAAgB,EACrB,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;YACN,CAAC;iBAAM,IAAI,IAAI,EAAE,UAAU,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACnD,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,kBAAkB,EAClB,YAAY,IAAI,CAAC,cAAc,IAAI,EAAE,SAAS,IAAI,CAAC,IAAI,uCAAuC;oBAC1F,yFAAyF;oBACzF,gBAAgB,EACpB,IAAI,CAAC,gBAAgB,EACrB,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;YACN,CAAC;YAED,wFAAwF;YACxF,sFAAsF;YACtF,iCAAiC;YACjC,IAAI,IAAI,EAAE,gBAAgB,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACrD,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,oBAAoB,EACpB,KAAK,IAAI,CAAC,IAAI,6EAA6E;oBACvF,wDAAwD,EAC5D,IAAI,CAAC,kBAAkB,EACvB,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,MAAM,IAAI,CAAC,iCAAiC,CAAC,MAAM,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAE1C,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;QAC3C,+FAA+F;QAC/F,qEAAqE;QACrE,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,CAAC;QAEnD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;;OAYG;IACa,KAAK,CAAC,MAAM,CAAC,OAA6B;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,EAAE,CAAC;QAC7C,OAAO,aAAa,CAChB,IAAI,EACJ,OAAO,EACP,YAAY,KAAK,qBAAqB,EACtC;YACI;gBACI,UAAU,EAAE,uDAAuD;gBACnE,MAAM,EAAE,iBAAiB,IAAI,CAAC,EAAE,GAAG;gBACnC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CACZ,cAAc,MAAM,CAAC,CAAC,EAAE,cAAc,CAAC,sDAAsD;oBAC7F,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,2CAA2C;aAC/F;YACD;gBACI,UAAU,EAAE,iCAAiC;gBAC7C,MAAM,EAAE,uBAAuB,IAAI,CAAC,EAAE,GAAG;gBACzC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CACZ,GAAG,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,wCAAwC;oBAC9F,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe,oBAAoB;aAChF;YACD;gBACI,UAAU,EAAE,iCAAiC;gBAC7C,MAAM,EAAE,6BAA6B,IAAI,CAAC,EAAE,GAAG;gBAC/C,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CACZ,GAAG,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,0CAA0C;oBAC9F,yDAAyD;aAChE;SACJ,EACD,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CACzB,CAAC;IACN,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACK,KAAK,CAAC,uBAAuB,CAAC,MAAwB;QAC1D,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnC,IAAI,IAAI,EAAE,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC3B,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,gBAAgB,EAChB,IAAI,IAAI,CAAC,IAAI,mEAAmE;oBAC5E,2EAA2E,EAC/E,IAAI,CAAC,cAAc,EACnB,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,EAAE,CAAC;YACxE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACjD,IAAI,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,oBAAoB,EACpB,iCAAiC,OAAO,0CAA0C;oBAC9E,mFAAmF;oBACnF,6BAA6B,EACjC,IAAI,CAAC,kBAAkB,EACvB,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACK,eAAe,CAAC,SAAiB;QACrC,OAAO,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,mBAAmB;QAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CACpD;YACI,UAAU,EAAE,0CAA0C;YACtD,WAAW,EAAE,SAAS,IAAI,CAAC,kBAAkB,GAAG;YAChD,MAAM,EAAE,CAAC,wBAAwB,CAAC;YAClC,UAAU,EAAE,QAAQ;SACvB,EACD,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QACF,MAAM,MAAM,GAAG,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,sBAAsB,CAAC;QAC9D,6FAA6F;QAC7F,4EAA4E;QAC5E,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAEzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAChD;YACI,UAAU,EAAE,+CAA+C;YAC3D,WAAW,EAAE,SAAS,MAAM,GAAG;YAC/B,MAAM,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;YAC1B,UAAU,EAAE,QAAQ;SACvB,EACD,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QACF,MAAM,GAAG,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/B,OAAO,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACrD,CAAC;IAGD;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACK,KAAK,CAAC,mBAAmB,CAAC,MAAwB;QACtD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAE1B,MAAM,IAAI,GAAG;YACT;gBACI,KAAK,EAAE,kBAAkB;gBACzB,QAAQ,EAAE,IAAI,CAAC,gBAAgB;gBAC/B,OAAO,EAAE,CAAC,KAAa,EAAE,EAAE,CACvB,2BAA2B,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,EAAE,+BAA+B;oBACxF,IAAI,KAAK,oFAAoF;oBAC7F,uEAAuE;aAC9E;YACD;gBACI,KAAK,EAAE,wBAAwB;gBAC/B,QAAQ,EAAE,IAAI,CAAC,sBAAsB;gBACrC,OAAO,EAAE,CAAC,KAAa,EAAE,EAAE,CACvB,4BAA4B,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,EAAE,oCAAoC;oBAC9F,IAAI,KAAK,kFAAkF;oBAC3F,4BAA4B;aACnC;SACK,CAAC;QAEX,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;gBAAE,SAAS;YAChD,4FAA4F;YAC5F,yFAAyF;YACzF,8FAA8F;YAC9F,4FAA4F;YAC5F,8FAA8F;YAC9F,kBAAkB;YAClB,IAAI,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC;gBAAE,SAAS;YAE5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAClE,IAAI,KAAK,EAAE,CAAC;gBACR,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAClG,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACK,oBAAoB,CAAC,MAAwB;QACjD,MAAM,IAAI,GAA2G;YACjH,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,OAAO,EAAE,sCAAsC,EAAE;YAC5G,EAAE,KAAK,EAAE,wBAAwB,EAAE,KAAK,EAAE,IAAI,CAAC,sBAAsB,EAAE,OAAO,EAAE,4CAA4C,EAAE;SACjI,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;gBAAE,SAAS;YAC9D,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QACnH,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH;;;;;;;;;;;;;;;;OAgBG;IACK,KAAK,CAAC,+BAA+B,CAAC,MAAwB;QAClE,IAAI,CAAC,IAAI,CAAC,sBAAsB;YAAE,OAAO;QACzC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC;YAAE,OAAO;QAC5D,IAAI,UAAU,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,EAAE,CAAC;YAAE,OAAO;QAE7D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAIlD;YACI,UAAU,EAAE,iCAAiC;YAC7C,WAAW,EAAE,SAAS,IAAI,CAAC,sBAAsB,GAAG;YACpD,MAAM,EAAE,CAAC,gBAAgB,EAAE,wBAAwB,CAAC;YACpD,UAAU,EAAE,QAAQ;SACvB,EACD,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACjC,8EAA8E;QAC9E,IAAI,CAAC,GAAG;YAAE,OAAO;QAEjB,IAAI,UAAU,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,CAAC;YAAE,OAAO;QAEhF,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,wBAAwB,EACxB,YAAY,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,EAAE,2BAA2B;YACjE,GAAG,GAAG,CAAC,cAAc,IAAI,eAAe,sDAAsD;YAC9F,0FAA0F;YAC1F,iFAAiF,EACrF,IAAI,CAAC,sBAAsB,EAC3B,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;IACN,CAAC;IAEO,KAAK,CAAC,4BAA4B,CAAC,MAAwB;QAC/D,IAAI,CAAC,IAAI,CAAC,sBAAsB;YAAE,OAAO;QACzC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC;YAAE,OAAO;QAE5D,yFAAyF;QACzF,8FAA8F;QAC9F,iGAAiG;QACjG,4DAA4D;QAC5D,IAAI,UAAU,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,EAAE,CAAC;YAAE,OAAO;QAE7D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAClD;YACI,UAAU,EAAE,iCAAiC;YAC7C,WAAW,EAAE,SAAS,IAAI,CAAC,sBAAsB,GAAG;YACpD,MAAM,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;YAC9C,UAAU,EAAE,QAAQ;SACvB,EACD,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,2FAA2F;YAC3F,4FAA4F;YAC5F,oFAAoF;YACpF,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,wBAAwB,EACxB,mCAAmC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,EAAE,8BAA8B;gBAC3F,2FAA2F;gBAC3F,sDAAsD,EAC1D,IAAI,CAAC,sBAAsB,EAC3B,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;YACF,OAAO;QACX,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC;QACjD,MAAM,aAAa,GAAG,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAC;QACnD,IAAI,mBAAmB,CAAC,UAAU,EAAE,aAAa,CAAC;YAAE,OAAO;QAE3D,iGAAiG;QACjG,4CAA4C;QAC5C,MAAM,QAAQ,GAAG,CAAC,MAAqB,EAAE,KAAa,EAAU,EAAE,CAC9D,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,2BAA2B,CAAC,CAAC,CAAC,GAAG,KAAK,8BAA8B,CAAC;QAEnG,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,wBAAwB,EACxB,YAAY,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,EAAE,4BAA4B,GAAG,CAAC,cAAc,IAAI,eAAe,IAAI;YAC3G,GAAG,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC,SAAS,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC,8BAA8B;YAClH,mGAAmG;YACnG,yFAAyF,EAC7F,IAAI,CAAC,sBAAsB,EAC3B,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;IACN,CAAC;IAED;;;;;;;;;;;OAWG;IACK,KAAK,CAAC,kBAAkB,CAAC,MAAqD,EAAE,OAAe;QACnG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,cAAc,OAAO,SAAS,IAAI,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAC3G,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CACjC;iCACqB,MAAM;;;kCAGL,OAAO;;qCAEJ,MAAM;;;mDAGQ,MAAM;;;oEAGW,IAAI,CAAC,EAAE,mBAAmB,EAClF,SAAS,EACT,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,MAAM,cAAc,EAAE,EAC/D,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QACF,MAAM,GAAG,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,EAAE,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,IAAY,EAAE;QACV,OAAO,IAAI,CAAC,aAAgD,CAAC;IACjE,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,qBAAqB;QAC/B,2FAA2F;QAC3F,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAClD;YACI,UAAU,EAAE,uDAAuD;YACnE,WAAW,EAAE,iBAAiB,IAAI,CAAC,EAAE,GAAG;YACxC,UAAU,EAAE,YAAY;SAC3B,EACD,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QACF,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YACnB,yFAAyF;YACzF,wDAAwD;YACxD,MAAM,IAAI,KAAK,CAAC,8CAA8C,IAAI,CAAC,EAAE,KAAK,MAAM,EAAE,YAAY,IAAI,eAAe,EAAE,CAAC,CAAC;QACzH,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,QAAQ;QAClB,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,cAAc,CAAC;QAClE,+FAA+F;QAC/F,0FAA0F;QAC1F,yCAAyC;QACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAClD;YACI,UAAU,EAAE,sCAAsC;YAClD,WAAW,EAAE,SAAS,IAAI,CAAC,cAAc,GAAG;YAC5C,MAAM,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,QAAQ,CAAC;YAC3E,UAAU,EAAE,QAAQ;SACvB,EACD,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;QACnD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAUD;;;;;;;;;;;;;;;;;;;OAmBG;IACK,KAAK,CAAC,sBAAsB,CAAC,MAAwB;QACzD,IAAI,CAAC,IAAI,CAAC,kBAAkB;YAAE,OAAO;QACrC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC;YAAE,OAAO;QAExD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CACpD;YACI,UAAU,EAAE,0CAA0C;YACtD,WAAW,EAAE,SAAS,IAAI,CAAC,kBAAkB,GAAG;YAChD,MAAM,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC;YACtC,UAAU,EAAE,QAAQ;SACvB,EACD,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QACF,MAAM,GAAG,GAAG,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACnC,sFAAsF;QACtF,IAAI,CAAC,GAAG;YAAE,OAAO;QAEjB,qCAAqC;QACrC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAChB,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,oBAAoB,EACpB,IAAI,GAAG,CAAC,IAAI,gFAAgF;gBACxF,4FAA4F;gBAC5F,uDAAuD,EAC3D,IAAI,CAAC,kBAAkB,EACvB,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;QACN,CAAC;QAED,0FAA0F;QAC1F,6FAA6F;QAC7F,yFAAyF;QACzF,8FAA8F;QAC9F,sCAAsC;QACtC,EAAE;QACF,4FAA4F;QAC5F,gGAAgG;QAChG,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAC7B,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,oBAAoB,EACpB,IAAI,GAAG,CAAC,IAAI,gFAAgF;gBACxF,yFAAyF;gBACzF,uBAAuB,EAC3B,IAAI,CAAC,kBAAkB,EACvB,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;QACN,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACK,KAAK,CAAC,iCAAiC,CAAC,MAAwB;QACpE,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,IAAI,CAAC,kBAAkB;YAAE,OAAO,CAAuB,oBAAoB;QAC/E,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC;YAAE,OAAO,CAAI,oBAAoB;QAEhF,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC;QACxD,MAAM,kBAAkB,GAAG,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3E,IAAI,CAAC,kBAAkB;YAAE,OAAO;QAEhC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,CAAC;QAC7E,IAAI,QAAQ,KAAK,CAAC;YAAE,OAAO;QAE3B,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,mBAAmB,CACnB,oBAAoB,EACpB,yBAAyB,QAAQ,6DAA6D;YAC1F,+FAA+F;YAC/F,4FAA4F;YAC5F,2FAA2F,EAC/F,IAAI,CAAC,kBAAkB,EACvB,mBAAmB,CAAC,OAAO,CAC9B,CACJ,CAAC;IACN,CAAC;IAED,wFAAwF;IAChF,KAAK,CAAC,4BAA4B,CAAC,UAAkB;QACzD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,qCAAqC,UAAU,SAAS,IAAI,CAAC,EAAE,kBAAkB,CAAC,CAAC;QACvG,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CACjC;;;wCAG4B,IAAI,CAAC,EAAE,mCAAmC,UAAU,IAAI,EACpF,SAAS,EACT,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,0CAA0C,EAAE,EAC9E,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QACF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACK,KAAK,CAAC,oBAAoB;QAC9B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CACjC;;uDAE2C;QAC3C,yFAAyF;QACzF,yFAAyF;QACzF,0FAA0F;QAC1F,2FAA2F;QAC3F,sDAAsD;QACtD,SAAS,EACT,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,4BAA4B,EAAE,EAC/D,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC;QAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACX,2FAA2F;gBACvF,0FAA0F;gBAC1F,gFAAgF,CACvF,CAAC;QACN,CAAC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ,CAAA;AAt2BY,oBAAoB;IADhC,aAAa,CAAC,UAAU,EAAE,iCAAiC,CAAC;GAChD,oBAAoB,CAs2BhC;;AAED,yDAAyD;AACzD,MAAM,UAAU,wBAAwB;IACpC,KAAK,oBAAoB,CAAC;AAC9B,CAAC"}
@@ -12,11 +12,23 @@
12
12
  * Here the work runs on the server, where the server subclass resolves correctly and every rule in
13
13
  * `ContractEntityServer.ValidateAsync()` — same-level, self-reference, lineage cycles — actually fires.
14
14
  *
15
- * REPLACE, NOT ADD. The schema deliberately allows MANY predecessors to name one successor
16
- * (consolidation), so setting a new predecessor without releasing the old one leaves the agreement
17
- * quietly superseding BOTH. The UI is a single-select, so one predecessor is the intent: release the
18
- * others, then link. Passing `PredecessorID: null` releases everything and links nothing, which is
19
- * what "unlink" is.
15
+ * ADD, NOT REPLACE -- REVERSED 2026-08-30 (contracts#28 item 10). The previous reasoning is kept
16
+ * here because it was deliberate rather than careless, and knowing why it was wrong is the point.
17
+ * This module used to argue: the schema allows many predecessors to name one successor, the picker is
18
+ * a single-select, therefore one predecessor is the intent, therefore release the others before
19
+ * linking. The premise was the wrong way round. A consolidated agreement really does replace several
20
+ * earlier ones, and a single-select picker is how you ADD them one at a time -- so "replace" meant
21
+ * picking a second contract silently released the first, its only trace a "Released ..." suffix on a
22
+ * success message that reads like reassurance rather than a warning.
23
+ *
24
+ * So: LINKING ADDS. Contracts this agreement already supersedes are left exactly as they are. Removal
25
+ * is explicit and singular, through `ReleasePredecessorID`, which clears the one contract named and no
26
+ * other -- item 9, where the panel passed the clicked ID to a handler that discarded it and released
27
+ * every predecessor.
28
+ *
29
+ * There is deliberately NO "release everything" input any more. A call carrying neither ID is REFUSED
30
+ * rather than quietly treated as one, because the old shape (`PredecessorID: null`) meant exactly that,
31
+ * and a stale caller sending it should be told rather than silently change nothing.
20
32
  *
21
33
  * NO transaction wrapper, deliberately. Each contract is saved through its own entity so every rule
22
34
  * runs, and the outcome is reported per-record. A half-applied change is visible in the returned list
@@ -28,8 +40,16 @@ import { BaseRemotableOperation, type IMetadataProvider, type RemoteOpServerCont
28
40
  export interface SupersedeInput {
29
41
  /** The agreement doing the superseding — the record the user is looking at. */
30
42
  SuccessorID: string;
31
- /** The agreement being replaced. `null` releases every predecessor and links none (unlink). */
32
- PredecessorID: string | null;
43
+ /**
44
+ * Link this contract as a predecessor. ADDS — whatever this agreement already supersedes is left
45
+ * exactly as it is, because one agreement may legitimately replace several.
46
+ */
47
+ PredecessorID?: string | null;
48
+ /**
49
+ * Release this ONE predecessor and no other. Named separately from `PredecessorID` so the two
50
+ * intentions cannot be confused: no value of `PredecessorID` means "unlink".
51
+ */
52
+ ReleasePredecessorID?: string | null;
33
53
  }
34
54
  export interface SupersedeOutput {
35
55
  /** What the successor supersedes AFTER the operation — the panel renders this, so it can never be stale. */
@@ -1 +1 @@
1
- {"version":3,"file":"SupersedeOperation.d.ts","sourceRoot":"","sources":["../src/SupersedeOperation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,OAAO,EACH,sBAAsB,EACtB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAE1B,KAAK,QAAQ,EAChB,MAAM,sBAAsB,CAAC;AAM9B,MAAM,WAAW,cAAc;IAC3B,+EAA+E;IAC/E,WAAW,EAAE,MAAM,CAAC;IACpB,+FAA+F;IAC/F,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC5B,4GAA4G;IAC5G,UAAU,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1D,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,8FAA8F;IAC9F,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBACa,kBAAmB,SAAQ,sBAAsB,CAAC,cAAc,EAAE,eAAe,CAAC;IAC3F,SAAgB,YAAY,yBAAyB;cAE5B,eAAe,CACpC,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,qBAAqB,GAChC,OAAO,CAAC,eAAe,CAAC;IAsD3B,oGAAoG;YACtF,cAAc;CAkB/B;AAED,uGAAuG;AACvG,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C"}
1
+ {"version":3,"file":"SupersedeOperation.d.ts","sourceRoot":"","sources":["../src/SupersedeOperation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,OAAO,EACH,sBAAsB,EACtB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAE1B,KAAK,QAAQ,EAChB,MAAM,sBAAsB,CAAC;AAM9B,MAAM,WAAW,cAAc;IAC3B,+EAA+E;IAC/E,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAED,MAAM,WAAW,eAAe;IAC5B,4GAA4G;IAC5G,UAAU,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1D,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,8FAA8F;IAC9F,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBACa,kBAAmB,SAAQ,sBAAsB,CAAC,cAAc,EAAE,eAAe,CAAC;IAC3F,SAAgB,YAAY,yBAAyB;cAE5B,eAAe,CACpC,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,qBAAqB,GAChC,OAAO,CAAC,eAAe,CAAC;IA0F3B,oGAAoG;YACtF,cAAc;CAkB/B;AAED,uGAAuG;AACvG,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C"}
@@ -18,11 +18,23 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
18
18
  * Here the work runs on the server, where the server subclass resolves correctly and every rule in
19
19
  * `ContractEntityServer.ValidateAsync()` — same-level, self-reference, lineage cycles — actually fires.
20
20
  *
21
- * REPLACE, NOT ADD. The schema deliberately allows MANY predecessors to name one successor
22
- * (consolidation), so setting a new predecessor without releasing the old one leaves the agreement
23
- * quietly superseding BOTH. The UI is a single-select, so one predecessor is the intent: release the
24
- * others, then link. Passing `PredecessorID: null` releases everything and links nothing, which is
25
- * what "unlink" is.
21
+ * ADD, NOT REPLACE -- REVERSED 2026-08-30 (contracts#28 item 10). The previous reasoning is kept
22
+ * here because it was deliberate rather than careless, and knowing why it was wrong is the point.
23
+ * This module used to argue: the schema allows many predecessors to name one successor, the picker is
24
+ * a single-select, therefore one predecessor is the intent, therefore release the others before
25
+ * linking. The premise was the wrong way round. A consolidated agreement really does replace several
26
+ * earlier ones, and a single-select picker is how you ADD them one at a time -- so "replace" meant
27
+ * picking a second contract silently released the first, its only trace a "Released ..." suffix on a
28
+ * success message that reads like reassurance rather than a warning.
29
+ *
30
+ * So: LINKING ADDS. Contracts this agreement already supersedes are left exactly as they are. Removal
31
+ * is explicit and singular, through `ReleasePredecessorID`, which clears the one contract named and no
32
+ * other -- item 9, where the panel passed the clicked ID to a handler that discarded it and released
33
+ * every predecessor.
34
+ *
35
+ * There is deliberately NO "release everything" input any more. A call carrying neither ID is REFUSED
36
+ * rather than quietly treated as one, because the old shape (`PredecessorID: null`) meant exactly that,
37
+ * and a stale caller sending it should be told rather than silently change nothing.
26
38
  *
27
39
  * NO transaction wrapper, deliberately. Each contract is saved through its own entity so every rule
28
40
  * runs, and the outcome is reported per-record. A half-applied change is visible in the returned list
@@ -47,14 +59,34 @@ let SupersedeOperation = class SupersedeOperation extends BaseRemotableOperation
47
59
  }
48
60
  const released = [];
49
61
  const same = (a, b) => !!a && !!b && a.toLowerCase() === b.toLowerCase();
50
- // Release every predecessor except the one being (re-)linked, so re-picking the same contract
51
- // is a no-op rather than a clear-and-reset.
52
- for (const current of await this.readSupersedes(provider, user, input.SuccessorID)) {
53
- if (same(current.ID, input.PredecessorID))
54
- continue;
62
+ const toLink = input.PredecessorID ?? null;
63
+ const toRelease = input.ReleasePredecessorID ?? null;
64
+ // REFUSED, NOT READ AS "RELEASE EVERYTHING". Until 2026-08 a null `PredecessorID` with nothing
65
+ // else meant "clear every predecessor" — the behaviour item 10 removed. A caller still sending
66
+ // that shape would otherwise get a green result that changed nothing at all.
67
+ if (!toLink && !toRelease) {
68
+ throw new Error('Supersede needs either PredecessorID (link one) or ReleasePredecessorID (release one); ' +
69
+ 'it received neither. A null PredecessorID used to mean "release every predecessor" — ' +
70
+ 'that meaning is gone, so this refuses rather than silently doing nothing.');
71
+ }
72
+ // ONE predecessor: the one named. The old loop walked every predecessor and cleared all but the
73
+ // one being linked, which is how clicking "Unlink CTR-0001" also unlinked CTR-0002 (item 9).
74
+ if (toRelease) {
75
+ const current = (await this.readSupersedes(provider, user, input.SuccessorID))
76
+ .find((c) => same(c.ID, toRelease));
77
+ if (!current) {
78
+ // Not silence: the caller believes this contract is a predecessor and it is not, so say
79
+ // so. A concurrent unlink elsewhere lands here, and the returned list shows the truth.
80
+ return {
81
+ Supersedes: await this.readSupersedes(provider, user, input.SuccessorID),
82
+ Released: released,
83
+ Refused: 'That contract is not superseded by this agreement, so there was nothing to release.',
84
+ };
85
+ }
55
86
  const previous = await provider.GetEntityObject(E_CONTRACT, user);
56
- if (!(await previous.Load(current.ID)))
57
- continue;
87
+ if (!(await previous.Load(current.ID))) {
88
+ throw new Error(`The contract to release (${current.ContractNumber}) could not be loaded.`);
89
+ }
58
90
  previous.SupersededByContractID = null;
59
91
  if (!(await previous.Save())) {
60
92
  return {
@@ -66,9 +98,18 @@ let SupersedeOperation = class SupersedeOperation extends BaseRemotableOperation
66
98
  }
67
99
  released.push(current.ContractNumber);
68
100
  }
69
- if (input.PredecessorID && !same(input.PredecessorID, input.SuccessorID)) {
101
+ if (toLink && same(toLink, input.SuccessorID)) {
102
+ // Was a silent skip that reported success having done nothing. ContractEntity.Supersede()
103
+ // refuses this anyway; saying so is more use than a green message.
104
+ return {
105
+ Supersedes: await this.readSupersedes(provider, user, input.SuccessorID),
106
+ Released: released,
107
+ Refused: 'A contract cannot supersede itself.',
108
+ };
109
+ }
110
+ if (toLink) {
70
111
  const predecessor = await provider.GetEntityObject(E_CONTRACT, user);
71
- if (!(await predecessor.Load(input.PredecessorID))) {
112
+ if (!(await predecessor.Load(toLink))) {
72
113
  throw new Error('The contract to be superseded could not be loaded.');
73
114
  }
74
115
  // Through Supersede(), not a bare field write, so the entity keeps owning the rule.
@@ -1 +1 @@
1
- {"version":3,"file":"SupersedeOperation.js","sourceRoot":"","sources":["../src/SupersedeOperation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SupersedeOperation.js","sourceRoot":"","sources":["../src/SupersedeOperation.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,OAAO,EACH,sBAAsB,EAGtB,OAAO,GAEV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,MAAM,UAAU,GAAG,iCAAiC,CAAC;AA2B9C,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,sBAAuD;IAAxF;;QACa,iBAAY,GAAG,qBAAqB,CAAC;IAoHzD,CAAC;IAlHsB,KAAK,CAAC,eAAe,CACpC,KAAqB,EACrB,QAA2B,EAC3B,IAAc,EACd,QAA+B;QAE/B,IAAI,CAAC,KAAK,EAAE,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAErE,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAiB,UAAU,EAAE,IAAI,CAAC,CAAC;QACnF,IAAI,CAAC,CAAC,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,CAAC,CAA4B,EAAE,CAA4B,EAAE,EAAE,CACxE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;QAEtD,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC;QAC3C,MAAM,SAAS,GAAG,KAAK,CAAC,oBAAoB,IAAI,IAAI,CAAC;QAErD,+FAA+F;QAC/F,+FAA+F;QAC/F,6EAA6E;QAC7E,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACX,yFAAyF;gBACrF,uFAAuF;gBACvF,2EAA2E,CAClF,CAAC;QACN,CAAC;QAED,gGAAgG;QAChG,6FAA6F;QAC7F,IAAI,SAAS,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;iBACzE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;YACxC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,wFAAwF;gBACxF,uFAAuF;gBACvF,OAAO;oBACH,UAAU,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;oBACxE,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,qFAAqF;iBACjG,CAAC;YACN,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAiB,UAAU,EAAE,IAAI,CAAC,CAAC;YAClF,IAAI,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBACrC,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,CAAC,cAAc,wBAAwB,CAAC,CAAC;YAChG,CAAC;YACD,QAAQ,CAAC,sBAAsB,GAAG,IAAI,CAAC;YACvC,IAAI,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC3B,OAAO;oBACH,UAAU,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;oBACxE,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,QAAQ,CAAC,YAAY,EAAE,OAAO;wBACnC,qBAAqB,OAAO,CAAC,cAAc,6BAA6B;iBAC/E,CAAC;YACN,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5C,0FAA0F;YAC1F,mEAAmE;YACnE,OAAO;gBACH,UAAU,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;gBACxE,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,qCAAqC;aACjD,CAAC;QACN,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAiB,UAAU,EAAE,IAAI,CAAC,CAAC;YACrF,IAAI,CAAC,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;YAC1E,CAAC;YACD,oFAAoF;YACpF,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YACjC,IAAI,CAAC,CAAC,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC9B,OAAO;oBACH,UAAU,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;oBACxE,QAAQ,EAAE,QAAQ;oBAClB,oFAAoF;oBACpF,uDAAuD;oBACvD,OAAO,EAAE,WAAW,CAAC,YAAY,EAAE,OAAO,IAAI,+CAA+C;iBAChG,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO;YACH,UAAU,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;YACxE,QAAQ,EAAE,QAAQ;SACrB,CAAC;IACN,CAAC;IAED,oGAAoG;IAC5F,KAAK,CAAC,cAAc,CACxB,QAA2B,EAC3B,IAAc,EACd,WAAmB;QAEnB,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,OAAO,CACtB;YACI,UAAU,EAAE,UAAU;YACtB,MAAM,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC;YAChC,WAAW,EAAE,6BAA6B,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG;YAC5E,OAAO,EAAE,oBAAoB;YAC7B,UAAU,EAAE,QAAQ;SACvB,EACD,IAAI,CACP,CAAC;QACF,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACvC,CAAC;CACJ,CAAA;AArHY,kBAAkB;IAD9B,aAAa,CAAC,sBAAsB,EAAE,qBAAqB,CAAC;GAChD,kBAAkB,CAqH9B;;AAED,uGAAuG;AACvG,MAAM,UAAU,sBAAsB;IAClC,QAAQ;AACZ,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "mjdevManaged": "MJDEV-MANAGED: mjdev owns parts of this file — the \"packages/dev-apps/*\" workspaces glob, any dev-linked open-app dependencies (e.g. \"@mj-biz-apps/*\"), and the Angular \"overrides\" pin set. Do not hand-edit those; the tool wires and reverts them. They are left visible in git status, but the git-tree guard blocks committing them. See .mjdev-docs/MANAGED-FILES.md; revert with `mjdev git:stage-clean <slug> package.json`.",
3
3
  "name": "@mj-biz-apps/contracts-core-entities-server",
4
- "version": "0.1.1",
4
+ "version": "0.3.0",
5
5
  "type": "module",
6
6
  "description": "Server-side entity subclass overrides (validation, computed fields, save hooks). TODO(template): rename.",
7
7
  "main": "dist/index.js",
@@ -12,16 +12,17 @@
12
12
  },
13
13
  "license": "BUSL-1.1",
14
14
  "dependencies": {
15
- "@mj-biz-apps/contracts-entities": "^0.1.1"
15
+ "@mj-biz-apps/contracts-entities": "^0.3.0"
16
16
  },
17
17
  "peerDependencies": {
18
- "@memberjunction/core": "^6.1.0-edge.3",
19
- "@memberjunction/core-entities": "^6.1.0-edge.3",
20
- "@memberjunction/global": "^6.1.0-edge.3",
21
- "@memberjunction/sqlserver-dataprovider": "^6.1.0-edge.3"
18
+ "@memberjunction/core": "^6.1.0-edge.4",
19
+ "@memberjunction/core-entities": "^6.1.0-edge.4",
20
+ "@memberjunction/global": "^6.1.0-edge.4",
21
+ "@memberjunction/sqlserver-dataprovider": "^6.1.0-edge.4"
22
22
  },
23
23
  "devDependencies": {
24
- "typescript": "^5.9.3"
24
+ "typescript": "^5.9.3",
25
+ "vitest": "^4.0.18"
25
26
  },
26
27
  "files": [
27
28
  "/dist"
@@ -31,6 +32,6 @@
31
32
  },
32
33
  "scripts": {
33
34
  "build": "tsc && tsc-alias -f",
34
- "test": "echo \"No tests configured yet\""
35
+ "test": "vitest run --passWithNoTests"
35
36
  }
36
37
  }