@promptowl/contextnest-community 1.23.0 → 1.24.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.
Files changed (89) hide show
  1. package/API.md +2092 -0
  2. package/CONFIGURATION.md +1 -0
  3. package/README.md +61 -9
  4. package/STEWARDSHIP.md +229 -0
  5. package/dist/{chunk-2YPY2HGZ.js → chunk-2TPQTN4Y.js} +5 -4
  6. package/dist/{chunk-MLQU4I5J.js → chunk-5EZOPA47.js} +5 -5
  7. package/dist/{chunk-UOMW7TT6.js → chunk-I3CSD6CK.js} +1 -1
  8. package/dist/{chunk-QLXC6542.js → chunk-KIAAEHWL.js} +49 -25
  9. package/dist/{chunk-QWNXWRWO.js → chunk-LA3VTQ22.js} +25 -1
  10. package/dist/{chunk-XYD6V2LH.js → chunk-XUIWAWDO.js} +28 -33
  11. package/dist/{chunk-5CVZMHHB.js → chunk-ZTT4U4NE.js} +2 -2
  12. package/dist/{client-LWDMNKX3.js → client-KEY4PYJH.js} +1 -1
  13. package/dist/{engine-QFF2IA3G.js → engine-S3QBQ7LH.js} +2 -2
  14. package/dist/{external-edit-service-F7D3VSA2.js → external-edit-service-6FNFPOJJ.js} +3 -3
  15. package/dist/{grants-service-TBGTCO5K.js → grants-service-UT3EQ3R7.js} +2 -2
  16. package/dist/index.js +371 -90
  17. package/dist/{migrations.postgres-APCVSYUE.js → migrations.postgres-AIQ7WSU7.js} +45 -4
  18. package/dist/{review-service-A7PNLWG5.js → review-service-HHGOTO6P.js} +6 -6
  19. package/dist/{stewardship-service-32UHIRQ5.js → stewardship-service-4DHNRULG.js} +3 -3
  20. package/dist/{version-service-RJ6CWZ3O.js → version-service-KIOQME6U.js} +3 -3
  21. package/dist/web3/assets/ActivityTracePage-BOZHgJ8S.js +1 -0
  22. package/dist/web3/assets/AgentDocsPage-CIiaBqMy.js +1 -0
  23. package/dist/web3/assets/CollaboratorManager-By91wrIr.js +1 -0
  24. package/dist/web3/assets/CollaboratorsTab-D1EE64Fs.js +1 -0
  25. package/dist/web3/assets/DocumentEditor-DrQfrW3d.js +36 -0
  26. package/dist/web3/assets/DocumentsTab-Vba-AzBv.js +6 -0
  27. package/dist/web3/assets/ExternalEditsTab-BSzAQIGM.js +1 -0
  28. package/dist/web3/assets/MarkdownEditor-74N_naNQ.css +1 -0
  29. package/dist/web3/assets/MarkdownEditor-C9zqZjC5.js +643 -0
  30. package/dist/web3/assets/NestPageHeader-CoLUV1Oz.js +1 -0
  31. package/dist/web3/assets/NestView-CTZ55tXD.js +63 -0
  32. package/dist/web3/assets/OverviewTab-Dxi-Hu-N.js +1 -0
  33. package/dist/web3/assets/PersonCombobox-CPOlNs6G.js +1 -0
  34. package/dist/web3/assets/ReasonDialog-DgLxfRWv.js +1 -0
  35. package/dist/web3/assets/ReviewActions-OfOdqzCn.js +6 -0
  36. package/dist/web3/assets/ReviewTab-CyX8yxd3.js +1 -0
  37. package/dist/web3/assets/StewardsTab-DBEEfAQI.js +1 -0
  38. package/dist/web3/assets/SubmitForReviewModal-Ci2DdWs0.js +1 -0
  39. package/dist/web3/assets/alert-dialog-DTozKlmV.js +7 -0
  40. package/dist/web3/assets/arrow-left-BCKt4CwQ.js +6 -0
  41. package/dist/web3/assets/backlinks-CYd4xENL.js +24 -0
  42. package/dist/web3/assets/card-XG2dP5Xf.js +1 -0
  43. package/dist/web3/assets/chevron-left-BPwUT9DS.js +6 -0
  44. package/dist/web3/assets/circle-check-DI8IBGeo.js +6 -0
  45. package/dist/web3/assets/circle-x-VKVhC88W.js +6 -0
  46. package/dist/web3/assets/code-xml-CMabYZvH.js +6 -0
  47. package/dist/web3/assets/corner-down-right-BGxwK6wH.js +6 -0
  48. package/dist/web3/assets/count-skeleton-DMbdpscX.js +1 -0
  49. package/dist/web3/assets/dates-BCxbm4_q.js +1 -0
  50. package/dist/web3/assets/earth-BEp1EKTo.js +6 -0
  51. package/dist/web3/assets/file-exclamation-point-r8qZGIjP.js +6 -0
  52. package/dist/web3/assets/folder-input-Cmtx1Jhk.js +11 -0
  53. package/dist/web3/assets/folder-target-CUSWqImF.js +1 -0
  54. package/dist/web3/assets/index-BM-h3DwI.css +1 -0
  55. package/dist/web3/assets/index-C1wTSjfP.js +29 -0
  56. package/dist/web3/assets/index-EaX2yql0.js +389 -0
  57. package/dist/web3/assets/page-B3yvQvHy.js +1 -0
  58. package/dist/web3/assets/page-BExMvttJ.js +1 -0
  59. package/dist/web3/assets/page-BUOADv2X.js +1 -0
  60. package/dist/web3/assets/page-BYUFhYWZ.js +1 -0
  61. package/dist/web3/assets/page-Bicf02Cz.js +1 -0
  62. package/dist/web3/assets/page-BsPMDm5d.js +45 -0
  63. package/dist/web3/assets/page-ByyVLDVo.js +16 -0
  64. package/dist/web3/assets/page-CC0NJi8v.js +1 -0
  65. package/dist/web3/assets/page-CHb0F5hV.js +24 -0
  66. package/dist/web3/assets/page-CPjWQNKx.js +11 -0
  67. package/dist/web3/assets/page-CQt3ZGbf.js +2 -0
  68. package/dist/web3/assets/page-Cj1NetQ-.js +1 -0
  69. package/dist/web3/assets/page-CtaW65El.js +1 -0
  70. package/dist/web3/assets/page-DGOL9l8i.js +6 -0
  71. package/dist/web3/assets/page-title-ClvvBsIo.js +1 -0
  72. package/dist/web3/assets/play-C5YNKpAH.js +6 -0
  73. package/dist/web3/assets/refresh-cw-BhHzSH9m.js +6 -0
  74. package/dist/web3/assets/scroll-area-dRWncRqa.css +1 -0
  75. package/dist/web3/assets/scroll-area-hz-xtayP.js +1 -0
  76. package/dist/web3/assets/select-DBFTrUmI.js +6 -0
  77. package/dist/web3/assets/send-0CHvmluT.js +6 -0
  78. package/dist/web3/assets/settings-CeeF4LEb.js +6 -0
  79. package/dist/web3/assets/share-2-CMnOlOt-.js +6 -0
  80. package/dist/web3/assets/tag-DQ_6J5Gv.js +11 -0
  81. package/dist/web3/assets/trash-2-HBi-Pslz.js +6 -0
  82. package/dist/web3/assets/triangle-alert-CDy8-7sv.js +6 -0
  83. package/dist/web3/assets/user-plus-CvBNcpn4.js +6 -0
  84. package/dist/web3/assets/x-By7piikG.js +6 -0
  85. package/dist/web3/assets/zap-C2T8riBp.js +11 -0
  86. package/dist/web3/index.html +2 -2
  87. package/package.json +4 -2
  88. package/dist/web3/assets/index-BJ-LRNis.js +0 -1382
  89. package/dist/web3/assets/index-DPMEt-A_.css +0 -1
@@ -2,13 +2,14 @@ import {
2
2
  engineCache,
3
3
  indexedNodeIds,
4
4
  isNestArchived,
5
+ listSuggestionRows,
5
6
  markIndexStale,
6
7
  resolveNestPath,
7
- setSuggestionFlag
8
- } from "./chunk-QLXC6542.js";
8
+ syncSuggestionRows
9
+ } from "./chunk-KIAAEHWL.js";
9
10
  import {
10
11
  getDb
11
- } from "./chunk-QWNXWRWO.js";
12
+ } from "./chunk-LA3VTQ22.js";
12
13
 
13
14
  // src/governance/external-edit-service.ts
14
15
  import { readFile, readdir } from "fs/promises";
@@ -82,7 +83,7 @@ async function scanDocumentForDriftInternal(nestId, documentId, actor) {
82
83
  if (await bodyMatchesLatestVersion(storage, documentId, drift.actualHash)) {
83
84
  return null;
84
85
  }
85
- const { hasUnsealedDraft } = await import("./version-service-RJ6CWZ3O.js");
86
+ const { hasUnsealedDraft } = await import("./version-service-KIOQME6U.js");
86
87
  if (await hasUnsealedDraft(nestId, documentId)) {
87
88
  return null;
88
89
  }
@@ -91,7 +92,7 @@ async function scanDocumentForDriftInternal(nestId, documentId, actor) {
91
92
  const existing = await listSuggestions(storage, documentId);
92
93
  const dup = existing.find((s) => s.proposed_hash === drift.actualHash);
93
94
  if (dup) {
94
- await setSuggestionFlag(nestId, documentId, true);
95
+ await syncSuggestionRows(nestId, documentId, existing);
95
96
  return { meta: dup, created: false };
96
97
  }
97
98
  const result = await stageSuggestion({
@@ -103,13 +104,13 @@ async function scanDocumentForDriftInternal(nestId, documentId, actor) {
103
104
  actor,
104
105
  docTier: "standard"
105
106
  });
106
- await setSuggestionFlag(nestId, documentId, true);
107
+ await syncSuggestionRows(nestId, documentId, [...existing, result.meta]);
107
108
  return { meta: result.meta, created: true };
108
109
  }
109
110
  async function refreshSuggestionFlag(nestId, storage, documentId) {
110
111
  try {
111
112
  const remaining = await listSuggestions(storage, documentId);
112
- await setSuggestionFlag(nestId, documentId, remaining.length > 0);
113
+ await syncSuggestionRows(nestId, documentId, remaining);
113
114
  } catch (err) {
114
115
  console.error("[external-edit] flag refresh failed", nestId, documentId, err);
115
116
  }
@@ -170,33 +171,27 @@ async function getPendingChange(nestId, documentId) {
170
171
  return null;
171
172
  }
172
173
  async function listNestExternalEdits(nestId) {
174
+ const rows = await listSuggestionRows(nestId);
175
+ if (rows.length === 0) return [];
173
176
  const { storage } = await engineCache.get(nestId);
174
- const docs = await storage.discoverDocuments();
175
- const lists = await Promise.all(
176
- docs.map(async (doc) => {
177
- const metas = await listSuggestions(storage, doc.id);
178
- const fresh = [];
179
- for (const meta of metas) {
180
- if (await bodyMatchesLatestVersion(storage, doc.id, meta.proposed_hash)) {
181
- continue;
182
- }
183
- fresh.push(meta);
184
- }
185
- return fresh;
186
- })
177
+ const kept = await Promise.all(
178
+ rows.map(
179
+ async (r) => await bodyMatchesLatestVersion(storage, r.node_id, r.proposed_hash) ? null : r
180
+ )
181
+ );
182
+ return kept.flatMap(
183
+ (r) => r ? [{
184
+ suggestion_id: r.suggestion_id,
185
+ nest_id: nestId,
186
+ document_id: r.node_id,
187
+ source: r.source,
188
+ detected_at: r.detected_at,
189
+ actor: r.actor,
190
+ target_hash: r.target_hash,
191
+ proposed_hash: r.proposed_hash,
192
+ note: r.note ?? void 0
193
+ }] : []
187
194
  );
188
- const entries = lists.flat().map((meta) => ({
189
- suggestion_id: meta.suggestion_id,
190
- nest_id: nestId,
191
- document_id: meta.document_id,
192
- source: meta.source,
193
- detected_at: meta.detected_at,
194
- actor: meta.actor,
195
- target_hash: meta.target_hash,
196
- proposed_hash: meta.proposed_hash,
197
- note: meta.note
198
- }));
199
- return entries.sort((a, b) => b.detected_at.localeCompare(a.detected_at));
200
195
  }
201
196
  async function getExternalEditDetail(nestId, documentId, suggestionId) {
202
197
  const { storage } = await engineCache.get(nestId);
@@ -259,7 +254,7 @@ async function listExternalEditVerdicts(nestId, documentId) {
259
254
  async function mirrorVersion(input) {
260
255
  const { storage } = await engineCache.get(input.nestId);
261
256
  const node = await storage.readDocument(input.documentId);
262
- const { upsertVersion, setApprovedVersion } = await import("./version-service-RJ6CWZ3O.js");
257
+ const { upsertVersion, setApprovedVersion } = await import("./version-service-KIOQME6U.js");
263
258
  await upsertVersion({
264
259
  nestId: input.nestId,
265
260
  nodeId: input.documentId,
@@ -2,10 +2,10 @@ import {
2
2
  buildTitleMap,
3
3
  insertOrReplace,
4
4
  nowExpr
5
- } from "./chunk-QLXC6542.js";
5
+ } from "./chunk-KIAAEHWL.js";
6
6
  import {
7
7
  getDb
8
- } from "./chunk-QWNXWRWO.js";
8
+ } from "./chunk-LA3VTQ22.js";
9
9
 
10
10
  // src/governance/version-service.ts
11
11
  import { createHash } from "crypto";
@@ -2,7 +2,7 @@ import {
2
2
  getDb,
3
3
  initDb,
4
4
  resetDb
5
- } from "./chunk-QWNXWRWO.js";
5
+ } from "./chunk-LA3VTQ22.js";
6
6
  import "./chunk-YB3LKF7U.js";
7
7
  export {
8
8
  getDb,
@@ -2,9 +2,9 @@ import {
2
2
  engineApi,
3
3
  engineCache,
4
4
  opContext
5
- } from "./chunk-QLXC6542.js";
5
+ } from "./chunk-KIAAEHWL.js";
6
6
  import "./chunk-YVMSM7LS.js";
7
- import "./chunk-QWNXWRWO.js";
7
+ import "./chunk-LA3VTQ22.js";
8
8
  import "./chunk-YB3LKF7U.js";
9
9
  import "./chunk-FRQJWGN3.js";
10
10
  export {
@@ -11,10 +11,10 @@ import {
11
11
  scanNestForDrift,
12
12
  startDriftScanner,
13
13
  stopDriftScanner
14
- } from "./chunk-XYD6V2LH.js";
15
- import "./chunk-QLXC6542.js";
14
+ } from "./chunk-XUIWAWDO.js";
15
+ import "./chunk-KIAAEHWL.js";
16
16
  import "./chunk-YVMSM7LS.js";
17
- import "./chunk-QWNXWRWO.js";
17
+ import "./chunk-LA3VTQ22.js";
18
18
  import "./chunk-YB3LKF7U.js";
19
19
  import "./chunk-FRQJWGN3.js";
20
20
  export {
@@ -6,9 +6,9 @@ import {
6
6
  listGrants,
7
7
  listUserGrants,
8
8
  resolveNodeGrant
9
- } from "./chunk-UOMW7TT6.js";
9
+ } from "./chunk-I3CSD6CK.js";
10
10
  import "./chunk-YVMSM7LS.js";
11
- import "./chunk-QWNXWRWO.js";
11
+ import "./chunk-LA3VTQ22.js";
12
12
  import "./chunk-YB3LKF7U.js";
13
13
  export {
14
14
  createGrant,