@promptowl/contextnest-community 1.25.0 → 1.27.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 (121) hide show
  1. package/API.md +102 -9
  2. package/CONFIGURATION.md +604 -117
  3. package/README.md +3 -2
  4. package/dist/{chunk-JDAOA5KP.js → chunk-H3W72HN3.js} +67 -14
  5. package/dist/{chunk-2KHM5C7V.js → chunk-MB52DWWP.js} +13 -15
  6. package/dist/{chunk-TI7HMP64.js → chunk-NFFUZF2B.js} +23 -2
  7. package/dist/{chunk-F66VCBLA.js → chunk-O3JEI33N.js} +51 -2
  8. package/dist/{chunk-7FROMOZM.js → chunk-QMQDWRHN.js} +180 -550
  9. package/dist/chunk-RXCVXG34.js +523 -0
  10. package/dist/{chunk-32SZCH36.js → chunk-SE5U4J4T.js} +4 -4
  11. package/dist/{chunk-KPGNZLZL.js → chunk-VHEMGQ3I.js} +1 -1
  12. package/dist/{chunk-DTLMBF4W.js → chunk-VRLAP4HB.js} +42 -17
  13. package/dist/{engine-TER6FDBP.js → engine-HLYQLP5T.js} +3 -2
  14. package/dist/{external-edit-service-CAGENHDJ.js → external-edit-service-3DFQ4EZZ.js} +4 -3
  15. package/dist/{grants-service-2OTFS7EH.js → grants-service-WICV4Y2J.js} +2 -2
  16. package/dist/index.js +1669 -521
  17. package/dist/invited-user-XEBX6BM4.js +12 -0
  18. package/dist/{migrations.postgres-23VJJJJX.js → migrations.postgres-HGSQ7IA5.js} +4 -0
  19. package/dist/{review-service-4G2XUFS6.js → review-service-GB43UQVH.js} +7 -6
  20. package/dist/{stewardship-service-S22V2JKG.js → stewardship-service-KDBPWRZI.js} +4 -3
  21. package/dist/{version-service-X4FAG2OZ.js → version-service-JYHFPSYP.js} +8 -3
  22. package/dist/web3/assets/ActivityTracePage-CkRoyIc-.js +1 -0
  23. package/dist/web3/assets/AgentDocsPage-BTRXmliv.js +1 -0
  24. package/dist/web3/assets/CollaboratorManager-CqJIkvs-.js +1 -0
  25. package/dist/web3/assets/CollaboratorsTab-JcO1P-qm.js +1 -0
  26. package/dist/web3/assets/DocumentEditor-D1GLeeEP.js +36 -0
  27. package/dist/web3/assets/DocumentsTab-BAgSxTX1.js +6 -0
  28. package/dist/web3/assets/ExternalEditsTab-DuuTXZap.js +1 -0
  29. package/dist/web3/assets/{MarkdownEditor-Dfk5uIE5.js → MarkdownEditor-BELFww9q.js} +130 -135
  30. package/dist/web3/assets/MarkdownEditor-ndtIx5x0.css +1 -0
  31. package/dist/web3/assets/NestPageHeader-Bbje2ncY.js +1 -0
  32. package/dist/web3/assets/NestView-D4OMXPQ7.js +73 -0
  33. package/dist/web3/assets/OverviewTab-FIDGjR3Q.js +6 -0
  34. package/dist/web3/assets/PersonCombobox-D52m_jhc.js +1 -0
  35. package/dist/web3/assets/{ReviewActions-BXDTDPp1.js → ReviewActions-DYqBcWlv.js} +2 -2
  36. package/dist/web3/assets/ReviewTab-DoxfygOb.js +1 -0
  37. package/dist/web3/assets/StewardsTab-CFsYjbEn.js +1 -0
  38. package/dist/web3/assets/SubmitForReviewModal-AW2OLNAE.js +1 -0
  39. package/dist/web3/assets/{alert-dialog-4SiLKlz8.js → alert-dialog-p-fBLSWx.js} +2 -2
  40. package/dist/web3/assets/{arrow-left-BAgIocLn.js → arrow-left-CiErCCTG.js} +1 -1
  41. package/dist/web3/assets/backlinks-DaVSYvhV.js +19 -0
  42. package/dist/web3/assets/boxes-VWrCCMzW.js +6 -0
  43. package/dist/web3/assets/{chevron-left-XR4ReJ9Z.js → chevron-left-CsD8gZwL.js} +1 -1
  44. package/dist/web3/assets/{circle-check-CSkZUEFK.js → circle-check-BBCXd9LI.js} +1 -1
  45. package/dist/web3/assets/{circle-x-in2o3aHU.js → circle-x-C9LsnORQ.js} +1 -1
  46. package/dist/web3/assets/{code-xml-pPQgdctI.js → code-xml-BaoV7HiQ.js} +1 -1
  47. package/dist/web3/assets/{corner-down-right-CuxZWscX.js → corner-down-right-DgiTXrtw.js} +1 -1
  48. package/dist/web3/assets/count-skeleton-CnEE4uF-.js +1 -0
  49. package/dist/web3/assets/{earth-CXOcThqn.js → earth-BmMbVt9k.js} +1 -1
  50. package/dist/web3/assets/{file-exclamation-point-CSphs1VD.js → file-exclamation-point-qJeca9-A.js} +1 -1
  51. package/dist/web3/assets/{folder-input-BAwK9tFL.js → folder-input-D7R93LJ6.js} +1 -1
  52. package/dist/web3/assets/index-DNmWTxN7.css +1 -0
  53. package/dist/web3/assets/index-DvuUIUP6.js +451 -0
  54. package/dist/web3/assets/{page-CUjuSs5Q.js → page-BJQuaTRW.js} +3 -3
  55. package/dist/web3/assets/page-Bb8xGOPQ.js +2 -0
  56. package/dist/web3/assets/page-BtM-qDzr.js +6 -0
  57. package/dist/web3/assets/page-Bxd0EG25.js +1 -0
  58. package/dist/web3/assets/page-C3QCO6IR.js +1 -0
  59. package/dist/web3/assets/page-CfoR0khy.js +6 -0
  60. package/dist/web3/assets/page-D7Zr5tAI.js +1 -0
  61. package/dist/web3/assets/page-DATSlHCW.js +6 -0
  62. package/dist/web3/assets/page-DTjPQizZ.js +45 -0
  63. package/dist/web3/assets/page-DspptlWr.js +1 -0
  64. package/dist/web3/assets/{page-xzYqkBUP.js → page-I6vAFJOj.js} +5 -5
  65. package/dist/web3/assets/page-QxI4Ud2s.js +9 -0
  66. package/dist/web3/assets/page-YcNNg-dX.js +1 -0
  67. package/dist/web3/assets/page-kM7eO5Kj.js +1 -0
  68. package/dist/web3/assets/{page-title-BkqlUA0j.js → page-title-Dn5jANiU.js} +1 -1
  69. package/dist/web3/assets/{play-B8xE9j5f.js → play-B2k_Ix-L.js} +1 -1
  70. package/dist/web3/assets/{send-CvAgOUPG.js → send-DPNxv3As.js} +1 -1
  71. package/dist/web3/assets/{settings-EY4A_DYv.js → settings-DZjq-OQA.js} +1 -1
  72. package/dist/web3/assets/{share-2-vGmZUl90.js → share-2-C-OnE2ru.js} +1 -1
  73. package/dist/web3/assets/{tag-Br_y1f00.js → tag-CwJl7FdI.js} +1 -1
  74. package/dist/web3/assets/{trash-2-B4hRXo-p.js → trash-2-aljmIff4.js} +1 -1
  75. package/dist/web3/assets/{user-plus-4CTYEkd3.js → user-plus-DPerZexX.js} +1 -1
  76. package/dist/web3/assets/{zap-BcsKR0ef.js → zap-CHZtiN7P.js} +1 -1
  77. package/dist/web3/index.html +2 -2
  78. package/package.json +8 -3
  79. package/dist/client-D44ZHDTJ.js +0 -11
  80. package/dist/keys-CTOGAG3W.js +0 -20
  81. package/dist/web3/assets/ActivityTracePage-D2iIbEph.js +0 -1
  82. package/dist/web3/assets/AgentDocsPage-Dkhgb1hk.js +0 -1
  83. package/dist/web3/assets/CollaboratorManager-Bo81D--Q.js +0 -1
  84. package/dist/web3/assets/CollaboratorsTab-DRCitQuX.js +0 -1
  85. package/dist/web3/assets/DocumentEditor-DV2WHYbj.js +0 -36
  86. package/dist/web3/assets/DocumentsTab-BUxBCN8o.js +0 -6
  87. package/dist/web3/assets/ExternalEditsTab-kIBimZyE.js +0 -1
  88. package/dist/web3/assets/MarkdownEditor-CsVusP2d.css +0 -1
  89. package/dist/web3/assets/NestPageHeader-yOK-OIYZ.js +0 -1
  90. package/dist/web3/assets/NestView-DwIagxwJ.js +0 -68
  91. package/dist/web3/assets/OverviewTab-DFOFMVyE.js +0 -1
  92. package/dist/web3/assets/PersonCombobox-D350WlrJ.js +0 -1
  93. package/dist/web3/assets/ReasonDialog-CN3ECAnQ.js +0 -1
  94. package/dist/web3/assets/ReviewTab-CZewAYiz.js +0 -1
  95. package/dist/web3/assets/StewardsTab-AagNWcWS.js +0 -1
  96. package/dist/web3/assets/SubmitForReviewModal-BOZJxwRN.js +0 -1
  97. package/dist/web3/assets/backlinks-Cb8Uf8mw.js +0 -24
  98. package/dist/web3/assets/card-UDyMRcps.js +0 -1
  99. package/dist/web3/assets/count-skeleton-DBWCDhRy.js +0 -1
  100. package/dist/web3/assets/dates-BCxbm4_q.js +0 -1
  101. package/dist/web3/assets/index-A0_ymcqL.js +0 -29
  102. package/dist/web3/assets/index-B5hLclEq.js +0 -389
  103. package/dist/web3/assets/index-DrUAtoQM.css +0 -1
  104. package/dist/web3/assets/page-BHD4beun.js +0 -1
  105. package/dist/web3/assets/page-BSYUXYmO.js +0 -11
  106. package/dist/web3/assets/page-BYc2DIux.js +0 -45
  107. package/dist/web3/assets/page-BfibLg8e.js +0 -1
  108. package/dist/web3/assets/page-CGe8MtUu.js +0 -9
  109. package/dist/web3/assets/page-CIgPJmG6.js +0 -2
  110. package/dist/web3/assets/page-Ck31nx9b.js +0 -1
  111. package/dist/web3/assets/page-Cpdj_11Y.js +0 -1
  112. package/dist/web3/assets/page-D0sN3GO6.js +0 -1
  113. package/dist/web3/assets/page-DEpH91X2.js +0 -1
  114. package/dist/web3/assets/page-l8-B7CGt.js +0 -1
  115. package/dist/web3/assets/page-mnSHmk6A.js +0 -6
  116. package/dist/web3/assets/refresh-cw-CsCtmWwX.js +0 -6
  117. package/dist/web3/assets/scroll-area-CbcH6yrZ.js +0 -1
  118. package/dist/web3/assets/scroll-area-dRWncRqa.css +0 -1
  119. package/dist/web3/assets/select-DrL0mpRN.js +0 -6
  120. package/dist/web3/assets/triangle-alert-CsYGyfGZ.js +0 -6
  121. package/dist/web3/assets/x-qxt1WrUi.js +0 -6
@@ -4,23 +4,24 @@ import {
4
4
  resolveNestWideRoles,
5
5
  resolveStewardsForNode,
6
6
  stewardCoverageForUser
7
- } from "./chunk-2KHM5C7V.js";
7
+ } from "./chunk-MB52DWWP.js";
8
8
  import {
9
9
  grantCoversNode,
10
10
  listUserGrants,
11
11
  resolveNodeGrant
12
- } from "./chunk-KPGNZLZL.js";
12
+ } from "./chunk-VHEMGQ3I.js";
13
13
  import {
14
14
  createVersion,
15
15
  getApprovedVersion,
16
16
  getApprovedVersions,
17
17
  getCurrentVersion,
18
18
  setApprovedVersion
19
- } from "./chunk-TI7HMP64.js";
19
+ } from "./chunk-NFFUZF2B.js";
20
20
  import {
21
21
  buildDocContext,
22
22
  buildTitleMap,
23
23
  describeNode,
24
+ encryptSecret,
24
25
  engineApi,
25
26
  engineCache,
26
27
  insertOrReplace,
@@ -28,25 +29,29 @@ import {
28
29
  isStewardshipEnabled,
29
30
  markNotificationsReadBySubject,
30
31
  nestName,
31
- notifyEmailForNest,
32
32
  notifyReviewRequested,
33
33
  notifyReviewResolved,
34
34
  nowExpr,
35
35
  opContext,
36
36
  prettyFolderPath,
37
37
  resolveNestPermission,
38
- sendEmailToRecipient,
39
- titleForNode
40
- } from "./chunk-7FROMOZM.js";
38
+ titleForNode,
39
+ tryDecryptSecret
40
+ } from "./chunk-QMQDWRHN.js";
41
41
  import {
42
42
  ConflictError,
43
43
  NotFoundError,
44
44
  ValidationError
45
45
  } from "./chunk-LHWOJPFE.js";
46
+ import {
47
+ notifyEmailForNest,
48
+ sendEmailToRecipient,
49
+ transportSettings
50
+ } from "./chunk-RXCVXG34.js";
46
51
  import {
47
52
  config,
48
53
  getDb
49
- } from "./chunk-JDAOA5KP.js";
54
+ } from "./chunk-H3W72HN3.js";
50
55
 
51
56
  // src/governance/review-service.ts
52
57
  import { v4 as uuid2 } from "uuid";
@@ -359,12 +364,18 @@ envRoutes.get("/", requireWorkflowPlane, async (c) => {
359
364
  );
360
365
  return c.json({
361
366
  count: rows.length,
362
- env: rows.map((r) => ({
363
- key: r.key,
364
- value_masked: mask(r.value),
365
- updated_by: r.updated_by,
366
- updated_at: r.updated_at
367
- }))
367
+ env: await Promise.all(
368
+ rows.map(async (r) => ({
369
+ key: r.key,
370
+ // A value this server can't open still has a name worth listing, so
371
+ // the admin can see what to re-enter.
372
+ value_masked: mask(
373
+ await tryDecryptSecret(r.value, `${r.key} on nest ${nestId}`) ?? ""
374
+ ),
375
+ updated_by: r.updated_by,
376
+ updated_at: r.updated_at
377
+ }))
378
+ )
368
379
  });
369
380
  });
370
381
  envRoutes.put("/", requireWorkflowPlane, async (c) => {
@@ -382,11 +393,12 @@ envRoutes.put("/", requireWorkflowPlane, async (c) => {
382
393
  const now = (/* @__PURE__ */ new Date()).toISOString();
383
394
  const by = await resolveCallerEmail(c.get("userId"));
384
395
  const db = getDb();
396
+ const sealed = await encryptSecret(body.value);
385
397
  await db.run(
386
398
  `INSERT INTO nest_env (nest_id, key, value, updated_by, updated_at)
387
399
  VALUES (?, ?, ?, ?, ?)
388
400
  ON CONFLICT(nest_id, key) DO UPDATE SET value = ?, updated_by = ?, updated_at = ?`,
389
- [nestId, key, body.value, by, now, body.value, by, now]
401
+ [nestId, key, sealed, by, now, sealed, by, now]
390
402
  );
391
403
  return c.json({ key, value_masked: mask(body.value) }, 201);
392
404
  });
@@ -409,7 +421,16 @@ async function envValues(nestId) {
409
421
  );
410
422
  const base = {};
411
423
  if (process.env.ANTHROPIC_API_KEY) base.ANTHROPIC_API_KEY = process.env.ANTHROPIC_API_KEY;
412
- return { ...base, ...Object.fromEntries(rows.map((r) => [r.key, r.value])) };
424
+ if (config.ANTHROPIC_BASE_URL) base.ANTHROPIC_BASE_URL = config.ANTHROPIC_BASE_URL;
425
+ const stored = (await Promise.all(
426
+ rows.map(
427
+ async (r) => [
428
+ r.key,
429
+ await tryDecryptSecret(r.value, `${r.key} on nest ${nestId}`)
430
+ ]
431
+ )
432
+ )).filter((e) => e[1] !== null);
433
+ return { ...base, ...Object.fromEntries(stored) };
413
434
  }
414
435
 
415
436
  // src/notify/webhook.ts
@@ -712,7 +733,7 @@ async function flush(nestId) {
712
733
  ]);
713
734
  }
714
735
  async function notifyNestEvent(nestId, message, details, opts) {
715
- if (!config.SLACK_WEBHOOK_URL && !config.MSTEAMS_WEBHOOK_URL && !config.SMTP_URL)
736
+ if (!config.SLACK_WEBHOOK_URL && !config.MSTEAMS_WEBHOOK_URL && !transportSettings())
716
737
  return;
717
738
  const buf = buffers.get(nestId);
718
739
  if (buf) {
@@ -1131,6 +1152,10 @@ async function getReviewQueue(params) {
1131
1152
  );
1132
1153
  args.push(...statuses);
1133
1154
  }
1155
+ if (params.requestedByEmail) {
1156
+ whereClauses.push("requested_by = ?");
1157
+ args.push(params.requestedByEmail);
1158
+ }
1134
1159
  const where = whereClauses.length > 0 ? `WHERE ${whereClauses.join(" AND ")}` : "";
1135
1160
  const total = Number(
1136
1161
  (await db.get(
@@ -2,9 +2,10 @@ import {
2
2
  engineApi,
3
3
  engineCache,
4
4
  opContext
5
- } from "./chunk-7FROMOZM.js";
5
+ } from "./chunk-QMQDWRHN.js";
6
6
  import "./chunk-LHWOJPFE.js";
7
- import "./chunk-JDAOA5KP.js";
7
+ import "./chunk-RXCVXG34.js";
8
+ import "./chunk-H3W72HN3.js";
8
9
  import "./chunk-YB3LKF7U.js";
9
10
  import "./chunk-FRQJWGN3.js";
10
11
  export {
@@ -11,10 +11,11 @@ import {
11
11
  scanNestForDrift,
12
12
  startDriftScanner,
13
13
  stopDriftScanner
14
- } from "./chunk-32SZCH36.js";
15
- import "./chunk-7FROMOZM.js";
14
+ } from "./chunk-SE5U4J4T.js";
15
+ import "./chunk-QMQDWRHN.js";
16
16
  import "./chunk-LHWOJPFE.js";
17
- import "./chunk-JDAOA5KP.js";
17
+ import "./chunk-RXCVXG34.js";
18
+ import "./chunk-H3W72HN3.js";
18
19
  import "./chunk-YB3LKF7U.js";
19
20
  import "./chunk-FRQJWGN3.js";
20
21
  export {
@@ -6,9 +6,9 @@ import {
6
6
  listGrants,
7
7
  listUserGrants,
8
8
  resolveNodeGrant
9
- } from "./chunk-KPGNZLZL.js";
9
+ } from "./chunk-VHEMGQ3I.js";
10
10
  import "./chunk-LHWOJPFE.js";
11
- import "./chunk-JDAOA5KP.js";
11
+ import "./chunk-H3W72HN3.js";
12
12
  import "./chunk-YB3LKF7U.js";
13
13
  export {
14
14
  createGrant,