specrails-desktop 2.45.0 → 2.47.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 (142) hide show
  1. package/client/dist/assets/{ActivityFeedPage-D3SQklu5.js → ActivityFeedPage-DSCpSOGV.js} +1 -1
  2. package/client/dist/assets/{AgentBrowserCapture-DNGxE33d.js → AgentBrowserCapture-mc1c5pgS.js} +1 -1
  3. package/client/dist/assets/AgentModeAnalyticsPane--UkamBTm.js +2 -0
  4. package/client/dist/assets/AgentModeCodePane-DJCswsvU.js +2 -0
  5. package/client/dist/assets/AgentModeJobsPane-Dw3DNFkh.js +1 -0
  6. package/client/dist/assets/AgentsPage-ChElPUL9.js +87 -0
  7. package/client/dist/assets/{AnalyticsPage-BqV6mM2O.js → AnalyticsPage-BGtkFHBp.js} +1 -1
  8. package/client/dist/assets/CodePage-BBnw3VGn.js +3 -0
  9. package/client/dist/assets/{DesktopAnalyticsPage-D6WNax3K.js → DesktopAnalyticsPage-B85tNScc.js} +1 -1
  10. package/client/dist/assets/{DocsDialog-68jKUH9f.js → DocsDialog-D4cXrOMl.js} +1 -1
  11. package/client/dist/assets/{DocsPage-BoGJgRpm.js → DocsPage-BCAbC6qy.js} +1 -1
  12. package/client/dist/assets/{ExportDropdown-B2C_XLGp.js → ExportDropdown-BwuvqS2Y.js} +1 -1
  13. package/client/dist/assets/InteractiveJobComposer-Coq-Zhk0.js +19 -0
  14. package/client/dist/assets/JobDetailModal--Mjam0Nc.js +1 -0
  15. package/client/dist/assets/JobDetailPage-B6ShWSBh.js +1 -0
  16. package/client/dist/assets/JobsPage-DHU_ep_B.js +1 -0
  17. package/client/dist/assets/{LoopBuilderPage-D21GxFmL.js → LoopBuilderPage-Byvq8Oqx.js} +2 -2
  18. package/client/dist/assets/{LoopPreviewModal-Bo3fYFxN.js → LoopPreviewModal-BMC9Mgj1.js} +1 -1
  19. package/client/dist/assets/{LoopsPage-BcrBw1cg.js → LoopsPage-CFGl-Nw8.js} +1 -1
  20. package/client/dist/assets/{MinimizedChatsContext-Dsv2eHf_.js → MinimizedChatsContext-DHjHBYqa.js} +1 -1
  21. package/client/dist/assets/{PluginsPage-BbyTmSLx.js → PluginsPage-BHygRnW6.js} +2 -2
  22. package/client/dist/assets/{ProjectSettingsDialog-B3lEXLv7.js → ProjectSettingsDialog-nspqxH-M.js} +1 -1
  23. package/client/dist/assets/{RepositoryDeliveries-ok_Wo65C.js → RepositoryDeliveries-Dq9NJOWi.js} +1 -1
  24. package/client/dist/assets/{RepositoryScopeSelector-DU6QwNaS.js → RepositoryScopeSelector-C3jKG2z0.js} +1 -1
  25. package/client/dist/assets/{ReviewPacketPage-BBCeHtgd.js → ReviewPacketPage-C9mqhi65.js} +1 -1
  26. package/client/dist/assets/{TemplatePreviewModal-CfNmxS6O.js → TemplatePreviewModal-BmwoAjOr.js} +1 -1
  27. package/client/dist/assets/{TicketDetailModalContext-DW3eQ0I7.js → TicketDetailModalContext-lYmoONrd.js} +1 -1
  28. package/client/dist/assets/{Trans-BHPMWkOw.js → Trans-C0KyPo2O.js} +1 -1
  29. package/client/dist/assets/agentRuntime-62GWdc26.js +1 -0
  30. package/client/dist/assets/agentRuntime-BN1mKAuY.js +1 -0
  31. package/client/dist/assets/agentRuntime-BNBCzQLM.js +1 -0
  32. package/client/dist/assets/agentRuntime-BQE_K1GG.js +1 -0
  33. package/client/dist/assets/agentRuntime-CCU3HCtS.js +1 -0
  34. package/client/dist/assets/agentRuntime-DT72Bpdv.js +1 -0
  35. package/client/dist/assets/agentRuntime-ZfMPeeiP.js +1 -0
  36. package/client/dist/assets/agentRuntime-g3W8Ry4d.js +1 -0
  37. package/client/dist/assets/{agents-IUOgqT5t.js → agents-BIT1UdTy.js} +1 -1
  38. package/client/dist/assets/{agents-DaYcxAr1.js → agents-C7fKfvm8.js} +1 -1
  39. package/client/dist/assets/{agents-ms7TwG16.js → agents-CST-lpYX.js} +1 -1
  40. package/client/dist/assets/{agents-Bvyi3y6R.js → agents-Cm2JYrAa.js} +1 -1
  41. package/client/dist/assets/{agents-BHp0_FQt.js → agents-DsgGMGwU.js} +1 -1
  42. package/client/dist/assets/{agents-45GbINfh.js → agents-DyI4rbHa.js} +1 -1
  43. package/client/dist/assets/{agents-rzPnqoBR.js → agents-H6tVQUNP.js} +1 -1
  44. package/client/dist/assets/{agents-DMKFStHL.js → agents-_5mJMkAE.js} +1 -1
  45. package/client/dist/assets/format-duration-NJVPOPBG.js +1 -0
  46. package/client/dist/assets/{formatDistanceToNow-Bq8iptrG.js → formatDistanceToNow-D44phX1J.js} +1 -1
  47. package/client/dist/assets/{getTimezoneOffsetInMilliseconds-BVFky3l_.js → getTimezoneOffsetInMilliseconds-EAh9LFSx.js} +1 -1
  48. package/client/dist/assets/index-Cfh9aaep.css +2 -0
  49. package/client/dist/assets/index-DgMBighL.js +76 -0
  50. package/client/dist/assets/{jira-api-zrRdZFBB.js → jira-api-BQR6G0YY.js} +1 -1
  51. package/client/dist/assets/narration-B1uGfofH.js +1 -0
  52. package/client/dist/assets/narration-BKcL4Srl.js +1 -0
  53. package/client/dist/assets/narration-BtjKyHVM.js +1 -0
  54. package/client/dist/assets/narration-CqNvgRi9.js +1 -0
  55. package/client/dist/assets/narration-DiPyj06T.js +1 -0
  56. package/client/dist/assets/narration-DrBAf8uv.js +1 -0
  57. package/client/dist/assets/narration-OyujFouL.js +1 -0
  58. package/client/dist/assets/narration-UWi_xIZ-.js +1 -0
  59. package/client/dist/assets/{project-repositories-CFRaB9UB.js → project-repositories-GRYdjlKB.js} +1 -1
  60. package/client/dist/assets/{provider-capabilities-B-wOHfLP.js → provider-capabilities-CXipwrXJ.js} +1 -1
  61. package/client/dist/assets/{settings-OOyDrZQo.js → settings-B3rWEwOx.js} +1 -1
  62. package/client/dist/assets/{settings-CNiERE-R.js → settings-BcVoiMyw.js} +1 -1
  63. package/client/dist/assets/settings-BlYvaQ7w.js +1 -0
  64. package/client/dist/assets/{settings-DJ2jl3hJ.js → settings-CD5uEBiL.js} +1 -1
  65. package/client/dist/assets/{settings-a7NIODme.js → settings-CyhS0DLJ.js} +1 -1
  66. package/client/dist/assets/{settings-DVRVybR_.js → settings-DCMFUGDs.js} +1 -1
  67. package/client/dist/assets/{settings-CrtCs5-B.js → settings-DEgcA0jd.js} +1 -1
  68. package/client/dist/assets/{settings-ChOCVjX_.js → settings-DmbYKyMJ.js} +1 -1
  69. package/client/dist/assets/{spending-lTZ-bm_y.js → spending-CN9PHM65.js} +1 -1
  70. package/client/dist/assets/{useDesktop-Duv5ddAa.js → useDesktop-iius_s5d.js} +1 -1
  71. package/client/dist/assets/{useSharedWebSocket-5mj2SMKn.js → useSharedWebSocket-D7hkZ3Ka.js} +2 -2
  72. package/client/dist/index.html +20 -19
  73. package/docs/internals/programmatic-agent-runtime.md +19 -8
  74. package/docs/plans/implementation-efficiency-artifact.json +18 -0
  75. package/docs/plans/implementation-efficiency-evaluation.json +1817 -0
  76. package/docs/plans/implementation-efficiency-evaluation.md +41 -0
  77. package/docs/plans/implementation-efficiency-progress.md +48 -0
  78. package/docs/plans/implementation-efficiency-release.md +41 -0
  79. package/docs/plans/implementation-efficiency.md +124 -0
  80. package/package.json +1 -1
  81. package/server/dist/agent-mcp-config.js +5 -0
  82. package/server/dist/agent-operator-prompt.js +2 -2
  83. package/server/dist/agent-runtime-bridge.js +69 -17
  84. package/server/dist/agent-runtime-controls-router.js +50 -0
  85. package/server/dist/agent-runtime-controls.js +123 -12
  86. package/server/dist/agent-runtime-effective-config.js +32 -0
  87. package/server/dist/agent-runtime-events.js +46 -0
  88. package/server/dist/agent-runtime-history.js +47 -0
  89. package/server/dist/agent-runtime-loader.js +90 -5
  90. package/server/dist/agent-runtime-metrics.js +122 -0
  91. package/server/dist/agent-runtime-package.js +205 -0
  92. package/server/dist/agent-runtime-repositories.js +37 -0
  93. package/server/dist/agent-runtime-settings-router.js +29 -6
  94. package/server/dist/agent-runtime-settings.js +151 -21
  95. package/server/dist/agent-runtime-settlement.js +133 -0
  96. package/server/dist/contract-refine-runner.js +7 -7
  97. package/server/dist/core-completion.js +8 -5
  98. package/server/dist/desktop-router.js +26 -0
  99. package/server/dist/job-listing.js +7 -3
  100. package/server/dist/loop-command-catalog.js +2 -2
  101. package/server/dist/loop-executors.js +6 -4
  102. package/server/dist/loop-run-manager.js +12 -4
  103. package/server/dist/mcp/tools/rails.js +1 -0
  104. package/server/dist/mcp/tools/specs.js +7 -4
  105. package/server/dist/multi-repo-execution.js +1 -0
  106. package/server/dist/project-router-jobs.js +8 -2
  107. package/server/dist/project-router-tickets.js +4 -4
  108. package/server/dist/providers/runtime.js +6 -0
  109. package/server/dist/rail-isolated-launch.js +2 -1
  110. package/server/dist/rails-router.js +29 -1
  111. package/server/dist/runtime-role-prompts-router.js +25 -0
  112. package/server/dist/schemas/agent-runtime.schema.json +25 -3
  113. package/server/dist/schemas/fixtures/runtime-efficiency-summary.v1.json +790 -0
  114. package/server/dist/worktree-overlay.js +32 -1
  115. package/client/dist/assets/AgentModeAnalyticsPane-BUvZNoj0.js +0 -2
  116. package/client/dist/assets/AgentModeCodePane-YW717UvJ.js +0 -2
  117. package/client/dist/assets/AgentModeJobsPane-Cxg_eNmd.js +0 -1
  118. package/client/dist/assets/AgentsPage-B_DCByok.js +0 -87
  119. package/client/dist/assets/CodePage-PyZKCj1B.js +0 -3
  120. package/client/dist/assets/InteractiveJobComposer-l8q-r5Yy.js +0 -19
  121. package/client/dist/assets/JobDetailModal-C-X2GI9j.js +0 -1
  122. package/client/dist/assets/JobDetailPage-C6Jdm7S9.js +0 -1
  123. package/client/dist/assets/JobsPage-DycM6Vgp.js +0 -1
  124. package/client/dist/assets/agentRuntime-14faDjWM.js +0 -1
  125. package/client/dist/assets/agentRuntime-BIokojkJ.js +0 -1
  126. package/client/dist/assets/agentRuntime-Bu4xEcRw.js +0 -1
  127. package/client/dist/assets/agentRuntime-Cz0ASixB.js +0 -1
  128. package/client/dist/assets/agentRuntime-DESdGXLV.js +0 -1
  129. package/client/dist/assets/agentRuntime-DhX5Xy5S.js +0 -1
  130. package/client/dist/assets/agentRuntime-Dpbh_gLp.js +0 -1
  131. package/client/dist/assets/agentRuntime-jS2lplFm.js +0 -1
  132. package/client/dist/assets/index-CBLYwPw6.css +0 -2
  133. package/client/dist/assets/index-DOKftX7y.js +0 -76
  134. package/client/dist/assets/narration-BA8Yw5ZL.js +0 -1
  135. package/client/dist/assets/narration-BuMFUS7Q.js +0 -1
  136. package/client/dist/assets/narration-Bv_iQQG5.js +0 -1
  137. package/client/dist/assets/narration-C6Ost9nL.js +0 -1
  138. package/client/dist/assets/narration-CIbjo2pA.js +0 -1
  139. package/client/dist/assets/narration-CNJ2-2-a.js +0 -1
  140. package/client/dist/assets/narration-OzsPJCXM.js +0 -1
  141. package/client/dist/assets/narration-zCdgiuSU.js +0 -1
  142. package/client/dist/assets/settings-DzXZCb1h.js +0 -1
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({agents:()=>v,approvalBeforeArchive:()=>m,architect:()=>w,cliNames:()=>g,default:()=>T,description:()=>r,enableHint:()=>c,enabled:()=>s,limits:()=>y,loadFailed:()=>a,loading:()=>i,providers:()=>h,retry:()=>o,review:()=>C,roleHints:()=>S,roles:()=>_,runs:()=>x,save:()=>u,saveFailed:()=>p,saved:()=>f,saving:()=>d,title:()=>n,unavailable:()=>l,verification:()=>b}),n=`Agent runtime`,r=`Architect, developer and reviewer run as separate phases with deterministic verification in between. Pick a provider per role; everything else has a working default.`,i=`Loading runtime settings…`,a=`Could not load runtime settings. Retry before making changes.`,o=`Retry`,s=`Use the agent runtime for implementation`,c=`Saving does not start agents. Implementations of this project use the runtime once enabled; disabled projects keep their current execution mode.`,l=`This Core installation does not include the agent runtime. Update Core before enabling it; you can prepare settings while disabled.`,u=`Save runtime settings`,d=`Saving…`,f=`Runtime settings saved`,p=`Could not save runtime settings.`,m=`Pause for approval before completing the workflow`,h={title:`Providers`,hint:`CLI providers use their existing login. API providers accept an environment variable name only, never an API key. Local endpoints can leave it blank. Assign another provider to a role before removing its current provider.`,entry:`Provider {{index}}`,id:`Provider ID`,kind:`Connection type`,cli:`Installed coding CLI`,compatible:`OpenAI-compatible endpoint`,command:`Coding CLI`,baseUrl:`API base URL`,apiKeyEnv:`API key environment variable (optional)`,remove:`Remove provider`,addCli:`Add CLI provider`,addLocal:`Add local / API provider`,show:`Show provider connections`,hide:`Hide provider connections`},g={claude:`Claude`,codex:`Codex`,gemini:`Gemini`,kimi:`Kimi`},_={architect:`Architect`,developer:`Developer`,reviewer:`Reviewer`,verify:`Verification`,archive:`Completion`},v={title:`Role assignments`,hint:`Each role runs its own provider session. Leave the model on its default unless you need a specific one. Turns are the number of tool calls a role may make (default {{turns}}).`,provider:`Provider`,model:`Model`,modelPlaceholder:`Model ID or CLI default`,maxTurns:`Maximum turns (default {{turns}})`,defaultModel:`Default ({{model}})`},y={title:`Workflow limits`,hint:`Empty fields use Core defaults: {{attempts}} developer attempts and {{minutes}} minutes per workflow. Token and USD caps are optional; USD caps require Claude for every AI role.`,maxAttempts:`Maximum developer attempts (default {{attempts}})`,timeoutMinutes:`Timeout in minutes (default {{minutes}})`,maxTokens:`Maximum tokens`,maxCostUsd:`Maximum cost (USD)`,unlimited:`No limit`},b={title:`Verification commands`,hint:`Optional. These run after the developer finishes and their failures go back to the developer. Leave the list empty and the architect proposes the project's own checks on each run; repositories without any automated check are still reviewed.`,detect:`Detect project checks`,detecting:`Detecting…`,detected:`Filled in from the checks this project already defines.`,nothingDetected:`No test, type-check or build command was found. That is fine: the architect proposes checks at run time when possible.`,detectFailed:`Could not inspect the project repositories.`,repository:`Repository`,command:`Command`,reason:`Detected from {{reason}}`,remove:`Remove`,add:`Add command`,invalidLine:`Verification command is empty or has an unterminated quote: {{line}}`},x={title:`Saved executions`,refresh:`Refresh`,hint:`Continue in the original worktree with the frozen scope and settings; progress appears in that job's log. This does not publish or restart Desktop delivery. Active rail executions are stopped from their job controls.`,empty:`No saved runtime executions.`,loadFailed:`Could not load saved executions.`,actionFailed:`Could not update this execution.`,phase:`Next phase: {{phase}}`,approve:`Approve completion`,recover:`Recover interrupted phase`,resume:`Resume`,cancel:`Cancel continuation`,status:{running:`Continuing…`,succeeded:`Succeeded`,failed:`Failed`,blocked:`Blocked`,paused:`Paused`,cancelled:`Cancelled`,interrupted:`Interrupted`,unavailable:`Unavailable`},question:`The architect asks:`,answerLabel:`Your answer`,answerPlaceholder:`Answer the question; the architect continues with it.`,answer:`Answer and resume`},S={architect:`Reads the code and writes the proposal, design, tasks and spec. Read-only.`,developer:`Implements the tasks with tests. Can edit files and run commands inside the CLI sandbox.`,reviewer:`Checks the result against the spec and the verification evidence. Read-only.`},C={title:`Review gate`,hint:`Empty fields use Core's gate. Values can only raise it: overall score at least {{score}}, security at least {{security}}, other aspects at least {{aspect}}.`,minScore:`Minimum overall score (default {{score}})`,aspects:{type_correctness:`Type correctness (default {{score}})`,pattern_adherence:`Pattern adherence (default {{score}})`,test_coverage:`Test coverage (default {{score}})`,security:`Security (default {{score}})`,architectural_alignment:`Architectural alignment (default {{score}})`}},w={title:`Architect confidence`,hint:`After one autonomous investigation pass, a design that is still low in confidence either pauses with the architect's question or proceeds on stated assumptions.`,onLowConfidence:`On low confidence`,ask:`Ask (pause with the question)`,proceed:`Proceed on stated assumptions`},T={title:n,description:r,loading:i,loadFailed:a,retry:o,enabled:s,enableHint:c,unavailable:l,save:u,saving:d,saved:f,saveFailed:p,approvalBeforeArchive:m,providers:h,cliNames:g,roles:_,agents:v,limits:y,verification:b,runs:x,roleHints:S,review:C,architect:w};export{t};
@@ -1 +0,0 @@
1
- var e=`Agenten-Laufzeit`,t=`Architekt, Entwickler und Reviewer laufen als getrennte Phasen mit deterministischer Verifikation dazwischen. Wähle pro Rolle einen Anbieter; alles andere hat funktionierende Standardwerte.`,n=`Einstellungen werden geladen…`,r=`Einstellungen konnten nicht geladen werden. Vor Änderungen erneut versuchen.`,i=`Erneut versuchen`,a=`Agenten-Laufzeit für die Implementierung verwenden`,o=`Speichern startet keine Agenten. Nach der Aktivierung nutzen Implementierungen dieses Projekts die Laufzeit; deaktivierte Projekte behalten ihren bisherigen Ausführungsmodus.`,s=`Diese Core-Installation enthält die Agenten-Laufzeit nicht. Aktualisieren Sie Core vor der Aktivierung. Die Einstellungen können Sie bereits vorbereiten.`,c=`Laufzeit-Einstellungen speichern`,l=`Wird gespeichert…`,u=`Einstellungen gespeichert`,d=`Einstellungen konnten nicht gespeichert werden.`,f=`Vor Abschluss des Workflows auf Freigabe warten`,p={title:`Anbieter`,hint:`CLI-Anbieter nutzen die bestehende Anmeldung. APIs akzeptieren nur den Namen einer Umgebungsvariablen, niemals den Schlüssel selbst. Lokal kann er leer bleiben. Rollen vor dem Entfernen ihres Anbieters neu zuweisen.`,entry:`Anbieter {{index}}`,id:`Anbieter-ID`,kind:`Verbindungstyp`,cli:`Installierte Programmier-CLI`,compatible:`OpenAI-kompatibler Endpunkt`,command:`Programmier-CLI`,baseUrl:`API-Basis-URL`,apiKeyEnv:`Umgebungsvariable für API-Schlüssel (optional)`,remove:`Anbieter entfernen`,addCli:`CLI-Anbieter hinzufügen`,addLocal:`Lokalen / API-Anbieter hinzufügen`,show:`Anbieterverbindungen anzeigen`,hide:`Anbieterverbindungen ausblenden`},m={claude:`Claude`,codex:`Codex`,gemini:`Gemini`,kimi:`Kimi`},h={architect:`Architekt`,developer:`Entwickler`,reviewer:`Prüfer`,verify:`Prüfung`,archive:`Abschluss`},g={title:`Rollenzuweisungen`,hint:`Jede Rolle läuft in einer eigenen Anbieter-Sitzung. Lass das Modell auf dem Standard, sofern du kein bestimmtes brauchst. Runden sind die Werkzeugaufrufe, die eine Rolle machen darf (Standard {{turns}}).`,provider:`Anbieter`,model:`Modell`,modelPlaceholder:`Modell-ID oder CLI-Standard`,maxTurns:`Maximale Runden (Standard {{turns}})`,defaultModel:`Standard ({{model}})`},_={title:`Workflow-Limits`,hint:`Leere Felder verwenden die Core-Standards: {{attempts}} Entwicklerversuche und {{minutes}} Minuten pro Workflow. Token- und USD-Obergrenzen sind optional; USD-Obergrenzen erfordern Claude für jede KI-Rolle.`,maxAttempts:`Maximale Entwicklerversuche (Standard {{attempts}})`,timeoutMinutes:`Zeitlimit in Minuten (Standard {{minutes}})`,maxTokens:`Maximale Tokens`,maxCostUsd:`Maximale Kosten (USD)`,unlimited:`Kein Limit`},v={title:`Verifikationsbefehle`,hint:`Optional. Sie laufen, nachdem der Entwickler fertig ist; Fehler gehen an den Entwickler zurück. Bleibt die Liste leer, schlägt der Architekt bei jedem Lauf die projekteigenen Prüfungen vor; Repositories ohne automatische Prüfung werden trotzdem reviewt.`,detect:`Projektprüfungen erkennen`,detecting:`Erkenne…`,detected:`Ausgefüllt mit den Prüfungen, die dieses Projekt bereits definiert.`,nothingDetected:`Kein Test-, Typprüfungs- oder Build-Befehl gefunden. Kein Problem: der Architekt schlägt bei jedem Lauf Prüfungen vor, wenn möglich.`,detectFailed:`Die Projekt-Repositories konnten nicht untersucht werden.`,repository:`Repository`,command:`Befehl`,reason:`Erkannt aus {{reason}}`,remove:`Entfernen`,add:`Befehl hinzufügen`,invalidLine:`Verifikationsbefehl ist leer oder hat ein nicht geschlossenes Anführungszeichen: {{line}}`},y={title:`Gespeicherte Ausführungen`,refresh:`Aktualisieren`,hint:`Setzt im ursprünglichen Worktree mit gespeichertem Umfang und Einstellungen fort; der Fortschritt erscheint im Protokoll dieses Jobs. Es wird nichts veröffentlicht und keine Desktop-Auslieferung neu gestartet. Aktive Rail-Ausführungen werden über ihre Job-Steuerung gestoppt.`,empty:`Keine gespeicherten Ausführungen.`,loadFailed:`Ausführungen konnten nicht geladen werden.`,actionFailed:`Ausführung konnte nicht aktualisiert werden.`,phase:`Nächste Phase: {{phase}}`,approve:`Abschluss freigeben`,recover:`Unterbrochene Phase wiederherstellen`,resume:`Fortsetzen`,cancel:`Fortsetzung abbrechen`,status:{running:`Wird fortgesetzt…`,succeeded:`Erfolgreich`,failed:`Fehlgeschlagen`,blocked:`Blockiert`,paused:`Pausiert`,cancelled:`Abgebrochen`,interrupted:`Unterbrochen`,unavailable:`Nicht verfügbar`},question:`Der Architekt fragt:`,answerLabel:`Ihre Antwort`,answerPlaceholder:`Beantworten Sie die Frage; der Architekt macht damit weiter.`,answer:`Antworten und fortsetzen`},b={architect:`Liest den Code und schreibt Vorschlag, Design, Aufgaben und Spezifikation. Nur lesend.`,developer:`Setzt die Aufgaben mit Tests um. Darf Dateien bearbeiten und Befehle in der CLI-Sandbox ausführen.`,reviewer:`Prüft das Ergebnis gegen Spezifikation und Verifikationsnachweise. Nur lesend.`},x={title:`Review-Schwelle`,hint:`Leere Felder verwenden Cores Schwelle. Werte können sie nur anheben: Gesamtwert mindestens {{score}}, Sicherheit mindestens {{security}}, andere Aspekte mindestens {{aspect}}.`,minScore:`Mindestgesamtwert (Standard {{score}})`,aspects:{type_correctness:`Typkorrektheit (Standard {{score}})`,pattern_adherence:`Mustertreue (Standard {{score}})`,test_coverage:`Testabdeckung (Standard {{score}})`,security:`Sicherheit (Standard {{score}})`,architectural_alignment:`Architekturkonformität (Standard {{score}})`}},S={title:`Zuversicht des Architekten`,hint:`Nach einem autonomen Untersuchungsdurchlauf pausiert ein weiterhin unsicherer Entwurf mit der Frage des Architekten oder fährt mit benannten Annahmen fort.`,onLowConfidence:`Bei geringer Zuversicht`,ask:`Fragen (mit der Frage pausieren)`,proceed:`Mit benannten Annahmen fortfahren`},C={title:e,description:t,loading:n,loadFailed:r,retry:i,enabled:a,enableHint:o,unavailable:s,save:c,saving:l,saved:u,saveFailed:d,approvalBeforeArchive:f,providers:p,cliNames:m,roles:h,agents:g,limits:_,verification:v,runs:y,roleHints:b,review:x,architect:S};export{g as agents,f as approvalBeforeArchive,S as architect,m as cliNames,C as default,t as description,o as enableHint,a as enabled,_ as limits,r as loadFailed,n as loading,p as providers,i as retry,x as review,b as roleHints,h as roles,y as runs,c as save,d as saveFailed,u as saved,l as saving,e as title,s as unavailable,v as verification};
@@ -1 +0,0 @@
1
- var e=`代理运行引擎`,t=`架构师、开发者和审阅者作为独立阶段运行,中间进行确定性验证。为每个角色选择提供商即可,其余都有可用的默认值。`,n=`正在加载运行设置…`,r=`无法加载运行设置。请先重试再修改。`,i=`重试`,a=`使用代理运行引擎进行实现`,o=`保存不会启动代理。启用后,此项目的实现将使用运行引擎;停用的项目保留当前执行模式。`,s=`当前 Core 安装不包含代理运行引擎。启用前请更新 Core;停用时仍可提前配置。`,c=`保存运行设置`,l=`正在保存…`,u=`运行设置已保存`,d=`无法保存运行设置。`,f=`完成工作流前暂停并等待批准`,p={title:`提供商`,hint:`CLI 提供商使用现有登录。API 仅接受环境变量名称,请勿输入密钥。本地端点可留空。删除提供商前,请先重新分配使用它的角色。`,entry:`提供商 {{index}}`,id:`提供商 ID`,kind:`连接类型`,cli:`已安装的编程 CLI`,compatible:`兼容 OpenAI 的端点`,command:`编程 CLI`,baseUrl:`API 基础 URL`,apiKeyEnv:`API 密钥环境变量(可选)`,remove:`移除提供商`,addCli:`添加 CLI 提供商`,addLocal:`添加本地 / API 提供商`,show:`显示提供商连接`,hide:`隐藏提供商连接`},m={claude:`Claude`,codex:`Codex`,gemini:`Gemini`,kimi:`Kimi`},h={architect:`架构师`,developer:`开发者`,reviewer:`审查者`,verify:`验证`,archive:`完成`},g={title:`角色分配`,hint:`每个角色使用各自的提供商会话。除非需要特定模型,否则保持默认。轮数是角色可进行的工具调用次数(默认 {{turns}})。`,provider:`提供商`,model:`模型`,modelPlaceholder:`模型 ID 或 CLI 默认值`,maxTurns:`最大轮数(默认 {{turns}})`,defaultModel:`默认({{model}})`},_={title:`工作流限制`,hint:`空字段使用 Core 默认值:开发者尝试 {{attempts}} 次,每个工作流 {{minutes}} 分钟。令牌和 USD 上限可选;USD 上限要求所有 AI 角色使用 Claude。`,maxAttempts:`开发者最大尝试次数(默认 {{attempts}})`,timeoutMinutes:`超时(分钟,默认 {{minutes}})`,maxTokens:`最大令牌数`,maxCostUsd:`最大成本(USD)`,unlimited:`无限制`},v={title:`验证命令`,hint:`可选。在开发者完成后运行,失败会返回给开发者。留空时,架构师会在每次运行时提出项目自身的检查;没有自动检查的仓库仍会被审阅。`,detect:`检测项目检查`,detecting:`检测中…`,detected:`已根据此项目已定义的检查填写。`,nothingDetected:`未找到测试、类型检查或构建命令。没关系:架构师会在可能时于运行时提出检查。`,detectFailed:`无法检查项目仓库。`,repository:`仓库`,command:`命令`,reason:`检测自 {{reason}}`,remove:`移除`,add:`添加命令`,invalidLine:`验证命令为空或引号未闭合:{{line}}`},y={title:`已保存的执行`,refresh:`刷新`,hint:`在原始工作树中使用冻结的范围和设置继续执行,进度显示在该任务的日志中。此操作不会发布或重启 Desktop 交付。请从任务控件停止活动中的执行。`,empty:`没有已保存的执行。`,loadFailed:`无法加载已保存的执行。`,actionFailed:`无法更新此执行。`,phase:`下一阶段:{{phase}}`,approve:`批准完成`,recover:`恢复中断阶段`,resume:`继续`,cancel:`取消继续执行`,status:{running:`继续中…`,succeeded:`成功`,failed:`失败`,blocked:`已阻止`,paused:`已暂停`,cancelled:`已取消`,interrupted:`已中断`,unavailable:`不可用`},question:`架构师提问:`,answerLabel:`你的回答`,answerPlaceholder:`回答该问题后,架构师将据此继续。`,answer:`回答并继续`},b={architect:`阅读代码并撰写提案、设计、任务和规范。只读。`,developer:`带测试地实现任务。可在 CLI 沙箱内编辑文件并运行命令。`,reviewer:`对照规范和验证证据检查结果。只读。`},x={title:`评审门槛`,hint:`留空则使用 Core 的门槛。数值只能提高门槛:总体分数至少 {{score}},安全性至少 {{security}},其他方面至少 {{aspect}}。`,minScore:`最低总体分数(默认 {{score}})`,aspects:{type_correctness:`类型正确性(默认 {{score}})`,pattern_adherence:`模式遵循(默认 {{score}})`,test_coverage:`测试覆盖率(默认 {{score}})`,security:`安全性(默认 {{score}})`,architectural_alignment:`架构一致性(默认 {{score}})`}},S={title:`架构师置信度`,hint:`经过一轮自主调查后,若设计的置信度仍然较低,则带着架构师的问题暂停,或基于已声明的假设继续。`,onLowConfidence:`置信度低时`,ask:`询问(带问题暂停)`,proceed:`基于已声明的假设继续`},C={title:e,description:t,loading:n,loadFailed:r,retry:i,enabled:a,enableHint:o,unavailable:s,save:c,saving:l,saved:u,saveFailed:d,approvalBeforeArchive:f,providers:p,cliNames:m,roles:h,agents:g,limits:_,verification:v,runs:y,roleHints:b,review:x,architect:S};export{g as agents,f as approvalBeforeArchive,S as architect,m as cliNames,C as default,t as description,o as enableHint,a as enabled,_ as limits,r as loadFailed,n as loading,p as providers,i as retry,x as review,b as roleHints,h as roles,y as runs,c as save,d as saveFailed,u as saved,l as saving,e as title,s as unavailable,v as verification};
@@ -1 +0,0 @@
1
- var e=`Motor de agentes`,t=`Arquiteto, programador e revisor correm como fases separadas com verificação determinista entre elas. Escolha um fornecedor por função; tudo o resto tem um valor por defeito que funciona.`,n=`A carregar configurações…`,r=`Não foi possível carregar as configurações. Tente novamente antes de alterar.`,i=`Tentar novamente`,a=`Usar o motor de agentes na implementação`,o=`Guardar não inicia agentes. Depois de ativado, as implementações deste projeto usam o motor; os projetos desativados mantêm o modo atual.`,s=`Esta instalação do Core não inclui o motor de agentes. Atualize o Core antes de ativar; pode preparar as configurações enquanto está desativado.`,c=`Guardar configurações`,l=`A guardar…`,u=`Configurações guardadas`,d=`Não foi possível guardar as configurações.`,f=`Pausar para aprovação antes de concluir o fluxo`,p={title:`Fornecedores`,hint:`Os CLI usam a sessão existente. As API aceitam apenas o nome da variável de ambiente, nunca a chave. Em serviços locais, pode ficar vazio. Reatribua as funções antes de remover o fornecedor.`,entry:`Fornecedor {{index}}`,id:`ID do fornecedor`,kind:`Tipo de ligação`,cli:`CLI de programação instalado`,compatible:`Endpoint compatível com OpenAI`,command:`CLI de programação`,baseUrl:`URL base da API`,apiKeyEnv:`Variável de ambiente da chave (opcional)`,remove:`Remover fornecedor`,addCli:`Adicionar fornecedor CLI`,addLocal:`Adicionar fornecedor local / API`,show:`Mostrar ligações a fornecedores`,hide:`Ocultar ligações a fornecedores`},m={claude:`Claude`,codex:`Codex`,gemini:`Gemini`,kimi:`Kimi`},h={architect:`Arquiteto`,developer:`Desenvolvedor`,reviewer:`Revisor`,verify:`Verificação`,archive:`Conclusão`},g={title:`Atribuição de funções`,hint:`Cada função executa a sua própria sessão do fornecedor. Deixe o modelo no valor por defeito salvo necessidade específica. Os turnos são as chamadas a ferramentas que uma função pode fazer (por defeito {{turns}}).`,provider:`Fornecedor`,model:`Modelo`,modelPlaceholder:`ID do modelo ou padrão do CLI`,maxTurns:`Máximo de turnos (por defeito {{turns}})`,defaultModel:`Por defeito ({{model}})`},_={title:`Limites do fluxo`,hint:`Os campos vazios usam os valores do Core: {{attempts}} tentativas do programador e {{minutes}} minutos por fluxo. Os limites de tokens e USD são opcionais; o limite em USD exige Claude em todas as funções de IA.`,maxAttempts:`Máximo de tentativas do programador (por defeito {{attempts}})`,timeoutMinutes:`Tempo limite em minutos (por defeito {{minutes}})`,maxTokens:`Máximo de tokens`,maxCostUsd:`Custo máximo (USD)`,unlimited:`Sem limite`},v={title:`Comandos de verificação`,hint:`Opcional. Correm quando o programador termina e as falhas voltam ao programador. Com a lista vazia, o arquiteto propõe as verificações do próprio projeto em cada execução; os repositórios sem verificação automática são revistos na mesma.`,detect:`Detetar verificações do projeto`,detecting:`A detetar…`,detected:`Preenchido com as verificações que este projeto já define.`,nothingDetected:`Não foi encontrado nenhum comando de teste, verificação de tipos ou build. Não há problema: o arquiteto propõe verificações em cada execução quando possível.`,detectFailed:`Não foi possível inspecionar os repositórios do projeto.`,repository:`Repositório`,command:`Comando`,reason:`Detetado em {{reason}}`,remove:`Remover`,add:`Adicionar comando`,invalidLine:`Comando de verificação vazio ou com aspas por fechar: {{line}}`},y={title:`Execuções guardadas`,refresh:`Atualizar`,hint:`Continua no worktree original com o âmbito e as configurações guardadas; o progresso aparece no registo desse trabalho. Não publica nem reinicia a entrega do Desktop. As execuções ativas param a partir dos controlos do trabalho.`,empty:`Não há execuções guardadas.`,loadFailed:`Não foi possível carregar as execuções.`,actionFailed:`Não foi possível atualizar esta execução.`,phase:`Próxima fase: {{phase}}`,approve:`Aprovar conclusão`,recover:`Recuperar fase interrompida`,resume:`Retomar`,cancel:`Cancelar continuação`,status:{running:`A continuar…`,succeeded:`Concluído`,failed:`Falhou`,blocked:`Bloqueado`,paused:`Em pausa`,cancelled:`Cancelado`,interrupted:`Interrompido`,unavailable:`Indisponível`},question:`O arquiteto pergunta:`,answerLabel:`A sua resposta`,answerPlaceholder:`Responda à pergunta; o arquiteto continua com ela.`,answer:`Responder e retomar`},b={architect:`Lê o código e escreve a proposta, o design, as tarefas e a spec. Só leitura.`,developer:`Implementa as tarefas com testes. Pode editar ficheiros e executar comandos na sandbox do CLI.`,reviewer:`Confere o resultado com a spec e a evidência de verificação. Só leitura.`},x={title:`Limite de revisão`,hint:`Campos vazios usam o limite do Core. Os valores só podem elevá-lo: pontuação geral de pelo menos {{score}}, segurança de pelo menos {{security}}, outros aspetos de pelo menos {{aspect}}.`,minScore:`Pontuação geral mínima (padrão {{score}})`,aspects:{type_correctness:`Correção de tipos (padrão {{score}})`,pattern_adherence:`Aderência a padrões (padrão {{score}})`,test_coverage:`Cobertura de testes (padrão {{score}})`,security:`Segurança (padrão {{score}})`,architectural_alignment:`Alinhamento arquitetural (padrão {{score}})`}},S={title:`Confiança do arquiteto`,hint:`Após uma passagem de investigação autónoma, um design ainda com baixa confiança pausa com a pergunta do arquiteto ou prossegue com suposições declaradas.`,onLowConfidence:`Com baixa confiança`,ask:`Perguntar (pausar com a pergunta)`,proceed:`Prosseguir com suposições declaradas`},C={title:e,description:t,loading:n,loadFailed:r,retry:i,enabled:a,enableHint:o,unavailable:s,save:c,saving:l,saved:u,saveFailed:d,approvalBeforeArchive:f,providers:p,cliNames:m,roles:h,agents:g,limits:_,verification:v,runs:y,roleHints:b,review:x,architect:S};export{g as agents,f as approvalBeforeArchive,S as architect,m as cliNames,C as default,t as description,o as enableHint,a as enabled,_ as limits,r as loadFailed,n as loading,p as providers,i as retry,x as review,b as roleHints,h as roles,y as runs,c as save,d as saveFailed,u as saved,l as saving,e as title,s as unavailable,v as verification};
@@ -1 +0,0 @@
1
- var e=`Motore degli agenti`,t=`Architetto, sviluppatore e revisore girano come fasi separate con verifica deterministica in mezzo. Scegli un fornitore per ruolo; tutto il resto ha un valore predefinito funzionante.`,n=`Caricamento delle impostazioni…`,r=`Impossibile caricare le impostazioni. Riprova prima di modificarle.`,i=`Riprova`,a=`Usa il motore degli agenti per implementare`,o=`Salvare non avvia agenti. Una volta attivo, le implementazioni di questo progetto usano il motore; i progetti disattivati mantengono la modalità attuale.`,s=`Questa installazione di Core non include il motore degli agenti. Aggiorna Core prima di attivarlo; puoi preparare le impostazioni mentre è disattivato.`,c=`Salva impostazioni`,l=`Salvataggio…`,u=`Impostazioni salvate`,d=`Impossibile salvare le impostazioni.`,f=`Richiedi approvazione prima di completare il flusso`,p={title:`Fornitori`,hint:`I CLI usano l’accesso esistente. Le API accettano solo il nome di una variabile d’ambiente, mai la chiave. Per servizi locali può restare vuoto. Riassegna i ruoli prima di rimuovere il fornitore.`,entry:`Fornitore {{index}}`,id:`ID del fornitore`,kind:`Tipo di connessione`,cli:`CLI di programmazione installato`,compatible:`Endpoint compatibile con OpenAI`,command:`CLI di programmazione`,baseUrl:`URL base dell’API`,apiKeyEnv:`Variabile d’ambiente della chiave (facoltativa)`,remove:`Rimuovi fornitore`,addCli:`Aggiungi fornitore CLI`,addLocal:`Aggiungi fornitore locale / API`,show:`Mostra connessioni dei fornitori`,hide:`Nascondi connessioni dei fornitori`},m={claude:`Claude`,codex:`Codex`,gemini:`Gemini`,kimi:`Kimi`},h={architect:`Architetto`,developer:`Sviluppatore`,reviewer:`Revisore`,verify:`Verifica`,archive:`Completamento`},g={title:`Assegnazione dei ruoli`,hint:`Ogni ruolo esegue la propria sessione del fornitore. Lascia il modello predefinito salvo esigenze specifiche. I turni sono le chiamate agli strumenti che un ruolo può fare (predefinito {{turns}}).`,provider:`Fornitore`,model:`Modello`,modelPlaceholder:`ID del modello o predefinito del CLI`,maxTurns:`Numero massimo di turni (predefinito {{turns}})`,defaultModel:`Predefinito ({{model}})`},_={title:`Limiti del flusso`,hint:`I campi vuoti usano i valori di Core: {{attempts}} tentativi dello sviluppatore e {{minutes}} minuti per flusso. I limiti di token e USD sono facoltativi; il limite in USD richiede Claude per ogni ruolo IA.`,maxAttempts:`Tentativi massimi dello sviluppatore (predefinito {{attempts}})`,timeoutMinutes:`Timeout in minuti (predefinito {{minutes}})`,maxTokens:`Token massimi`,maxCostUsd:`Costo massimo (USD)`,unlimited:`Nessun limite`},v={title:`Comandi di verifica`,hint:`Facoltativo. Vengono eseguiti quando lo sviluppatore termina e i fallimenti tornano allo sviluppatore. Lista vuota: l’architetto propone i controlli propri del progetto a ogni esecuzione; i repository senza controllo automatico vengono comunque revisionati.`,detect:`Rileva i controlli del progetto`,detecting:`Rilevamento…`,detected:`Compilato con i controlli che questo progetto già definisce.`,nothingDetected:`Nessun comando di test, controllo tipi o build trovato. Va bene: l’architetto propone controlli a ogni esecuzione quando possibile.`,detectFailed:`Impossibile ispezionare i repository del progetto.`,repository:`Repository`,command:`Comando`,reason:`Rilevato da {{reason}}`,remove:`Rimuovi`,add:`Aggiungi comando`,invalidLine:`Comando di verifica vuoto o con virgolette non chiuse: {{line}}`},y={title:`Esecuzioni salvate`,refresh:`Aggiorna`,hint:`Continua nel worktree originale con ambito e impostazioni salvati; l’avanzamento compare nel log di quel job. Non pubblica né riavvia la consegna Desktop. Le esecuzioni attive si fermano dai controlli del job.`,empty:`Nessuna esecuzione salvata.`,loadFailed:`Impossibile caricare le esecuzioni.`,actionFailed:`Impossibile aggiornare questa esecuzione.`,phase:`Prossima fase: {{phase}}`,approve:`Approva completamento`,recover:`Recupera fase interrotta`,resume:`Riprendi`,cancel:`Annulla continuazione`,status:{running:`Continuazione in corso…`,succeeded:`Riuscito`,failed:`Fallito`,blocked:`Bloccato`,paused:`In pausa`,cancelled:`Annullato`,interrupted:`Interrotto`,unavailable:`Non disponibile`},question:`L'architetto chiede:`,answerLabel:`La tua risposta`,answerPlaceholder:`Rispondi alla domanda; l'architetto prosegue con essa.`,answer:`Rispondi e riprendi`},b={architect:`Legge il codice e scrive proposta, design, attività e spec. Sola lettura.`,developer:`Implementa le attività con i test. Può modificare file ed eseguire comandi nella sandbox del CLI.`,reviewer:`Controlla il risultato rispetto alla spec e alle prove di verifica. Sola lettura.`},x={title:`Soglia di revisione`,hint:`I campi vuoti usano la soglia di Core. I valori possono solo alzarla: punteggio complessivo almeno {{score}}, sicurezza almeno {{security}}, altri aspetti almeno {{aspect}}.`,minScore:`Punteggio complessivo minimo (predefinito {{score}})`,aspects:{type_correctness:`Correttezza dei tipi (predefinito {{score}})`,pattern_adherence:`Aderenza ai pattern (predefinito {{score}})`,test_coverage:`Copertura dei test (predefinito {{score}})`,security:`Sicurezza (predefinito {{score}})`,architectural_alignment:`Allineamento architetturale (predefinito {{score}})`}},S={title:`Confidenza dell'architetto`,hint:`Dopo un passaggio di indagine autonoma, un progetto ancora poco sicuro si mette in pausa con la domanda dell'architetto oppure procede su ipotesi dichiarate.`,onLowConfidence:`Con bassa confidenza`,ask:`Chiedere (pausa con la domanda)`,proceed:`Procedere su ipotesi dichiarate`},C={title:e,description:t,loading:n,loadFailed:r,retry:i,enabled:a,enableHint:o,unavailable:s,save:c,saving:l,saved:u,saveFailed:d,approvalBeforeArchive:f,providers:p,cliNames:m,roles:h,agents:g,limits:_,verification:v,runs:y,roleHints:b,review:x,architect:S};export{g as agents,f as approvalBeforeArchive,S as architect,m as cliNames,C as default,t as description,o as enableHint,a as enabled,_ as limits,r as loadFailed,n as loading,p as providers,i as retry,x as review,b as roleHints,h as roles,y as runs,c as save,d as saveFailed,u as saved,l as saving,e as title,s as unavailable,v as verification};
@@ -1 +0,0 @@
1
- var e=`Moteur d’agents`,t=`Architecte, développeur et relecteur s’exécutent en phases séparées avec une vérification déterministe entre elles. Choisissez un fournisseur par rôle ; tout le reste a une valeur par défaut qui fonctionne.`,n=`Chargement des paramètres…`,r=`Impossible de charger les paramètres. Réessayez avant de les modifier.`,i=`Réessayer`,a=`Utiliser le moteur d’agents pour implémenter`,o=`Enregistrer ne lance aucun agent. Une fois activé, les implémentations de ce projet utilisent le moteur ; les projets désactivés conservent leur mode actuel.`,s=`Cette installation de Core ne contient pas le moteur d’agents. Mettez Core à jour avant de l’activer ; vous pouvez préparer les paramètres en attendant.`,c=`Enregistrer les paramètres`,l=`Enregistrement…`,u=`Paramètres enregistrés`,d=`Impossible d’enregistrer les paramètres.`,f=`Demander une approbation avant de terminer le workflow`,p={title:`Fournisseurs`,hint:`Les CLI utilisent leur connexion existante. Pour les API, indiquez uniquement un nom de variable d’environnement, jamais une clé. Il peut rester vide en local. Réaffectez les rôles avant de supprimer leur fournisseur.`,entry:`Fournisseur {{index}}`,id:`ID du fournisseur`,kind:`Type de connexion`,cli:`CLI de programmation installé`,compatible:`API compatible OpenAI`,command:`CLI de programmation`,baseUrl:`URL de base de l’API`,apiKeyEnv:`Variable d’environnement de la clé (facultative)`,remove:`Supprimer le fournisseur`,addCli:`Ajouter un fournisseur CLI`,addLocal:`Ajouter un fournisseur local / API`,show:`Afficher les connexions aux fournisseurs`,hide:`Masquer les connexions aux fournisseurs`},m={claude:`Claude`,codex:`Codex`,gemini:`Gemini`,kimi:`Kimi`},h={architect:`Architecte`,developer:`Développeur`,reviewer:`Réviseur`,verify:`Vérification`,archive:`Finalisation`},g={title:`Attribution des rôles`,hint:`Chaque rôle exécute sa propre session du fournisseur. Laissez le modèle par défaut sauf besoin précis. Les tours sont les appels d’outils qu’un rôle peut faire (par défaut {{turns}}).`,provider:`Fournisseur`,model:`Modèle`,modelPlaceholder:`ID du modèle ou modèle par défaut du CLI`,maxTurns:`Nombre maximal de tours (par défaut {{turns}})`,defaultModel:`Par défaut ({{model}})`},_={title:`Limites du workflow`,hint:`Les champs vides utilisent les valeurs de Core : {{attempts}} tentatives du développeur et {{minutes}} minutes par workflow. Les plafonds de jetons et USD sont facultatifs ; un plafond USD exige Claude pour chaque rôle IA.`,maxAttempts:`Tentatives maximales du développeur (par défaut {{attempts}})`,timeoutMinutes:`Délai en minutes (par défaut {{minutes}})`,maxTokens:`Jetons maximum`,maxCostUsd:`Coût maximum (USD)`,unlimited:`Sans limite`},v={title:`Commandes de vérification`,hint:`Facultatif. Elles s’exécutent quand le développeur a terminé et leurs échecs lui reviennent. Liste vide : l’architecte propose les vérifications propres au projet à chaque exécution ; les dépôts sans vérification automatique sont quand même relus.`,detect:`Détecter les vérifications du projet`,detecting:`Détection…`,detected:`Rempli avec les vérifications que ce projet définit déjà.`,nothingDetected:`Aucune commande de test, de vérification de types ou de build trouvée. Ce n’est pas grave : l’architecte propose des vérifications à chaque exécution quand c’est possible.`,detectFailed:`Impossible d’inspecter les dépôts du projet.`,repository:`Dépôt`,command:`Commande`,reason:`Détecté depuis {{reason}}`,remove:`Retirer`,add:`Ajouter une commande`,invalidLine:`Commande de vérification vide ou guillemet non fermé : {{line}}`},y={title:`Exécutions enregistrées`,refresh:`Actualiser`,hint:`Continue dans le worktree d’origine avec le périmètre et les paramètres enregistrés ; la progression apparaît dans le journal de ce job. Ne publie pas et ne relance pas la livraison Desktop. Les exécutions actives s’arrêtent depuis les contrôles du job.`,empty:`Aucune exécution enregistrée.`,loadFailed:`Impossible de charger les exécutions.`,actionFailed:`Impossible de mettre à jour cette exécution.`,phase:`Phase suivante : {{phase}}`,approve:`Approuver la fin`,recover:`Récupérer la phase interrompue`,resume:`Reprendre`,cancel:`Annuler la reprise`,status:{running:`Reprise en cours…`,succeeded:`Réussi`,failed:`Échec`,blocked:`Bloqué`,paused:`En pause`,cancelled:`Annulé`,interrupted:`Interrompu`,unavailable:`Indisponible`},question:`L'architecte demande :`,answerLabel:`Votre réponse`,answerPlaceholder:`Répondez à la question ; l'architecte poursuit avec elle.`,answer:`Répondre et reprendre`},b={architect:`Lit le code et rédige la proposition, la conception, les tâches et la spec. Lecture seule.`,developer:`Implémente les tâches avec des tests. Peut modifier des fichiers et exécuter des commandes dans le bac à sable du CLI.`,reviewer:`Vérifie le résultat par rapport à la spec et aux preuves de vérification. Lecture seule.`},x={title:`Seuil de revue`,hint:`Les champs vides utilisent le seuil de Core. Les valeurs ne peuvent que le relever : score global d'au moins {{score}}, sécurité d'au moins {{security}}, autres aspects d'au moins {{aspect}}.`,minScore:`Score global minimal (par défaut {{score}})`,aspects:{type_correctness:`Exactitude des types (par défaut {{score}})`,pattern_adherence:`Respect des patrons (par défaut {{score}})`,test_coverage:`Couverture de tests (par défaut {{score}})`,security:`Sécurité (par défaut {{score}})`,architectural_alignment:`Alignement architectural (par défaut {{score}})`}},S={title:`Confiance de l'architecte`,hint:`Après une passe d'investigation autonome, une conception encore peu sûre se met en pause avec la question de l'architecte ou continue sur des hypothèses explicites.`,onLowConfidence:`En cas de faible confiance`,ask:`Demander (pause avec la question)`,proceed:`Continuer sur des hypothèses explicites`},C={title:e,description:t,loading:n,loadFailed:r,retry:i,enabled:a,enableHint:o,unavailable:s,save:c,saving:l,saved:u,saveFailed:d,approvalBeforeArchive:f,providers:p,cliNames:m,roles:h,agents:g,limits:_,verification:v,runs:y,roleHints:b,review:x,architect:S};export{g as agents,f as approvalBeforeArchive,S as architect,m as cliNames,C as default,t as description,o as enableHint,a as enabled,_ as limits,r as loadFailed,n as loading,p as providers,i as retry,x as review,b as roleHints,h as roles,y as runs,c as save,d as saveFailed,u as saved,l as saving,e as title,s as unavailable,v as verification};