@pegma/support-desk-application 0.2.7 → 0.2.8

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 CHANGED
@@ -1,8 +1,10 @@
1
1
  # @pegma/support-desk-application
2
2
 
3
- The local synchronized source version is `0.2.7`. See the
4
- [release notes](../../docs/RELEASE_NOTES.md#027-engineering-read-batching)
5
- and [engineering read phases](../../docs/ENGINEERING_EXPORT.md#entry-points-and-authority). The application groups independent Source/Work reads while preserving current authority, final version checks and exact receipt recovery.
3
+ The local synchronized source version is `0.2.8`. See the
4
+ [release notes](../../docs/RELEASE_NOTES.md#028-followup-mutation-guards)
5
+ and [engineering read phases](../../docs/ENGINEERING_EXPORT.md#entry-points-and-authority). The application retains the authorized engineering reads published in `0.2.7`.
6
+ Candidate `0.2.8` adds optional late host control to non-post follow-up mutations
7
+ and application-owned per-attempt reassessment/post observations; see the [follow-up contract](../../docs/ENGINEERING_FOLLOWUP.md#candidate-028-followup-host-guards).
6
8
 
7
9
  Authorized customer ticket services and provider-neutral durable outbox
8
10
  records for Support Desk. The host supplies an `@pegma/storage-core` `Store`
@@ -10,11 +12,11 @@ and a trusted Authorization Core access context.
10
12
  The host server supplies `correlationId` on commands; the application validates
11
13
  and propagates it and never generates it.
12
14
 
13
- The current verified published synchronized release is `0.2.6` and includes
15
+ The current verified published synchronized release is `0.2.7` and includes
14
16
  changes beyond the immutable `0.1.0`/`0.1.1` artifacts. SD-01 first shipped
15
17
  handling/handoff foundations in `0.2.0` without model generation or a KB
16
18
  dependency. See the current
17
- [publication receipt](../../docs/RELEASING.md#verified-026-publication-2026-11-11).
19
+ [publication receipt](../../docs/RELEASING.md#verified-027-publication-2026-11-11).
18
20
  Host adoption retains its own activation gates; source checkouts and
19
21
  overwritten registry versions are not release substitutes.
20
22
 
@@ -22,7 +24,7 @@ The published synchronized `0.2.1` patch groups independent Store reads for
22
24
  assistant answering while retaining current authority, ticket and turn fences.
23
25
  This package gains no KB or provider dependency. The historical
24
26
  [0.2.1 receipt](../../docs/RELEASING.md#verified-021-publication-2026-11-10)
25
- records that patch's exact artifacts; current `0.2.6` retains those guards. Grouped reads do not establish a universal host query or CPU
27
+ records that patch's exact artifacts; current `0.2.7` retains those guards. Grouped reads do not establish a universal host query or CPU
26
28
  budget.
27
29
 
28
30
  Published `0.2.3` includes the final engineering review guards described in
@@ -2,11 +2,11 @@ import type { Clock } from "@pegma/spine";
2
2
  import type { CollectionStore, VersionedRecord } from "@pegma/storage-core";
3
3
  import type { Ticket } from "@pegma/support-desk-contracts";
4
4
  import type { SupportDeskLimits, SupportRecord } from "./index.js";
5
- import type { EngineeringAction, EngineeringSourceVersion, EngineeringTicketVersion } from "./engineering-internal.js";
5
+ import type { EngineeringAction, EngineeringSourceVersion, EngineeringTicketVersion, EngineeringWorkVersion } from "./engineering-internal.js";
6
6
  import type { EngineeringSourceRecord } from "./engineering-records.js";
7
7
  import type { EngineeringCommand } from "./engineering-types.js";
8
8
  import type { EngineeringFollowupHeadRecord, EngineeringFollowupWorkRecord, ResolvedEngineeringFollowupOptions } from "./engineering-followup-records.js";
9
- import type { EngineeringFollowupKey, EngineeringFollowupProofContext, VerifiedEngineeringFollowupContext } from "./engineering-followup-types.js";
9
+ import type { EngineeringFollowupKey, EngineeringFollowupAssociation, EngineeringFollowupProofContext, VerifiedEngineeringFollowupContext } from "./engineering-followup-types.js";
10
10
  export interface EngineeringFollowupLoaded {
11
11
  readonly ticket: EngineeringTicketVersion;
12
12
  readonly source: EngineeringSourceVersion;
@@ -14,6 +14,13 @@ export interface EngineeringFollowupLoaded {
14
14
  readonly rows: readonly SupportRecord[];
15
15
  }
16
16
  export type EngineeringFollowupLoad = (ticketId: string) => Promise<EngineeringFollowupLoaded>;
17
+ /** Private component-owned records used by one reassessment attempt, never caller data. */
18
+ export interface EngineeringFollowupReassessmentSeed {
19
+ readonly loaded: EngineeringFollowupLoaded;
20
+ readonly work: EngineeringFollowupWorkVersion;
21
+ readonly association: EngineeringFollowupAssociation;
22
+ readonly engineeringWork: EngineeringWorkVersion;
23
+ }
17
24
  export type EngineeringFollowupReassessmentPurpose = "bundle" | "model_retry";
18
25
  export interface EngineeringFollowupMutationPlan {
19
26
  readonly actions: readonly EngineeringAction[];
@@ -1 +1 @@
1
- {"version":3,"file":"engineering-followup-internal.d.ts","sourceRoot":"","sources":["../src/engineering-followup-internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engineering-followup-internal.d.ts","sourceRoot":"","sources":["../src/engineering-followup-internal.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,14 @@ import type { CollectionStore } from "@pegma/storage-core";
3
3
  import { type SupportRecord } from "./index.js";
4
4
  import { type EngineeringFollowupHeadRecord, type EngineeringFollowupWorkRecord } from "./engineering-followup-records.js";
5
5
  import type { EngineeringFollowupApplication, EngineeringFollowupAssociation, EngineeringFollowupContext, EngineeringFollowupProofContext, EngineeringFollowupResult, VerifiedEngineeringFollowupContext } from "./engineering-followup-types.js";
6
- import type { EngineeringFollowupDependencies, EngineeringFollowupLoaded, EngineeringFollowupLoad, EngineeringFollowupMutationPlan, EngineeringFollowupSourceChangeContext, EngineeringFollowupWorkVersion, EngineeringFollowupReassessmentPurpose } from "./engineering-followup-internal.js";
6
+ import type { EngineeringFollowupDependencies, EngineeringFollowupLoaded, EngineeringFollowupMutationPlan, EngineeringFollowupSourceChangeContext, EngineeringFollowupWorkVersion, EngineeringFollowupReassessmentPurpose, EngineeringFollowupReassessmentSeed } from "./engineering-followup-internal.js";
7
7
  export declare function engineeringFollowupPermission(access: AccessContext, name: string, actorId: string, staff?: boolean): void;
8
+ /** Data observations are operation-local; authority is checked afresh on every use. */
9
+ export declare function engineeringFollowupObservation(deps: EngineeringFollowupDependencies, current: EngineeringFollowupReassessmentSeed, actorId: string, authorize: (reader: AccessContext) => void): {
10
+ check: (reader: AccessContext) => void;
11
+ close: () => void;
12
+ confirm(reader: AccessContext): Promise<void>;
13
+ };
8
14
  export declare function engineeringFollowupNow(deps: EngineeringFollowupDependencies): () => number;
9
15
  export declare function engineeringFollowupTrusted<T>(deps: EngineeringFollowupDependencies, action: (signal: AbortSignal) => Promise<T>, signal?: AbortSignal): Promise<T>;
10
16
  export declare function engineeringFollowupResult(work: EngineeringFollowupWorkRecord): EngineeringFollowupResult;
@@ -119,7 +125,7 @@ type SourceMethods = Pick<EngineeringFollowupApplication, "scanEngineeringFollow
119
125
  export declare function createEngineeringFollowupSourceServices(deps: EngineeringFollowupDependencies): {
120
126
  application: SourceMethods;
121
127
  internal: {
122
- load: EngineeringFollowupLoad;
128
+ load: (ticketId: string, authorize?: (source?: EngineeringFollowupLoaded["source"]["value"]) => void, initialSource?: EngineeringFollowupLoaded["source"]) => Promise<EngineeringFollowupLoaded>;
123
129
  workAt: (key: {
124
130
  readonly ticketId: string;
125
131
  readonly workId: string;
@@ -127,12 +133,9 @@ export declare function createEngineeringFollowupSourceServices(deps: Engineerin
127
133
  reassessment: (key: {
128
134
  readonly ticketId: string;
129
135
  readonly workId: string;
130
- }, now?: () => number, purpose?: EngineeringFollowupReassessmentPurpose) => Promise<{
136
+ }, now?: () => number, purpose?: EngineeringFollowupReassessmentPurpose, seed?: EngineeringFollowupReassessmentSeed, authorize?: (source?: EngineeringFollowupLoaded["source"]["value"]) => void, initialSource?: EngineeringFollowupLoaded["source"]) => Promise<{
131
137
  association: EngineeringFollowupAssociation;
132
- engineeringWork: {
133
- value: import("./engineering-records.js").EngineeringWorkRecord;
134
- version: string;
135
- };
138
+ engineeringWork: import("./engineering-internal.js").EngineeringWorkVersion;
136
139
  loaded: EngineeringFollowupLoaded;
137
140
  work: EngineeringFollowupWorkVersion;
138
141
  proofContext: EngineeringFollowupProofContext;
@@ -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,71 @@ 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
+ for (const expected of versions) {
67
+ const latest = await deps.records.getVersioned(expected.key);
68
+ check(reader);
69
+ if ((latest?.value.kind === "engineering_source" ||
70
+ latest?.value.kind === "engineering_followup_work") &&
71
+ latest.value.security !== "ordinary")
72
+ engineeringFollowupPermission(reader, supportPermissions.engineeringRestrictedRead, actorId, true);
73
+ if (latest?.version !== expected.version)
74
+ throw new SupportDeskConflictError("Follow-up observation changed");
75
+ }
76
+ },
77
+ };
78
+ }
13
79
  export function engineeringFollowupNow(deps) {
14
80
  const initial = timestamp(deps.clock.now(), "now");
15
81
  const start = performance.now();
@@ -552,20 +618,25 @@ export async function engineeringFollowupPlanHeads(head, context, now) {
552
618
  }
553
619
  export function createEngineeringFollowupSourceServices(deps) {
554
620
  const { records, clock, options } = deps;
555
- const load = async (ticketId) => {
621
+ const load = async (ticketId, authorize, initialSource) => {
556
622
  text(ticketId, "ticketId");
557
623
  const ticket = await records.getVersioned({
558
624
  partition: ticketId,
559
625
  id: "ticket",
560
626
  });
561
- const source = await records.getVersioned(engineeringSourceKey(ticketId));
627
+ authorize?.();
628
+ const source = initialSource ??
629
+ (await records.getVersioned(engineeringSourceKey(ticketId)));
630
+ authorize?.(source?.value.kind === "engineering_source" ? source.value : undefined);
562
631
  const head = await records.getVersioned(engineeringFollowupHeadKey(ticketId));
632
+ authorize?.();
563
633
  if (ticket?.value.kind !== "ticket" ||
564
634
  source?.value.kind !== "engineering_source")
565
635
  throw new SupportDeskNotFoundError();
566
636
  if (head !== null && head.value.kind !== "engineering_followup_head")
567
637
  throw new SupportDeskConflictError("Follow-up head key collision");
568
638
  const rows = await records.list(ticketId);
639
+ authorize?.();
569
640
  if (rows.length > deps.limits.maxRecordsPerTicket)
570
641
  throw new SupportDeskLimitError("ticket_partition", deps.limits.maxRecordsPerTicket);
571
642
  return {
@@ -587,9 +658,11 @@ export function createEngineeringFollowupSourceServices(deps) {
587
658
  throw new SupportDeskNotFoundError();
588
659
  return { value: work.value, version: work.version };
589
660
  };
590
- async function reassessment(key, now = engineeringFollowupNow(deps), purpose = "bundle") {
591
- const loaded = await load(key.ticketId);
592
- const work = await workAt(key);
661
+ async function reassessment(key, now = engineeringFollowupNow(deps), purpose = "bundle", seed, authorize, initialSource) {
662
+ authorize?.();
663
+ const loaded = seed?.loaded ?? (await load(key.ticketId, authorize, initialSource));
664
+ const work = seed?.work ?? (await workAt(key));
665
+ authorize?.(loaded.source.value);
593
666
  const value = work.value;
594
667
  engineeringFollowupWeb(loaded);
595
668
  if (value.withdrawn ||
@@ -611,11 +684,18 @@ export function createEngineeringFollowupSourceServices(deps) {
611
684
  (!["held", "superseded"].includes(value.status) &&
612
685
  timestamp(value.deadline, "deadline") > now()))))
613
686
  throw new SupportDeskConflictError("Follow-up has no eligible retained draft or explicit model recovery");
614
- const associated = await engineeringFollowupAssociation(deps, loaded, value.semanticIdentity);
687
+ const associated = seed === undefined
688
+ ? await engineeringFollowupAssociation(deps, loaded, value.semanticIdentity)
689
+ : {
690
+ association: seed.association,
691
+ engineeringWork: seed.engineeringWork,
692
+ };
693
+ authorize?.(loaded.source.value);
615
694
  const proofContext = engineeringFollowupProofContext(loaded, associated.association);
616
695
  if (options.releaseEvidence === undefined)
617
696
  throw new SupportDeskConflictError("Follow-up release verification unavailable");
618
697
  const proof = snapshot(await engineeringFollowupTrusted(deps, (signal) => options.releaseEvidence.confirm(value.context, proofContext, signal)));
698
+ authorize?.(loaded.source.value);
619
699
  engineeringFollowupValidateProof(proof, proofContext, associated.engineeringWork.value.product, now);
620
700
  if (proof.context.issueHead.state !== "closed" ||
621
701
  proof.context.deploymentHead.state !== "deployed" ||
@@ -873,10 +953,11 @@ export function createEngineeringFollowupSourceServices(deps) {
873
953
  }
874
954
  throw new SupportDeskConflictError();
875
955
  },
876
- async observeEngineeringFollowup(access, input) {
956
+ async observeEngineeringFollowup(access, input, control) {
877
957
  const actorId = access.principalId;
878
958
  const authorize = () => engineeringFollowupPermission(access, supportPermissions.engineeringFollowupEvidenceSubmit, actorId);
879
959
  authorize();
960
+ const mutation = engineeringMutationBoundary(control);
880
961
  const command = snapshot(fields(input, "observe follow-up", [
881
962
  "ticketId",
882
963
  "commandId",
@@ -909,6 +990,7 @@ export function createEngineeringFollowupSourceServices(deps) {
909
990
  throw new SupportDeskConflictError("Follow-up command reused");
910
991
  return snapshot(prior.result);
911
992
  }
993
+ mutation?.ensure();
912
994
  const admitted = await (async () => {
913
995
  const loaded = await load(command.ticketId);
914
996
  engineeringFollowupWeb(loaded);
@@ -1115,6 +1197,14 @@ export function createEngineeringFollowupSourceServices(deps) {
1115
1197
  result,
1116
1198
  };
1117
1199
  checkEngineeringFollowupRecordCapacity(receipt);
1200
+ if (mutation !== undefined) {
1201
+ const assertHostCurrent = await mutation.verify();
1202
+ assertHostCurrent();
1203
+ authorize();
1204
+ if (now() >= timestamp(proof.attestation.validUntil, "validUntil"))
1205
+ throw new SupportDeskConflictError("Follow-up observation expired");
1206
+ mutation.ensure();
1207
+ }
1118
1208
  if ((await records.transact(command.ticketId, [
1119
1209
  {
1120
1210
  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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"}