@pegma/support-desk-application 0.2.7 → 0.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/README.md +46 -20
  2. package/dist/engineering-followup-internal.d.ts +9 -2
  3. package/dist/engineering-followup-internal.d.ts.map +1 -1
  4. package/dist/engineering-followup-records.d.ts +12 -0
  5. package/dist/engineering-followup-records.d.ts.map +1 -1
  6. package/dist/engineering-followup-records.js +55 -5
  7. package/dist/engineering-followup-records.js.map +1 -1
  8. package/dist/engineering-followup-source.d.ts +18 -7
  9. package/dist/engineering-followup-source.d.ts.map +1 -1
  10. package/dist/engineering-followup-source.js +191 -23
  11. package/dist/engineering-followup-source.js.map +1 -1
  12. package/dist/engineering-followup-types.d.ts +75 -9
  13. package/dist/engineering-followup-types.d.ts.map +1 -1
  14. package/dist/engineering-followup-work.d.ts +9 -12
  15. package/dist/engineering-followup-work.d.ts.map +1 -1
  16. package/dist/engineering-followup-work.js +783 -234
  17. package/dist/engineering-followup-work.js.map +1 -1
  18. package/dist/engineering-handoff.d.ts +6 -0
  19. package/dist/engineering-handoff.d.ts.map +1 -0
  20. package/dist/engineering-handoff.js +31 -0
  21. package/dist/engineering-handoff.js.map +1 -0
  22. package/dist/engineering-types.d.ts +28 -0
  23. package/dist/engineering-types.d.ts.map +1 -1
  24. package/dist/engineering-work.d.ts +1 -1
  25. package/dist/engineering-work.d.ts.map +1 -1
  26. package/dist/engineering-work.js +534 -32
  27. package/dist/engineering-work.js.map +1 -1
  28. package/dist/index.d.ts +13 -1
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +65 -4
  31. package/dist/index.js.map +1 -1
  32. package/dist/resolution-learning-delivery-handoff.d.ts +5 -0
  33. package/dist/resolution-learning-delivery-handoff.d.ts.map +1 -0
  34. package/dist/resolution-learning-delivery-handoff.js +20 -0
  35. package/dist/resolution-learning-delivery-handoff.js.map +1 -0
  36. package/dist/resolution-learning-types.d.ts +42 -1
  37. package/dist/resolution-learning-types.d.ts.map +1 -1
  38. package/dist/resolution-learning-worker.d.ts +1 -1
  39. package/dist/resolution-learning-worker.d.ts.map +1 -1
  40. package/dist/resolution-learning-worker.js +594 -369
  41. package/dist/resolution-learning-worker.js.map +1 -1
  42. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-followup-source.d.ts","sourceRoot":"","sources":["../src/engineering-followup-source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engineering-followup-source.d.ts","sourceRoot":"","sources":["../src/engineering-followup-source.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { hasPermission } from "@pegma/authorization-core";
2
+ import { engineeringMutationBoundary } from "./engineering-mutation-guard.js";
2
3
  import { SupportDeskAuthorizationError, SupportDeskConflictError, SupportDeskLimitError, SupportDeskNotFoundError, supportPermissions, supportTicketAuditActions, } from "./index.js";
3
4
  import { canonical, fields, fingerprint, integer, text, timestamp, } from "./assistant-turn-records.js";
4
5
  import { engineeringSourceKey, engineeringWorkKey, } from "./engineering-records.js";
@@ -10,6 +11,122 @@ export function engineeringFollowupPermission(access, name, actorId, staff = fal
10
11
  if (staff && !hasPermission(access, supportPermissions.queueRead))
11
12
  throw new SupportDeskAuthorizationError(supportPermissions.queueRead);
12
13
  }
14
+ /** Data observations are operation-local; authority is checked afresh on every use. */
15
+ export function engineeringFollowupObservation(deps, current, actorId, authorize) {
16
+ let active = true;
17
+ const check = (reader) => {
18
+ if (!active)
19
+ throw new SupportDeskConflictError("Follow-up observation expired");
20
+ authorize(reader);
21
+ if (current.loaded.source.value.security !== "ordinary" ||
22
+ current.work.value.security !== "ordinary")
23
+ engineeringFollowupPermission(reader, supportPermissions.engineeringRestrictedRead, actorId, true);
24
+ };
25
+ return {
26
+ check,
27
+ close: () => {
28
+ active = false;
29
+ },
30
+ async confirm(reader) {
31
+ check(reader);
32
+ const versions = [
33
+ {
34
+ key: {
35
+ partition: current.loaded.source.value.partition,
36
+ id: current.loaded.source.value.id,
37
+ },
38
+ version: current.loaded.source.version,
39
+ },
40
+ {
41
+ key: {
42
+ partition: current.engineeringWork.value.partition,
43
+ id: current.engineeringWork.value.id,
44
+ },
45
+ version: current.engineeringWork.version,
46
+ },
47
+ {
48
+ key: {
49
+ partition: current.work.value.partition,
50
+ id: current.work.value.id,
51
+ },
52
+ version: current.work.version,
53
+ },
54
+ {
55
+ key: engineeringFollowupHeadKey(current.loaded.source.value.ticketId),
56
+ version: current.loaded.head?.version,
57
+ },
58
+ {
59
+ key: {
60
+ partition: current.loaded.ticket.value.partition,
61
+ id: "ticket",
62
+ },
63
+ version: current.loaded.ticket.version,
64
+ },
65
+ ];
66
+ const observed = await Promise.allSettled(versions.map(async (expected) => ({
67
+ expected,
68
+ latest: await deps.records.getVersioned(expected.key),
69
+ })));
70
+ for (const result of observed) {
71
+ if (result.status === "rejected")
72
+ throw result.reason;
73
+ const { expected, latest } = result.value;
74
+ check(reader);
75
+ if ((latest?.value.kind === "engineering_source" ||
76
+ latest?.value.kind === "engineering_followup_work") &&
77
+ latest.value.security !== "ordinary")
78
+ engineeringFollowupPermission(reader, supportPermissions.engineeringRestrictedRead, actorId, true);
79
+ if (latest?.version !== expected.version)
80
+ throw new SupportDeskConflictError("Follow-up observation changed");
81
+ }
82
+ },
83
+ };
84
+ }
85
+ /** Authorized mutations may open independent keys together; reader authorization stays ordered. */
86
+ export async function engineeringFollowupLoadMutation(deps, key) {
87
+ text(key.ticketId, "ticketId");
88
+ text(key.workId, "workId");
89
+ const points = await Promise.allSettled([
90
+ deps.records.getVersioned({ partition: key.ticketId, id: "ticket" }),
91
+ deps.records.getVersioned(engineeringSourceKey(key.ticketId)),
92
+ deps.records.getVersioned(engineeringFollowupHeadKey(key.ticketId)),
93
+ deps.records.getVersioned(engineeringFollowupWorkKey(key.ticketId, key.workId)),
94
+ ]);
95
+ // Preserve the sequential loader's error precedence, including the bounded list before Work.
96
+ for (const point of points.slice(0, 3))
97
+ if (point.status === "rejected")
98
+ throw point.reason;
99
+ const [ticket, source, head] = points
100
+ .slice(0, 3)
101
+ .map((point) => (point.status === "fulfilled" ? point.value : null));
102
+ if (ticket?.value.kind !== "ticket" ||
103
+ source?.value.kind !== "engineering_source")
104
+ throw new SupportDeskNotFoundError();
105
+ if (head !== null && head?.value.kind !== "engineering_followup_head")
106
+ throw new SupportDeskConflictError("Follow-up head key collision");
107
+ const rows = await deps.records.list(key.ticketId);
108
+ if (rows.length > deps.limits.maxRecordsPerTicket)
109
+ throw new SupportDeskLimitError("ticket_partition", deps.limits.maxRecordsPerTicket);
110
+ const work = points[3];
111
+ if (work.status === "rejected")
112
+ throw work.reason;
113
+ if (work.value?.value.kind !== "engineering_followup_work")
114
+ throw new SupportDeskNotFoundError();
115
+ return {
116
+ loaded: {
117
+ ticket: { value: ticket.value, version: ticket.version },
118
+ source: { value: source.value, version: source.version },
119
+ head: head === null
120
+ ? null
121
+ : {
122
+ value: head.value,
123
+ version: head.version,
124
+ },
125
+ rows,
126
+ },
127
+ stored: { value: work.value.value, version: work.value.version },
128
+ };
129
+ }
13
130
  export function engineeringFollowupNow(deps) {
14
131
  const initial = timestamp(deps.clock.now(), "now");
15
132
  const start = performance.now();
@@ -90,7 +207,7 @@ export function holdEngineeringFollowupWork(work, reason) {
90
207
  };
91
208
  }
92
209
  function scrub(work, reason) {
93
- const { context: _context, candidate: _candidate, candidateHash: _candidateHash, preparedBundle: _bundle, handoff: _handoff, modelAttempts: _attempts, retestResults: _tests, ...minimal } = engineeringFollowupWithoutLease(work);
210
+ const { context: _context, candidate: _candidate, pendingModelCompletion: _pendingModelCompletion, candidateHash: _candidateHash, preparedBundle: _bundle, handoff: _handoff, modelAttempts: _attempts, retestResults: _tests, ...minimal } = engineeringFollowupWithoutLease(work);
94
211
  return {
95
212
  ...minimal,
96
213
  withdrawn: true,
@@ -229,21 +346,48 @@ export function engineeringFollowupValidateProof(proof, context, product, now) {
229
346
  throw new SupportDeskConflictError("Follow-up mapping does not match product or current heads");
230
347
  }
231
348
  export async function engineeringFollowupVersionsCurrent(deps, loaded, work, associationWork) {
232
- const compare = async (key, version) => (await deps.records.getVersioned(key))?.version === (version ?? undefined);
233
- if (work !== undefined &&
234
- !(await compare({ partition: work.value.partition, id: work.value.id }, work.version)))
235
- return false;
236
- if (associationWork !== undefined &&
237
- !(await compare({
238
- partition: associationWork.value.partition,
239
- id: associationWork.value.id,
240
- }, associationWork.version)))
241
- return false;
242
- if (!(await compare(engineeringFollowupHeadKey(loaded.source.value.ticketId), loaded.head?.version ?? null)))
243
- return false;
244
- if (!(await compare({ partition: loaded.ticket.value.partition, id: "ticket" }, loaded.ticket.version)))
245
- return false;
246
- return compare(engineeringSourceKey(loaded.source.value.ticketId), loaded.source.version);
349
+ const versions = [
350
+ ...(work === undefined
351
+ ? []
352
+ : [
353
+ {
354
+ key: { partition: work.value.partition, id: work.value.id },
355
+ version: work.version,
356
+ },
357
+ ]),
358
+ ...(associationWork === undefined
359
+ ? []
360
+ : [
361
+ {
362
+ key: {
363
+ partition: associationWork.value.partition,
364
+ id: associationWork.value.id,
365
+ },
366
+ version: associationWork.version,
367
+ },
368
+ ]),
369
+ {
370
+ key: engineeringFollowupHeadKey(loaded.source.value.ticketId),
371
+ version: loaded.head?.version,
372
+ },
373
+ {
374
+ key: { partition: loaded.ticket.value.partition, id: "ticket" },
375
+ version: loaded.ticket.version,
376
+ },
377
+ {
378
+ key: engineeringSourceKey(loaded.source.value.ticketId),
379
+ version: loaded.source.version,
380
+ },
381
+ ];
382
+ const observed = await Promise.allSettled(versions.map(async (expected) => (await deps.records.getVersioned(expected.key))?.version ===
383
+ expected.version));
384
+ for (const result of observed) {
385
+ if (result.status === "rejected")
386
+ throw result.reason;
387
+ if (!result.value)
388
+ return false;
389
+ }
390
+ return true;
247
391
  }
248
392
  export async function engineeringFollowupActive(deps, loaded, stored, now = engineeringFollowupNow(deps)) {
249
393
  const work = stored.value;
@@ -552,20 +696,25 @@ export async function engineeringFollowupPlanHeads(head, context, now) {
552
696
  }
553
697
  export function createEngineeringFollowupSourceServices(deps) {
554
698
  const { records, clock, options } = deps;
555
- const load = async (ticketId) => {
699
+ const load = async (ticketId, authorize, initialSource) => {
556
700
  text(ticketId, "ticketId");
557
701
  const ticket = await records.getVersioned({
558
702
  partition: ticketId,
559
703
  id: "ticket",
560
704
  });
561
- const source = await records.getVersioned(engineeringSourceKey(ticketId));
705
+ authorize?.();
706
+ const source = initialSource ??
707
+ (await records.getVersioned(engineeringSourceKey(ticketId)));
708
+ authorize?.(source?.value.kind === "engineering_source" ? source.value : undefined);
562
709
  const head = await records.getVersioned(engineeringFollowupHeadKey(ticketId));
710
+ authorize?.();
563
711
  if (ticket?.value.kind !== "ticket" ||
564
712
  source?.value.kind !== "engineering_source")
565
713
  throw new SupportDeskNotFoundError();
566
714
  if (head !== null && head.value.kind !== "engineering_followup_head")
567
715
  throw new SupportDeskConflictError("Follow-up head key collision");
568
716
  const rows = await records.list(ticketId);
717
+ authorize?.();
569
718
  if (rows.length > deps.limits.maxRecordsPerTicket)
570
719
  throw new SupportDeskLimitError("ticket_partition", deps.limits.maxRecordsPerTicket);
571
720
  return {
@@ -587,9 +736,11 @@ export function createEngineeringFollowupSourceServices(deps) {
587
736
  throw new SupportDeskNotFoundError();
588
737
  return { value: work.value, version: work.version };
589
738
  };
590
- async function reassessment(key, now = engineeringFollowupNow(deps), purpose = "bundle") {
591
- const loaded = await load(key.ticketId);
592
- const work = await workAt(key);
739
+ async function reassessment(key, now = engineeringFollowupNow(deps), purpose = "bundle", seed, authorize, initialSource) {
740
+ authorize?.();
741
+ const loaded = seed?.loaded ?? (await load(key.ticketId, authorize, initialSource));
742
+ const work = seed?.work ?? (await workAt(key));
743
+ authorize?.(loaded.source.value);
593
744
  const value = work.value;
594
745
  engineeringFollowupWeb(loaded);
595
746
  if (value.withdrawn ||
@@ -611,11 +762,18 @@ export function createEngineeringFollowupSourceServices(deps) {
611
762
  (!["held", "superseded"].includes(value.status) &&
612
763
  timestamp(value.deadline, "deadline") > now()))))
613
764
  throw new SupportDeskConflictError("Follow-up has no eligible retained draft or explicit model recovery");
614
- const associated = await engineeringFollowupAssociation(deps, loaded, value.semanticIdentity);
765
+ const associated = seed === undefined
766
+ ? await engineeringFollowupAssociation(deps, loaded, value.semanticIdentity)
767
+ : {
768
+ association: seed.association,
769
+ engineeringWork: seed.engineeringWork,
770
+ };
771
+ authorize?.(loaded.source.value);
615
772
  const proofContext = engineeringFollowupProofContext(loaded, associated.association);
616
773
  if (options.releaseEvidence === undefined)
617
774
  throw new SupportDeskConflictError("Follow-up release verification unavailable");
618
775
  const proof = snapshot(await engineeringFollowupTrusted(deps, (signal) => options.releaseEvidence.confirm(value.context, proofContext, signal)));
776
+ authorize?.(loaded.source.value);
619
777
  engineeringFollowupValidateProof(proof, proofContext, associated.engineeringWork.value.product, now);
620
778
  if (proof.context.issueHead.state !== "closed" ||
621
779
  proof.context.deploymentHead.state !== "deployed" ||
@@ -873,10 +1031,11 @@ export function createEngineeringFollowupSourceServices(deps) {
873
1031
  }
874
1032
  throw new SupportDeskConflictError();
875
1033
  },
876
- async observeEngineeringFollowup(access, input) {
1034
+ async observeEngineeringFollowup(access, input, control) {
877
1035
  const actorId = access.principalId;
878
1036
  const authorize = () => engineeringFollowupPermission(access, supportPermissions.engineeringFollowupEvidenceSubmit, actorId);
879
1037
  authorize();
1038
+ const mutation = engineeringMutationBoundary(control);
880
1039
  const command = snapshot(fields(input, "observe follow-up", [
881
1040
  "ticketId",
882
1041
  "commandId",
@@ -909,6 +1068,7 @@ export function createEngineeringFollowupSourceServices(deps) {
909
1068
  throw new SupportDeskConflictError("Follow-up command reused");
910
1069
  return snapshot(prior.result);
911
1070
  }
1071
+ mutation?.ensure();
912
1072
  const admitted = await (async () => {
913
1073
  const loaded = await load(command.ticketId);
914
1074
  engineeringFollowupWeb(loaded);
@@ -1115,6 +1275,14 @@ export function createEngineeringFollowupSourceServices(deps) {
1115
1275
  result,
1116
1276
  };
1117
1277
  checkEngineeringFollowupRecordCapacity(receipt);
1278
+ if (mutation !== undefined) {
1279
+ const assertHostCurrent = await mutation.verify();
1280
+ assertHostCurrent();
1281
+ authorize();
1282
+ if (now() >= timestamp(proof.attestation.validUntil, "validUntil"))
1283
+ throw new SupportDeskConflictError("Follow-up observation expired");
1284
+ mutation.ensure();
1285
+ }
1118
1286
  if ((await records.transact(command.ticketId, [
1119
1287
  {
1120
1288
  action: "putIfUnchanged",
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-followup-source.js","sourceRoot":"","sources":["../src/engineering-followup-source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engineering-followup-source.js","sourceRoot":"","sources":["../src/engineering-followup-source.ts"],"names":[],"mappings":"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"}