@bpmsoftwaresolutions/ai-engine-client 1.1.19 → 1.1.21

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
@@ -378,6 +378,7 @@ Low-level compatibility methods:
378
378
  |---|---|---|
379
379
  | `getLogaOperatorHomeProjection()` | `GET /api/operator/projections/home` | Governed operator home runtime markdown document. |
380
380
  | `getLogaProjectCatalogProjection()` | `GET /api/operator/projections/project-catalog` | Governed project catalog runtime markdown document. |
381
+ | `getLogaProjectPortfolioProjection()` | `GET /api/operator/projections/project-portfolio` | Governed portfolio rollup runtime markdown document with SQL-backed completion metrics and project buckets. |
381
382
  | `getLogaProjectRoadmapProjection(projectId)` | `GET /api/operator/projections/projects/:projectId/roadmap.md` | Governed project roadmap runtime markdown document. |
382
383
  | `getLogaRoadmapItemProjection(projectId, itemKey)` | `GET /api/operator/projections/projects/:projectId/roadmap/items/:itemKey` | Governed roadmap item runtime markdown document with item-level navigation, related documents, actions, and evidence. |
383
384
  | `getLogaWorkflowRunProjection(workflowRunId)` | `GET /api/operator/projections/workflow-runs/:workflowRunId` | Governed workflow run runtime markdown document. |
@@ -385,6 +386,8 @@ Low-level compatibility methods:
385
386
  | `submitUxGateRemediation(body)` / `client.loga.submitUxGateRemediation(body)` | `POST /api/loga/ux-gate-remediations` | Create a governed SQL-backed remediation ticket for a UX gate failure. |
386
387
  | `listUxGateRemediations({ projectionType, status })` / `client.loga.listUxGateRemediations(...)` | `GET /api/loga/ux-gate-remediations` | List governed UX gate remediation tickets. |
387
388
  | `getUxGateRemediation(remediationId)` / `client.loga.getUxGateRemediation(...)` | `GET /api/loga/ux-gate-remediations/:remediationId` | Read one governed UX gate remediation ticket. |
389
+ | `appendUxRemediationTicketNote(remediationId, body)` / `client.loga.appendUxRemediationTicketNote(...)` | `POST /api/loga/ux-gate-remediations/:remediationId/notes` | Append a governed downstream-facing remediation note to a UX gate remediation ticket. |
390
+ | `listUxRemediationTicketNotes(remediationId)` / `client.loga.listUxRemediationTicketNotes(...)` | `GET /api/loga/ux-gate-remediations/:remediationId/notes` | List governed remediation notes for a UX gate remediation ticket. |
388
391
  | `promoteUxGateRemediationImplementationCandidate(remediationId, { promotedBy })` / `client.loga.promoteUxGateRemediationImplementationCandidate(...)` | `POST /api/loga/ux-gate-remediations/:remediationId/implementation-candidate` | Promote a governed UX remediation ticket into a durable implementation packet candidate. |
389
392
  | `getLogaUxGateRemediationProjection(remediationId)` / `client.loga.getUxGateRemediationProjection(...)` | `GET /api/operator/projections/ux-gate-remediations/:remediationId` | Review a governed UX remediation ticket and its linked implementation candidate as a LOGA runtime document. |
390
393
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bpmsoftwaresolutions/ai-engine-client",
3
- "version": "1.1.19",
3
+ "version": "1.1.21",
4
4
  "description": "Thin npm client for the AI Engine operator and retrieval APIs",
5
5
  "type": "module",
6
6
  "main": "./src/index.js",
package/src/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  const DEFAULT_TIMEOUT_MS = 30000;
2
- export const AI_ENGINE_CLIENT_VERSION = '1.1.19';
2
+ export const AI_ENGINE_CLIENT_VERSION = '1.1.21';
3
3
  export const GOVERNED_MUTATION_REQUIRED_CAPABILITIES = [
4
4
  'executeVerifiedMutation',
5
5
  'post_mutation_verification',
@@ -165,6 +165,8 @@ export class AIEngineClient {
165
165
  submitUxGateRemediation: (payload) => this.submitUxGateRemediation(payload),
166
166
  listUxGateRemediations: (query) => this.listUxGateRemediations(query),
167
167
  getUxGateRemediation: (remediationId) => this.getUxGateRemediation(remediationId),
168
+ appendUxRemediationTicketNote: (remediationId, payload) => this.appendUxRemediationTicketNote(remediationId, payload),
169
+ listUxRemediationTicketNotes: (remediationId) => this.listUxRemediationTicketNotes(remediationId),
168
170
  promoteUxGateRemediationImplementationCandidate: (remediationId, payload) =>
169
171
  this.promoteUxGateRemediationImplementationCandidate(remediationId, payload),
170
172
  getUxGateRemediationProjection: (remediationId) => this.getLogaUxGateRemediationProjection(remediationId),
@@ -939,6 +941,10 @@ export class AIEngineClient {
939
941
  return this._requestLogaProjection('/api/operator/projections/project-catalog');
940
942
  }
941
943
 
944
+ async getLogaProjectPortfolioProjection() {
945
+ return this._requestLogaProjection('/api/operator/projections/project-portfolio');
946
+ }
947
+
942
948
  async getLogaProjectRoadmapProjection(projectId) {
943
949
  return this._requestLogaProjection(`/api/operator/projections/projects/${projectId}/roadmap.md`);
944
950
  }
@@ -990,6 +996,31 @@ export class AIEngineClient {
990
996
  return this._request(`/api/loga/ux-gate-remediations/${remediationId}`);
991
997
  }
992
998
 
999
+ async appendUxRemediationTicketNote(remediationId, {
1000
+ noteKind,
1001
+ body,
1002
+ visibility,
1003
+ authorActorId,
1004
+ evidenceRefs,
1005
+ metadata,
1006
+ } = {}) {
1007
+ return this._request(`/api/loga/ux-gate-remediations/${remediationId}/notes`, {
1008
+ method: 'POST',
1009
+ body: {
1010
+ noteKind,
1011
+ body,
1012
+ visibility,
1013
+ authorActorId,
1014
+ evidenceRefs,
1015
+ metadata,
1016
+ },
1017
+ });
1018
+ }
1019
+
1020
+ async listUxRemediationTicketNotes(remediationId) {
1021
+ return this._request(`/api/loga/ux-gate-remediations/${remediationId}/notes`);
1022
+ }
1023
+
993
1024
  async promoteUxGateRemediationImplementationCandidate(remediationId, { promotedBy } = {}) {
994
1025
  return this._request(`/api/loga/ux-gate-remediations/${remediationId}/implementation-candidate`, {
995
1026
  method: 'POST',