@penclipai/server 2026.508.2 → 2026.511.0-canary.1

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 (192) hide show
  1. package/dist/adapters/builtin-adapter-types.d.ts.map +1 -1
  2. package/dist/adapters/builtin-adapter-types.js +1 -0
  3. package/dist/adapters/builtin-adapter-types.js.map +1 -1
  4. package/dist/adapters/registry.d.ts.map +1 -1
  5. package/dist/adapters/registry.js +17 -0
  6. package/dist/adapters/registry.js.map +1 -1
  7. package/dist/config.js +4 -4
  8. package/dist/config.js.map +1 -1
  9. package/dist/home-paths.d.ts +8 -11
  10. package/dist/home-paths.d.ts.map +1 -1
  11. package/dist/home-paths.js +14 -67
  12. package/dist/home-paths.js.map +1 -1
  13. package/dist/routes/agents.d.ts.map +1 -1
  14. package/dist/routes/agents.js +8 -0
  15. package/dist/routes/agents.js.map +1 -1
  16. package/dist/routes/environments.d.ts.map +1 -1
  17. package/dist/routes/environments.js +8 -1
  18. package/dist/routes/environments.js.map +1 -1
  19. package/dist/routes/plugins.d.ts.map +1 -1
  20. package/dist/routes/plugins.js +6 -0
  21. package/dist/routes/plugins.js.map +1 -1
  22. package/dist/routes/projects.d.ts.map +1 -1
  23. package/dist/routes/projects.js +6 -0
  24. package/dist/routes/projects.js.map +1 -1
  25. package/dist/routes/secrets.d.ts.map +1 -1
  26. package/dist/routes/secrets.js +269 -5
  27. package/dist/routes/secrets.js.map +1 -1
  28. package/dist/secrets/aws-secrets-manager-provider.d.ts +87 -0
  29. package/dist/secrets/aws-secrets-manager-provider.d.ts.map +1 -0
  30. package/dist/secrets/aws-secrets-manager-provider.js +748 -0
  31. package/dist/secrets/aws-secrets-manager-provider.js.map +1 -0
  32. package/dist/secrets/configured-provider.d.ts +3 -0
  33. package/dist/secrets/configured-provider.d.ts.map +1 -0
  34. package/dist/secrets/configured-provider.js +8 -0
  35. package/dist/secrets/configured-provider.js.map +1 -0
  36. package/dist/secrets/external-stub-providers.d.ts.map +1 -1
  37. package/dist/secrets/external-stub-providers.js +55 -5
  38. package/dist/secrets/external-stub-providers.js.map +1 -1
  39. package/dist/secrets/local-encrypted-provider.d.ts.map +1 -1
  40. package/dist/secrets/local-encrypted-provider.js +140 -12
  41. package/dist/secrets/local-encrypted-provider.js.map +1 -1
  42. package/dist/secrets/provider-registry.d.ts +2 -1
  43. package/dist/secrets/provider-registry.d.ts.map +1 -1
  44. package/dist/secrets/provider-registry.js +6 -2
  45. package/dist/secrets/provider-registry.js.map +1 -1
  46. package/dist/secrets/types.d.ts +117 -8
  47. package/dist/secrets/types.d.ts.map +1 -1
  48. package/dist/secrets/types.js +35 -1
  49. package/dist/secrets/types.js.map +1 -1
  50. package/dist/services/access.d.ts +27 -27
  51. package/dist/services/activity.d.ts +8 -8
  52. package/dist/services/agents.d.ts +9 -9
  53. package/dist/services/approvals.d.ts +10 -10
  54. package/dist/services/assets.d.ts +3 -3
  55. package/dist/services/board-auth.d.ts +24 -24
  56. package/dist/services/environment-config.d.ts +14 -2
  57. package/dist/services/environment-config.d.ts.map +1 -1
  58. package/dist/services/environment-config.js +57 -4
  59. package/dist/services/environment-config.js.map +1 -1
  60. package/dist/services/environment-execution-target.d.ts.map +1 -1
  61. package/dist/services/environment-execution-target.js +2 -0
  62. package/dist/services/environment-execution-target.js.map +1 -1
  63. package/dist/services/environment-runtime.d.ts.map +1 -1
  64. package/dist/services/environment-runtime.js +10 -2
  65. package/dist/services/environment-runtime.js.map +1 -1
  66. package/dist/services/feedback.d.ts +4 -4
  67. package/dist/services/finance.d.ts +8 -8
  68. package/dist/services/goals.d.ts +20 -20
  69. package/dist/services/heartbeat.d.ts +24 -19
  70. package/dist/services/heartbeat.d.ts.map +1 -1
  71. package/dist/services/heartbeat.js +82 -8
  72. package/dist/services/heartbeat.js.map +1 -1
  73. package/dist/services/inbox-dismissals.d.ts +2 -2
  74. package/dist/services/issue-approvals.d.ts +2 -2
  75. package/dist/services/issue-continuation-summary.d.ts +2 -0
  76. package/dist/services/issue-continuation-summary.d.ts.map +1 -1
  77. package/dist/services/issue-continuation-summary.js +10 -0
  78. package/dist/services/issue-continuation-summary.js.map +1 -1
  79. package/dist/services/issues.d.ts +18 -18
  80. package/dist/services/plugin-environment-driver.d.ts +6 -6
  81. package/dist/services/plugin-host-services.d.ts.map +1 -1
  82. package/dist/services/plugin-host-services.js +31 -4
  83. package/dist/services/plugin-host-services.js.map +1 -1
  84. package/dist/services/plugin-local-folders.d.ts +1 -0
  85. package/dist/services/plugin-local-folders.d.ts.map +1 -1
  86. package/dist/services/plugin-local-folders.js +45 -0
  87. package/dist/services/plugin-local-folders.js.map +1 -1
  88. package/dist/services/plugin-managed-agents.d.ts.map +1 -1
  89. package/dist/services/plugin-managed-agents.js +52 -9
  90. package/dist/services/plugin-managed-agents.js.map +1 -1
  91. package/dist/services/plugin-managed-skills.d.ts +14 -0
  92. package/dist/services/plugin-managed-skills.d.ts.map +1 -0
  93. package/dist/services/plugin-managed-skills.js +264 -0
  94. package/dist/services/plugin-managed-skills.js.map +1 -0
  95. package/dist/services/plugin-registry.d.ts +79 -79
  96. package/dist/services/plugin-secrets-handler.d.ts +2 -0
  97. package/dist/services/plugin-secrets-handler.d.ts.map +1 -1
  98. package/dist/services/plugin-secrets-handler.js +17 -80
  99. package/dist/services/plugin-secrets-handler.js.map +1 -1
  100. package/dist/services/recovery/service.d.ts +61 -0
  101. package/dist/services/recovery/service.d.ts.map +1 -1
  102. package/dist/services/recovery/service.js +63 -17
  103. package/dist/services/recovery/service.js.map +1 -1
  104. package/dist/services/routines.d.ts +18 -18
  105. package/dist/services/routines.d.ts.map +1 -1
  106. package/dist/services/routines.js +36 -4
  107. package/dist/services/routines.js.map +1 -1
  108. package/dist/services/secrets.d.ts +1566 -119
  109. package/dist/services/secrets.d.ts.map +1 -1
  110. package/dist/services/secrets.js +1465 -69
  111. package/dist/services/secrets.js.map +1 -1
  112. package/package.json +17 -16
  113. package/ui-dist/assets/{_basePickBy-5H35nb2M.js → _basePickBy-B0S0WJuO.js} +1 -1
  114. package/ui-dist/assets/{_baseUniq-BqsDtPj4.js → _baseUniq-DPfwHtaX.js} +1 -1
  115. package/ui-dist/assets/{arc-F3f4deZD.js → arc-dayO-_vQ.js} +1 -1
  116. package/ui-dist/assets/{architectureDiagram-VXUJARFQ-pBm1fRMv.js → architectureDiagram-VXUJARFQ-B7gjpAgc.js} +1 -1
  117. package/ui-dist/assets/{blockDiagram-VD42YOAC-CGtc9RP7.js → blockDiagram-VD42YOAC-e0_AbQkY.js} +1 -1
  118. package/ui-dist/assets/{browser-ponyfill-CkdJVj1i.js → browser-ponyfill-D5A0IJkC.js} +1 -1
  119. package/ui-dist/assets/{c4Diagram-YG6GDRKO-BXgVj8GH.js → c4Diagram-YG6GDRKO-D5OdXvo8.js} +1 -1
  120. package/ui-dist/assets/channel-BLi0LFH0.js +1 -0
  121. package/ui-dist/assets/{chunk-4BX2VUAB-Ds1Y5IYA.js → chunk-4BX2VUAB-uWBbpQP3.js} +1 -1
  122. package/ui-dist/assets/{chunk-55IACEB6-D8GwRmXK.js → chunk-55IACEB6-CFVDvwbd.js} +1 -1
  123. package/ui-dist/assets/{chunk-B4BG7PRW-R_v5U6_B.js → chunk-B4BG7PRW-Niy3z_vf.js} +1 -1
  124. package/ui-dist/assets/{chunk-DI55MBZ5-DO4X9EFt.js → chunk-DI55MBZ5-BSFdxpNJ.js} +1 -1
  125. package/ui-dist/assets/{chunk-FMBD7UC4-DUu61Scs.js → chunk-FMBD7UC4-Npjz_-5M.js} +1 -1
  126. package/ui-dist/assets/{chunk-QN33PNHL-Bw2VuHcK.js → chunk-QN33PNHL-C2BptvDe.js} +1 -1
  127. package/ui-dist/assets/{chunk-QZHKN3VN-BMGdo5T7.js → chunk-QZHKN3VN-B_lJernK.js} +1 -1
  128. package/ui-dist/assets/{chunk-TZMSLE5B-Cj_cdifl.js → chunk-TZMSLE5B-CNK1gBxt.js} +1 -1
  129. package/ui-dist/assets/classDiagram-2ON5EDUG-DGtCZCaT.js +1 -0
  130. package/ui-dist/assets/classDiagram-v2-WZHVMYZB-DGtCZCaT.js +1 -0
  131. package/ui-dist/assets/clone-_FFZ0Kkl.js +1 -0
  132. package/ui-dist/assets/{cose-bilkent-S5V4N54A-3YDaxa6o.js → cose-bilkent-S5V4N54A-P5AbZ8TB.js} +1 -1
  133. package/ui-dist/assets/{dagre-6UL2VRFP-CmLvQKQL.js → dagre-6UL2VRFP-Byky8_ia.js} +1 -1
  134. package/ui-dist/assets/{diagram-PSM6KHXK-vZK9KPBu.js → diagram-PSM6KHXK-fWgBJ_Sk.js} +1 -1
  135. package/ui-dist/assets/{diagram-QEK2KX5R-Bu9JBN1e.js → diagram-QEK2KX5R-Di6U-VgU.js} +1 -1
  136. package/ui-dist/assets/{diagram-S2PKOQOG-gPR1ps4Q.js → diagram-S2PKOQOG--ALJobJP.js} +1 -1
  137. package/ui-dist/assets/{erDiagram-Q2GNP2WA-BpqETGGN.js → erDiagram-Q2GNP2WA-BPLxxd-8.js} +1 -1
  138. package/ui-dist/assets/{flowDiagram-NV44I4VS-B0iV5Bcy.js → flowDiagram-NV44I4VS-DsKtnwgY.js} +1 -1
  139. package/ui-dist/assets/{ganttDiagram-JELNMOA3-BxQL_kP7.js → ganttDiagram-JELNMOA3-D-RgqRnI.js} +1 -1
  140. package/ui-dist/assets/{gitGraphDiagram-V2S2FVAM-CSsc-XDT.js → gitGraphDiagram-V2S2FVAM-B9hWxZno.js} +1 -1
  141. package/ui-dist/assets/{graph-DWnTQd3e.js → graph-BR5K_DHH.js} +1 -1
  142. package/ui-dist/assets/{index-BEfD-NrI.js → index--jhL8HjG.js} +1 -1
  143. package/ui-dist/assets/{index-C24lwrRh.js → index-3FxOnh1Q.js} +1 -1
  144. package/ui-dist/assets/{index-CqFa1_Kx.js → index-B5iG7mfQ.js} +1 -1
  145. package/ui-dist/assets/{index-DRqmQ4ym.js → index-BC-VyJRT.js} +1 -1
  146. package/ui-dist/assets/{index-mfdF2CPG.js → index-BKJKSfwf.js} +1 -1
  147. package/ui-dist/assets/{index-DNyOAFyR.js → index-BP2zDr7N.js} +1 -1
  148. package/ui-dist/assets/{index-CmZ6XLj-.js → index-BVZZDphv.js} +1 -1
  149. package/ui-dist/assets/{index-DbsPCpm_.js → index-Bi7Lez4i.js} +1 -1
  150. package/ui-dist/assets/{index-CpOa4tDv.js → index-C5zaTUz3.js} +1 -1
  151. package/ui-dist/assets/index-CJyKYByK.js +538 -0
  152. package/ui-dist/assets/index-COTa6xTk.css +1 -0
  153. package/ui-dist/assets/{index-Dt3jXp2D.js → index-CP1her1A.js} +1 -1
  154. package/ui-dist/assets/{index-h9lpZQKL.js → index-CPBqNjLU.js} +1 -1
  155. package/ui-dist/assets/{index-CxnOSxK9.js → index-CY4Sacam.js} +1 -1
  156. package/ui-dist/assets/{index-DgU-HHpm.js → index-CrCHtJt9.js} +1 -1
  157. package/ui-dist/assets/{index-C3xGHm3G.js → index-D-kP_TCS.js} +1 -1
  158. package/ui-dist/assets/{index-Bw88aPGu.js → index-D0b0bdp9.js} +1 -1
  159. package/ui-dist/assets/{index-CaFk2kgt.js → index-DDo7a1ad.js} +1 -1
  160. package/ui-dist/assets/{index-Ckh-TE03.js → index-F8dNHc7L.js} +1 -1
  161. package/ui-dist/assets/{index-DUerGXI8.js → index-GIT3T29G.js} +1 -1
  162. package/ui-dist/assets/{index-DiPyhXNL.js → index-Ii2Zu1VC.js} +1 -1
  163. package/ui-dist/assets/{index-DvOzQrgz.js → index-cAXY17Km.js} +1 -1
  164. package/ui-dist/assets/{index-CzxxXvnl.js → index-vL5R__U-.js} +1 -1
  165. package/ui-dist/assets/{index-DNgm4Hx7.js → index-xy3NppqB.js} +1 -1
  166. package/ui-dist/assets/{infoDiagram-HS3SLOUP-C9a-DRdF.js → infoDiagram-HS3SLOUP-Cw5FMQPy.js} +1 -1
  167. package/ui-dist/assets/{journeyDiagram-XKPGCS4Q-Cu752PhZ.js → journeyDiagram-XKPGCS4Q-qqubogM5.js} +1 -1
  168. package/ui-dist/assets/{kanban-definition-3W4ZIXB7-PXy7IffE.js → kanban-definition-3W4ZIXB7-BHKa2WJW.js} +1 -1
  169. package/ui-dist/assets/{layout-Ci-UJJNd.js → layout-n4Wr5yzd.js} +1 -1
  170. package/ui-dist/assets/{linear-D8Qy6J5I.js → linear-BeRJXNne.js} +1 -1
  171. package/ui-dist/assets/{mermaid.core-RTrr9erR.js → mermaid.core-DelVCbRr.js} +4 -4
  172. package/ui-dist/assets/{mindmap-definition-VGOIOE7T-Ad_ky9GS.js → mindmap-definition-VGOIOE7T-DR-YsecJ.js} +1 -1
  173. package/ui-dist/assets/{pieDiagram-ADFJNKIX-BPWjI8Sm.js → pieDiagram-ADFJNKIX-CZXfqZBG.js} +1 -1
  174. package/ui-dist/assets/{quadrantDiagram-AYHSOK5B-DxY-Cew9.js → quadrantDiagram-AYHSOK5B-BBl26L66.js} +1 -1
  175. package/ui-dist/assets/{requirementDiagram-UZGBJVZJ-BiUlKNuF.js → requirementDiagram-UZGBJVZJ-CvVYsxxA.js} +1 -1
  176. package/ui-dist/assets/{sankeyDiagram-TZEHDZUN-t3mfJhUj.js → sankeyDiagram-TZEHDZUN-BVw2uYFt.js} +1 -1
  177. package/ui-dist/assets/{sequenceDiagram-WL72ISMW-D90qw9a6.js → sequenceDiagram-WL72ISMW--kspLpct.js} +1 -1
  178. package/ui-dist/assets/{stateDiagram-FKZM4ZOC-DB70vjUm.js → stateDiagram-FKZM4ZOC-DPx02LV8.js} +1 -1
  179. package/ui-dist/assets/stateDiagram-v2-4FDKWEC3-S-NvEffl.js +1 -0
  180. package/ui-dist/assets/{timeline-definition-IT6M3QCI-CYSOqO3s.js → timeline-definition-IT6M3QCI-CyMnn5_z.js} +1 -1
  181. package/ui-dist/assets/{treemap-GDKQZRPO-QqfwsQzN.js → treemap-GDKQZRPO-DwLh53A5.js} +1 -1
  182. package/ui-dist/assets/{xychartDiagram-PRI3JC2R-DZuSZ892.js → xychartDiagram-PRI3JC2R-xX5JJ2_4.js} +1 -1
  183. package/ui-dist/index.html +2 -2
  184. package/ui-dist/locales/en/common.json +629 -0
  185. package/ui-dist/locales/zh-CN/common.json +551 -0
  186. package/ui-dist/assets/channel-BklDDvhc.js +0 -1
  187. package/ui-dist/assets/classDiagram-2ON5EDUG-gSWbQXsC.js +0 -1
  188. package/ui-dist/assets/classDiagram-v2-WZHVMYZB-gSWbQXsC.js +0 -1
  189. package/ui-dist/assets/clone-BhrAR33H.js +0 -1
  190. package/ui-dist/assets/index-GwA57FCP.js +0 -537
  191. package/ui-dist/assets/index-RH-ttKJp.css +0 -1
  192. package/ui-dist/assets/stateDiagram-v2-4FDKWEC3-WlT0xb9j.js +0 -1
@@ -1282,6 +1282,7 @@
1282
1282
  "agentConfig.noModelDetectedEnterManually": "No model detected yet. Enter a provider/model manually.",
1283
1283
  "agentConfig.noModelsFound": "No models found.",
1284
1284
  "agentConfig.otherGroupLabel": "Other",
1285
+ "agentConfig.envVarEditorHelp": "Set KEY to the env var name the process expects, for example GH_TOKEN. Choose Secret to resolve a stored value at run start. PAPERCLIP_* variables are injected automatically.",
1285
1286
  "agentConfig.paperclipEnvVarsInjectedAutomatically": "`PAPERCLIP_*` variables are injected automatically at runtime.",
1286
1287
  "agentConfig.passed": "Passed",
1287
1288
  "agentConfig.permissionsAndConfiguration": "Permissions & Configuration",
@@ -1302,13 +1303,17 @@
1302
1303
  "agentConfig.searchModelsCreateHint": "Search models... (type to create)",
1303
1304
  "agentConfig.seconds": "sec",
1304
1305
  "agentConfig.secret": "Secret",
1306
+ "agentConfig.secretBindingsNeedAttention": "{{count}} secret binding(s) need attention:",
1307
+ "agentConfig.secretBindingsRemapHint": "Runs will fail until you remap or re-enable.",
1305
1308
  "agentConfig.secretNamePrompt": "Secret name",
1309
+ "agentConfig.secretVersion": "Version",
1306
1310
  "agentConfig.selectCompanyToCreateSecrets": "Select a company before creating secrets.",
1307
1311
  "agentConfig.selectCompanyToTestEnvironment": "Select a company before testing the adapter environment.",
1308
1312
  "agentConfig.selectCompanyToUploadImages": "Select a company before uploading images.",
1309
1313
  "agentConfig.selectModel": "Select model",
1310
1314
  "agentConfig.selectModelRequired": "Select model (required)",
1311
1315
  "agentConfig.selectSecret": "Select secret...",
1316
+ "agentConfig.missingSecretOption": "Missing ({{id}}...)",
1312
1317
  "agentConfig.storeValueAsSecret": "Store value as secret and replace with reference",
1313
1318
  "agentConfig.testEnvironment": "Test environment",
1314
1319
  "agentConfig.testingEnvironment": "Testing...",
@@ -1747,6 +1752,14 @@
1747
1752
  "dashboard.createOneHere": "Create one here",
1748
1753
  "dashboard.createOrSelectCompany": "Create or select a company to view the dashboard.",
1749
1754
  "dashboard.getStarted": "Get Started",
1755
+ "dashboardLive.activeRecentTitle": "Active / recent",
1756
+ "dashboardLive.breadcrumb": "Live runs",
1757
+ "dashboardLive.createCompanyEmpty": "Create a company to view live runs.",
1758
+ "dashboardLive.description": "Active runs first, followed by the most recent completed runs.",
1759
+ "dashboardLive.noActiveRuns": "No active or recent agent runs.",
1760
+ "dashboardLive.selectCompanyEmpty": "Select a company to view live runs.",
1761
+ "dashboardLive.showingLimit": "Showing up to {{count}}",
1762
+ "dashboardLive.title": "Live agent runs",
1750
1763
  "dashboard.issuesByPriority": "Issues by Priority",
1751
1764
  "dashboard.issuesByStatus": "Issues by Status",
1752
1765
  "dashboard.last14Days": "Last 14 days",
@@ -2581,6 +2594,33 @@
2581
2594
  "issueChat.fallbackErrorBody": "Showing a safe fallback transcript instead of crashing the issues page.",
2582
2595
  "issueChat.emptyConversation": "This issue conversation is empty. Start with a message below.",
2583
2596
  "issueChat.staleDispositionWarning": "Stale disposition warning",
2597
+ "issueChat.copySystemNoticeLink": "Copy link",
2598
+ "issueChat.copySystemNoticeLinkAria": "Copy link to system notice",
2599
+ "issueChat.copySystemNoticeText": "Copy notice text",
2600
+ "issueChat.copySystemNoticeTextAria": "Copy system notice",
2601
+ "systemNotice.successfulRunHandoff.missingDispositionTitle": "Missing issue disposition",
2602
+ "systemNotice.successfulRunHandoff.missingDispositionBody": "Paperclip needs a disposition before this issue can continue.",
2603
+ "systemNotice.successfulRunHandoff.recoveryBlockedTitle": "Missing disposition recovery blocked",
2604
+ "systemNotice.successfulRunHandoff.recoveryBlockedBody": "Paperclip could not resolve this issue's missing disposition automatically. The issue is blocked on a recovery owner.",
2605
+ "systemNotice.successfulRunHandoff.requiredAction": "Required action",
2606
+ "systemNotice.successfulRunHandoff.runEvidence": "Run evidence",
2607
+ "systemNotice.successfulRunHandoff.recoveryOwner": "Recovery owner",
2608
+ "systemNotice.successfulRunHandoff.sourceIssue": "Source issue",
2609
+ "systemNotice.successfulRunHandoff.assignee": "Assignee",
2610
+ "systemNotice.successfulRunHandoff.missingDisposition": "Missing disposition",
2611
+ "systemNotice.successfulRunHandoff.validDispositions": "Valid dispositions",
2612
+ "systemNotice.successfulRunHandoff.successfulRun": "Successful run",
2613
+ "systemNotice.successfulRunHandoff.runStatus": "Run status",
2614
+ "systemNotice.successfulRunHandoff.normalizedCause": "Normalized cause",
2615
+ "systemNotice.successfulRunHandoff.detectedProgress": "Detected progress",
2616
+ "systemNotice.successfulRunHandoff.automaticRetry": "Automatic retry",
2617
+ "systemNotice.successfulRunHandoff.recoveryIssue": "Recovery issue",
2618
+ "systemNotice.successfulRunHandoff.sourceAssignee": "Source assignee",
2619
+ "systemNotice.successfulRunHandoff.suggestedAction": "Suggested action",
2620
+ "systemNotice.successfulRunHandoff.sourceRun": "Source run",
2621
+ "systemNotice.successfulRunHandoff.correctiveHandoffRun": "Corrective handoff run",
2622
+ "systemNotice.successfulRunHandoff.latestIssueStatus": "Latest issue status",
2623
+ "systemNotice.successfulRunHandoff.latestHandoffRunStatus": "Latest handoff run status",
2584
2624
  "issueDocuments.historicalPreviewNotice": "This is a historical preview. Restoring it creates a new latest revision and keeps history append-only.",
2585
2625
  "issueDocuments.revisionNumber": "rev {{number}}",
2586
2626
  "issueDocuments.remoteChangedNotice": "This document changed while you were editing. Your local draft is preserved and autosave is paused.",
@@ -2821,6 +2861,67 @@
2821
2861
  "Local CodeBuddy agent": "Local CodeBuddy agent",
2822
2862
  "Local Qwen agent": "Local Qwen agent",
2823
2863
  "Local Hermes CLI agent": "Local Hermes CLI agent",
2864
+ "Cursor Cloud": "Cursor Cloud",
2865
+ "Managed remote Cursor agent": "Managed remote Cursor agent",
2866
+ "Repository URL": "Repository URL",
2867
+ "Git repository URL Cursor should open for this agent.": "Git repository URL Cursor should open for this agent.",
2868
+ "Starting ref": "Starting ref",
2869
+ "Optional branch, tag, or SHA Cursor should start from.": "Optional branch, tag, or SHA Cursor should start from.",
2870
+ "Pull request URL": "Pull request URL",
2871
+ "Optional PR URL when attaching the agent to an existing review branch.": "Optional PR URL when attaching the agent to an existing review branch.",
2872
+ "Cursor runtime": "Cursor runtime",
2873
+ "Cursor hosted": "Cursor hosted",
2874
+ "Self-hosted pool": "Self-hosted pool",
2875
+ "Named machine": "Named machine",
2876
+ "Choose where Cursor should execute the remote agent.": "Choose where Cursor should execute the remote agent.",
2877
+ "Runtime name": "Runtime name",
2878
+ "Optional pool or machine name when targeting a non-default runtime.": "Optional pool or machine name when targeting a non-default runtime.",
2879
+ "Work on current branch": "Work on current branch",
2880
+ "Tell Cursor to continue on the current branch instead of making a new one.": "Tell Cursor to continue on the current branch instead of making a new one.",
2881
+ "Auto-create PR": "Auto-create PR",
2882
+ "Allow Cursor to automatically create a pull request for the work.": "Allow Cursor to automatically create a pull request for the work.",
2883
+ "Skip reviewer request": "Skip reviewer request",
2884
+ "Suppress reviewer requests on auto-created pull requests.": "Suppress reviewer requests on auto-created pull requests.",
2885
+ "jsonSchemaForm.add": "Add",
2886
+ "jsonSchemaForm.addItem": "Add item",
2887
+ "jsonSchemaForm.error.exclusiveMaximum": "Must be less than {{count}}",
2888
+ "jsonSchemaForm.error.exclusiveMinimum": "Must be greater than {{count}}",
2889
+ "jsonSchemaForm.error.integer": "Must be a whole number",
2890
+ "jsonSchemaForm.error.maxItems": "Must have at most {{count}} items",
2891
+ "jsonSchemaForm.error.maxLength": "Must be at most {{count}} characters",
2892
+ "jsonSchemaForm.error.maximum": "Must be at most {{count}}",
2893
+ "jsonSchemaForm.error.minItems": "Must have at least {{count}} items",
2894
+ "jsonSchemaForm.error.minLength": "Must be at least {{count}} characters",
2895
+ "jsonSchemaForm.error.minimum": "Must be at least {{count}}",
2896
+ "jsonSchemaForm.error.multipleOf": "Must be a multiple of {{count}}",
2897
+ "jsonSchemaForm.error.pattern": "Must match pattern: {{pattern}}",
2898
+ "jsonSchemaForm.error.required": "This field is required",
2899
+ "jsonSchemaForm.error.validNumber": "Must be a valid number",
2900
+ "jsonSchemaForm.hideSecret": "Hide secret",
2901
+ "jsonSchemaForm.itemLabel": "Item {{count}}",
2902
+ "jsonSchemaForm.noConfigurationOptions": "No configuration options available.",
2903
+ "jsonSchemaForm.noItems": "No items added yet.",
2904
+ "jsonSchemaForm.removeItem": "Remove item",
2905
+ "jsonSchemaForm.secretDescription": "This secret is stored securely via the Paperclip secret provider.",
2906
+ "jsonSchemaForm.selectOption": "Select an option",
2907
+ "jsonSchemaForm.showSecret": "Show secret",
2908
+ "First-party sandbox provider plugin that provisions Daytona sandboxes as Paperclip execution environments.": "First-party sandbox provider plugin that provisions Daytona sandboxes as Paperclip execution environments.",
2909
+ "Provisions Daytona sandboxes with configurable image or snapshot selection, startup timeouts, and lease reuse.": "Provisions Daytona sandboxes with configurable image or snapshot selection, startup timeouts, and lease reuse.",
2910
+ "Environment-specific Daytona API key. Paste a key or an existing Paperclip secret reference; saved environments store pasted values as company secrets. Falls back to DAYTONA_API_KEY if omitted.": "Environment-specific Daytona API key. Paste a key or an existing Paperclip secret reference; saved environments store pasted values as company secrets. Falls back to DAYTONA_API_KEY if omitted.",
2911
+ "Optional Daytona API base URL. If omitted, the Daytona SDK uses its configured default endpoint.": "Optional Daytona API base URL. If omitted, the Daytona SDK uses its configured default endpoint.",
2912
+ "Optional Daytona target/region identifier.": "Optional Daytona target/region identifier.",
2913
+ "Optional Daytona snapshot name to start from.": "Optional Daytona snapshot name to start from.",
2914
+ "Optional base image or Daytona Image reference. If set, the sandbox is created from this image instead of a snapshot.": "Optional base image or Daytona Image reference. If set, the sandbox is created from this image instead of a snapshot.",
2915
+ "Optional Daytona language hint for direct code execution. If omitted, Daytona uses its default runtime.": "Optional Daytona language hint for direct code execution. If omitted, Daytona uses its default runtime.",
2916
+ "Optional CPU allocation in cores.": "Optional CPU allocation in cores.",
2917
+ "Optional memory allocation in GiB.": "Optional memory allocation in GiB.",
2918
+ "Optional disk allocation in GiB.": "Optional disk allocation in GiB.",
2919
+ "Optional GPU allocation in units.": "Optional GPU allocation in units.",
2920
+ "Timeout for Daytona create/start/stop/execute operations in milliseconds.": "Timeout for Daytona create/start/stop/execute operations in milliseconds.",
2921
+ "Optional Daytona auto-stop interval in minutes. `0` disables auto-stop.": "Optional Daytona auto-stop interval in minutes. `0` disables auto-stop.",
2922
+ "Optional Daytona auto-archive interval in minutes. `0` uses Daytona's max interval.": "Optional Daytona auto-archive interval in minutes. `0` uses Daytona's max interval.",
2923
+ "Optional Daytona auto-delete interval in minutes. `-1` disables auto-delete and `0` deletes immediately after stop.": "Optional Daytona auto-delete interval in minutes. `-1` disables auto-delete and `0` deletes immediately after stop.",
2924
+ "Whether to stop and later resume the sandbox across runs instead of deleting it on release.": "Whether to stop and later resume the sandbox across runs instead of deleting it on release.",
2824
2925
  "Session strategy": "Session strategy",
2825
2926
  "Fixed": "Fixed",
2826
2927
  "Per issue": "Per issue",
@@ -3107,6 +3208,7 @@
3107
3208
  "Toggle username log censoring": "Toggle username log censoring",
3108
3209
  "Select a company to create secrets": "Select a company to create secrets",
3109
3210
  "Invites": "Invites",
3211
+ "Secrets": "Secrets",
3110
3212
  "View profile": "View profile",
3111
3213
  "Open your activity, task, and usage ledger.": "Open your activity, task, and usage ledger.",
3112
3214
  "Workspaces": "Workspaces",
@@ -3390,6 +3492,8 @@
3390
3492
  "companySettings.hostHint": "DNS name or IP address for the remote machine.",
3391
3493
  "companySettings.knownHosts": "Known hosts",
3392
3494
  "companySettings.knownHostsHint": "Optional known_hosts block used when strict host key checking is enabled.",
3495
+ "companySettings.installedSandboxProvidersLabel": "Installed sandbox providers",
3496
+ "companySettings.installedSandboxProvidersDescription": "These are not adapter types. They back the Sandbox driver for adapters that support sandbox execution.",
3393
3497
  "companySettings.noEnvironments": "No environments saved for this company yet.",
3394
3498
  "companySettings.noSavedSecret": "No saved secret",
3395
3499
  "companySettings.port": "Port",
@@ -3405,6 +3509,7 @@
3405
3509
  "companySettings.sandboxNoExtraFields": "This provider has no extra configuration fields.",
3406
3510
  "companySettings.sandboxProvider": "sandbox provider",
3407
3511
  "companySettings.sandboxProviderHint": "Sandbox plugin provider used to create isolated execution targets.",
3512
+ "companySettings.sandboxViaPlugin": "Sandbox via plugin",
3408
3513
  "companySettings.sshHostFallback": "SSH host",
3409
3514
  "companySettings.sshUserFallback": "user",
3410
3515
  "companySettings.strictHostKeyChecking": "Strict host key checking",
@@ -3725,6 +3830,530 @@
3725
3830
  "runRetryState.reason.transientFailure": "Transient failure",
3726
3831
  "runRetryState.retriedRun": "Retried run",
3727
3832
  "runRetryState.retryExhausted": "Retry exhausted",
3833
+ "Agent sort": "Agent sort",
3834
+ "Agents section actions": "Agents section actions",
3835
+ "Alphabetical": "Alphabetical",
3836
+ "Browse agents": "Browse agents",
3837
+ "Browse projects": "Browse projects",
3838
+ "Collapse {{label}}": "Collapse {{label}}",
3839
+ "Expand {{label}}": "Expand {{label}}",
3840
+ "Project paused by budget": "Project paused by budget",
3841
+ "Project sort": "Project sort",
3842
+ "Projects section actions": "Projects section actions",
3843
+ "Resize sidebar": "Resize sidebar",
3844
+ "Top": "Top",
3845
+ "{{label}} actions": "{{label}} actions",
3846
+ "common.activate": "Activate",
3847
+ "common.archive": "Archive",
3848
+ "common.back": "Back",
3849
+ "common.clear": "Clear",
3850
+ "common.default": "Default",
3851
+ "common.defaultParenthetical": "(default)",
3852
+ "common.delete": "Delete",
3853
+ "common.description": "Description",
3854
+ "common.disable": "Disable",
3855
+ "common.done": "Done",
3856
+ "common.filter": "Filter",
3857
+ "common.filters": "Filters",
3858
+ "common.loadingEllipsis": "Loading...",
3859
+ "common.name": "Name",
3860
+ "common.open": "Open",
3861
+ "common.optionalParenthetical": "(optional)",
3862
+ "common.retry": "Retry",
3863
+ "common.status": "Status",
3864
+ "common.tryAgain": "Try again",
3865
+ "common.unarchive": "Unarchive",
3866
+ "common.unexpectedError": "Unexpected error",
3867
+ "relative.daysAgoShort": "{{count}}d ago",
3868
+ "relative.hoursAgoShort": "{{count}}h ago",
3869
+ "relative.minutesAgoShort": "{{count}}m ago",
3870
+ "relative.secondsAgoShort": "{{count}}s ago",
3871
+ "status.comingSoon": "Coming soon",
3872
+ "status.deleted": "Deleted",
3873
+ "status.disabled": "Disabled",
3874
+ "status.ready": "Ready",
3875
+ "status.warning": "Warning",
3876
+ "secretBindingPicker.boundTo": "Bound to {{version}} · {{key}}",
3877
+ "secretBindingPicker.createAndBind": "Create & bind",
3878
+ "secretBindingPicker.createNewSecret": "Create new secret",
3879
+ "secretBindingPicker.createSecret": "Create secret",
3880
+ "secretBindingPicker.descriptionPlaceholder": "Optional notes (no values)",
3881
+ "secretBindingPicker.emptyHint": "No matching secrets. Create one to bind it here.",
3882
+ "secretBindingPicker.externalProvider": "External · {{provider}}",
3883
+ "secretBindingPicker.latest": "latest",
3884
+ "secretBindingPicker.missingSecret": "Missing secret ({{id}}...)",
3885
+ "secretBindingPicker.selectedSecretMissing": "The previously selected secret is no longer available. Pick another or remove the binding.",
3886
+ "secretBindingPicker.statusPrefix": "Status: {{status}}. ",
3887
+ "secretBindingPicker.valueHelp": "The value is stored once and never re-displayed. Rotate to replace.",
3888
+ "secretBindingPicker.valuePlaceholder": "Paste the secret value",
3889
+ "secrets.accessEvents": "Access events",
3890
+ "secrets.addVault": "Add vault",
3891
+ "secrets.address": "Address",
3892
+ "secrets.allProviders": "All providers",
3893
+ "secrets.allStatuses": "All statuses",
3894
+ "secrets.autoFromName": "auto from name",
3895
+ "secrets.awsManagedPath": "AWS managed path:",
3896
+ "secrets.awsRegion": "AWS region",
3897
+ "secrets.awsVaultDisabledManage": "AWS vault disabled - manage",
3898
+ "secrets.checkHealth": "Check health",
3899
+ "secrets.configureAwsVaultToImport": "Configure an AWS provider vault to enable remote import",
3900
+ "secrets.createDescription": "Choose whether Paperclip should own future provider writes, or only resolve an existing provider reference at runtime.",
3901
+ "secrets.createProviderVault": "Create provider vault",
3902
+ "secrets.createSecret": "Create secret",
3903
+ "secrets.createVault": "Create vault",
3904
+ "secrets.custody": "Custody",
3905
+ "secrets.defaultForProvider": "Default for {{provider}}",
3906
+ "secrets.defaultVault": "Default vault",
3907
+ "secrets.deleteSecret": "Delete secret",
3908
+ "secrets.deleteSecretDescriptionPrefix": "Permanently removes",
3909
+ "secrets.deleteSecretDescriptionSuffix": "Active bindings will fail until you remap them.",
3910
+ "secrets.deploymentDefault": "Deployment default",
3911
+ "secrets.deploymentDefaultCompatibility": "Using the deployment default preserves current provider routing for existing consumers.",
3912
+ "secrets.descriptionPlaceholder": "What is this secret used for? (no values)",
3913
+ "secrets.details": "Details",
3914
+ "secrets.displayName": "Display name",
3915
+ "secrets.displayNamePlaceholder": "Production local vault",
3916
+ "secrets.editProviderVault": "Edit provider vault",
3917
+ "secrets.empty": "No secrets yet. Create your first managed secret or link an external reference.",
3918
+ "secrets.environmentTag": "Environment tag",
3919
+ "secrets.externalOnlyParenthetical": "(external only)",
3920
+ "secrets.externalReference": "External reference",
3921
+ "secrets.externalReferenceHelp": "Point at an existing provider secret. Paperclip stores metadata only.",
3922
+ "secrets.failedToLoad": "Failed to load secrets:",
3923
+ "secrets.failedToLoadProviderVaults": "Failed to load provider vaults:",
3924
+ "secrets.filtersCount": "Filters: {{count}}",
3925
+ "secrets.healthNotChecked": "Health not checked",
3926
+ "secrets.healthStatusCheckedAt": "Health {{status}} · {{time}}",
3927
+ "secrets.health.awsBackupMetadata": "Back up Paperclip metadata separately from AWS-managed secrets.",
3928
+ "secrets.health.awsCredentialCustodyWarning": "Do not store AWS root credentials or long-lived IAM user access keys in Paperclip company_secrets; the AWS provider bootstrap belongs in deployment infrastructure, the process environment, an AWS profile, or the orchestrator secret store.",
3929
+ "secrets.health.awsManagedCallsFailUntilConfigured": "Managed secret create/rotate/resolve calls will fail until AWS provider configuration is complete.",
3930
+ "secrets.health.awsMissingConfig": "AWS Secrets Manager provider is not ready: missing {{names}}.",
3931
+ "secrets.health.awsMissingProviderConfig": "Missing required non-secret AWS provider config: {{names}}.",
3932
+ "secrets.health.awsRestoreRequirements": "Restoring access requires the Paperclip database plus the same AWS secret namespace and KMS permissions.",
3933
+ "secrets.health.awsRuntimeCredentialWarning": "AWS bootstrap credentials must be available to the Paperclip server runtime through the AWS SDK default credential provider chain: IAM role/workload identity, AWS_PROFILE/SSO/shared credentials, web identity, container/instance metadata, or short-lived shell credentials.",
3934
+ "secrets.health.backupConfiguredMasterKey": "Back up the configured master key separately from the database.",
3935
+ "secrets.health.backupKeyFileWithDatabase": "Back up the key file together with database backups.",
3936
+ "secrets.health.databaseAloneCannotRestore": "The database alone cannot restore local encrypted secret values.",
3937
+ "secrets.health.externalReferencesMetadataOnly": "Linked external references can be stored as metadata, but runtime resolution will fail until this provider is configured.",
3938
+ "secrets.health.externalRuntimeNotConfigured": "{{provider}} provider is available for external references but not configured for runtime resolution",
3939
+ "secrets.health.invalidMasterKey": "PAPERCLIP_SECRETS_MASTER_KEY is invalid; expected 32-byte base64, 64-char hex, or raw 32-char string",
3940
+ "secrets.health.localFirstWriteCreatesKey": "The first managed secret write will create this key file with 0600 permissions.",
3941
+ "secrets.health.localKeyFileMissing": "Secrets key file does not exist yet: {{path}}",
3942
+ "secrets.health.localUsingEnvKey": "Local encrypted provider is using PAPERCLIP_SECRETS_MASTER_KEY",
3943
+ "secrets.health.restoreNeedsDatabaseAndKey": "A restore needs both the database metadata and the same master key.",
3944
+ "secrets.howToUseChoose": "choose",
3945
+ "secrets.howToUseResolution": "Paperclip resolves the value server-side when the run starts and injects it as that env var. Project env applies to every issue in the project and overrides agent env on matching keys.",
3946
+ "secrets.howToUseSelectVersion": "and select the stored secret version.",
3947
+ "secrets.howToUseStep": "Create or link a secret here, then open an agent's Environment variables or a project's Env field. Add the env key the process expects, for example",
3948
+ "secrets.howToUseTitle": "Use secrets by binding them to runtime environment variables.",
3949
+ "secrets.importFromVault": "Import from vault",
3950
+ "secrets.key": "Key",
3951
+ "secrets.kmsKeyId": "KMS key id",
3952
+ "secrets.lastResolved": "Last resolved",
3953
+ "secrets.lastRotated": "Last rotated",
3954
+ "secrets.latestVersion": "Latest version",
3955
+ "secrets.linkReference": "Link reference",
3956
+ "secrets.linkedProviderReference": "Linked provider reference",
3957
+ "secrets.loadingProviderVaults": "Loading provider vaults",
3958
+ "secrets.localEncryptedBackupWarning": "I understand backup and restore require both the database metadata and the local encrypted master key file.",
3959
+ "secrets.location": "Location",
3960
+ "secrets.makeDefault": "Make default",
3961
+ "secrets.managedValue": "Managed value",
3962
+ "secrets.mode": "Mode",
3963
+ "secrets.mode.linkedExternal": "Linked external",
3964
+ "secrets.mode.linkedExternalDescription": "Paperclip resolves this provider reference but does not rotate the provider value.",
3965
+ "secrets.mode.paperclipManaged": "Paperclip-managed",
3966
+ "secrets.mode.paperclipManagedDescription": "Paperclip owns create and rotation writes for this provider secret.",
3967
+ "secrets.mountPath": "Mount path",
3968
+ "secrets.namespace": "Namespace",
3969
+ "secrets.neverRedisplaysValues": "Paperclip never re-displays stored values.",
3970
+ "secrets.newSecret": "New secret",
3971
+ "secrets.newValue": "New value",
3972
+ "secrets.newValuePlaceholder": "Paste the new value",
3973
+ "secrets.noAccessEvents": "No access events yet. Runs appear here when they resolve this secret.",
3974
+ "secrets.noActiveBindings": "No active bindings reference this secret yet.",
3975
+ "secrets.noCompanyVaults": "No company-specific vaults yet. Secrets can still use the deployment default provider settings.",
3976
+ "secrets.noFilterMatches": "No secrets match your filters.",
3977
+ "secrets.notConfiguredParenthetical": "(not configured)",
3978
+ "secrets.notYetSupported": "Not yet supported.",
3979
+ "secrets.optionalSuffix": "· optional",
3980
+ "secrets.owned": "Owned",
3981
+ "secrets.ownerTag": "Owner tag",
3982
+ "secrets.paperclipManagedHelp": "Paperclip will create and rotate this provider secret.",
3983
+ "secrets.projectId": "Project id",
3984
+ "secrets.provider": "Provider",
3985
+ "secrets.provider.localEncryptedDefault": "Local encrypted (default)",
3986
+ "secrets.providerComingSoonHelp": "This provider can save draft routing metadata, but runtime writes and resolution stay disabled until the provider module is implemented and reviewed.",
3987
+ "secrets.providerBlock.externalUnsupported": "{{provider}} does not support linked external references.",
3988
+ "secrets.providerBlock.healthCheckFailed": "{{provider}} health check failed: {{message}}",
3989
+ "secrets.providerBlock.managedUnsupported": "{{provider}} does not support Paperclip-managed secret values.",
3990
+ "secrets.providerBlock.notConfigured": "{{provider}} is not configured in this deployment.",
3991
+ "secrets.providerBlock.notConfiguredWithMessage": "{{provider}} is not configured in this deployment. {{message}}",
3992
+ "secrets.providerBlock.selectProvider": "Select a provider.",
3993
+ "secrets.providerBlock.vaultDisabled": "This provider vault is disabled.",
3994
+ "secrets.providerBlock.vaultDraftOnly": "This provider vault is saved as draft metadata only.",
3995
+ "secrets.providerBlock.vaultHealthCheckFailed": "This provider vault health check failed.",
3996
+ "secrets.providerManagedPath": "Provider-managed path",
3997
+ "secrets.providerVault": "Provider vault",
3998
+ "secrets.providerVaultDialogDescription": "Configure where Paperclip reads or writes provider-backed secrets for this company.",
3999
+ "secrets.providerVaults": "Provider vaults",
4000
+ "secrets.reference": "Reference",
4001
+ "secrets.referenceCountDescription": "{{name}} is referenced by {{count}} place(s).",
4002
+ "secrets.references": "References",
4003
+ "secrets.requiredSuffix": "· required",
4004
+ "secrets.rotateExternalReferenceHelp": "Rotate the actual value in the provider before changing this Paperclip reference.",
4005
+ "secrets.rotateWithDefaultHelp": "Rotating with the deployment default preserves current fallback behavior.",
4006
+ "secrets.saveVault": "Save vault",
4007
+ "secrets.searchAria": "Search secrets",
4008
+ "secrets.searchPlaceholder": "Search secrets by name, key, provider, or reference",
4009
+ "secrets.secretNamePrefix": "Secret name prefix",
4010
+ "secrets.secretPathPrefix": "Secret path prefix",
4011
+ "secrets.secretReferences": "Secret references",
4012
+ "secrets.selectCompany": "Select a company to manage secrets.",
4013
+ "secrets.selectSecretFirst": "Select a secret first",
4014
+ "secrets.toast.defaultUpdateFailed": "Default update failed",
4015
+ "secrets.toast.defaultVaultSet": "Default vault set",
4016
+ "secrets.toast.deleteFailed": "Delete failed",
4017
+ "secrets.toast.disableFailed": "Disable failed",
4018
+ "secrets.toast.healthCheckFailed": "Health check failed",
4019
+ "secrets.toast.healthChecked": "Health checked",
4020
+ "secrets.toast.providerVaultCreated": "Provider vault created",
4021
+ "secrets.toast.providerVaultDisabled": "Provider vault disabled",
4022
+ "secrets.toast.providerVaultUpdated": "Provider vault updated",
4023
+ "secrets.toast.rotateFailed": "Rotate failed",
4024
+ "secrets.toast.rotated": "Rotated",
4025
+ "secrets.toast.secretCreated": "Secret created",
4026
+ "secrets.toast.secretDeleted": "Secret deleted",
4027
+ "secrets.toast.secretStatusUpdated": "Secret {{status}}",
4028
+ "secrets.toast.statusUpdateFailed": "Status update failed",
4029
+ "secrets.unknownVault": "Unknown vault",
4030
+ "secrets.updateExternalReference": "Update external reference",
4031
+ "secrets.updateExternalReferenceDescription": "Creates a new Paperclip metadata version that points at an existing provider secret. Paperclip does not write a new provider value.",
4032
+ "secrets.updateReference": "Update reference",
4033
+ "secrets.updateSecretValue": "Update secret value",
4034
+ "secrets.updateSecretValueDescription": "Creates a new provider-backed version. Consumers pinned to latest pick up the new value on the next run.",
4035
+ "secrets.updateValue": "Update value",
4036
+ "secrets.updatedReferencePlaceholder": "Updated reference",
4037
+ "secrets.usage": "Usage",
4038
+ "secrets.usageWithCount": "Usage ({{count}})",
4039
+ "secrets.value": "Value",
4040
+ "secrets.valuePlaceholder": "Stored once, never re-displayed",
4041
+ "secrets.vault": "Vault",
4042
+ "secrets.viewReferencesFor": "View references for {{name}}",
4043
+ "secretsImport.allImported": "All {{count}} secrets imported",
4044
+ "secretsImport.alreadyImported": "Already imported",
4045
+ "secretsImport.awsDeniedListAccess": "AWS denied list access",
4046
+ "secretsImport.awsThrottledListing": "AWS throttled the listing request",
4047
+ "secretsImport.blockedCount": "{{count}} blocked",
4048
+ "secretsImport.closeDialog": "Close import dialog",
4049
+ "secretsImport.continueToReview": "Continue -> Review",
4050
+ "secretsImport.couldNotLoadRemoteSecrets": "Could not load remote secrets",
4051
+ "secretsImport.created": "Created",
4052
+ "secretsImport.createdCount": "{{count}} created",
4053
+ "secretsImport.description": "Bring AWS-managed secrets into Paperclip as external references.",
4054
+ "secretsImport.descriptionOptional": "Description (optional)",
4055
+ "secretsImport.discardPendingImports": "Discard {{count}} pending import(s)?",
4056
+ "secretsImport.failed": "Failed",
4057
+ "secretsImport.failedCount": "{{count}} failed",
4058
+ "secretsImport.iamReference": "IAM reference",
4059
+ "secretsImport.importCount": "Import {{count}}",
4060
+ "secretsImport.importing": "Importing...",
4061
+ "secretsImport.lastChanged": "Last changed",
4062
+ "secretsImport.loadMore": "Load {{count}} more",
4063
+ "secretsImport.loadedCount": "{{count}} loaded",
4064
+ "secretsImport.manageVaults": "Manage vaults",
4065
+ "secretsImport.missingListSecretsPermission": "The AWS principal behind this vault is missing secretsmanager:ListSecrets. Update IAM and try again.",
4066
+ "secretsImport.needAttentionCount": "{{count}} need attention before import",
4067
+ "secretsImport.noAwsVault": "No AWS provider vault configured. Add one to import secrets.",
4068
+ "secretsImport.noRemoteSecretsMatch": "No remote secrets match \"{{query}}\".",
4069
+ "secretsImport.noSecretsSelected": "No secrets selected. Go back to pick remote secrets to import.",
4070
+ "secretsImport.noSecretsVisible": "No secrets visible to this vault.",
4071
+ "secretsImport.paperclipName": "Paperclip name",
4072
+ "secretsImport.readyCount": "{{count}} ready",
4073
+ "secretsImport.readyToImportCount": "{{count}} secrets ready to import",
4074
+ "secretsImport.refreshRemoteSecrets": "Refresh remote secrets",
4075
+ "secretsImport.remoteName": "Remote name",
4076
+ "secretsImport.removeRemoteSecret": "Remove {{name}}",
4077
+ "secretsImport.requestFailed": "Request failed: {{status}}",
4078
+ "secretsImport.searchPlaceholder": "Search by name, ARN, tag",
4079
+ "secretsImport.searchRemoteSecrets": "Search remote secrets",
4080
+ "secretsImport.selectAllLoaded": "Select all loaded ({{count}})",
4081
+ "secretsImport.selectAwsVault": "Select AWS vault",
4082
+ "secretsImport.selectRemoteSecret": "Select {{name}}",
4083
+ "secretsImport.selectRemoteSecretsToImport": "Select remote secrets to import",
4084
+ "secretsImport.selectableCount": "{{count}} selectable",
4085
+ "secretsImport.selectedCount": "{{count}} selected",
4086
+ "secretsImport.selectedHiddenBySearch": "{{selected}} selected · {{hidden}} not visible with current search",
4087
+ "secretsImport.showAll": "Show all",
4088
+ "secretsImport.showSelected": "Show selected",
4089
+ "secretsImport.skipped": "Skipped",
4090
+ "secretsImport.skippedCount": "{{count}} skipped",
4091
+ "secretsImport.state": "State",
4092
+ "secretsImport.status.conflict": "Conflict",
4093
+ "secretsImport.status.imported": "Imported",
4094
+ "secretsImport.status.ready": "Ready",
4095
+ "secretsImport.step.result": "Result",
4096
+ "secretsImport.step.review": "Review",
4097
+ "secretsImport.step.select": "Select",
4098
+ "secretsImport.suggestedName": "Suggested name",
4099
+ "secretsImport.title": "Import from AWS Secrets Manager",
4100
+ "secretsImport.toast.importComplete": "Import complete",
4101
+ "secretsImport.toast.importCompletedWithErrors": "Import completed with errors",
4102
+ "secretsImport.toast.importCounts": "{{created}} created · {{skipped}} skipped · {{failed}} failed",
4103
+ "secretsImport.toast.importFailed": "Import failed",
4104
+ "secretsImport.toast.loadMoreFailed": "Could not load more results",
4105
+ "secretsImport.toast.noneImportedFromVault": "No secrets were imported from {{vault}}.",
4106
+ "secretsImport.validation.batchKeyExists": "Another row in this batch already uses this key.",
4107
+ "secretsImport.validation.batchNameExists": "Another row in this batch already uses this name.",
4108
+ "secretsImport.validation.descriptionTooLong": "Description must be 500 characters or fewer.",
4109
+ "secretsImport.validation.keyExists": "A Paperclip secret already uses this key.",
4110
+ "secretsImport.validation.keyPattern": "Key may only contain lowercase letters, numbers, dot, underscore, or hyphen.",
4111
+ "secretsImport.validation.keyRequired": "Key is required.",
4112
+ "secretsImport.validation.keyTooLong": "Key must be 120 characters or fewer.",
4113
+ "secretsImport.validation.nameExists": "A Paperclip secret already uses this name.",
4114
+ "secretsImport.validation.nameRequired": "Name is required.",
4115
+ "secretsImport.validation.nameTooLong": "Name must be 160 characters or fewer.",
4116
+ "common.unavailable": "Unavailable",
4117
+ "common.unknown": "unknown",
4118
+ "issueContinuationHandoff.badge": "handoff",
4119
+ "issueContinuationHandoff.collapse": "Collapse continuation handoff",
4120
+ "issueContinuationHandoff.expand": "Expand continuation handoff",
4121
+ "issueContinuationHandoff.revisionSuffix": " - revision {{count}}",
4122
+ "issueContinuationHandoff.title": "Continuation handoff",
4123
+ "issueContinuationHandoff.updated": "Updated {{time}}",
4124
+ "issueProperties.clearAdapterOptions": "Clear adapter options",
4125
+ "issueProperties.customAdapterOptions": "Custom adapter options",
4126
+ "issueProperties.customAdapterOptionsWithDetails": "Custom · {{details}}",
4127
+ "issueProperties.defaultModel": "Default model",
4128
+ "issueProperties.enableChromeFlag": "Enable Chrome (--chrome)",
4129
+ "issueProperties.noEditableIssueOverrides": "This assignee's adapter does not expose editable issue overrides.",
4130
+ "issueProperties.noModelsFound": "No models found.",
4131
+ "issueProperties.primaryModel": "Primary model",
4132
+ "issueProperties.searchModels": "Search models...",
4133
+ "issueProperties.selectCompatibleAssigneeForOverrides": "Select a compatible agent assignee to edit these overrides.",
4134
+ "issueRunLedger.ariaLabel": "Issue run ledger",
4135
+ "issueRunLedger.byAgent": "by {{agentName}}",
4136
+ "issueRunLedger.childWork": "Child work",
4137
+ "issueRunLedger.childWorkAllTerminal": "all {{total}} terminal ({{done}} done, {{cancelled}} cancelled)",
4138
+ "issueRunLedger.childWorkSummary": "{{active}} active, {{done}} done, {{cancelled}} cancelled",
4139
+ "issueRunLedger.continuationAttempt": "Continuation attempt {{count}}",
4140
+ "issueRunLedger.elapsed": "Elapsed",
4141
+ "issueRunLedger.emptyHistoricalRuns": "Historical runs without liveness metadata will appear here once linked to this issue.",
4142
+ "issueRunLedger.emptyRunsAndActivity": "Runs and activity will appear here once this issue has history.",
4143
+ "issueRunLedger.exhausted": "Exhausted",
4144
+ "issueRunLedger.lastUsefulAction": "Last useful action",
4145
+ "issueRunLedger.lastUsefulAction.noActionRecordedYet": "No action recorded yet",
4146
+ "issueRunLedger.lastUsefulAction.noConcreteAction": "No concrete action",
4147
+ "issueRunLedger.lastUsefulAction.noUsefulOutput": "No useful output",
4148
+ "issueRunLedger.lastUsefulAction.noneRecorded": "None recorded",
4149
+ "issueRunLedger.lastUsefulAction.waitingForNextAttempt": "Waiting for next attempt",
4150
+ "issueRunLedger.latestRun": "Latest run",
4151
+ "issueRunLedger.live": "live",
4152
+ "issueRunLedger.liveness.advanced": "Advanced",
4153
+ "issueRunLedger.liveness.advancedDescription": "Run produced concrete evidence of progress.",
4154
+ "issueRunLedger.liveness.blocked": "Blocked",
4155
+ "issueRunLedger.liveness.blockedDescription": "Run or issue declared a blocker.",
4156
+ "issueRunLedger.liveness.checksAfterFinish": "Checks after finish",
4157
+ "issueRunLedger.liveness.checksAfterFinishDescription": "Liveness is evaluated after the run finishes.",
4158
+ "issueRunLedger.liveness.completed": "Completed",
4159
+ "issueRunLedger.liveness.completedDescription": "Issue reached a terminal state.",
4160
+ "issueRunLedger.liveness.emptyResponse": "Empty response",
4161
+ "issueRunLedger.liveness.emptyResponseDescription": "Run finished without useful output.",
4162
+ "issueRunLedger.liveness.failed": "Failed",
4163
+ "issueRunLedger.liveness.failedDescription": "Run ended unsuccessfully.",
4164
+ "issueRunLedger.liveness.needsFollowup": "Needs follow-up",
4165
+ "issueRunLedger.liveness.needsFollowupDescription": "Run produced useful output but did not prove concrete progress.",
4166
+ "issueRunLedger.liveness.noLivenessData": "No liveness data",
4167
+ "issueRunLedger.liveness.noLivenessDataDescription": "This run has no persisted liveness classification.",
4168
+ "issueRunLedger.liveness.planOnly": "Plan only",
4169
+ "issueRunLedger.liveness.planOnlyDescription": "Run described future work without concrete action evidence.",
4170
+ "issueRunLedger.liveness.retryPending": "Retry pending",
4171
+ "issueRunLedger.liveness.retryPendingDescription": "Paperclip queued an automatic retry that has not started yet.",
4172
+ "issueRunLedger.livenessReason.concreteActionEvidence": "Run produced concrete action evidence: {{evidence}}",
4173
+ "issueRunLedger.livenessReason.concreteBlocker": "Run output declared a concrete blocker",
4174
+ "issueRunLedger.livenessReason.futureWorkNotSafeToAutoContinue": "Run described future work that is not safe to auto-continue",
4175
+ "issueRunLedger.livenessReason.futureWorkWithoutEvidence": "Run described runnable future work without concrete action evidence",
4176
+ "issueRunLedger.livenessReason.issueIsDone": "Issue is done",
4177
+ "issueRunLedger.livenessReason.issueStatusBlocked": "Issue status is blocked",
4178
+ "issueRunLedger.livenessReason.noUsefulOutput": "No useful output",
4179
+ "issueRunLedger.livenessReason.runEndedWithCode": "Run ended with {{status}} ({{code}})",
4180
+ "issueRunLedger.livenessReason.runEndedWithStatus": "Run ended with {{status}}",
4181
+ "issueRunLedger.livenessReason.usefulOutputNoEvidence": "Run produced useful output but no concrete action evidence",
4182
+ "issueRunLedger.modelProfile.applied": "Applied: {{value}}",
4183
+ "issueRunLedger.modelProfile.cheapFellBackToPrimary": "Cheap profile fell back to primary",
4184
+ "issueRunLedger.modelProfile.fallback": "Fallback: {{value}}",
4185
+ "issueRunLedger.modelProfile.profile": "Profile: {{value}}",
4186
+ "issueRunLedger.modelProfile.profileApplied": "Profile: {{requested}} -> {{applied}}",
4187
+ "issueRunLedger.modelProfile.profileUnavailable": "Profile: {{value}} (unavailable)",
4188
+ "issueRunLedger.modelProfile.profileUnavailableBare": "{{value}} profile unavailable",
4189
+ "issueRunLedger.modelProfile.requested": "Requested: {{value}}",
4190
+ "issueRunLedger.modelProfile.source": "Source: {{value}}",
4191
+ "issueRunLedger.moreCount": "+{{count}} more",
4192
+ "issueRunLedger.nextActionPrefix": "Next action: ",
4193
+ "issueRunLedger.noRunsLinkedYet": "No runs linked yet.",
4194
+ "issueRunLedger.olderItemsNotShown": "{{count}} older items not shown",
4195
+ "issueRunLedger.outputSilence.silenceSnoozed": "Silence snoozed",
4196
+ "issueRunLedger.outputSilence.silenceWatch": "Silence watch",
4197
+ "issueRunLedger.outputSilence.staleRun": "Stale run",
4198
+ "issueRunLedger.retryOf": "Retry of",
4199
+ "issueRunLedger.silenceAge.hours": "{{count}} hours",
4200
+ "issueRunLedger.silenceAge.minutes": "{{count}} minutes",
4201
+ "issueRunLedger.silenceAge.oneHour": "1 hour",
4202
+ "issueRunLedger.silenceAge.oneMinute": "1 minute",
4203
+ "issueRunLedger.silenceAge.underOneMinute": "under 1 minute",
4204
+ "issueRunLedger.stop": "Stop",
4205
+ "issueRunLedger.stopReason.adapterFailed": "adapter failed",
4206
+ "issueRunLedger.stopReason.budgetPaused": "budget paused",
4207
+ "issueRunLedger.stopReason.completedWithDuration": "completed ({{duration}})",
4208
+ "issueRunLedger.stopReason.maxTurnsExhausted": "max turns exhausted",
4209
+ "issueRunLedger.stopReason.pausedByBoard": "paused by board",
4210
+ "issueRunLedger.stopReason.processLost": "process lost",
4211
+ "issueRunLedger.stopReason.timeout": "timeout",
4212
+ "issueRunLedger.stopReason.timeoutWithDuration": "timeout ({{duration}})",
4213
+ "issueRunLedger.stopStatus.noStopReason": "No stop reason",
4214
+ "issueRunLedger.stopStatus.retryPending": "Retry pending",
4215
+ "issueRunLedger.stopStatus.stillRunning": "Still running",
4216
+ "issueRunLedger.stopStatus.waitingToStart": "Waiting to start",
4217
+ "issueRunLedger.summary.automaticRetryScheduledFor": "Automatic retry scheduled for {{agentName}}",
4218
+ "issueRunLedger.summary.queuedFor": "Queued for {{agentName}}",
4219
+ "issueRunLedger.summary.runningNowBy": "Running now by {{agentName}}",
4220
+ "issueRunLedger.summary.statusBy": "{{status}} by {{agentName}}",
4221
+ "issueRunLedger.title": "Run ledger",
4222
+ "issueRunLedger.waitingForFirstRunRecord": "Waiting for the first run record.",
4223
+ "issueRunLedger.watchdog.continueMonitoring": "Continue monitoring",
4224
+ "issueRunLedger.watchdog.decisionNotRecorded": "Watchdog decision not recorded",
4225
+ "issueRunLedger.watchdog.extendedPeriod": "an extended period",
4226
+ "issueRunLedger.watchdog.forRecoveryContext": "for recovery context.",
4227
+ "issueRunLedger.watchdog.latestRunSilentFor": "Latest active run has been silent for {{duration}}.",
4228
+ "issueRunLedger.watchdog.markFalsePositive": "Mark false positive",
4229
+ "issueRunLedger.watchdog.onlyBoardOrOwner": "Only the board or the assigned recovery owner can record watchdog decisions",
4230
+ "issueRunLedger.watchdog.outputSilenceWarning": "Output silence watchdog warning",
4231
+ "issueRunLedger.watchdog.recordFailed": "Paperclip could not record the watchdog decision.",
4232
+ "issueRunLedger.watchdog.review": "Review",
4233
+ "issueRunLedger.watchdog.snoozeOneHour": "Snooze 1h",
4234
+ "issueRunLedger.watchdog.staleRunAlert": "Stale-run watchdog alert",
4235
+ "status.completed": "Completed",
4236
+ "userProfile.actions": "Actions",
4237
+ "userProfile.allTimeTokens": "All-time tokens",
4238
+ "userProfile.chartPointTitle": "{{date}}: {{tokens}} tokens, {{completed}} completed",
4239
+ "userProfile.comments": "Comments",
4240
+ "userProfile.commentsCount": "{{count}} comments",
4241
+ "userProfile.completed": "Completed",
4242
+ "userProfile.completionRate": "{{rate}} rate",
4243
+ "userProfile.createdCount": "{{count}} created",
4244
+ "userProfile.openAssigned": "Open assigned",
4245
+ "userProfile.sevenDayActions": "7-day actions",
4246
+ "userProfile.spentAmount": "{{amount}} spent",
4247
+ "userProfile.touched": "Touched",
4248
+ "{{input}} input · {{output}} output": "{{input}} input · {{output}} output",
4249
+ "{{input}} input · {{output}} output · {{providers}} providers · {{models}} models": "{{input}} input · {{output}} output · {{providers}} providers · {{models}} models",
4250
+ "{{metered}} metered runs · {{subscription}} subscription runs · {{amount}} this week": "{{metered}} metered runs · {{subscription}} subscription runs · {{amount}} this week",
4251
+ "{{percent}}% of allocation": "{{percent}}% of allocation",
4252
+ "{{percent}}% of limit": "{{percent}}% of limit",
4253
+ "{{percent}}% of token usage via subscription": "{{percent}}% of token usage via subscription",
4254
+ "{{percent}}% used": "{{percent}}% used",
4255
+ "{{runs}} runs · {{tokens}} total · {{input}} input · {{output}} output": "{{runs}} runs · {{tokens}} total · {{input}} input · {{output}} output",
4256
+ "{{tokens}} tokens": "{{tokens}} tokens",
4257
+ "~{{amount}} / wk": "~{{amount}} / wk",
4258
+ "~{{api}} api / ~{{sub}} sub runs": "~{{api}} api / ~{{sub}} sub runs",
4259
+ "active": "active",
4260
+ "Active incidents": "Active incidents",
4261
+ "Agent heartbeats blocked by budget": "Agent heartbeats blocked by budget",
4262
+ "agents": "agents",
4263
+ "Agents with a timer heartbeat enabled across all of your companies.": "Agents with a timer heartbeat enabled across all of your companies.",
4264
+ "All billers": "All billers",
4265
+ "All providers": "All providers",
4266
+ "approval.limitObserved": "Limit observed",
4267
+ "approval.onApproval": "On approval",
4268
+ "approval.proposedComment": "Proposed comment",
4269
+ "approval.recommendedAction": "Recommended action",
4270
+ "Approved": "Approved",
4271
+ "Billing types": "Billing types",
4272
+ "Budget control plane": "Budget control plane",
4273
+ "Budget override approvals awaiting board action": "Budget override approvals awaiting board action",
4274
+ "Checking...": "Checking...",
4275
+ "Claimed API key path": "Claimed API key path",
4276
+ "companies": "companies",
4277
+ "company": "company",
4278
+ "companyExport.exportButton": "Export",
4279
+ "companyExport.exportDownloadedBody": "Company export downloaded.",
4280
+ "companyExport.selectedCount": "{{count}} selected",
4281
+ "companyExport.warningCount": "{{count}} warnings",
4282
+ "companyImport.conflictCount": "{{count}} conflicts",
4283
+ "companyImport.errorCount": "{{count}} errors",
4284
+ "companyImport.importButton": "Import",
4285
+ "companyImport.importCompleteBody": "Company import complete.",
4286
+ "configure adapter": "configure adapter",
4287
+ "confirm rename": "confirm rename",
4288
+ "confirmed": "confirmed",
4289
+ "Disable All": "Disable All",
4290
+ "Disable Timer Heartbeat": "Disable Timer Heartbeat",
4291
+ "Disable timer heartbeats for all {{count}} enabled {{noun}}?": "Disable timer heartbeats for all {{count}} enabled {{noun}}?",
4292
+ "disabled": "disabled",
4293
+ "Disabling...": "Disabling...",
4294
+ "Enable Timer Heartbeat": "Enable Timer Heartbeat",
4295
+ "Execution is paused for this project until the budget is raised or the incident is dismissed.": "Execution is paused for this project until the budget is raised or the incident is dismissed.",
4296
+ "Failed to disable {{failed}} of {{enabled}} timer heartbeats. First error: {{detail}}": "Failed to disable {{failed}} of {{enabled}} timer heartbeats. First error: {{detail}}",
4297
+ "Failed to disable 1 timer heartbeat: {{detail}}": "Failed to disable 1 timer heartbeat: {{detail}}",
4298
+ "Failed to disable all heartbeats.": "Failed to disable all heartbeats.",
4299
+ "Failed to load scheduler heartbeats.": "Failed to load scheduler heartbeats.",
4300
+ "Failed to update heartbeat.": "Failed to update heartbeat.",
4301
+ "Full agent config": "Full agent config",
4302
+ "Hard stop": "Hard stop",
4303
+ "Hard-stop spend limits for agents and projects. Provider subscription quota stays separate and appears under Providers.": "Hard-stop spend limits for agents and projects. Provider subscription quota stays separate and appears under Providers.",
4304
+ "Heartbeats are paused for this scope until the budget is raised or the incident is dismissed.": "Heartbeats are paused for this scope until the budget is raised or the incident is dismissed.",
4305
+ "In ": "In ",
4306
+ "Invoice": "Invoice",
4307
+ "Keep paused": "Keep paused",
4308
+ "Loading scheduler heartbeats...": "Loading scheduler heartbeats...",
4309
+ "Loading...": "Loading...",
4310
+ "Look for repositories with ": "Look for repositories with ",
4311
+ "never": "never",
4312
+ "No billable events in this period.": "No billable events in this period.",
4313
+ "No budget policies yet. Set agent and project budgets from their detail pages, or use the existing company monthly budget control.": "No budget policies yet. Set agent and project budgets from their detail pages, or use the existing company monthly budget control.",
4314
+ "No cap configured": "No cap configured",
4315
+ "No cost events in this period.": "No cost events in this period.",
4316
+ "No OpenCode models discovered. Run ": "No OpenCode models discovered. Run ",
4317
+ "No scheduler heartbeats match the current criteria.": "No scheduler heartbeats match the current criteria.",
4318
+ "Open soft or hard threshold crossings": "Open soft or hard threshold crossings",
4319
+ "operator": "operator",
4320
+ "operator.admin": "operator.admin",
4321
+ "Paperclip API URL override": "Paperclip API URL override",
4322
+ "Paste a local path, GitHub URL, or ": "Paste a local path, GitHub URL, or ",
4323
+ "Period spend": "Period spend",
4324
+ "Plugin operations": "Plugin operations",
4325
+ "Project execution blocked by budget": "Project execution blocked by budget",
4326
+ "Project execution is paused. New work in this project will not start until you resolve the budget incident.": "Project execution is paused. New work in this project will not start until you resolve the budget incident.",
4327
+ "Raise budget & resume": "Raise budget & resume",
4328
+ "Region": "Region",
4329
+ "Rejected": "Rejected",
4330
+ "Remaining": "Remaining",
4331
+ "Renames": "Renames",
4332
+ "Resets {{date}}": "Resets {{date}}",
4333
+ "Resolve hard stops here by raising the budget or explicitly keeping the scope paused.": "Resolve hard stops here by raising the budget or explicitly keeping the scope paused.",
4334
+ "Risks": "Risks",
4335
+ "Rolling windows": "Rolling windows",
4336
+ "Scheduler Heartbeats": "Scheduler Heartbeats",
4337
+ "Scopes (comma-separated)": "Scopes (comma-separated)",
4338
+ "Search users": "Search users",
4339
+ "Select a company to configure this plugin": "Select a company to configure this plugin",
4340
+ "Set budget": "Set budget",
4341
+ "skip": "skip",
4342
+ "skipped": "skipped",
4343
+ "Soft alert at {{percent}}%": "Soft alert at {{percent}}%",
4344
+ "Soft alert at {{percent}}% · {{reason}} pause": "Soft alert at {{percent}}% · {{reason}} pause",
4345
+ "Spend reached {{observed}} against a limit of {{limit}}.": "Spend reached {{observed}} against a limit of {{limit}}.",
4346
+ "Subscription": "Subscription",
4347
+ "Subscription quota": "Subscription quota",
4348
+ "The long-form run page with the ": "The long-form run page with the ",
4349
+ "The new budget must exceed current observed spend.": "The new budget must exceed current observed spend.",
4350
+ "This scope is paused. New heartbeats will not start until you resolve the budget incident.": "This scope is paused. New heartbeats will not start until you resolve the budget incident.",
4351
+ "This week": "This week",
4352
+ "Tier": "Tier",
4353
+ "Unlimited": "Unlimited",
4354
+ "Update budget": "Update budget",
4355
+ "Upstream providers": "Upstream providers",
4356
+ "Warning": "Warning",
3728
4357
  "foldCurtain.showMore": "Show more",
3729
4358
  "foldCurtain.showLess": "Show less"
3730
4359
  }