specrails-desktop 2.64.2 → 2.65.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.
- package/README.md +1 -1
- package/cli/dist/status.js +3 -0
- package/client/dist/assets/ActivityFeedPage-ByVKYII-.js +1 -0
- package/client/dist/assets/AgentBrowserCapture-BGUTjhUr.js +1 -0
- package/client/dist/assets/AgentModeAnalyticsPane-CtOLDDjB.js +2 -0
- package/client/dist/assets/AgentModeCodePane-CDhUKarT.js +2 -0
- package/client/dist/assets/AgentModeJobsPane-BAa_oEHJ.js +1 -0
- package/client/dist/assets/AgentsPage-D32hG4Ve.js +120 -0
- package/client/dist/assets/AnalyticsPage-BU50zeG6.js +5 -0
- package/client/dist/assets/BudgetCard-DP_jxwaD.js +55 -0
- package/client/dist/assets/CodePage-jiYnKGpp.js +3 -0
- package/client/dist/assets/CostValue-Bvn8674q.js +1 -0
- package/client/dist/assets/DesktopAnalyticsPage-CF__H4e3.js +1 -0
- package/client/dist/assets/DocView-RrAp70zp.js +11 -0
- package/client/dist/assets/DocsDialog-DkqHU-JF.js +1 -0
- package/client/dist/assets/DocsPage-C6X089zC.js +1 -0
- package/client/dist/assets/ExportDropdown-C5-o8y3K.js +1 -0
- package/client/dist/assets/HelpHint-Crf9_uoR.js +1 -0
- package/client/dist/assets/IntegrationsPage-aflU3KHK.js +1 -0
- package/client/dist/assets/InteractiveJobComposer-CEMMhyyJ.js +19 -0
- package/client/dist/assets/JobDetailModal-BVJ6hyRs.js +1 -0
- package/client/dist/assets/JobDetailPage-DHzBUmox.js +1 -0
- package/client/dist/assets/JobsPage-o-LAqkwC.js +1 -0
- package/client/dist/assets/LoopBuilderPage-DbSVmXBM.js +1 -0
- package/client/dist/assets/LoopPreviewModal-DbJcVyN1.js +1 -0
- package/client/dist/assets/{LoopWindowSurface-DE0v2K1p.js → LoopWindowSurface-Co1ZK26V.js} +1 -1
- package/client/dist/assets/LoopsPage-C4lgkPXB.js +2 -0
- package/client/dist/assets/MinimizedChatsContext-742ypO8n.js +1 -0
- package/client/dist/assets/PluginsPage-Acks9ges.js +2 -0
- package/client/dist/assets/RailTrack-BfLmBzBh.js +1 -0
- package/client/dist/assets/{RepositoryScopeSelector-2eSqR9WK.js → RepositoryScopeSelector-DcxbKI9w.js} +1 -1
- package/client/dist/assets/ReviewPacketPage-CAVSIOAJ.js +7 -0
- package/client/dist/assets/TemplatePreviewModal-C23SYCTm.js +1 -0
- package/client/dist/assets/TicketDetailModalContext-B-Gtm6Ob.js +23 -0
- package/client/dist/assets/Trans-C6J0cLyh.js +1 -0
- package/client/dist/assets/a11y-prefs-BqoP5goK.js +1 -0
- package/client/dist/assets/activity-BBWfoUOG.js +1 -0
- package/client/dist/assets/activity-BM_skann.js +1 -0
- package/client/dist/assets/activity-Cevl82ke.js +1 -0
- package/client/dist/assets/activity-CmACk5W5.js +1 -0
- package/client/dist/assets/activity-D9LBw3PQ.js +1 -0
- package/client/dist/assets/activity-Dspbb9lz.js +1 -0
- package/client/dist/assets/activity-FPjYIjv9.js +1 -0
- package/client/dist/assets/activity-nLCKMUKt.js +1 -0
- package/client/dist/assets/addspec-BI4jDMhA.js +1 -0
- package/client/dist/assets/addspec-BldTv7Tl.js +1 -0
- package/client/dist/assets/addspec-Cdq-2EcC.js +1 -0
- package/client/dist/assets/addspec-DH5M16BQ.js +1 -0
- package/client/dist/assets/addspec-DOFo9pD5.js +1 -0
- package/client/dist/assets/addspec-DPkwhdmL.js +1 -0
- package/client/dist/assets/addspec-Dzy12Pv3.js +1 -0
- package/client/dist/assets/addspec-skTs6EEW.js +1 -0
- package/client/dist/assets/agent-B_UEUy7Y.js +1 -0
- package/client/dist/assets/agent-BarjlhTA.js +1 -0
- package/client/dist/assets/agent-BfqIITo5.js +1 -0
- package/client/dist/assets/agent-Bt9a7Kyj.js +1 -0
- package/client/dist/assets/agent-C3689RwP.js +1 -0
- package/client/dist/assets/agent-CrmboTAi.js +1 -0
- package/client/dist/assets/agent-DcsoTnuE.js +1 -0
- package/client/dist/assets/agent-GDZoYwd4.js +1 -0
- package/client/dist/assets/{agentRuntime-es2ymSl-.js → agentRuntime-BYH70bKY.js} +1 -1
- package/client/dist/assets/agentRuntime-BijLh8I9.js +1 -0
- package/client/dist/assets/{agentRuntime-BzuwQQgn.js → agentRuntime-BvyuETPe.js} +1 -1
- package/client/dist/assets/{agentRuntime-BDvbJMmS.js → agentRuntime-C2WI6HQh.js} +1 -1
- package/client/dist/assets/{agentRuntime-BKJfv5YD.js → agentRuntime-CZPIlQsr.js} +1 -1
- package/client/dist/assets/{agentRuntime-DiCldqGG.js → agentRuntime-D2dDvCyJ.js} +1 -1
- package/client/dist/assets/agentRuntime-DWZedEbn.js +1 -0
- package/client/dist/assets/agentRuntime-DkIruUNw.js +1 -0
- package/client/dist/assets/agents-35_PDKx9.js +1 -0
- package/client/dist/assets/agents-8fZnHhEQ.js +1 -0
- package/client/dist/assets/agents-Bgimtw8z.js +1 -0
- package/client/dist/assets/agents-C4P160Us.js +1 -0
- package/client/dist/assets/agents-Clg67zbp.js +1 -0
- package/client/dist/assets/agents-DJfF4o6G.js +1 -0
- package/client/dist/assets/agents-Dc9-Y5cw.js +1 -0
- package/client/dist/assets/agents-EN1Zl4YZ.js +1 -0
- package/client/dist/assets/agentstudio-Bm4-NYaG.js +1 -0
- package/client/dist/assets/agentstudio-CD1fuj2o.js +1 -0
- package/client/dist/assets/agentstudio-CQGWFSst.js +1 -0
- package/client/dist/assets/agentstudio-CqVSb65S.js +1 -0
- package/client/dist/assets/agentstudio-DIE_HjsX.js +1 -0
- package/client/dist/assets/agentstudio-D_OmQK-k.js +1 -0
- package/client/dist/assets/agentstudio-Djz9aUfb.js +1 -0
- package/client/dist/assets/agentstudio-Qa3v9o5J.js +1 -0
- package/client/dist/assets/{aiedit-DNXxq_Dr.js → aiedit-1VzLs37W.js} +1 -1
- package/client/dist/assets/{aiedit-DCjA7jLJ.js → aiedit-BNp6GSik.js} +1 -1
- package/client/dist/assets/{aiedit-BoG24nlg.js → aiedit-BOY5xRPi.js} +1 -1
- package/client/dist/assets/{aiedit-iIjz2_Qk.js → aiedit-BrqMZvbc.js} +1 -1
- package/client/dist/assets/{aiedit-CjlSRQVP.js → aiedit-CVgtl7hm.js} +1 -1
- package/client/dist/assets/{aiedit-DQ-0_pvE.js → aiedit-CrFW9Jd2.js} +1 -1
- package/client/dist/assets/{aiedit-olnv3QSt.js → aiedit-YE2lILp7.js} +1 -1
- package/client/dist/assets/{aiedit-B0KUbpB6.js → aiedit-iA_R1AVQ.js} +1 -1
- package/client/dist/assets/analytics-3w0t-4ic.js +1 -0
- package/client/dist/assets/analytics-BRi4KQD6.js +1 -0
- package/client/dist/assets/analytics-BtjAqzke.js +1 -0
- package/client/dist/assets/analytics-COSQ1h47.js +1 -0
- package/client/dist/assets/analytics-CP2HjESk.js +1 -0
- package/client/dist/assets/analytics-DY65TC62.js +1 -0
- package/client/dist/assets/analytics-Den_vvxn.js +1 -0
- package/client/dist/assets/analytics-LmBS96O8.js +1 -0
- package/client/dist/assets/api-DOGbyfTO.js +2 -0
- package/client/dist/assets/builder-BMVvSr4v.js +1 -0
- package/client/dist/assets/builder-BN-MuLZt.js +1 -0
- package/client/dist/assets/builder-BQOZi4CF.js +1 -0
- package/client/dist/assets/builder-BjUPjsyu.js +1 -0
- package/client/dist/assets/builder-BoBtN18T.js +1 -0
- package/client/dist/assets/builder-C5g5NhxL.js +1 -0
- package/client/dist/assets/builder-RUHXw3yx.js +1 -0
- package/client/dist/assets/builder-fyS_AiyC.js +1 -0
- package/client/dist/assets/button-CHPkroew.js +1 -0
- package/client/dist/assets/chat-C9L5T7KI.js +1 -0
- package/client/dist/assets/chevron-right-CwMAj0w_.js +1 -0
- package/client/dist/assets/chevron-up-BAMuP0XD.js +1 -0
- package/client/dist/assets/chunk-OB3PAWPO-BBaq6pUk.js +3 -0
- package/client/dist/assets/code-4le5IIbf.js +1 -0
- package/client/dist/assets/code-B-jCVIbm.js +1 -0
- package/client/dist/assets/code-BRfrn5ix.js +1 -0
- package/client/dist/assets/code-CC9NCrDM.js +1 -0
- package/client/dist/assets/code-CK6pm8wY.js +1 -0
- package/client/dist/assets/code-DDiOzd6c.js +1 -0
- package/client/dist/assets/code-tGifiyf5.js +1 -0
- package/client/dist/assets/code-xkn8kQTg.js +1 -0
- package/client/dist/assets/commands-Bv1QshHR.js +1 -0
- package/client/dist/assets/commands-BvxTxboW.js +1 -0
- package/client/dist/assets/commands-C5ORR0fO.js +1 -0
- package/client/dist/assets/commands-CBKMFSTV.js +1 -0
- package/client/dist/assets/commands-CFJIRsJv.js +1 -0
- package/client/dist/assets/commands-D9o3ZcXl.js +1 -0
- package/client/dist/assets/commands-DNox0Edk.js +1 -0
- package/client/dist/assets/commands-DmIUMLdV.js +1 -0
- package/client/dist/assets/common-5H4TkaoI.js +1 -0
- package/client/dist/assets/common-9S3OdPjx.js +1 -0
- package/client/dist/assets/common-BqnwIcjs.js +1 -0
- package/client/dist/assets/common-CQP3VafS.js +1 -0
- package/client/dist/assets/common-CZnAfkB2.js +1 -0
- package/client/dist/assets/common-D5sNttV4.js +1 -0
- package/client/dist/assets/common-k_qX9nlv.js +1 -0
- package/client/dist/assets/common-s4HIi9XI.js +1 -0
- package/client/dist/assets/compass-B7guwBlY.js +1 -0
- package/client/dist/assets/confirm-dialog-ChZdHL3Q.js +1 -0
- package/client/dist/assets/copy-DOPlLymH.js +1 -0
- package/client/dist/assets/core-BozBzB6Y.js +1 -0
- package/client/dist/assets/dashboard-6zGLGcEz.js +1 -0
- package/client/dist/assets/dashboard-8Gi0FBDq.js +1 -0
- package/client/dist/assets/dashboard-B7E5YrSy.js +1 -0
- package/client/dist/assets/dashboard-BhdKV8xK.js +1 -0
- package/client/dist/assets/dashboard-Bu3zzH_s.js +1 -0
- package/client/dist/assets/dashboard-Ce_6rELA.js +1 -0
- package/client/dist/assets/dashboard-DWY-oz8P.js +1 -0
- package/client/dist/assets/dashboard-gUzlWk0o.js +1 -0
- package/client/dist/assets/date-input-Cdlr8kHz.js +1 -0
- package/client/dist/assets/dialog-C23lB2iP.js +5 -0
- package/client/dist/assets/dist-Di-oOFkX.js +1 -0
- package/client/dist/assets/dist-js-CBmS6MsJ.js +1 -0
- package/client/dist/assets/{dist-js-Rlh4FLH5.js → dist-js-DaJmKapi.js} +1 -1
- package/client/dist/assets/dropdown-menu-Bfp2CK6H.js +1 -0
- package/client/dist/assets/empty-state-D5w9OWj-.js +1 -0
- package/client/dist/assets/es2015-DfnECntk.js +41 -0
- package/client/dist/assets/esm-BKF6CE7v.js +1 -0
- package/client/dist/assets/event-BEnMLqAi.js +1 -0
- package/client/dist/assets/explore--NOz9LCN.js +1 -0
- package/client/dist/assets/explore-B2ulH6dO.js +1 -0
- package/client/dist/assets/explore-BD-QiLdg.js +1 -0
- package/client/dist/assets/explore-BOqd4_1j.js +1 -0
- package/client/dist/assets/explore-Be_Zh5zu.js +1 -0
- package/client/dist/assets/explore-CLjzPSKo.js +1 -0
- package/client/dist/assets/explore-D_-vHm29.js +1 -0
- package/client/dist/assets/explore-yEQTF6ro.js +1 -0
- package/client/dist/assets/file-text-CNXzL3wj.js +1 -0
- package/client/dist/assets/format-BODoFIw6.js +1 -0
- package/client/dist/assets/formatDistanceToNow-DLMIOS0N.js +1 -0
- package/client/dist/assets/getTimezoneOffsetInMilliseconds-O61feXch.js +1 -0
- package/client/dist/assets/git-compare-arrows-Cu6tICCq.js +1 -0
- package/client/dist/assets/humanise-command-CB4ybLwq.js +1 -0
- package/client/dist/assets/inbox-BLZ8cm6_.js +1 -0
- package/client/dist/assets/inbox-BQ3VmNYY.js +1 -0
- package/client/dist/assets/inbox-BdcXWCuT.js +1 -0
- package/client/dist/assets/inbox-CF1PHjns.js +1 -0
- package/client/dist/assets/inbox-CFNPDhso.js +1 -0
- package/client/dist/assets/inbox-DIttK_NW.js +1 -0
- package/client/dist/assets/inbox-Dfdv1Ykl.js +1 -0
- package/client/dist/assets/inbox-JS1inmeO.js +1 -0
- package/client/dist/assets/index-4UWY7Xyz.css +2 -0
- package/client/dist/assets/index-DHzB0T26.js +120 -0
- package/client/dist/assets/integrations-BcKgzgPD.js +1 -0
- package/client/dist/assets/integrations-BmX_XyJq.js +1 -0
- package/client/dist/assets/integrations-CHpwMjlY.js +1 -0
- package/client/dist/assets/integrations-CT3kr8e-.js +1 -0
- package/client/dist/assets/integrations-C_5XAkgz.js +1 -0
- package/client/dist/assets/integrations-Ct9zLX7N.js +1 -0
- package/client/dist/assets/integrations-DEYemxUv.js +1 -0
- package/client/dist/assets/integrations-DWvsB_WB.js +1 -0
- package/client/dist/assets/{jira-Cq6yvN4q.js → jira-B_ERkFRv.js} +1 -1
- package/client/dist/assets/jira-Bn-A5lwD.js +1 -0
- package/client/dist/assets/jira-C71Ybnhp.js +1 -0
- package/client/dist/assets/jira-CkwjeJz6.js +1 -0
- package/client/dist/assets/jira-D9pSLXjI.js +1 -0
- package/client/dist/assets/jira-DBRS_lcp.js +1 -0
- package/client/dist/assets/jira-DHS6CsKh.js +1 -0
- package/client/dist/assets/jira-MInHRUb1.js +1 -0
- package/client/dist/assets/jira-api-DHme7Upx.js +1 -0
- package/client/dist/assets/jobs-BMLTDo63.js +1 -0
- package/client/dist/assets/jobs-BO8q4Mi1.js +1 -0
- package/client/dist/assets/jobs-Ck8uOWMM.js +1 -0
- package/client/dist/assets/jobs-CyFfPCpg.js +1 -0
- package/client/dist/assets/jobs-DT5s4fZ6.js +1 -0
- package/client/dist/assets/jobs-DZAgVPcD.js +1 -0
- package/client/dist/assets/jobs-b5gPYaKr.js +1 -0
- package/client/dist/assets/jobs-xsZK1440.js +1 -0
- package/client/dist/assets/launch-forecast-BTa-p3RP.js +1 -0
- package/client/dist/assets/{loop-layout-DtxX27Jz.css → loop-layout-DLioOiRN.css} +1 -1
- package/client/dist/assets/loop-layout-Sl9cfTvs.js +7 -0
- package/client/dist/assets/loops-BEEOVJDR.js +1 -0
- package/client/dist/assets/loops-BcrQ2vk7.js +1 -0
- package/client/dist/assets/loops-BjWxzJIZ.js +1 -0
- package/client/dist/assets/loops-BogV595N.js +1 -0
- package/client/dist/assets/loops-CU0BLZiz.js +1 -0
- package/client/dist/assets/loops-CrNBgi1G.js +1 -0
- package/client/dist/assets/loops-CwalwS_i.js +1 -0
- package/client/dist/assets/loops-_TDVN-fX.js +1 -0
- package/client/dist/assets/mcp-BNs8gxoL.js +1 -0
- package/client/dist/assets/mcp-BvRh_xO5.js +1 -0
- package/client/dist/assets/mcp-C2F1pghi.js +1 -0
- package/client/dist/assets/mcp-D9RLKAs2.js +1 -0
- package/client/dist/assets/mcp-DAghcsR0.js +1 -0
- package/client/dist/assets/mcp-DWWAPi1G.js +1 -0
- package/client/dist/assets/mcp-DbGSFC3f.js +1 -0
- package/client/dist/assets/mcp-FelCicrv.js +1 -0
- package/client/dist/assets/narration-C3NBkAR4.js +1 -0
- package/client/dist/assets/narration-CkoJq-Lf.js +1 -0
- package/client/dist/assets/narration-Cr0NeW9K.js +1 -0
- package/client/dist/assets/narration-DJUXOs-W.js +1 -0
- package/client/dist/assets/narration-DgL8TMvN.js +1 -0
- package/client/dist/assets/narration-DjBafgv0.js +1 -0
- package/client/dist/assets/narration-Dle6Iv0c.js +1 -0
- package/client/dist/assets/narration-MYlfktga.js +1 -0
- package/client/dist/assets/nav-BSQ8KW1c.js +1 -0
- package/client/dist/assets/nav-BauVof8Z.js +1 -0
- package/client/dist/assets/nav-BfOAH1se.js +1 -0
- package/client/dist/assets/nav-D3bOsipX.js +1 -0
- package/client/dist/assets/nav-DOMMhlLx.js +1 -0
- package/client/dist/assets/nav-DPzVlgZU.js +1 -0
- package/client/dist/assets/nav-DZJbFbah.js +1 -0
- package/client/dist/assets/nav-D_5aojd2.js +1 -0
- package/client/dist/assets/notify-error-BsWANx1T.js +1 -0
- package/client/dist/assets/onboarding-BdZQnNm3.js +1 -0
- package/client/dist/assets/onboarding-CJQEv1vp.js +1 -0
- package/client/dist/assets/onboarding-CWJGYUW3.js +1 -0
- package/client/dist/assets/onboarding-ChfYN7dA.js +1 -0
- package/client/dist/assets/onboarding-CjvDUR3V.js +1 -0
- package/client/dist/assets/onboarding-I6vS-zTB.js +1 -0
- package/client/dist/assets/onboarding-dgC_9dTB.js +1 -0
- package/client/dist/assets/onboarding-mlXSyKzX.js +1 -0
- package/client/dist/assets/origin-03nTuaOb.js +1 -0
- package/client/dist/assets/packet-BjpyRnZr.js +1 -0
- package/client/dist/assets/packet-BwgG5mBt.js +1 -0
- package/client/dist/assets/packet-C3eAUFkV.js +1 -0
- package/client/dist/assets/packet-C8wZuSld.js +1 -0
- package/client/dist/assets/packet-CNXEy_85.js +1 -0
- package/client/dist/assets/packet-DsV5Aa_8.js +1 -0
- package/client/dist/assets/packet-aasskOE7.js +1 -0
- package/client/dist/assets/packet-phxCc2gJ.js +1 -0
- package/client/dist/assets/page-header-BStSHkP8.js +1 -0
- package/client/dist/assets/project-repositories-DJPeAVBK.js +1 -0
- package/client/dist/assets/{provider-capabilities-lePfeT_Y.js → provider-capabilities-DtwcTme4.js} +1 -1
- package/client/dist/assets/recovery-BPDOsC92.js +1 -0
- package/client/dist/assets/recovery-BluNHoXM.js +1 -0
- package/client/dist/assets/recovery-CRvEmB0C.js +1 -0
- package/client/dist/assets/recovery-CeIoRnkR.js +1 -0
- package/client/dist/assets/recovery-DHCo8KGi.js +1 -0
- package/client/dist/assets/recovery-OxAIpbBF.js +1 -0
- package/client/dist/assets/recovery-XXexYGOJ.js +1 -0
- package/client/dist/assets/recovery-pITlc--v.js +1 -0
- package/client/dist/assets/refresh-cw-DfyTkbsf.js +1 -0
- package/client/dist/assets/select-xA3pSmqE.js +1 -0
- package/client/dist/assets/settings--yzDbX9r.js +1 -0
- package/client/dist/assets/settings-5_heTv8s.js +1 -0
- package/client/dist/assets/settings-BSf27MDg.js +1 -0
- package/client/dist/assets/settings-BSj6FakR.js +1 -0
- package/client/dist/assets/settings-BZDo_8Nn.js +1 -0
- package/client/dist/assets/settings-BdWgmNc0.js +1 -0
- package/client/dist/assets/settings-DRouxKqb.js +1 -0
- package/client/dist/assets/settings-DnWFoY-F.js +1 -0
- package/client/dist/assets/setup-BJWy62ri.js +1 -0
- package/client/dist/assets/setup-BgKOIuzc.js +1 -0
- package/client/dist/assets/setup-BvVIyUlz.js +1 -0
- package/client/dist/assets/setup-BxCk2pe1.js +1 -0
- package/client/dist/assets/setup-C-xQTL7R.js +1 -0
- package/client/dist/assets/setup-CbaVoiwV.js +1 -0
- package/client/dist/assets/setup-DxTBkX3P.js +1 -0
- package/client/dist/assets/setup-oGoVAzOD.js +1 -0
- package/client/dist/assets/specs-7tAb4IKr.js +1 -0
- package/client/dist/assets/specs-BUcY4s5v.js +1 -0
- package/client/dist/assets/specs-Bk5LeBAA.js +1 -0
- package/client/dist/assets/specs-CAA4Lrlg.js +1 -0
- package/client/dist/assets/specs-CS091AnA.js +1 -0
- package/client/dist/assets/specs-DJ6gmFcK.js +1 -0
- package/client/dist/assets/specs-GfCcrBSC.js +1 -0
- package/client/dist/assets/specs-xQgyc7WL.js +1 -0
- package/client/dist/assets/spending-CVH8VREb.js +1 -0
- package/client/dist/assets/square-Co6h5vZg.js +1 -0
- package/client/dist/assets/tauri-shell-43ixPGfa.js +2 -0
- package/client/dist/assets/terminal-0v9sBylD.js +1 -0
- package/client/dist/assets/terminal-AbUAmCxE.js +1 -0
- package/client/dist/assets/terminal-BJayIbIP.js +1 -0
- package/client/dist/assets/terminal-C2RUlXyi.js +1 -0
- package/client/dist/assets/terminal-CMmSb_Nj.js +1 -0
- package/client/dist/assets/terminal-DKWjj7HJ.js +1 -0
- package/client/dist/assets/terminal-KlFu7_pV.js +1 -0
- package/client/dist/assets/terminal-i99yqFvm.js +1 -0
- package/client/dist/assets/tickets-846Oq3i3.js +1 -0
- package/client/dist/assets/tickets-B5LJTe_b.js +1 -0
- package/client/dist/assets/tickets-Bfo2GGmH.js +1 -0
- package/client/dist/assets/tickets-BhdZ1yY2.js +1 -0
- package/client/dist/assets/tickets-CgjWJHAW.js +1 -0
- package/client/dist/assets/tickets-Ct9DbDUR.js +1 -0
- package/client/dist/assets/tickets-rptLEJB1.js +1 -0
- package/client/dist/assets/tickets-xQ6DpYdu.js +1 -0
- package/client/dist/assets/trending-up-BGvb4zZt.js +1 -0
- package/client/dist/assets/undo-6zuS4-sL.js +1 -0
- package/client/dist/assets/undo-BeM4gDOP.js +1 -0
- package/client/dist/assets/undo-BeppX8xS.js +1 -0
- package/client/dist/assets/undo-BqvNZ5MG.js +1 -0
- package/client/dist/assets/undo-BzwEPf_k.js +1 -0
- package/client/dist/assets/undo-CJ9Cu1NN.js +1 -0
- package/client/dist/assets/undo-ds8nMFbX.js +1 -0
- package/client/dist/assets/undo-x_gA-knG.js +1 -0
- package/client/dist/assets/useDesktop-BuOp2-MR.js +1 -0
- package/client/dist/assets/useRuntimeRuns-BRS6ncnO.js +1 -0
- package/client/dist/assets/utils-ELimjS2Y.js +1 -0
- package/client/dist/assets/wrench-Br2n1Lxd.js +1 -0
- package/client/dist/index.html +75 -60
- package/docs/ci-cd.md +29 -1
- package/docs/cli.md +10 -31
- package/docs/codex.md +1 -1
- package/docs/creating-specs.md +15 -12
- package/docs/customizing.md +16 -13
- package/docs/getting-started.md +12 -11
- package/docs/guide/de/agents/1-meet-the-agents.md +1 -1
- package/docs/guide/de/getting-started/2-installing-and-first-run.md +2 -0
- package/docs/guide/de/getting-started/3-try-the-sample-project.md +35 -0
- package/docs/guide/de/getting-started/{4-the-dashboard-tour.md → 5-the-dashboard-tour.md} +7 -3
- package/docs/guide/de/getting-started/6-universal-search.md +34 -0
- package/docs/guide/de/insights/1-analytics-and-cost-tracking.md +20 -6
- package/docs/guide/de/insights/2-the-integrated-terminal.md +1 -1
- package/docs/guide/de/insights/3-code-explorer.md +1 -1
- package/docs/guide/de/integrations/1-ai-providers.md +1 -1
- package/docs/guide/de/integrations/2-plugins.md +1 -1
- package/docs/guide/de/integrations/3-jira-integration.md +3 -3
- package/docs/guide/de/integrations/4-mobile-companion.md +1 -1
- package/docs/guide/de/integrations/5-mcp-server.md +1 -1
- package/docs/guide/de/integrations/6-agent-chat.md +12 -5
- package/docs/guide/de/integrations/8-flow-mode.md +69 -0
- package/docs/guide/de/pipeline/1-rails-and-jobs.md +21 -1
- package/docs/guide/de/pipeline/2-the-job-detail-view.md +12 -0
- package/docs/guide/de/pipeline/3-reviewing-a-delivery.md +43 -0
- package/docs/guide/de/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/de/pipeline/5-the-loop-builder.md +1 -1
- package/docs/guide/de/settings/1-themes.md +1 -1
- package/docs/guide/de/settings/3-pipeline-telemetry-and-diagnostics.md +2 -2
- package/docs/guide/de/settings/5-project-environment.md +1 -1
- package/docs/guide/de/settings/6-updates.md +24 -0
- package/docs/guide/de/settings/7-existing-projects.md +33 -0
- package/docs/guide/de/settings/8-accessibility.md +23 -0
- package/docs/guide/de/specs/1-specs-and-the-backlog.md +41 -3
- package/docs/guide/de/specs/2-add-spec-quick-mode.md +1 -1
- package/docs/guide/de/specs/3-add-spec-explore-mode.md +1 -1
- package/docs/guide/en/agents/1-meet-the-agents.md +1 -1
- package/docs/guide/en/getting-started/1-what-is-specrails.md +1 -1
- package/docs/guide/en/getting-started/2-installing-and-first-run.md +2 -0
- package/docs/guide/en/getting-started/3-try-the-sample-project.md +35 -0
- package/docs/guide/en/getting-started/5-the-dashboard-tour.md +52 -0
- package/docs/guide/en/getting-started/6-universal-search.md +34 -0
- package/docs/guide/en/insights/1-analytics-and-cost-tracking.md +24 -10
- package/docs/guide/en/insights/2-the-integrated-terminal.md +1 -1
- package/docs/guide/en/insights/3-code-explorer.md +5 -5
- package/docs/guide/en/integrations/1-ai-providers.md +1 -1
- package/docs/guide/en/integrations/2-plugins.md +1 -1
- package/docs/guide/en/integrations/3-jira-integration.md +4 -4
- package/docs/guide/en/integrations/4-mobile-companion.md +1 -1
- package/docs/guide/en/integrations/5-mcp-server.md +4 -4
- package/docs/guide/en/integrations/6-agent-chat.md +12 -5
- package/docs/guide/en/integrations/8-flow-mode.md +69 -0
- package/docs/guide/en/pipeline/1-rails-and-jobs.md +22 -3
- package/docs/guide/en/pipeline/2-the-job-detail-view.md +19 -7
- package/docs/guide/en/pipeline/3-reviewing-a-delivery.md +43 -0
- package/docs/guide/en/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/en/pipeline/5-the-loop-builder.md +2 -2
- package/docs/guide/en/settings/1-themes.md +1 -1
- package/docs/guide/en/settings/3-pipeline-telemetry-and-diagnostics.md +2 -2
- package/docs/guide/en/settings/5-project-environment.md +1 -1
- package/docs/guide/en/settings/6-updates.md +24 -0
- package/docs/guide/en/settings/7-existing-projects.md +33 -0
- package/docs/guide/en/settings/8-accessibility.md +23 -0
- package/docs/guide/en/specs/1-specs-and-the-backlog.md +42 -6
- package/docs/guide/en/specs/2-add-spec-quick-mode.md +1 -1
- package/docs/guide/en/specs/3-add-spec-explore-mode.md +2 -2
- package/docs/guide/es/agents/1-meet-the-agents.md +1 -1
- package/docs/guide/es/agents/2-profiles-and-the-balanced-default.md +1 -1
- package/docs/guide/es/agents/3-customizing-models-per-agent.md +2 -2
- package/docs/guide/es/agents/4-custom-agents-catalog.md +1 -1
- package/docs/guide/es/getting-started/1-what-is-specrails.md +3 -3
- package/docs/guide/es/getting-started/2-installing-and-first-run.md +2 -0
- package/docs/guide/es/getting-started/3-try-the-sample-project.md +35 -0
- package/docs/guide/es/getting-started/5-the-dashboard-tour.md +52 -0
- package/docs/guide/es/getting-started/6-universal-search.md +34 -0
- package/docs/guide/es/insights/1-analytics-and-cost-tracking.md +26 -12
- package/docs/guide/es/insights/2-the-integrated-terminal.md +1 -1
- package/docs/guide/es/insights/3-code-explorer.md +5 -5
- package/docs/guide/es/integrations/1-ai-providers.md +1 -1
- package/docs/guide/es/integrations/2-plugins.md +1 -1
- package/docs/guide/es/integrations/3-jira-integration.md +4 -4
- package/docs/guide/es/integrations/4-mobile-companion.md +1 -1
- package/docs/guide/es/integrations/5-mcp-server.md +4 -4
- package/docs/guide/es/integrations/6-agent-chat.md +14 -7
- package/docs/guide/es/integrations/7-local-engines.md +1 -1
- package/docs/guide/es/integrations/8-flow-mode.md +69 -0
- package/docs/guide/es/pipeline/1-rails-and-jobs.md +33 -13
- package/docs/guide/es/pipeline/2-the-job-detail-view.md +38 -26
- package/docs/guide/es/pipeline/3-reviewing-a-delivery.md +43 -0
- package/docs/guide/es/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/es/pipeline/5-the-loop-builder.md +4 -4
- package/docs/guide/es/settings/1-themes.md +1 -1
- package/docs/guide/es/settings/3-pipeline-telemetry-and-diagnostics.md +10 -10
- package/docs/guide/es/settings/5-project-environment.md +1 -1
- package/docs/guide/es/settings/6-updates.md +24 -0
- package/docs/guide/es/settings/7-existing-projects.md +33 -0
- package/docs/guide/es/settings/8-accessibility.md +23 -0
- package/docs/guide/es/specs/1-specs-and-the-backlog.md +43 -7
- package/docs/guide/es/specs/2-add-spec-quick-mode.md +1 -1
- package/docs/guide/es/specs/3-add-spec-explore-mode.md +3 -3
- package/docs/guide/fr/agents/1-meet-the-agents.md +1 -1
- package/docs/guide/fr/getting-started/2-installing-and-first-run.md +2 -0
- package/docs/guide/fr/getting-started/3-try-the-sample-project.md +35 -0
- package/docs/guide/fr/getting-started/{4-the-dashboard-tour.md → 5-the-dashboard-tour.md} +7 -3
- package/docs/guide/fr/getting-started/6-universal-search.md +34 -0
- package/docs/guide/fr/insights/1-analytics-and-cost-tracking.md +18 -4
- package/docs/guide/fr/insights/2-the-integrated-terminal.md +1 -1
- package/docs/guide/fr/insights/3-code-explorer.md +1 -1
- package/docs/guide/fr/integrations/1-ai-providers.md +1 -1
- package/docs/guide/fr/integrations/2-plugins.md +1 -1
- package/docs/guide/fr/integrations/3-jira-integration.md +3 -3
- package/docs/guide/fr/integrations/4-mobile-companion.md +1 -1
- package/docs/guide/fr/integrations/5-mcp-server.md +1 -1
- package/docs/guide/fr/integrations/6-agent-chat.md +11 -4
- package/docs/guide/fr/integrations/8-flow-mode.md +69 -0
- package/docs/guide/fr/pipeline/1-rails-and-jobs.md +21 -1
- package/docs/guide/fr/pipeline/2-the-job-detail-view.md +12 -0
- package/docs/guide/fr/pipeline/3-reviewing-a-delivery.md +43 -0
- package/docs/guide/fr/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/fr/pipeline/5-the-loop-builder.md +1 -1
- package/docs/guide/fr/settings/1-themes.md +1 -1
- package/docs/guide/fr/settings/3-pipeline-telemetry-and-diagnostics.md +2 -2
- package/docs/guide/fr/settings/5-project-environment.md +1 -1
- package/docs/guide/fr/settings/6-updates.md +24 -0
- package/docs/guide/fr/settings/7-existing-projects.md +33 -0
- package/docs/guide/fr/settings/8-accessibility.md +23 -0
- package/docs/guide/fr/specs/1-specs-and-the-backlog.md +41 -3
- package/docs/guide/fr/specs/2-add-spec-quick-mode.md +1 -1
- package/docs/guide/fr/specs/3-add-spec-explore-mode.md +1 -1
- package/docs/guide/it/agents/1-meet-the-agents.md +1 -1
- package/docs/guide/it/getting-started/2-installing-and-first-run.md +2 -0
- package/docs/guide/it/getting-started/3-try-the-sample-project.md +35 -0
- package/docs/guide/it/getting-started/{4-the-dashboard-tour.md → 5-the-dashboard-tour.md} +7 -3
- package/docs/guide/it/getting-started/6-universal-search.md +34 -0
- package/docs/guide/it/insights/1-analytics-and-cost-tracking.md +18 -4
- package/docs/guide/it/insights/2-the-integrated-terminal.md +1 -1
- package/docs/guide/it/insights/3-code-explorer.md +1 -1
- package/docs/guide/it/integrations/1-ai-providers.md +1 -1
- package/docs/guide/it/integrations/2-plugins.md +1 -1
- package/docs/guide/it/integrations/3-jira-integration.md +3 -3
- package/docs/guide/it/integrations/4-mobile-companion.md +1 -1
- package/docs/guide/it/integrations/5-mcp-server.md +1 -1
- package/docs/guide/it/integrations/6-agent-chat.md +11 -4
- package/docs/guide/it/integrations/8-flow-mode.md +69 -0
- package/docs/guide/it/pipeline/1-rails-and-jobs.md +21 -1
- package/docs/guide/it/pipeline/2-the-job-detail-view.md +12 -0
- package/docs/guide/it/pipeline/3-reviewing-a-delivery.md +43 -0
- package/docs/guide/it/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/it/pipeline/5-the-loop-builder.md +1 -1
- package/docs/guide/it/settings/1-themes.md +1 -1
- package/docs/guide/it/settings/3-pipeline-telemetry-and-diagnostics.md +2 -2
- package/docs/guide/it/settings/5-project-environment.md +1 -1
- package/docs/guide/it/settings/6-updates.md +24 -0
- package/docs/guide/it/settings/7-existing-projects.md +33 -0
- package/docs/guide/it/settings/8-accessibility.md +23 -0
- package/docs/guide/it/specs/1-specs-and-the-backlog.md +41 -3
- package/docs/guide/it/specs/2-add-spec-quick-mode.md +1 -1
- package/docs/guide/it/specs/3-add-spec-explore-mode.md +1 -1
- package/docs/guide/ja/agents/1-meet-the-agents.md +1 -1
- package/docs/guide/ja/getting-started/2-installing-and-first-run.md +2 -0
- package/docs/guide/ja/getting-started/3-try-the-sample-project.md +35 -0
- package/docs/guide/ja/getting-started/{4-the-dashboard-tour.md → 5-the-dashboard-tour.md} +7 -3
- package/docs/guide/ja/getting-started/6-universal-search.md +34 -0
- package/docs/guide/ja/insights/1-analytics-and-cost-tracking.md +18 -4
- package/docs/guide/ja/insights/2-the-integrated-terminal.md +1 -1
- package/docs/guide/ja/insights/3-code-explorer.md +1 -1
- package/docs/guide/ja/integrations/1-ai-providers.md +1 -1
- package/docs/guide/ja/integrations/2-plugins.md +1 -1
- package/docs/guide/ja/integrations/3-jira-integration.md +3 -3
- package/docs/guide/ja/integrations/4-mobile-companion.md +1 -1
- package/docs/guide/ja/integrations/5-mcp-server.md +1 -1
- package/docs/guide/ja/integrations/6-agent-chat.md +11 -4
- package/docs/guide/ja/integrations/8-flow-mode.md +69 -0
- package/docs/guide/ja/pipeline/1-rails-and-jobs.md +21 -1
- package/docs/guide/ja/pipeline/2-the-job-detail-view.md +12 -0
- package/docs/guide/ja/pipeline/3-reviewing-a-delivery.md +43 -0
- package/docs/guide/ja/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/ja/pipeline/5-the-loop-builder.md +1 -1
- package/docs/guide/ja/settings/1-themes.md +1 -1
- package/docs/guide/ja/settings/3-pipeline-telemetry-and-diagnostics.md +2 -2
- package/docs/guide/ja/settings/5-project-environment.md +1 -1
- package/docs/guide/ja/settings/6-updates.md +24 -0
- package/docs/guide/ja/settings/7-existing-projects.md +33 -0
- package/docs/guide/ja/settings/8-accessibility.md +23 -0
- package/docs/guide/ja/specs/1-specs-and-the-backlog.md +41 -3
- package/docs/guide/ja/specs/2-add-spec-quick-mode.md +1 -1
- package/docs/guide/ja/specs/3-add-spec-explore-mode.md +1 -1
- package/docs/guide/pt/agents/1-meet-the-agents.md +1 -1
- package/docs/guide/pt/getting-started/2-installing-and-first-run.md +2 -0
- package/docs/guide/pt/getting-started/3-try-the-sample-project.md +35 -0
- package/docs/guide/pt/getting-started/{4-the-dashboard-tour.md → 5-the-dashboard-tour.md} +7 -3
- package/docs/guide/pt/getting-started/6-universal-search.md +34 -0
- package/docs/guide/pt/insights/1-analytics-and-cost-tracking.md +18 -4
- package/docs/guide/pt/insights/2-the-integrated-terminal.md +1 -1
- package/docs/guide/pt/insights/3-code-explorer.md +1 -1
- package/docs/guide/pt/integrations/1-ai-providers.md +1 -1
- package/docs/guide/pt/integrations/2-plugins.md +1 -1
- package/docs/guide/pt/integrations/3-jira-integration.md +3 -3
- package/docs/guide/pt/integrations/4-mobile-companion.md +1 -1
- package/docs/guide/pt/integrations/5-mcp-server.md +1 -1
- package/docs/guide/pt/integrations/6-agent-chat.md +12 -5
- package/docs/guide/pt/integrations/8-flow-mode.md +69 -0
- package/docs/guide/pt/pipeline/1-rails-and-jobs.md +21 -1
- package/docs/guide/pt/pipeline/2-the-job-detail-view.md +12 -0
- package/docs/guide/pt/pipeline/3-reviewing-a-delivery.md +43 -0
- package/docs/guide/pt/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/pt/pipeline/5-the-loop-builder.md +1 -1
- package/docs/guide/pt/settings/1-themes.md +1 -1
- package/docs/guide/pt/settings/3-pipeline-telemetry-and-diagnostics.md +2 -2
- package/docs/guide/pt/settings/5-project-environment.md +1 -1
- package/docs/guide/pt/settings/6-updates.md +24 -0
- package/docs/guide/pt/settings/7-existing-projects.md +33 -0
- package/docs/guide/pt/settings/8-accessibility.md +23 -0
- package/docs/guide/pt/specs/1-specs-and-the-backlog.md +41 -3
- package/docs/guide/pt/specs/2-add-spec-quick-mode.md +1 -1
- package/docs/guide/pt/specs/3-add-spec-explore-mode.md +1 -1
- package/docs/guide/zh/agents/1-meet-the-agents.md +1 -1
- package/docs/guide/zh/getting-started/2-installing-and-first-run.md +2 -0
- package/docs/guide/zh/getting-started/3-try-the-sample-project.md +35 -0
- package/docs/guide/zh/getting-started/{4-the-dashboard-tour.md → 5-the-dashboard-tour.md} +7 -3
- package/docs/guide/zh/getting-started/6-universal-search.md +34 -0
- package/docs/guide/zh/insights/1-analytics-and-cost-tracking.md +18 -4
- package/docs/guide/zh/insights/2-the-integrated-terminal.md +1 -1
- package/docs/guide/zh/insights/3-code-explorer.md +1 -1
- package/docs/guide/zh/integrations/1-ai-providers.md +1 -1
- package/docs/guide/zh/integrations/2-plugins.md +1 -1
- package/docs/guide/zh/integrations/3-jira-integration.md +3 -3
- package/docs/guide/zh/integrations/4-mobile-companion.md +1 -1
- package/docs/guide/zh/integrations/5-mcp-server.md +1 -1
- package/docs/guide/zh/integrations/6-agent-chat.md +11 -4
- package/docs/guide/zh/integrations/8-flow-mode.md +69 -0
- package/docs/guide/zh/pipeline/1-rails-and-jobs.md +21 -1
- package/docs/guide/zh/pipeline/2-the-job-detail-view.md +12 -0
- package/docs/guide/zh/pipeline/3-reviewing-a-delivery.md +43 -0
- package/docs/guide/zh/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/zh/pipeline/5-the-loop-builder.md +1 -1
- package/docs/guide/zh/settings/1-themes.md +1 -1
- package/docs/guide/zh/settings/3-pipeline-telemetry-and-diagnostics.md +2 -2
- package/docs/guide/zh/settings/5-project-environment.md +1 -1
- package/docs/guide/zh/settings/6-updates.md +24 -0
- package/docs/guide/zh/settings/7-existing-projects.md +33 -0
- package/docs/guide/zh/settings/8-accessibility.md +23 -0
- package/docs/guide/zh/specs/1-specs-and-the-backlog.md +41 -3
- package/docs/guide/zh/specs/2-add-spec-quick-mode.md +1 -1
- package/docs/guide/zh/specs/3-add-spec-explore-mode.md +1 -1
- package/docs/internals/README.md +8 -0
- package/docs/internals/adding-a-provider.md +19 -2
- package/docs/internals/agent-actions-audit.md +101 -0
- package/docs/internals/agent-sessions.md +36 -1
- package/docs/internals/api-reference.md +190 -45
- package/docs/internals/architecture.md +53 -47
- package/docs/internals/companion-inbox-decisions.md +42 -0
- package/docs/internals/companion-rails-as-loops-contract.md +17 -6
- package/docs/internals/configuration.md +140 -9
- package/docs/internals/core-runtime-updates.md +4 -4
- package/docs/internals/existing-project-anchoring.md +168 -0
- package/docs/internals/flow-mode.md +668 -0
- package/docs/internals/legacy-implementation-notes.md +13 -0
- package/docs/internals/local-testing-feedback-2026-10.md +210 -0
- package/docs/internals/mcp-mission-audit.md +4 -0
- package/docs/internals/mission-rail-cards.md +10 -5
- package/docs/internals/mission-read-only-policy.md +152 -0
- package/docs/internals/modal-standard.md +181 -0
- package/docs/internals/openspec-workflow.md +32 -0
- package/docs/internals/operations-runbook.md +30 -0
- package/docs/internals/profiles.md +6 -3
- package/docs/internals/programmatic-agent-runtime.md +8 -0
- package/docs/internals/project-builder.md +1 -1
- package/docs/internals/review-packet.md +161 -9
- package/docs/internals/safe-pr-review-flow.md +135 -6
- package/docs/internals/source-map.md +413 -18
- package/docs/internals/spec-addenda.md +10 -0
- package/docs/internals/spec-triage.md +140 -0
- package/docs/internals/visual-design-audit.md +15 -2
- package/docs/local-providers.md +3 -0
- package/docs/mcp.md +21 -3
- package/docs/platforms/macos.md +1 -1
- package/docs/platforms/windows.md +2 -2
- package/docs/running-pipelines.md +22 -6
- package/docs/tracking-cost.md +54 -10
- package/local-runner/dist/specrails-local-runner.js +3851 -1178
- package/mcp-bridge/dist/specrails-mcp.js +3864 -1143
- package/package.json +10 -9
- package/server/dist/agent-mcp-config.js +37 -1
- package/server/dist/api-version.js +19 -0
- package/server/dist/command-resolver.js +4 -2
- package/server/dist/core-compat.js +1 -1
- package/server/dist/core-execution.js +2 -1
- package/server/dist/core-update-manager.js +71 -13
- package/server/dist/db/job-search.js +248 -0
- package/server/dist/db/jobs.js +6 -0
- package/server/dist/db/migrations.js +239 -0
- package/server/dist/db.js +9 -2
- package/server/dist/desktop-db.js +99 -5
- package/server/dist/desktop-router.js +126 -13
- package/server/dist/docs-router.js +67 -1
- package/server/dist/feature-flags.js +22 -0
- package/server/dist/index.js +30 -15
- package/server/dist/jira/jira-adf.js +13 -1
- package/server/dist/jira/jira-clarifications.js +146 -0
- package/server/dist/jira/jira-client.js +8 -1
- package/server/dist/jira/jira-db.js +41 -0
- package/server/dist/jira/jira-sync-manager.js +328 -25
- package/server/dist/mcp/guide.js +17 -7
- package/server/dist/mcp/tools/agents.js +1 -1
- package/server/dist/mcp/tools/analytics.js +15 -3
- package/server/dist/mcp/tools/app-settings.js +14 -1
- package/server/dist/mcp/tools/chat.js +1 -1
- package/server/dist/mcp/tools/env.js +4 -2
- package/server/dist/mcp/tools/jobs.js +96 -7
- package/server/dist/mcp/tools/loops.js +1 -1
- package/server/dist/mcp/tools/meta.js +10 -13
- package/server/dist/mcp/tools/rails.js +15 -1
- package/server/dist/mcp/tools/setup.js +1 -1
- package/server/dist/mcp/tools/specs.js +8 -5
- package/server/dist/mcp/tools/support.js +6 -3
- package/server/dist/mcp/tools/types.js +38 -1
- package/server/dist/mobile/mobile-admin-router.js +0 -16
- package/server/dist/mobile/mobile-gateway.js +0 -18
- package/server/dist/mobile/mobile-inbox.js +240 -0
- package/server/dist/mobile/mobile-missions.js +6 -8
- package/server/dist/mobile/mobile-router.js +9 -9
- package/server/dist/mobile/mobile-webrtc-peer.js +4 -54
- package/server/dist/mobile/mobile-ws.js +27 -4
- package/server/dist/modules/accounting/runtime/ai-invocations.js +4 -0
- package/server/dist/modules/accounting/runtime/decision-times.js +102 -0
- package/server/dist/modules/accounting/runtime/loop-economics.js +284 -0
- package/server/dist/modules/accounting/runtime/spending.js +7 -2
- package/server/dist/modules/accounting/runtime/what-if.js +87 -0
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-bridge.js +86 -5
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-controls.js +28 -2
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-metrics.js +15 -2
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-settings-router.js +21 -2
- package/server/dist/modules/agent-runtime/runtime/core-capabilities.js +55 -0
- package/server/dist/modules/agent-sessions/adapters/host-process.js +1 -1
- package/server/dist/modules/agent-sessions/domain/availability.js +16 -0
- package/server/dist/modules/agent-sessions/domain/protocol.js +8 -1
- package/server/dist/modules/agent-sessions/index.js +3 -1
- package/server/dist/modules/agent-sessions/runtime/core-sessions-availability.js +16 -0
- package/server/dist/modules/agents/runtime/agent-refine-manager.js +3 -1
- package/server/dist/modules/agents/runtime/agent-store.js +60 -73
- package/server/dist/modules/audit/adapters/http.js +66 -0
- package/server/dist/modules/audit/adapters/runtime.js +60 -0
- package/server/dist/modules/audit/adapters/sqlite.js +73 -0
- package/server/dist/modules/audit/application.js +190 -0
- package/server/dist/modules/audit/domain.js +434 -0
- package/server/dist/modules/audit/index.js +27 -0
- package/server/dist/modules/audit/ports.js +2 -0
- package/server/dist/modules/browser/runtime/browser-capture-manager.js +18 -141
- package/server/dist/modules/browser/runtime/browser-capture-types.js +1 -10
- package/server/dist/modules/browser/runtime/browser-playwright.js +0 -19
- package/server/dist/modules/code/runtime/file-provenance.js +23 -0
- package/server/dist/modules/conversations/runtime/chat-manager.js +5 -2
- package/server/dist/modules/delivery/adapters/decisions/chains.js +1 -0
- package/server/dist/modules/delivery/adapters/decisions/create.js +19 -1
- package/server/dist/modules/delivery/adapters/decisions/discard.js +2 -0
- package/server/dist/modules/delivery/adapters/decisions/local-changes.js +427 -0
- package/server/dist/modules/delivery/adapters/decisions/merge-local.js +80 -6
- package/server/dist/modules/delivery/adapters/decisions/observations.js +5 -0
- package/server/dist/modules/delivery/adapters/decisions/ownership.js +2 -1
- package/server/dist/modules/delivery/adapters/decisions/transitions.js +9 -0
- package/server/dist/modules/delivery/adapters/review-wip-store.js +37 -0
- package/server/dist/modules/delivery/domain/review-wip.js +71 -0
- package/server/dist/modules/delivery/index.js +9 -1
- package/server/dist/modules/delivery/runtime/delivery-changes.js +355 -0
- package/server/dist/modules/delivery/runtime/delivery-evidence.js +249 -8
- package/server/dist/modules/delivery/runtime/flow-review-legacy.js +99 -0
- package/server/dist/modules/delivery/runtime/flow-review-outcome.js +107 -0
- package/server/dist/modules/delivery/runtime/flow-worktree-handoff.js +32 -0
- package/server/dist/modules/delivery/runtime/flow-worktree-return.js +87 -0
- package/server/dist/modules/delivery/runtime/isolated-worktree.js +380 -0
- package/server/dist/modules/delivery/runtime/local-restore-branch.js +325 -0
- package/server/dist/modules/delivery/runtime/local-restore-resolver.js +48 -0
- package/server/dist/modules/delivery/runtime/local-stash.js +423 -0
- package/server/dist/modules/delivery/runtime/multi-repo-execution.js +27 -1
- package/server/dist/modules/delivery/runtime/phase3-harvest.js +40 -0
- package/server/dist/modules/delivery/runtime/pr-body.js +50 -0
- package/server/dist/modules/delivery/runtime/rail-isolated-launch.js +169 -166
- package/server/dist/modules/delivery/runtime/rail-launch-parser.js +5 -2
- package/server/dist/modules/delivery/runtime/rail-pr-decision.js +7 -1
- package/server/dist/modules/delivery/runtime/rail-pr-store.js +193 -12
- package/server/dist/modules/delivery/runtime/rails-router.js +267 -5
- package/server/dist/modules/delivery/runtime/review-brief.js +208 -0
- package/server/dist/modules/delivery/runtime/review-packet.js +41 -2
- package/server/dist/modules/delivery/runtime/review-wip-gate.js +67 -0
- package/server/dist/modules/delivery/runtime/run-records.js +267 -0
- package/server/dist/modules/delivery/runtime/run-review-diagnosis.js +102 -0
- package/server/dist/modules/execution/adapters/budget-storage.js +76 -0
- package/server/dist/modules/execution/application/enforce-budget.js +17 -2
- package/server/dist/modules/execution/domain/agent-env.js +98 -0
- package/server/dist/modules/execution/domain/daily-budget.js +36 -0
- package/server/dist/modules/execution/domain/spend-caps.js +166 -0
- package/server/dist/modules/execution/index.js +34 -1
- package/server/dist/modules/execution/runtime/budget-overview.js +76 -0
- package/server/dist/modules/execution/runtime/daily-budget-gate.js +86 -0
- package/server/dist/modules/execution/runtime/interactive-job-session.js +8 -0
- package/server/dist/modules/execution/runtime/launch-forecast.js +33 -0
- package/server/dist/modules/execution/runtime/queue-manager.js +54 -15
- package/server/dist/modules/execution/runtime/run-duration-stats.js +31 -13
- package/server/dist/modules/flow/adapters/bindings.js +1089 -0
- package/server/dist/modules/flow/adapters/http.js +147 -0
- package/server/dist/modules/flow/adapters/sqlite.js +121 -0
- package/server/dist/modules/flow/application.js +805 -0
- package/server/dist/modules/flow/domain.js +790 -0
- package/server/dist/modules/flow/index.js +34 -0
- package/server/dist/modules/flow/ports.js +2 -0
- package/server/dist/modules/inbox/adapters/http.js +21 -0
- package/server/dist/modules/inbox/adapters/project-source.js +233 -0
- package/server/dist/modules/inbox/application.js +28 -0
- package/server/dist/modules/inbox/domain.js +43 -0
- package/server/dist/modules/inbox/index.js +10 -0
- package/server/dist/modules/inbox/ports.js +2 -0
- package/server/dist/modules/loops/runtime/loop-definition-run.js +9 -0
- package/server/dist/modules/loops/runtime/loop-definition.js +5 -2
- package/server/dist/modules/loops/runtime/loop-executors.js +90 -9
- package/server/dist/modules/loops/runtime/loop-factory.js +30 -2
- package/server/dist/modules/loops/runtime/loop-flow-spec-recipe.js +166 -0
- package/server/dist/modules/loops/runtime/loop-graph.js +1 -1
- package/server/dist/modules/loops/runtime/loop-role-engines.js +4 -1
- package/server/dist/modules/loops/runtime/loop-run-manager.js +267 -10
- package/server/dist/modules/loops/runtime/loop-runs-store.js +21 -5
- package/server/dist/modules/loops/runtime/loop-templates.js +55 -12
- package/server/dist/modules/missions/runtime/agent-chat-manager.js +283 -20
- package/server/dist/modules/missions/runtime/agent-chat-router.js +96 -21
- package/server/dist/modules/missions/runtime/agent-failure-briefing.js +11 -3
- package/server/dist/modules/missions/runtime/agent-fence-promotion.js +9 -1
- package/server/dist/modules/missions/runtime/agent-flow-prompt.js +64 -0
- package/server/dist/modules/missions/runtime/agent-input-store.js +9 -4
- package/server/dist/modules/missions/runtime/agent-operator-prompt.js +100 -14
- package/server/dist/modules/missions/runtime/agent-session-store.js +88 -27
- package/server/dist/modules/missions/runtime/core-session-runner.js +89 -9
- package/server/dist/modules/missions/runtime/flow-turn-context.js +17 -0
- package/server/dist/modules/missions/runtime/mission-core-sessions.js +295 -55
- package/server/dist/modules/missions/runtime/mission-run-notify.js +2 -0
- package/server/dist/modules/missions/runtime/mission-session-projector.js +56 -19
- package/server/dist/modules/missions/runtime/mission-tool-policy.js +47 -0
- package/server/dist/modules/onboarding/adapters/http.js +78 -0
- package/server/dist/modules/onboarding/adapters/providers.js +41 -0
- package/server/dist/modules/onboarding/adapters/runtime.js +130 -0
- package/server/dist/modules/onboarding/application.js +133 -0
- package/server/dist/modules/onboarding/catalog.js +217 -0
- package/server/dist/modules/onboarding/domain.js +102 -0
- package/server/dist/modules/onboarding/index.js +20 -0
- package/server/dist/modules/onboarding/ports.js +2 -0
- package/server/dist/modules/project-rules/adapters/http.js +91 -0
- package/server/dist/modules/project-rules/domain.js +122 -0
- package/server/dist/modules/project-rules/runtime/rules-inventory-runs.js +97 -0
- package/server/dist/modules/project-rules/runtime/rules-store.js +109 -0
- package/server/dist/modules/project-settings/adapters/http.js +13 -0
- package/server/dist/modules/project-settings/adapters/sqlite.js +78 -8
- package/server/dist/modules/project-settings/domain.js +47 -1
- package/server/dist/modules/project-settings/index.js +7 -1
- package/server/dist/modules/recovery/adapters/sqlite.js +28 -0
- package/server/dist/modules/recovery/domain.js +162 -0
- package/server/dist/modules/recovery/index.js +16 -0
- package/server/dist/modules/specs/adapters/timeline-http.js +101 -0
- package/server/dist/modules/specs/domain/handoff-labels.js +371 -0
- package/server/dist/modules/specs/domain/handoff.js +260 -0
- package/server/dist/modules/specs/domain/non-goals.js +101 -0
- package/server/dist/modules/specs/domain/timeline.js +164 -0
- package/server/dist/modules/specs/domain/triage.js +320 -0
- package/server/dist/modules/specs/runtime/contract-refine-runner.js +3 -2
- package/server/dist/modules/specs/runtime/generated-spec-parser.js +75 -0
- package/server/dist/modules/specs/runtime/proposal-manager.js +4 -3
- package/server/dist/modules/specs/runtime/smash-runner.js +2 -1
- package/server/dist/modules/specs/runtime/spec-addenda.js +31 -0
- package/server/dist/modules/specs/runtime/spec-draft-parser.js +6 -1
- package/server/dist/modules/specs/runtime/spec-generation.js +431 -0
- package/server/dist/modules/specs/runtime/spec-handoff.js +103 -0
- package/server/dist/modules/specs/runtime/spec-history.js +376 -0
- package/server/dist/modules/specs/runtime/spec-launcher-manager.js +4 -3
- package/server/dist/modules/specs/runtime/spec-search.js +117 -0
- package/server/dist/modules/specs/runtime/ticket-store.js +47 -2
- package/server/dist/modules/specs/runtime/ticket-trash-service.js +62 -0
- package/server/dist/modules/specs/runtime/ticket-trash.js +193 -0
- package/server/dist/modules/specs/runtime/triage-runner.js +171 -0
- package/server/dist/modules/specs/runtime/triage.js +365 -0
- package/server/dist/modules/terminals/domain/app-urls.js +96 -0
- package/server/dist/modules/terminals/runtime/app-urls.js +77 -0
- package/server/dist/modules/terminals/runtime/background-process-service.js +25 -28
- package/server/dist/project-env.js +60 -0
- package/server/dist/project-git.js +65 -0
- package/server/dist/project-registry.js +264 -27
- package/server/dist/project-router-background-processes.js +27 -3
- package/server/dist/project-router-git.js +30 -0
- package/server/dist/project-router-helpers.js +5 -30
- package/server/dist/project-router-jobs.js +49 -1
- package/server/dist/project-router-loop-runs.js +72 -2
- package/server/dist/project-router-rules.js +54 -0
- package/server/dist/project-router-search.js +52 -0
- package/server/dist/project-router-settings.js +6 -0
- package/server/dist/project-router-setup.js +1 -1
- package/server/dist/project-router-spending.js +138 -0
- package/server/dist/project-router-tickets.js +246 -427
- package/server/dist/project-router.js +7 -0
- package/server/dist/providers/claude-adapter.js +25 -3
- package/server/dist/providers/codex-adapter.js +9 -1
- package/server/dist/providers/gemini-adapter.js +6 -1
- package/server/dist/providers/kimi-adapter.js +2 -0
- package/server/dist/providers/local-adapter.js +2 -0
- package/server/dist/providers/runtime.js +8 -0
- package/server/dist/schemas/agent-runtime.schema.json +3 -1
- package/server/dist/schemas/workflow-definition.schema.json +1 -0
- package/server/dist/setup-manager.js +19 -1
- package/server/dist/transient-children.js +25 -8
- package/server/dist/update-channel.js +21 -0
- package/server/dist/util/search-snippet.js +74 -0
- package/server/dist/worktree-manager.js +19 -8
- package/client/dist/assets/ActivityFeedPage-Dtp7EyHc.js +0 -1
- package/client/dist/assets/AgentBrowserCapture-CLqlEFw8.js +0 -1
- package/client/dist/assets/AgentModeAnalyticsPane-B8_hM3Tw.js +0 -2
- package/client/dist/assets/AgentModeCodePane-CNF8ZNjE.js +0 -2
- package/client/dist/assets/AgentModeJobsPane-CJpJbO9m.js +0 -1
- package/client/dist/assets/AgentsPage-BC8XSR79.js +0 -120
- package/client/dist/assets/AnalyticsPage-Cdv4jLtW.js +0 -1
- package/client/dist/assets/BarChart-BDMqVFJy.js +0 -55
- package/client/dist/assets/CodePage-DI1kegAr.js +0 -3
- package/client/dist/assets/DesktopAnalyticsPage-Bdp8E8U6.js +0 -1
- package/client/dist/assets/DocsDialog-Bm4RS7FX.js +0 -11
- package/client/dist/assets/DocsPage-DihYcU8r.js +0 -11
- package/client/dist/assets/ExportDropdown-Bb1lHx3r.js +0 -1
- package/client/dist/assets/IntegrationsPage-EAipiDWm.js +0 -1
- package/client/dist/assets/InteractiveJobComposer-BO6ASN-2.js +0 -19
- package/client/dist/assets/JobDetailModal-CuPYq7tP.js +0 -1
- package/client/dist/assets/JobDetailPage-BusMjJi9.js +0 -1
- package/client/dist/assets/JobsPage-C0QbsF2d.js +0 -1
- package/client/dist/assets/LoopBuilderPage-B7TlU4iS.js +0 -1
- package/client/dist/assets/LoopPreviewModal-BRWtXOD2.js +0 -1
- package/client/dist/assets/LoopsPage-C4q1DmCE.js +0 -2
- package/client/dist/assets/MinimizedChatsContext-DHfigjHS.js +0 -1
- package/client/dist/assets/PluginsPage-Z1JHSMdR.js +0 -2
- package/client/dist/assets/ProjectSettingsDialog-BUNj0tvN.js +0 -1
- package/client/dist/assets/RepositoryDeliveries-B4ybHOyB.js +0 -5
- package/client/dist/assets/ReviewPacketPage-hwfPNjyy.js +0 -4
- package/client/dist/assets/TemplatePreviewModal-V7FpMWuw.js +0 -1
- package/client/dist/assets/TicketDetailModalContext-Dkwo2cDs.js +0 -16
- package/client/dist/assets/Trans-BbFxRFtR.js +0 -1
- package/client/dist/assets/activity-B-rp4h_v.js +0 -1
- package/client/dist/assets/activity-C6kJpm9q.js +0 -1
- package/client/dist/assets/activity-CGx4kb_j.js +0 -1
- package/client/dist/assets/activity-CnoX2bH7.js +0 -1
- package/client/dist/assets/activity-DAyekdlt.js +0 -1
- package/client/dist/assets/activity-DCxtpT7j.js +0 -1
- package/client/dist/assets/activity-DiyjsgQV.js +0 -1
- package/client/dist/assets/activity-JzwRaWPD.js +0 -1
- package/client/dist/assets/addspec-BOvgmcgk.js +0 -1
- package/client/dist/assets/addspec-Clmyfn_R.js +0 -1
- package/client/dist/assets/addspec-CsNaBpHp.js +0 -1
- package/client/dist/assets/addspec-D2tvWmmV.js +0 -1
- package/client/dist/assets/addspec-D3nFwvD0.js +0 -1
- package/client/dist/assets/addspec-DVLEhK3w.js +0 -1
- package/client/dist/assets/addspec-DXbK-tb0.js +0 -1
- package/client/dist/assets/addspec-OHG8DFEn.js +0 -1
- package/client/dist/assets/agent-5bSixVzz.js +0 -1
- package/client/dist/assets/agent-BR4EHfhq.js +0 -1
- package/client/dist/assets/agent-C0IKkJP8.js +0 -1
- package/client/dist/assets/agent-C7li9ayC.js +0 -1
- package/client/dist/assets/agent-D0dRmEen.js +0 -1
- package/client/dist/assets/agent-DZVGHm7H.js +0 -1
- package/client/dist/assets/agent-Dip4h2YE.js +0 -1
- package/client/dist/assets/agent-Pp-P-n1p.js +0 -1
- package/client/dist/assets/agentRuntime-BxF81z52.js +0 -1
- package/client/dist/assets/agentRuntime-BxYS5V7u.js +0 -1
- package/client/dist/assets/agentRuntime-Dc9HG3BA.js +0 -1
- package/client/dist/assets/agents-B6ZsnARo.js +0 -1
- package/client/dist/assets/agents-BORdhe0K.js +0 -1
- package/client/dist/assets/agents-C6aq9Oqs.js +0 -1
- package/client/dist/assets/agents-Cbsc4bcX.js +0 -1
- package/client/dist/assets/agents-D0uYR6hq.js +0 -1
- package/client/dist/assets/agents-Doe1sHY5.js +0 -1
- package/client/dist/assets/agents-DyNi_I9m.js +0 -1
- package/client/dist/assets/agents-StKxiTg0.js +0 -1
- package/client/dist/assets/agentstudio-7cYCXn-L.js +0 -1
- package/client/dist/assets/agentstudio-BHWQh8G3.js +0 -1
- package/client/dist/assets/agentstudio-BjnWHyRs.js +0 -1
- package/client/dist/assets/agentstudio-BkV8vcK4.js +0 -1
- package/client/dist/assets/agentstudio-BzugqB_N.js +0 -1
- package/client/dist/assets/agentstudio-CWbp7KvH.js +0 -1
- package/client/dist/assets/agentstudio-DG6plf5o.js +0 -1
- package/client/dist/assets/agentstudio-DkZVF-Cc.js +0 -1
- package/client/dist/assets/analytics-B1DIQd4m.js +0 -1
- package/client/dist/assets/analytics-BAIZ9vE_.js +0 -1
- package/client/dist/assets/analytics-BTqgmgBd.js +0 -1
- package/client/dist/assets/analytics-BWynXPEm.js +0 -1
- package/client/dist/assets/analytics-DGcUsQ44.js +0 -1
- package/client/dist/assets/analytics-GnSnpJ4W.js +0 -1
- package/client/dist/assets/analytics-TWgYaoO0.js +0 -1
- package/client/dist/assets/analytics-kJy6Tuko.js +0 -1
- package/client/dist/assets/atom-one-dark-qiGhVQxg.js +0 -1
- package/client/dist/assets/builder-B9gorTnT.js +0 -1
- package/client/dist/assets/builder-Bvw5s3Mi.js +0 -1
- package/client/dist/assets/builder-CL5l4dU3.js +0 -1
- package/client/dist/assets/builder-CVDTVrQX.js +0 -1
- package/client/dist/assets/builder-CpS9liE9.js +0 -1
- package/client/dist/assets/builder-DNctIL9Q.js +0 -1
- package/client/dist/assets/builder-De2NxX6o.js +0 -1
- package/client/dist/assets/builder-DeYT7Y-m.js +0 -1
- package/client/dist/assets/button-4FS1ZDTp.js +0 -1
- package/client/dist/assets/chat-D_I7nU5K.js +0 -1
- package/client/dist/assets/chevron-up-6EFqEHBj.js +0 -1
- package/client/dist/assets/chunk-OB3PAWPO-B1EMk45A.js +0 -3
- package/client/dist/assets/clsx-CjueKrWZ.js +0 -1
- package/client/dist/assets/code-B37GRg9C.js +0 -1
- package/client/dist/assets/code-BBOEZbf9.js +0 -1
- package/client/dist/assets/code-BRm-jcyx.js +0 -1
- package/client/dist/assets/code-CF7w62CR.js +0 -1
- package/client/dist/assets/code-CLuvJt2r.js +0 -1
- package/client/dist/assets/code-D0RCm59f.js +0 -1
- package/client/dist/assets/code-DaZ-ZwCT.js +0 -1
- package/client/dist/assets/code-iIHkGaCL.js +0 -1
- package/client/dist/assets/commands-0XjAftla.js +0 -1
- package/client/dist/assets/commands-BAWSYHjQ.js +0 -1
- package/client/dist/assets/commands-BBwowgiE.js +0 -1
- package/client/dist/assets/commands-BacjIZLN.js +0 -1
- package/client/dist/assets/commands-Bs62IAZ3.js +0 -1
- package/client/dist/assets/commands-CLPdh-Hh.js +0 -1
- package/client/dist/assets/commands-DlbFzgrp.js +0 -1
- package/client/dist/assets/commands-LjPSsi5F.js +0 -1
- package/client/dist/assets/common-Bdi0qN4S.js +0 -1
- package/client/dist/assets/common-Bhb9zN1P.js +0 -1
- package/client/dist/assets/common-BykKlZg1.js +0 -1
- package/client/dist/assets/common-CvnNNSJA.js +0 -1
- package/client/dist/assets/common-D5zk_mqq.js +0 -1
- package/client/dist/assets/common-DQNO_al5.js +0 -1
- package/client/dist/assets/common-Dax30Vmp.js +0 -1
- package/client/dist/assets/common-DkllpVSb.js +0 -1
- package/client/dist/assets/core-B3mKBIh5.js +0 -1
- package/client/dist/assets/dashboard-B1ndRHuC.js +0 -1
- package/client/dist/assets/dashboard-BX7KXiqA.js +0 -1
- package/client/dist/assets/dashboard-B_BSNxcN.js +0 -1
- package/client/dist/assets/dashboard-CCeFN7-V.js +0 -1
- package/client/dist/assets/dashboard-CRl0WtFJ.js +0 -1
- package/client/dist/assets/dashboard-XGdQ5mjw.js +0 -1
- package/client/dist/assets/dashboard-_oltA6Jd.js +0 -1
- package/client/dist/assets/dashboard-bAuf5KVk.js +0 -1
- package/client/dist/assets/dialog-DtdR05v1.js +0 -45
- package/client/dist/assets/dist-js-CJ_2XX1Y.js +0 -1
- package/client/dist/assets/event-Bt7f3wXe.js +0 -1
- package/client/dist/assets/explore-BG99VGpL.js +0 -1
- package/client/dist/assets/explore-C0TjprJW.js +0 -1
- package/client/dist/assets/explore-C2dgEo7q.js +0 -1
- package/client/dist/assets/explore-C8NDHbob.js +0 -1
- package/client/dist/assets/explore-CWWgzQGR.js +0 -1
- package/client/dist/assets/explore-CcQXpdtS.js +0 -1
- package/client/dist/assets/explore-DgBACn39.js +0 -1
- package/client/dist/assets/explore-DsXAgnmJ.js +0 -1
- package/client/dist/assets/file-text-C0blZHLh.js +0 -1
- package/client/dist/assets/formatDistanceToNow-NjPHBLfB.js +0 -1
- package/client/dist/assets/getTimezoneOffsetInMilliseconds-vJ7qUoqN.js +0 -1
- package/client/dist/assets/git-branch-yf6LE1Bw.js +0 -1
- package/client/dist/assets/index-BgbCbIua.css +0 -2
- package/client/dist/assets/index-Ce4yZtKf.js +0 -83
- package/client/dist/assets/integrations-BkpRUbvp.js +0 -1
- package/client/dist/assets/integrations-Bo8qbJf4.js +0 -1
- package/client/dist/assets/integrations-CmSrKzZb.js +0 -1
- package/client/dist/assets/integrations-DGtq26Rr.js +0 -1
- package/client/dist/assets/integrations-De38GFnQ.js +0 -1
- package/client/dist/assets/integrations-Dw6zdtb-.js +0 -1
- package/client/dist/assets/integrations-Dwl9KQp0.js +0 -1
- package/client/dist/assets/integrations-Refg_d2I.js +0 -1
- package/client/dist/assets/jira-B6OYw4CJ.js +0 -1
- package/client/dist/assets/jira-BTF6RaOe.js +0 -1
- package/client/dist/assets/jira-CEetIB2q.js +0 -1
- package/client/dist/assets/jira-CIzsZLw5.js +0 -1
- package/client/dist/assets/jira-Daw9tmpI.js +0 -1
- package/client/dist/assets/jira-FXr7u2lh.js +0 -1
- package/client/dist/assets/jira-LaNQn7yl.js +0 -1
- package/client/dist/assets/jira-api-Cabj-H0J.js +0 -1
- package/client/dist/assets/job-time-BCL7wee9.js +0 -1
- package/client/dist/assets/jobs-ARwD85B9.js +0 -1
- package/client/dist/assets/jobs-BMF1w4WT.js +0 -1
- package/client/dist/assets/jobs-CBfzGLwm.js +0 -1
- package/client/dist/assets/jobs-CPjiluBY.js +0 -1
- package/client/dist/assets/jobs-CQQd58pY.js +0 -1
- package/client/dist/assets/jobs-De3EqaO0.js +0 -1
- package/client/dist/assets/jobs-Du9-Ei9a.js +0 -1
- package/client/dist/assets/jobs-qMHbnxwC.js +0 -1
- package/client/dist/assets/layers-BCLTgHXO.js +0 -1
- package/client/dist/assets/loader-circle-BqV9xYGf.js +0 -1
- package/client/dist/assets/loop-layout-CyXj9223.js +0 -7
- package/client/dist/assets/loops-B2PhQLKR.js +0 -1
- package/client/dist/assets/loops-BqbF46st.js +0 -1
- package/client/dist/assets/loops-CINnHbfI.js +0 -1
- package/client/dist/assets/loops-D-3XhH04.js +0 -1
- package/client/dist/assets/loops-DKkEEjZ_.js +0 -1
- package/client/dist/assets/loops-DzWR5-v6.js +0 -1
- package/client/dist/assets/loops-WyWDkhok.js +0 -1
- package/client/dist/assets/loops-scD5fIBf.js +0 -1
- package/client/dist/assets/mcp-6rMoZfEO.js +0 -1
- package/client/dist/assets/mcp-BD8sL5mP.js +0 -1
- package/client/dist/assets/mcp-BkcA3I5s.js +0 -1
- package/client/dist/assets/mcp-CCpSelOh.js +0 -1
- package/client/dist/assets/mcp-CUAN6ORK.js +0 -1
- package/client/dist/assets/mcp-CqbRxRTE.js +0 -1
- package/client/dist/assets/mcp-DP2YfVhO.js +0 -1
- package/client/dist/assets/mcp-DUVQamDz.js +0 -1
- package/client/dist/assets/narration-BEKMVxGm.js +0 -1
- package/client/dist/assets/narration-CjLwGKap.js +0 -1
- package/client/dist/assets/narration-DANWuGsW.js +0 -1
- package/client/dist/assets/narration-DGeEDWiT.js +0 -1
- package/client/dist/assets/narration-DJgpGwIP.js +0 -1
- package/client/dist/assets/narration-DbHnz0qV.js +0 -1
- package/client/dist/assets/narration-bZSsTZG8.js +0 -1
- package/client/dist/assets/narration-i6aKJKEc.js +0 -1
- package/client/dist/assets/nav--u7iPYlS.js +0 -1
- package/client/dist/assets/nav-C5Jgfaby.js +0 -1
- package/client/dist/assets/nav-CAna_Wpt.js +0 -1
- package/client/dist/assets/nav-CCLqeyHo.js +0 -1
- package/client/dist/assets/nav-Cf3c90Jk.js +0 -1
- package/client/dist/assets/nav-DMYQaQjR.js +0 -1
- package/client/dist/assets/nav-Df_PkZ9F.js +0 -1
- package/client/dist/assets/nav-VyNGBJwj.js +0 -1
- package/client/dist/assets/packet-8nn9RsU7.js +0 -1
- package/client/dist/assets/packet-B0H15elv.js +0 -1
- package/client/dist/assets/packet-BQvBgrwh.js +0 -1
- package/client/dist/assets/packet-BR7mO0-a.js +0 -1
- package/client/dist/assets/packet-BgcQ6q_K.js +0 -1
- package/client/dist/assets/packet-D2s92Jnn.js +0 -1
- package/client/dist/assets/packet-YbtcD1HS.js +0 -1
- package/client/dist/assets/packet-c0Qj_9eX.js +0 -1
- package/client/dist/assets/project-repositories-Cnnuj9Ia.js +0 -1
- package/client/dist/assets/rotate-ccw-DalJAQQX.js +0 -1
- package/client/dist/assets/settings-B1NV8Ow9.js +0 -1
- package/client/dist/assets/settings-BQ8XFZeE.js +0 -1
- package/client/dist/assets/settings-BRkxfBbO.js +0 -1
- package/client/dist/assets/settings-C_CcU1dP.js +0 -1
- package/client/dist/assets/settings-Cto9n0eL.js +0 -1
- package/client/dist/assets/settings-Pyw8uYtL.js +0 -1
- package/client/dist/assets/settings-b3HVCNNd.js +0 -1
- package/client/dist/assets/settings-hdive4u6.js +0 -1
- package/client/dist/assets/setup-Be485n2u.js +0 -1
- package/client/dist/assets/setup-CKGUxKr-.js +0 -1
- package/client/dist/assets/setup-Ck1Uwd7_.js +0 -1
- package/client/dist/assets/setup-Cm774a6v.js +0 -1
- package/client/dist/assets/setup-DIqMQpxt.js +0 -1
- package/client/dist/assets/setup-DfCsoNFL.js +0 -1
- package/client/dist/assets/setup-DkeE8mP0.js +0 -1
- package/client/dist/assets/setup-xVntVaz1.js +0 -1
- package/client/dist/assets/specs-Bqvtz2kz.js +0 -1
- package/client/dist/assets/specs-CKes-kz6.js +0 -1
- package/client/dist/assets/specs-CfXxPDNB.js +0 -1
- package/client/dist/assets/specs-CyF9HuTI.js +0 -1
- package/client/dist/assets/specs-DMj035Mt.js +0 -1
- package/client/dist/assets/specs-DfIdoU5L.js +0 -1
- package/client/dist/assets/specs-j5pGLQeU.js +0 -1
- package/client/dist/assets/specs-xW5pkkB7.js +0 -1
- package/client/dist/assets/spending-CQnrWiR3.js +0 -1
- package/client/dist/assets/square-D0JTbRSR.js +0 -1
- package/client/dist/assets/tauri-shell-DE6LfGPw.js +0 -2
- package/client/dist/assets/terminal-BAzpHtpY.js +0 -1
- package/client/dist/assets/terminal-C7dHeR3x.js +0 -1
- package/client/dist/assets/terminal-CMla5Qsz.js +0 -1
- package/client/dist/assets/terminal-CdNXH-n9.js +0 -1
- package/client/dist/assets/terminal-Cw5bZsmV.js +0 -1
- package/client/dist/assets/terminal-DFUP4eNv.js +0 -1
- package/client/dist/assets/terminal-DGqljeK_.js +0 -1
- package/client/dist/assets/terminal-cU70NodO.js +0 -1
- package/client/dist/assets/tickets--tiSOCcn.js +0 -1
- package/client/dist/assets/tickets-BUJ3DMWU.js +0 -1
- package/client/dist/assets/tickets-C1WNPODq.js +0 -1
- package/client/dist/assets/tickets-CDjhWmiE.js +0 -1
- package/client/dist/assets/tickets-CLgPC3uO.js +0 -1
- package/client/dist/assets/tickets-D41ZMQpf.js +0 -1
- package/client/dist/assets/tickets-DEaQC06P.js +0 -1
- package/client/dist/assets/tickets-kcMzbLCp.js +0 -1
- package/client/dist/assets/trash-D8zYUmTg.js +0 -1
- package/client/dist/assets/useDesktop-BjLT0_EE.js +0 -1
- package/client/dist/assets/useRuntimeRuns-C97qEqMg.js +0 -1
- package/client/dist/assets/useSharedWebSocket-Bj4LMp7b.js +0 -2
- package/client/dist/assets/utils-BC4DHlz2.js +0 -1
- package/docs/guide/en/getting-started/4-the-dashboard-tour.md +0 -48
- package/docs/guide/es/getting-started/4-the-dashboard-tour.md +0 -48
- package/server/dist/mobile/mobile-preview-channel.js +0 -179
- package/server/dist/mobile/mobile-preview.js +0 -366
- package/server/dist/modules/browser/domain/preview-origins.js +0 -117
- package/server/dist/modules/browser/runtime/preview-targets.js +0 -80
- /package/client/dist/assets/{atom-one-dark-B-oHczHB.css → DocView-B-oHczHB.css} +0 -0
- /package/docs/guide/de/getting-started/{3-adding-your-first-project.md → 4-adding-your-first-project.md} +0 -0
- /package/docs/guide/en/getting-started/{3-adding-your-first-project.md → 4-adding-your-first-project.md} +0 -0
- /package/docs/guide/es/getting-started/{3-adding-your-first-project.md → 4-adding-your-first-project.md} +0 -0
- /package/docs/guide/fr/getting-started/{3-adding-your-first-project.md → 4-adding-your-first-project.md} +0 -0
- /package/docs/guide/it/getting-started/{3-adding-your-first-project.md → 4-adding-your-first-project.md} +0 -0
- /package/docs/guide/ja/getting-started/{3-adding-your-first-project.md → 4-adding-your-first-project.md} +0 -0
- /package/docs/guide/pt/getting-started/{3-adding-your-first-project.md → 4-adding-your-first-project.md} +0 -0
- /package/docs/guide/zh/getting-started/{3-adding-your-first-project.md → 4-adding-your-first-project.md} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`Intégrations`,subtitle:`Plugins par projet. Chaque projet choisit indépendamment les intégrations à activer.`,selectProject:`Sélectionnez un projet pour gérer les intégrations.`,deprecated:`Obsolète`,loadError:`Échec du chargement des plugins.`,empty:`Aucun plugin n'est inclus dans cette version.`},t={statusActive:`Actif`,statusDeactivated:`Désactivé`,statusDegraded:`Dégradé`,updateAvailable:`Mise à jour disponible`,requires:`Requiert : {{list}}`,deactivatedHint:`Installé mais désactivé — Claude ne le chargera pas à la prochaine session. Basculez sur <strong>Actif</strong> pour le réactiver.`,install:`Installer`,uninstall:`Désinstaller`},n={titleActive:`Actif — cliquez pour désactiver`,titleDeactivated:`Désactivé — cliquez pour activer`},r={body:`Claude a le plugin du marketplace <strong>installé mais désactivé</strong> dans son cache. Il peut encore résoudre le serveur depuis <code>~/.claude/plugins/cache/...</code> même si l'interrupteur est désactivé. Pour forcer la portée projet uniquement, désinstallez le plugin du marketplace depuis Claude :`,runInstruction:`Exécutez dans une session Claude active, puis redémarrez Claude dans ce projet.`},i={body:`Le manifeste inclus a changé depuis votre installation (probablement un renommage en amont). Réécrivez <code>.mcp.json</code> avec l'entrée canonique — opération chirurgicale, seules les clés possédées par le plugin sont touchées.`,button:`Mettre à jour l'entrée <code>.mcp.json</code>`},a={body:`<strong>{{name}}</strong> est aussi activé globalement via le marketplace de plugins de Claude, ce qui masque cette installation au niveau du projet. Pour que cette carte passe en Actif, désactivez la version globale ci-dessous — elle peut être réactivée depuis Claude à tout moment.`,disableButton:`Désactiver <code>{{key}}</code>`},o={badge:`Orphelin`,removeButton:`Supprimer l'orphelin`},s={title:`Installer {{name}}`,computingChanges:`Calcul des modifications…`,filesHeading:`Fichiers qui seront modifiés`,prerequisites:`Prérequis`,autoInstall:`Installation automatique`,progress:`Progression`,installingPrereq:`Installation de {{name}}…`,prereqStartFailed:`Échec du démarrage : {{message}}`},c={title:`Désinstaller {{name}} ?`,body:`Cela annulera les entrées gérées par le plugin dans <code>.mcp.json</code> et supprimera les fichiers créés par le plugin. Votre code, votre historique et les autres plugins ne sont pas affectés.`},l={title:`Documentation`,dialogDescription:`Parcourez la documentation incluse de Specrails. Utilisez la barre latérale pour passer d'un guide à l'autre.`,sidebarEmpty:`Pas encore de docs`,indexEmpty:`La documentation apparaîtra ici. Le guide utilisateur est fourni avec l’app sous docs/guide/ ; déposez des fichiers Markdown sous ~/.specrails/docs/guide/ pour la personnaliser.`,categoryEmpty:`Aucun document dans cette catégorie pour l'instant.`,documentCount_one:`{{count}} document`,documentCount_other:`{{count}} documents`,categoryCount_one:`{{count}} catégorie`,categoryCount_other:`{{count}} catégories`,summary:`{{documents}} répartis dans {{categories}}.`,loadError:`Échec du chargement du document`},u={title:`Jira`,category:`Suivi des tickets`,description:`Adossez les specs de ce projet à un tableau Jira — synchronisation bidirectionnelle du statut, plus un commentaire à la fin d'un rail.`,connectedDescription:`Synchronisé avec {{key}}. Les specs reflètent votre tableau Jira dans les deux sens.`,connect:`Connecter`,connected:`Connecté`,manage:`Gérer`,modalTitle:`Se connecter à Jira`,manageTitle:`Connexion Jira`,bullet1:`Synchronisation bidirectionnelle du statut avec votre tableau Jira.`,bullet2:`Publie un commentaire à la fin d'un rail.`,bullet3:`Votre backlog Jira apparaît comme des specs sur le tableau.`,requires:`Nécessite un compte Jira Cloud ou Data Center.`},d={page:{title:`Plugins`,subtitle:`Outils globaux et intégrations de projet, gérés au même endroit.`,readyCount_one:`{{count}} prêt`,readyCount_other:`{{count}} prêts`,openWindow:`Open in window`},search:{placeholder:`Rechercher des plugins`},filters:{all:`tous`,global:`globaux`,project:`projet`},sections:{installed:`Installés`,available:`Disponibles`},scope:{global:`global`,project:`projet`},groups:{global:{title:`Globaux`,detail:`S’applique à tout Specrails`},project:{title:`Locaux au projet`,detail:`Configurés par dépôt`}},empty:{installedSearch:`Aucun plugin installé ne correspond à cette recherche.`,installed:`Aucun plugin installé pour le moment.`,availableSearch:`Aucun plugin disponible ne correspond à cette recherche.`,allInstalled:`Tous les plugins sont installés.`},actions:{install:`Installer`,installing:`Installation`,manage:`Gérer`,review:`Examiner`,cancel:`Annuler`},status:{attention:`attention requise`,active:`actif`,externalActive:`externe actif`,external:`externe`,installed:`installé`,available:`disponible`,configuredCount_one:`{{count}} configuré`,configuredCount_other:`{{count}} configurés`,installedCount_one:`{{count}} installé`,installedCount_other:`{{count}} installés`},catalog:{headroom:{description:`Optimise les lancements Codex et Claude via Headroom AI.`},jira:{description:`Synchronise les specs du projet avec un tableau Jira, le mapping des statuts et les commentaires de fin.`},serena:{description:`Navigation sémantique locale au projet via Serena MCP.`}},headroom:{title:`Headroom AI`,dialogDescription:`Gérez l’installation globale de Headroom et le routage par fournisseur.`,panelDescription:`Installé globalement, activé séparément pour Codex et Claude.`,issueCode:`Code : {{code}}`,confirmDetach:`Cela désactive le routage Specrails et arrête le proxy. L’installation Headroom système existante reste intacte.`,confirmUninstall:`Cela désactive les routes Codex et Claude, arrête le proxy et supprime l’outil Headroom géré par Specrails.`,metrics:{install:`Installation`,checking:`Vérification`,ready:`Prêt`,missing:`Manquant`,source:`Source`,system:`Système`,specrails:`Specrails`,none:`Aucun`,proxy:`Proxy`,starting:`Démarrage`,off:`Désactivé`},actions:{installWithUv:`Installer avec uv inclus`,disableAllRoutes:`Désactiver toutes les routes`,viewDiagnostics:`Voir les diagnostics`,detachHeadroom:`Détacher Headroom`,uninstallHeadroom:`Désinstaller Headroom`,detach:`Détacher`,uninstall:`Désinstaller`},port:{label:`Port du proxy`,apply:`Appliquer`},provider:{noProjectUsesProvider:`Aucun projet Specrails n’utilise ce fournisseur`,routedThroughHeadroom:`Routé via Headroom`,detectedExternalRoute:`Route externe détectée`,notRouted:`Non routé`},savings:{title:`Économies de tokens Headroom`,learningOn:`sortie mesurée`,waitingForOutputSamples:`sortie non mesurée`,baseline:`référence {{method}}`,updatedLive:`mis à jour en direct`,baselineSamples_one:`{{count}} échantillon de référence`,baselineSamples_other:`{{count}} échantillons de référence`,tokens:`tokens`,learning:`Aucune donnée`,off:`Désactivé`,requestDetail:`{{method}} · {{count}} requêtes`,requestCount:`{{count}} requêtes`,detected:`détecté`,totals:`Totaux`,input:`Entrée`,output:`Sortie`,processed:`Traités`,saved:`Économisés`,noData:`Aucune donnée`,inputSaved:`Entrée économisée`,outputSaved:`Sortie économisée`,inputSavingsActive:`Routage via Headroom`,statusInputOutput:`Entrée + sortie`,statusInputOnly:`Entrée active`,statusRouting:`Routage actif`,statusInactive:`Inactif`,methods:{estimated:`estimée`,measured:`mesurée`,none:`aucune`},waitingForShapedResponses:`Aucune réponse de sortie mesurée`,outputObserved:`{{value}} de sortie observés`,routeDisabled:`Route désactivée`},issues:{uv_missing_or_corrupt:{title:`Le uv inclus n’est pas disponible`,guidance:`Specrails n’a pas pu démarrer son runtime uv inclus. Réinstallez Specrails ou utilisez Réparer quand le runtime sera disponible.`},network_unavailable:{title:`Headroom n’a pas pu être téléchargé`,guidance:`Vérifiez votre connexion réseau puis réessayez. Specrails gardera l’installation isolée dans son propre dossier d’outils.`},package_resolution_failed:{title:`Les dépendances de Headroom n’ont pas pu être résolues`,guidance:`Réessayez l’installation. Si l’échec persiste, ouvrez les diagnostics et partagez la sortie uv.`},install_permission_failed:{title:`Specrails ne peut pas écrire dans son dossier d’outils`,guidance:`Vérifiez les permissions sous ~/.specrails/tools, puis réessayez l’installation.`},headroom_not_found_after_install:{title:`L’installation est terminée mais Headroom est introuvable`,guidance:`Lancez Réparer l’installation. Specrails réinstallera Headroom et vérifiera l’exécutable.`},learning_setup_failed:{title:`L’apprentissage Headroom n’a pas pu être activé`,guidance:`Headroom est installé, mais la calibration des économies de sortie n’est pas terminée. Continuez à utiliser le routage proxy pendant la collecte d’échantillons.`},metrics_unavailable:{title:`Les métriques Headroom ne sont pas encore disponibles`,guidance:`Commencez à router du trafic via Headroom. Specrails actualisera les économies de tokens dès que le proxy rapportera des échantillons.`},proxy_port_busy:{title:`Le port du proxy Headroom est déjà utilisé`,guidance:`Choisissez un autre port ou arrêtez le processus utilisant le port actuel, puis réessayez l’activation.`},proxy_unhealthy:{title:`Le proxy Headroom n’est pas devenu sain`,guidance:`Réessayez l’activation. Si cela se reproduit, ouvrez les diagnostics pour inspecter la sortie du proxy.`},provider_route_failed:{title:`La vérification de la route du fournisseur a échoué`,guidance:`Specrails n’a pas pu vérifier la route du fournisseur. Le fournisseur reste inactif ; réessayez après avoir consulté les diagnostics.`},provider_config_conflict:{title:`La configuration fournisseur existante entre en conflit avec Headroom`,guidance:`Consultez les diagnostics avant d’activer le routage système. Le routage géré par Specrails reste réversible.`},activation_partially_applied:{title:`L’activation n’a été appliquée que partiellement`,guidance:`Specrails a tenté un rollback. Consultez les diagnostics et réessayez le fournisseur concerné.`},not_installed:{title:`Headroom n’est pas installé`,guidance:`Installez Headroom d’abord, puis activez Codex ou Claude.`},uninstall_failed:{title:`Headroom n’a pas pu être désinstallé`,guidance:`Specrails a désactivé le routage Headroom mais n’a pas pu supprimer l’outil géré. Ouvrez les diagnostics puis réessayez.`},unknown:{title:`L’opération Headroom a échoué`,guidance:`Réessayez l’opération. Si cela se reproduit, ouvrez les diagnostics et partagez les détails.`}}},projectWizard:{configureJira:`Configurer Jira`,installSerena:`Installer Serena`,description:`Sélectionnez le projet où ce plugin local au projet doit être configuré.`,chooseProject:`Choisir un projet`,requiresClaudeProvider:`Nécessite le fournisseur Claude`,selectProjectToContinue:`Sélectionnez un projet pour continuer.`},serena:{loading:`Chargement de Serena…`,titleForProject:`Serena pour {{name}}`,description:`Installe la configuration MCP et l’état du plugin localement au projet. Les autres projets ne sont pas touchés.`,status:`Statut : {{status}}`,files:`Fichiers`,prerequisites:`Prérequis`},projectStatus:{installed:`installé`,deactivated:`désactivé`,"not-installed":`non installé`,orphan:`orphelin`,degraded:`dégradé`},diagnostics:{title:`Diagnostics Headroom`,description:`État technique de l’installation Headroom gérée par Specrails et du proxy.`}},f={page:e,card:t,toggle:n,cachedNotice:r,update:i,conflict:a,orphan:o,installDialog:s,uninstallDialog:c,docs:l,jiraCard:u,plugins:d};export{r as cachedNotice,t as card,a as conflict,f as default,l as docs,s as installDialog,u as jiraCard,o as orphan,e as page,d as plugins,n as toggle,c as uninstallDialog,i as update};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`Integraciones`,subtitle:`Plugins por proyecto. Cada proyecto decide de forma independiente qué integraciones activar.`,selectProject:`Selecciona un proyecto para gestionar sus integraciones.`,deprecated:`Obsoleto`,loadError:`No se pudieron cargar los plugins.`,empty:`Esta build no incluye ningún plugin.`},t={statusActive:`Activo`,statusDeactivated:`Desactivado`,statusDegraded:`Degradado`,updateAvailable:`Actualización disponible`,requires:`Requiere: {{list}}`,deactivatedHint:`Instalado pero desactivado — Claude no lo cargará en la próxima sesión. Activa <strong>Activo</strong> para volver a habilitarlo.`,install:`Instalar`,uninstall:`Desinstalar`},n={titleActive:`Activo — haz clic para desactivar`,titleDeactivated:`Desactivado — haz clic para activar`},r={body:`Claude tiene el plugin del marketplace <strong>instalado pero deshabilitado</strong> en su caché. Puede que siga resolviendo el servidor desde <code>~/.claude/plugins/cache/...</code> aunque el interruptor esté apagado. Para forzar solo el ámbito de proyecto, desinstala el plugin del marketplace desde Claude:`,runInstruction:`Ejecútalo dentro de una sesión activa de Claude y luego reinicia Claude en este proyecto.`},i={body:`El manifiesto incluido ha cambiado desde que lo instalaste (probablemente un renombrado upstream). Reescribe <code>.mcp.json</code> con la entrada canónica — de forma quirúrgica: solo se tocan las claves propiedad del plugin.`,button:`Actualizar la entrada de <code>.mcp.json</code>`},a={body:`<strong>{{name}}</strong> también está habilitado globalmente a través del marketplace de plugins de Claude, lo que eclipsa esta instalación de ámbito de proyecto. Para que esta tarjeta pase a Activo, deshabilita la versión global más abajo — puede volver a habilitarse desde Claude en cualquier momento.`,disableButton:`Deshabilitar <code>{{key}}</code>`},o={badge:`Huérfano`,removeButton:`Eliminar huérfano`},s={title:`Instalar {{name}}`,computingChanges:`Calculando cambios…`,filesHeading:`Archivos que cambiarán`,prerequisites:`Requisitos previos`,autoInstall:`Instalación automática`,progress:`Progreso`,installingPrereq:`Instalando {{name}}…`,prereqStartFailed:`No se pudo iniciar: {{message}}`},c={title:`¿Desinstalar {{name}}?`,body:`Esto revertirá las entradas gestionadas por el plugin en <code>.mcp.json</code> y eliminará los archivos creados por el plugin. Tu código, tu historial y el resto de plugins no se ven afectados.`},l={title:`Documentación`,dialogDescription:`Consulta la documentación incluida de Specrails. Usa la barra lateral para cambiar entre guías.`,sidebarEmpty:`Aún no hay docs`,indexEmpty:`La documentación aparecerá aquí. La guía de usuario se incluye con la app en docs/guide/; añade archivos Markdown en ~/.specrails/docs/guide/ para personalizarla.`,categoryEmpty:`Aún no hay documentos en esta categoría.`,documentCount_one:`{{count}} documento`,documentCount_other:`{{count}} documentos`,categoryCount_one:`{{count}} categoría`,categoryCount_other:`{{count}} categorías`,summary:`{{documents}} en {{categories}}.`,loadError:`No se pudo cargar el documento`},u={title:`Jira`,category:`Seguimiento de incidencias`,description:`Respalda las specs de este proyecto con un tablero de Jira — sincronización bidireccional del estado y un comentario al terminar un rail.`,connectedDescription:`Sincronizado con {{key}}. Las specs reflejan tu tablero de Jira en ambos sentidos.`,connect:`Conectar`,connected:`Conectado`,manage:`Gestionar`,modalTitle:`Conectar con Jira`,manageTitle:`Conexión de Jira`,bullet1:`Sincronización bidireccional del estado con tu tablero de Jira.`,bullet2:`Publica un comentario al terminar un rail.`,bullet3:`Tu backlog de Jira aparece como specs en el tablero.`,requires:`Requiere una cuenta de Jira Cloud o Data Center.`},d={page:{title:`Plugins`,subtitle:`Herramientas globales e integraciones de proyecto, gestionadas desde un solo lugar.`,readyCount_one:`{{count}} listo`,readyCount_other:`{{count}} listos`,openWindow:`Abrir en ventana`},search:{placeholder:`Buscar plugins`},filters:{all:`todos`,global:`globales`,project:`proyecto`},sections:{installed:`Instalados`,available:`Disponibles`},scope:{global:`global`,project:`proyecto`},groups:{global:{title:`Globales`,detail:`Aplican a todo Specrails`},project:{title:`Locales de proyecto`,detail:`Configurados por repositorio`}},empty:{installedSearch:`No hay plugins instalados que coincidan con esta búsqueda.`,installed:`Todavía no hay plugins instalados.`,availableSearch:`No hay plugins disponibles que coincidan con esta búsqueda.`,allInstalled:`Todos los plugins están instalados.`},actions:{install:`Instalar`,installing:`Instalando`,manage:`Gestionar`,review:`Revisar`,cancel:`Cancelar`},status:{attention:`requiere atención`,active:`activo`,externalActive:`externo activo`,external:`externo`,installed:`instalado`,available:`disponible`,configuredCount_one:`{{count}} configurado`,configuredCount_other:`{{count}} configurados`,installedCount_one:`{{count}} instalado`,installedCount_other:`{{count}} instalados`},catalog:{headroom:{description:`Optimiza los lanzamientos de Codex y Claude con Headroom AI.`},jira:{description:`Sincroniza specs del proyecto con un tablero de Jira, mapeo de estados y comentarios de finalización.`},serena:{description:`Navegación semántica de código local al proyecto mediante Serena MCP.`}},headroom:{title:`Headroom AI`,dialogDescription:`Gestiona la instalación global de Headroom y el enrutado por proveedor.`,panelDescription:`Instalado globalmente, activado de forma independiente para Codex y Claude.`,issueCode:`Código: {{code}}`,confirmDetach:`Esto desactiva el enrutado de Specrails y detiene el proxy. La instalación existente de Headroom en el sistema queda intacta.`,confirmUninstall:`Esto desactiva las rutas de Codex y Claude, detiene el proxy y elimina la herramienta Headroom gestionada por Specrails.`,metrics:{install:`Instalación`,checking:`Comprobando`,ready:`Lista`,missing:`Falta`,source:`Origen`,system:`Sistema`,specrails:`Specrails`,none:`Ninguno`,proxy:`Proxy`,starting:`Iniciando`,off:`Apagado`},actions:{installWithUv:`Instalar con uv incluido`,disableAllRoutes:`Desactivar todas las rutas`,viewDiagnostics:`Ver diagnóstico`,detachHeadroom:`Desvincular Headroom`,uninstallHeadroom:`Desinstalar Headroom`,detach:`Desvincular`,uninstall:`Desinstalar`},port:{label:`Puerto del proxy`,apply:`Aplicar`},provider:{noProjectUsesProvider:`Ningún proyecto de Specrails usa este proveedor`,routedThroughHeadroom:`Enrutado mediante Headroom`,detectedExternalRoute:`Ruta externa detectada`,notRouted:`Sin enrutar`},savings:{title:`Ahorro de tokens Headroom`,learningOn:`salida medida`,waitingForOutputSamples:`salida sin medir`,baseline:`base {{method}}`,updatedLive:`actualizado en vivo`,baselineSamples_one:`{{count}} muestra base`,baselineSamples_other:`{{count}} muestras base`,tokens:`tokens`,learning:`Sin datos`,off:`Apagado`,requestDetail:`{{method}} · {{count}} solicitudes`,requestCount:`{{count}} solicitudes`,detected:`detectado`,totals:`Totales`,input:`Entrada`,output:`Salida`,processed:`Procesados`,saved:`Ahorrados`,noData:`Sin datos`,inputSaved:`Entrada ahorrada`,outputSaved:`Salida ahorrada`,inputSavingsActive:`Enrutando mediante Headroom`,statusInputOutput:`Entrada + salida`,statusInputOnly:`Entrada activa`,statusRouting:`Enrutando`,statusInactive:`Inactivo`,methods:{estimated:`estimada`,measured:`medida`,none:`sin medir`},waitingForShapedResponses:`Sin respuestas de salida medidas`,outputObserved:`{{value}} de salida observados`,routeDisabled:`Ruta desactivada`},issues:{uv_missing_or_corrupt:{title:`El uv incluido no está disponible`,guidance:`Specrails no pudo iniciar su runtime uv incluido. Reinstala Specrails o usa Reparar cuando el runtime esté disponible.`},network_unavailable:{title:`No se pudo descargar Headroom`,guidance:`Comprueba tu conexión de red y reintenta. Specrails mantendrá la instalación aislada en su propio directorio de herramientas.`},package_resolution_failed:{title:`No se pudieron resolver las dependencias de Headroom`,guidance:`Reintenta la instalación. Si sigue fallando, abre el diagnóstico y comparte la salida de uv.`},install_permission_failed:{title:`Specrails no puede escribir en su directorio de herramientas`,guidance:`Comprueba los permisos en ~/.specrails/tools y reintenta la instalación.`},headroom_not_found_after_install:{title:`La instalación terminó pero no se encontró Headroom`,guidance:`Ejecuta Reparar instalación. Specrails reinstalará Headroom y verificará el ejecutable.`},learning_setup_failed:{title:`No se pudo activar el aprendizaje de Headroom`,guidance:`Headroom está instalado, pero la calibración de ahorro de salida no terminó. Sigue usando el enrutado por proxy mientras las métricas recopilan muestras.`},metrics_unavailable:{title:`Las métricas de Headroom aún no están disponibles`,guidance:`Empieza a enrutar tráfico por Headroom. Specrails actualizará las métricas de ahorro cuando el proxy reporte muestras.`},proxy_port_busy:{title:`El puerto del proxy de Headroom ya está en uso`,guidance:`Elige otro puerto o detén el proceso que usa el puerto actual y reintenta la activación.`},proxy_unhealthy:{title:`El proxy de Headroom no llegó a estar sano`,guidance:`Reintenta la activación. Si se repite, abre el diagnóstico para inspeccionar la salida del proxy.`},provider_route_failed:{title:`Falló la verificación de ruta del proveedor`,guidance:`Specrails no pudo verificar la ruta del proveedor. El proveedor queda inactivo; reintenta tras revisar el diagnóstico.`},provider_config_conflict:{title:`La configuración existente del proveedor entra en conflicto con Headroom`,guidance:`Revisa el diagnóstico antes de activar el enrutado global. El enrutado gestionado por Specrails es reversible.`},activation_partially_applied:{title:`La activación solo se aplicó parcialmente`,guidance:`Specrails intentó revertir el cambio. Revisa el diagnóstico y reintenta el proveedor afectado.`},not_installed:{title:`Headroom no está instalado`,guidance:`Instala Headroom primero y después activa Codex o Claude.`},uninstall_failed:{title:`No se pudo desinstalar Headroom`,guidance:`Specrails desactivó el enrutado de Headroom pero no pudo eliminar la herramienta gestionada. Abre el diagnóstico y reintenta.`},unknown:{title:`Falló la operación de Headroom`,guidance:`Reintenta la operación. Si se repite, abre el diagnóstico y comparte los detalles.`}}},projectWizard:{configureJira:`Configurar Jira`,installSerena:`Instalar Serena`,description:`Selecciona el proyecto donde debe configurarse este plugin local de proyecto.`,chooseProject:`Elegir proyecto`,requiresClaudeProvider:`Requiere proveedor Claude`,selectProjectToContinue:`Selecciona un proyecto para continuar.`},serena:{loading:`Cargando Serena…`,titleForProject:`Serena para {{name}}`,description:`Instala la configuración MCP y el estado del plugin solo en este proyecto. Los demás proyectos no se tocan.`,status:`Estado: {{status}}`,files:`Archivos`,prerequisites:`Prerrequisitos`},projectStatus:{installed:`instalado`,deactivated:`desactivado`,"not-installed":`no instalado`,orphan:`huérfano`,degraded:`degradado`},diagnostics:{title:`Diagnóstico de Headroom`,description:`Estado técnico de la instalación de Headroom gestionada por Specrails y del proxy.`}},f={page:e,card:t,toggle:n,cachedNotice:r,update:i,conflict:a,orphan:o,installDialog:s,uninstallDialog:c,docs:l,jiraCard:u,plugins:d};export{r as cachedNotice,t as card,a as conflict,f as default,l as docs,s as installDialog,u as jiraCard,o as orphan,e as page,d as plugins,n as toggle,c as uninstallDialog,i as update};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`集成`,subtitle:`按项目管理的插件。每个项目独立决定启用哪些集成。`,selectProject:`选择一个项目以管理集成。`,deprecated:`已弃用`,loadError:`加载插件失败。`,empty:`此构建未捆绑任何插件。`},t={statusActive:`已启用`,statusDeactivated:`已停用`,statusDegraded:`已降级`,updateAvailable:`有可用更新`,requires:`需要:{{list}}`,deactivatedHint:`已安装但已停用 — Claude 下次会话不会加载它。切换<strong>启用</strong>以重新启用。`,install:`安装`,uninstall:`卸载`},n={titleActive:`已启用 — 点击停用`,titleDeactivated:`已停用 — 点击启用`},r={body:`Claude 的缓存中<strong>已安装但已禁用</strong>该 marketplace 插件。即使开关已关闭,它仍可能从 <code>~/.claude/plugins/cache/...</code> 解析该服务器。如需强制仅项目范围,请从 Claude 卸载该 marketplace 插件:`,runInstruction:`在活动的 Claude 会话中运行,然后在此项目中重启 Claude。`},i={body:`自你安装以来,捆绑的 manifest 已发生变化(可能是上游重命名)。用规范条目重写 <code>.mcp.json</code> — 精准操作,仅改动插件所拥有的键。`,button:`更新 <code>.mcp.json</code> 条目`},a={body:`<strong>{{name}}</strong> 也已通过 Claude 的插件 marketplace 全局启用,这会遮蔽此项目范围的安装。要使此卡片变为“已启用”,请在下方禁用全局版本 — 随时可从 Claude 重新启用。`,disableButton:`禁用 <code>{{key}}</code>`},o={badge:`孤立`,removeButton:`移除孤立项`},s={title:`安装 {{name}}`,computingChanges:`正在计算变更…`,filesHeading:`将更改的文件`,prerequisites:`前置条件`,autoInstall:`自动安装`,progress:`进度`,installingPrereq:`正在安装 {{name}}…`,prereqStartFailed:`启动失败:{{message}}`},c={title:`卸载 {{name}}?`,body:`这将还原 <code>.mcp.json</code> 中由插件管理的条目,并删除插件创建的文件。你的代码、历史记录和其他插件不受影响。`},l={title:`文档`,dialogDescription:`浏览捆绑的 Specrails 文档。使用侧边栏在指南间切换。`,sidebarEmpty:`暂无文档`,indexEmpty:`文档将在此处显示。用户指南随应用提供,位于 docs/guide/;将 Markdown 文件放在 ~/.specrails/docs/guide/ 下即可自定义。`,categoryEmpty:`此分类下暂无文档。`,documentCount_one:`{{count}} 篇文档`,documentCount_other:`{{count}} 篇文档`,categoryCount_one:`{{count}} 个分类`,categoryCount_other:`{{count}} 个分类`,summary:`共 {{documents}},分布在 {{categories}}中。`,loadError:`加载文档失败`},u={title:`Jira`,category:`事务跟踪`,description:`用 Jira 看板支撑此项目的规格——状态双向同步,并在 rail 结束时发布完成评论。`,connectedDescription:`已与 {{key}} 同步。规格与你的 Jira 看板双向镜像。`,connect:`连接`,connected:`已连接`,manage:`管理`,modalTitle:`连接到 Jira`,manageTitle:`Jira 连接`,bullet1:`与你的 Jira 看板进行状态双向同步。`,bullet2:`rail 结束时发布完成评论。`,bullet3:`你的 Jira 待办会作为规格出现在看板上。`,requires:`需要 Jira Cloud 或 Data Center 账户。`},d={page:{title:`插件`,subtitle:`在一个位置管理全局工具和项目集成。`,readyCount_one:`{{count}} 个就绪`,readyCount_other:`{{count}} 个就绪`,openWindow:`Open in window`},search:{placeholder:`搜索插件`},filters:{all:`全部`,global:`全局`,project:`项目`},sections:{installed:`已安装`,available:`可用`},scope:{global:`全局`,project:`项目`},groups:{global:{title:`全局`,detail:`适用于整个 Specrails`},project:{title:`项目本地`,detail:`按仓库配置`}},empty:{installedSearch:`没有匹配此搜索的已安装插件。`,installed:`尚未安装插件。`,availableSearch:`没有匹配此搜索的可用插件。`,allInstalled:`所有插件都已安装。`},actions:{install:`安装`,installing:`安装中`,manage:`管理`,review:`检查`,cancel:`取消`},status:{attention:`需要注意`,active:`已启用`,externalActive:`外部已启用`,external:`外部`,installed:`已安装`,available:`可用`,configuredCount_one:`已配置 {{count}} 个`,configuredCount_other:`已配置 {{count}} 个`,installedCount_one:`已安装 {{count}} 个`,installedCount_other:`已安装 {{count}} 个`},catalog:{headroom:{description:`通过 Headroom AI 优化 Codex 和 Claude 启动。`},jira:{description:`将项目 specs 与 Jira 看板、状态映射和完成评论同步。`},serena:{description:`通过 Serena MCP 提供项目本地语义代码导航。`}},headroom:{title:`Headroom AI`,dialogDescription:`管理全局 Headroom 安装和按提供商路由。`,panelDescription:`全局安装,并可分别为 Codex 和 Claude 启用。`,issueCode:`代码:{{code}}`,confirmDetach:`这会禁用 Specrails 路由并停止代理。现有系统 Headroom 安装不会被修改。`,confirmUninstall:`这会禁用 Codex 和 Claude 路由,停止代理,并移除由 Specrails 管理的 Headroom 工具。`,metrics:{install:`安装`,checking:`检查中`,ready:`就绪`,missing:`缺失`,source:`来源`,system:`系统`,specrails:`Specrails`,none:`无`,proxy:`代理`,starting:`启动中`,off:`关闭`},actions:{installWithUv:`使用内置 uv 安装`,disableAllRoutes:`禁用所有路由`,viewDiagnostics:`查看诊断`,detachHeadroom:`解除 Headroom 绑定`,uninstallHeadroom:`卸载 Headroom`,detach:`解除绑定`,uninstall:`卸载`},port:{label:`代理端口`,apply:`应用`},provider:{noProjectUsesProvider:`没有 Specrails 项目使用此提供商`,routedThroughHeadroom:`通过 Headroom 路由`,detectedExternalRoute:`检测到外部路由`,notRouted:`未路由`},savings:{title:`Headroom Token 节省`,learningOn:`输出已测量`,waitingForOutputSamples:`输出未测量`,baseline:`{{method}}基线`,updatedLive:`实时更新`,baselineSamples_one:`{{count}} 个基线样本`,baselineSamples_other:`{{count}} 个基线样本`,tokens:`tokens`,learning:`无数据`,off:`关闭`,requestDetail:`{{method}} · {{count}} 次请求`,requestCount:`{{count}} 次请求`,detected:`已检测`,totals:`总计`,input:`输入`,output:`输出`,processed:`已处理`,saved:`已节省`,noData:`无数据`,inputSaved:`输入节省`,outputSaved:`输出节省`,inputSavingsActive:`正在通过 Headroom 路由`,statusInputOutput:`输入 + 输出`,statusInputOnly:`输入已启用`,statusRouting:`路由中`,statusInactive:`未启用`,methods:{estimated:`估算`,measured:`实测`,none:`无`},waitingForShapedResponses:`尚未测量输出响应`,outputObserved:`已观察到 {{value}} 输出`,routeDisabled:`路由已禁用`},issues:{uv_missing_or_corrupt:{title:`内置 uv 不可用`,guidance:`Specrails 无法启动内置 uv 运行时。请重新安装 Specrails,或在运行时可用后使用修复。`},network_unavailable:{title:`无法下载 Headroom`,guidance:`请检查网络连接并重试。Specrails 会将安装隔离在自己的工具目录中。`},package_resolution_failed:{title:`无法解析 Headroom 依赖`,guidance:`请重试安装。如果仍然失败,请打开诊断并分享 uv 输出。`},install_permission_failed:{title:`Specrails 无法写入工具目录`,guidance:`请检查 ~/.specrails/tools 下的权限,然后重试安装。`},headroom_not_found_after_install:{title:`安装完成但未找到 Headroom`,guidance:`运行修复安装。Specrails 将重新安装 Headroom 并验证可执行文件。`},learning_setup_failed:{title:`无法启用 Headroom 学习`,guidance:`Headroom 已安装,但输出节省校准尚未完成。请继续使用代理路由,等待指标收集样本。`},metrics_unavailable:{title:`Headroom 指标尚不可用`,guidance:`开始通过 Headroom 路由流量。代理报告样本后,Specrails 会刷新 token 节省指标。`},proxy_port_busy:{title:`Headroom 代理端口已被占用`,guidance:`请选择其他端口,或停止占用当前端口的进程,然后重试激活。`},proxy_unhealthy:{title:`Headroom 代理未变为健康状态`,guidance:`请重试激活。如果再次发生,请打开诊断检查代理输出。`},provider_route_failed:{title:`提供商路由验证失败`,guidance:`Specrails 无法验证提供商路由。提供商保持未激活;请查看诊断后重试。`},provider_config_conflict:{title:`现有提供商配置与 Headroom 冲突`,guidance:`启用系统级激活前请查看诊断。Specrails 管理的路由仍可回滚。`},activation_partially_applied:{title:`激活仅部分应用`,guidance:`Specrails 已尝试回滚。请查看诊断并重试受影响的提供商。`},not_installed:{title:`Headroom 未安装`,guidance:`请先安装 Headroom,然后再激活 Codex 或 Claude。`},uninstall_failed:{title:`无法卸载 Headroom`,guidance:`Specrails 已禁用 Headroom 路由,但无法移除托管工具。请打开诊断后重试卸载。`},unknown:{title:`Headroom 操作失败`,guidance:`请重试该操作。如果再次发生,请打开诊断并分享详情。`}}},projectWizard:{configureJira:`配置 Jira`,installSerena:`安装 Serena`,description:`选择要配置此项目级插件的项目。`,chooseProject:`选择项目`,requiresClaudeProvider:`需要 Claude 提供商`,selectProjectToContinue:`选择一个项目以继续。`},serena:{loading:`正在加载 Serena…`,titleForProject:`{{name}} 的 Serena`,description:`安装项目本地 MCP 配置和插件状态。其他项目不会被修改。`,status:`状态:{{status}}`,files:`文件`,prerequisites:`先决条件`},projectStatus:{installed:`已安装`,deactivated:`已停用`,"not-installed":`未安装`,orphan:`孤立`,degraded:`降级`},diagnostics:{title:`Headroom 诊断`,description:`Specrails 管理的 Headroom 安装和代理的技术状态。`}},f={page:e,card:t,toggle:n,cachedNotice:r,update:i,conflict:a,orphan:o,installDialog:s,uninstallDialog:c,docs:l,jiraCard:u,plugins:d};export{r as cachedNotice,t as card,a as conflict,f as default,l as docs,s as installDialog,u as jiraCard,o as orphan,e as page,d as plugins,n as toggle,c as uninstallDialog,i as update};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`Integrações`,subtitle:`Plugins por projeto. Cada projeto decide de forma independente que integrações ativar.`,selectProject:`Selecione um projeto para gerir integrações.`,deprecated:`Descontinuado`,loadError:`Falha ao carregar os plugins.`,empty:`Esta build não inclui nenhum plugin.`},t={statusActive:`Ativo`,statusDeactivated:`Desativado`,statusDegraded:`Degradado`,updateAvailable:`Atualização disponível`,requires:`Requer: {{list}}`,deactivatedHint:`Instalado mas desativado — o Claude não o vai carregar na próxima sessão. Alterne <strong>Ativo</strong> para reativar.`,install:`Instalar`,uninstall:`Desinstalar`},n={titleActive:`Ativo — clique para desativar`,titleDeactivated:`Desativado — clique para ativar`},r={body:`O Claude tem o plugin do marketplace <strong>instalado mas desativado</strong> na cache. Pode ainda resolver o servidor a partir de <code>~/.claude/plugins/cache/...</code> mesmo com o toggle desligado. Para forçar apenas o âmbito do projeto, desinstale o plugin do marketplace no Claude:`,runInstruction:`Execute numa sessão ativa do Claude e depois reinicie o Claude neste projeto.`},i={body:`O manifesto incluído mudou desde a instalação (provavelmente um rename a montante). Reescreva o <code>.mcp.json</code> com a entrada canónica — de forma cirúrgica, só as chaves do plugin são tocadas.`,button:`Atualizar entrada no <code>.mcp.json</code>`},a={body:`<strong>{{name}}</strong> também está ativado globalmente via marketplace de plugins do Claude, o que sobrepõe esta instalação no âmbito do projeto. Para este cartão ficar Ativo, desative a versão global abaixo — pode ser reativada no Claude a qualquer momento.`,disableButton:`Desativar <code>{{key}}</code>`},o={badge:`Órfão`,removeButton:`Remover órfão`},s={title:`Instalar {{name}}`,computingChanges:`A calcular alterações…`,filesHeading:`Ficheiros que vão mudar`,prerequisites:`Pré-requisitos`,autoInstall:`Instalação automática`,progress:`Progresso`,installingPrereq:`A instalar {{name}}…`,prereqStartFailed:`Falha ao iniciar: {{message}}`},c={title:`Desinstalar {{name}}?`,body:`Isto vai reverter as entradas geridas pelo plugin no <code>.mcp.json</code> e remover quaisquer ficheiros criados pelo plugin. O seu código, histórico e outros plugins não são afetados.`},l={title:`Documentação`,dialogDescription:`Consulte a documentação incluída do Specrails. Use a barra lateral para alternar entre guias.`,sidebarEmpty:`Ainda não há docs`,indexEmpty:`A documentação aparecerá aqui. O guia do utilizador é incluído na app em docs/guide/; adicione ficheiros Markdown em ~/.specrails/docs/guide/ para o personalizar.`,categoryEmpty:`Ainda não há documentos nesta categoria.`,documentCount_one:`{{count}} documento`,documentCount_other:`{{count}} documentos`,categoryCount_one:`{{count}} categoria`,categoryCount_other:`{{count}} categorias`,summary:`{{documents}} em {{categories}}.`,loadError:`Falha ao carregar o documento`},u={title:`Jira`,category:`Acompanhamento de tickets`,description:`Apoie as specs deste projeto num quadro Jira — sincronização bidirecional do estado e um comentário quando um rail termina.`,connectedDescription:`Sincronizado com {{key}}. As specs refletem o seu quadro Jira nos dois sentidos.`,connect:`Conectar`,connected:`Conectado`,manage:`Gerir`,modalTitle:`Conectar ao Jira`,manageTitle:`Ligação Jira`,bullet1:`Sincronização bidirecional do estado com o seu quadro Jira.`,bullet2:`Publica um comentário quando um rail termina.`,bullet3:`O seu backlog do Jira aparece como specs no quadro.`,requires:`Requer uma conta Jira Cloud ou Data Center.`},d={page:{title:`Plugins`,subtitle:`Ferramentas globais e integrações de projeto, geridas num só lugar.`,readyCount_one:`{{count}} pronto`,readyCount_other:`{{count}} prontos`,openWindow:`Open in window`},search:{placeholder:`Procurar plugins`},filters:{all:`todos`,global:`globais`,project:`projeto`},sections:{installed:`Instalados`,available:`Disponíveis`},scope:{global:`global`,project:`projeto`},groups:{global:{title:`Globais`,detail:`Aplica-se a todo o Specrails`},project:{title:`Locais do projeto`,detail:`Configurados por repositório`}},empty:{installedSearch:`Nenhum plugin instalado corresponde a esta pesquisa.`,installed:`Ainda não há plugins instalados.`,availableSearch:`Nenhum plugin disponível corresponde a esta pesquisa.`,allInstalled:`Todos os plugins estão instalados.`},actions:{install:`Instalar`,installing:`A instalar`,manage:`Gerir`,review:`Rever`,cancel:`Cancelar`},status:{attention:`atenção`,active:`ativo`,externalActive:`externo ativo`,external:`externo`,installed:`instalado`,available:`disponível`,configuredCount_one:`{{count}} configurado`,configuredCount_other:`{{count}} configurados`,installedCount_one:`{{count}} instalado`,installedCount_other:`{{count}} instalados`},catalog:{headroom:{description:`Otimiza lançamentos do Codex e do Claude através do Headroom AI.`},jira:{description:`Sincroniza specs do projeto com um quadro Jira, mapeamento de estados e comentários de conclusão.`},serena:{description:`Navegação semântica de código local ao projeto através do Serena MCP.`}},headroom:{title:`Headroom AI`,dialogDescription:`Gere a instalação global do Headroom e o encaminhamento por fornecedor.`,panelDescription:`Instalado globalmente, ativado de forma independente para Codex e Claude.`,issueCode:`Código: {{code}}`,confirmDetach:`Isto desativa o encaminhamento do Specrails e para o proxy. A instalação existente do Headroom no sistema fica intacta.`,confirmUninstall:`Isto desativa as rotas Codex e Claude, para o proxy e remove a ferramenta Headroom gerida pelo Specrails.`,metrics:{install:`Instalação`,checking:`A verificar`,ready:`Pronto`,missing:`Em falta`,source:`Origem`,system:`Sistema`,specrails:`Specrails`,none:`Nenhum`,proxy:`Proxy`,starting:`A iniciar`,off:`Desligado`},actions:{installWithUv:`Instalar com uv incluído`,disableAllRoutes:`Desativar todas as rotas`,viewDiagnostics:`Ver diagnóstico`,detachHeadroom:`Desassociar Headroom`,uninstallHeadroom:`Desinstalar Headroom`,detach:`Desassociar`,uninstall:`Desinstalar`},port:{label:`Porta do proxy`,apply:`Aplicar`},provider:{noProjectUsesProvider:`Nenhum projeto Specrails usa este fornecedor`,routedThroughHeadroom:`Encaminhado pelo Headroom`,detectedExternalRoute:`Rota externa detetada`,notRouted:`Sem rota`},savings:{title:`Poupança de tokens Headroom`,learningOn:`saída medida`,waitingForOutputSamples:`saída sem medição`,baseline:`base {{method}}`,updatedLive:`atualizado em direto`,baselineSamples_one:`{{count}} amostra base`,baselineSamples_other:`{{count}} amostras base`,tokens:`tokens`,learning:`Sem dados`,off:`Desligado`,requestDetail:`{{method}} · {{count}} pedidos`,requestCount:`{{count}} pedidos`,detected:`detetado`,totals:`Totais`,input:`Entrada`,output:`Saída`,processed:`Processados`,saved:`Poupados`,noData:`Sem dados`,inputSaved:`Entrada poupada`,outputSaved:`Saída poupada`,inputSavingsActive:`A encaminhar pelo Headroom`,statusInputOutput:`Entrada + saída`,statusInputOnly:`Entrada ativa`,statusRouting:`Encaminhamento ativo`,statusInactive:`Inativo`,methods:{estimated:`estimada`,measured:`medida`,none:`nenhuma`},waitingForShapedResponses:`Sem respostas de saída medidas`,outputObserved:`{{value}} de saída observados`,routeDisabled:`Rota desativada`},issues:{uv_missing_or_corrupt:{title:`O uv incluído não está disponível`,guidance:`O Specrails não conseguiu iniciar o runtime uv incluído. Reinstale o Specrails ou use Reparar quando o runtime estiver disponível.`},network_unavailable:{title:`Não foi possível descarregar o Headroom`,guidance:`Verifique a ligação de rede e tente novamente. O Specrails manterá a instalação isolada no seu próprio diretório de ferramentas.`},package_resolution_failed:{title:`Não foi possível resolver as dependências do Headroom`,guidance:`Tente instalar novamente. Se continuar a falhar, abra o diagnóstico e partilhe a saída do uv.`},install_permission_failed:{title:`O Specrails não consegue escrever no diretório de ferramentas`,guidance:`Verifique as permissões em ~/.specrails/tools e tente instalar novamente.`},headroom_not_found_after_install:{title:`A instalação terminou mas o Headroom não foi encontrado`,guidance:`Execute Reparar instalação. O Specrails reinstalará o Headroom e verificará o executável.`},learning_setup_failed:{title:`Não foi possível ativar a aprendizagem do Headroom`,guidance:`O Headroom está instalado, mas a calibração das poupanças de saída não terminou. Continue a usar o proxy enquanto as métricas recolhem amostras.`},metrics_unavailable:{title:`As métricas do Headroom ainda não estão disponíveis`,guidance:`Comece a encaminhar tráfego pelo Headroom. O Specrails atualizará as métricas de poupança assim que o proxy reportar amostras.`},proxy_port_busy:{title:`A porta do proxy Headroom já está em uso`,guidance:`Escolha outra porta ou pare o processo que usa a porta atual e tente ativar novamente.`},proxy_unhealthy:{title:`O proxy Headroom não ficou saudável`,guidance:`Tente ativar novamente. Se se repetir, abra o diagnóstico para inspecionar a saída do proxy.`},provider_route_failed:{title:`Falhou a verificação da rota do fornecedor`,guidance:`O Specrails não conseguiu verificar a rota do fornecedor. O fornecedor permanece inativo; tente novamente após ver o diagnóstico.`},provider_config_conflict:{title:`A configuração existente do fornecedor conflita com o Headroom`,guidance:`Reveja o diagnóstico antes de ativar o encaminhamento global. O encaminhamento gerido pelo Specrails continua reversível.`},activation_partially_applied:{title:`A ativação foi aplicada apenas parcialmente`,guidance:`O Specrails tentou reverter. Reveja o diagnóstico e tente novamente o fornecedor afetado.`},not_installed:{title:`O Headroom não está instalado`,guidance:`Instale primeiro o Headroom e depois ative Codex ou Claude.`},uninstall_failed:{title:`Não foi possível desinstalar o Headroom`,guidance:`O Specrails desativou o encaminhamento do Headroom mas não conseguiu remover a ferramenta gerida. Abra o diagnóstico e tente novamente.`},unknown:{title:`A operação do Headroom falhou`,guidance:`Tente a operação novamente. Se se repetir, abra o diagnóstico e partilhe os detalhes.`}}},projectWizard:{configureJira:`Configurar Jira`,installSerena:`Instalar Serena`,description:`Selecione o projeto onde este plugin local do projeto deve ser configurado.`,chooseProject:`Escolher projeto`,requiresClaudeProvider:`Requer fornecedor Claude`,selectProjectToContinue:`Selecione um projeto para continuar.`},serena:{loading:`A carregar Serena…`,titleForProject:`Serena para {{name}}`,description:`Instala a configuração MCP e o estado do plugin localmente no projeto. Outros projetos não são alterados.`,status:`Estado: {{status}}`,files:`Ficheiros`,prerequisites:`Pré-requisitos`},projectStatus:{installed:`instalado`,deactivated:`desativado`,"not-installed":`não instalado`,orphan:`órfão`,degraded:`degradado`},diagnostics:{title:`Diagnóstico do Headroom`,description:`Estado técnico da instalação Headroom gerida pelo Specrails e do proxy.`}},f={page:e,card:t,toggle:n,cachedNotice:r,update:i,conflict:a,orphan:o,installDialog:s,uninstallDialog:c,docs:l,jiraCard:u,plugins:d};export{r as cachedNotice,t as card,a as conflict,f as default,l as docs,s as installDialog,u as jiraCard,o as orphan,e as page,d as plugins,n as toggle,c as uninstallDialog,i as update};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`Integrationen`,subtitle:`Plugins pro Projekt. Jedes Projekt entscheidet unabhängig, welche Integrationen aktiviert werden.`,selectProject:`Wähle ein Projekt, um Integrationen zu verwalten.`,deprecated:`Veraltet`,loadError:`Plugins konnten nicht geladen werden.`,empty:`In diesem Build sind keine Plugins gebündelt.`},t={statusActive:`Aktiv`,statusDeactivated:`Deaktiviert`,statusDegraded:`Beeinträchtigt`,updateAvailable:`Update verfügbar`,requires:`Erfordert: {{list}}`,deactivatedHint:`Installiert, aber deaktiviert – Claude lädt es in der nächsten Session nicht. Schalte auf <strong>Aktiv</strong>, um es wieder zu aktivieren.`,install:`Installieren`,uninstall:`Deinstallieren`},n={titleActive:`Aktiv – zum Deaktivieren klicken`,titleDeactivated:`Deaktiviert – zum Aktivieren klicken`},r={body:`Claude hat das Marketplace-Plugin im Cache <strong>installiert, aber deaktiviert</strong>. Es kann den Server weiterhin über <code>~/.claude/plugins/cache/...</code> auflösen, obwohl der Schalter aus ist. Um ausschließlich die projektbezogene Variante zu erzwingen, deinstalliere das Marketplace-Plugin aus Claude:`,runInstruction:`In einer aktiven Claude-Session ausführen, dann Claude in diesem Projekt neu starten.`},i={body:`Das gebündelte Manifest hat sich seit der Installation geändert (vermutlich eine Upstream-Umbenennung). Schreibe <code>.mcp.json</code> mit dem kanonischen Eintrag neu – chirurgisch, nur die vom Plugin verwalteten Schlüssel werden angefasst.`,button:`<code>.mcp.json</code>-Eintrag aktualisieren`},a={body:`<strong>{{name}}</strong> ist zusätzlich global über Claudes Plugin-Marketplace aktiviert, was diese projektbezogene Installation überlagert. Damit diese Karte „Aktiv“ wird, deaktiviere unten die globale Version – sie kann jederzeit wieder über Claude aktiviert werden.`,disableButton:`<code>{{key}}</code> deaktivieren`},o={badge:`Verwaist`,removeButton:`Verwaisten Eintrag entfernen`},s={title:`{{name}} installieren`,computingChanges:`Änderungen werden berechnet…`,filesHeading:`Dateien, die geändert werden`,prerequisites:`Voraussetzungen`,autoInstall:`Automatisch installieren`,progress:`Fortschritt`,installingPrereq:`{{name}} wird installiert…`,prereqStartFailed:`Start fehlgeschlagen: {{message}}`},c={title:`{{name}} deinstallieren?`,body:`Dies setzt die vom Plugin verwalteten Einträge in <code>.mcp.json</code> zurück und entfernt alle vom Plugin erstellten Dateien. Dein Code, deine Historie und andere Plugins sind nicht betroffen.`},l={title:`Dokumentation`,dialogDescription:`Durchstöbere die mitgelieferte Specrails-Dokumentation. Wechsle über die Seitenleiste zwischen den Guides.`,sidebarEmpty:`Noch keine Doku`,indexEmpty:`Die Dokumentation erscheint hier. Das Benutzerhandbuch wird mit der App unter docs/guide/ ausgeliefert; lege Markdown-Dateien unter ~/.specrails/docs/guide/ ab, um es anzupassen.`,categoryEmpty:`Noch keine Dokumente in dieser Kategorie.`,documentCount_one:`{{count}} Dokument`,documentCount_other:`{{count}} Dokumente`,categoryCount_one:`{{count}} Kategorie`,categoryCount_other:`{{count}} Kategorien`,summary:`{{documents}} in {{categories}}.`,loadError:`Dokument konnte nicht geladen werden`},u={title:`Jira`,category:`Vorgangsverfolgung`,description:`Hinterlege die Specs dieses Projekts mit einem Jira-Board — bidirektionale Statussynchronisierung plus ein Kommentar am Ende eines Rails.`,connectedDescription:`Synchronisiert mit {{key}}. Specs spiegeln dein Jira-Board in beide Richtungen.`,connect:`Verbinden`,connected:`Verbunden`,manage:`Verwalten`,modalTitle:`Mit Jira verbinden`,manageTitle:`Jira-Verbindung`,bullet1:`Bidirektionale Statussynchronisierung mit deinem Jira-Board.`,bullet2:`Postet einen Kommentar, wenn ein Rail abschließt.`,bullet3:`Dein Jira-Backlog erscheint als Specs auf dem Board.`,requires:`Erfordert ein Jira-Cloud- oder Data-Center-Konto.`},d={page:{title:`Plugins`,subtitle:`Globale Tools und Projektintegrationen, zentral verwaltet.`,readyCount_one:`{{count}} bereit`,readyCount_other:`{{count}} bereit`,openWindow:`Open in window`},search:{placeholder:`Plugins suchen`},filters:{all:`alle`,global:`global`,project:`projekt`},sections:{installed:`Installiert`,available:`Verfügbar`},scope:{global:`global`,project:`projekt`},groups:{global:{title:`Global`,detail:`Gilt für ganz Specrails`},project:{title:`Projektlokal`,detail:`Pro Repository konfiguriert`}},empty:{installedSearch:`Keine installierten Plugins passen zu dieser Suche.`,installed:`Noch keine Plugins installiert.`,availableSearch:`Keine verfügbaren Plugins passen zu dieser Suche.`,allInstalled:`Alle Plugins sind installiert.`},actions:{install:`Installieren`,installing:`Installieren`,manage:`Verwalten`,review:`Prüfen`,cancel:`Abbrechen`},status:{attention:`Achtung`,active:`aktiv`,externalActive:`extern aktiv`,external:`extern`,installed:`installiert`,available:`verfügbar`,configuredCount_one:`{{count}} konfiguriert`,configuredCount_other:`{{count}} konfiguriert`,installedCount_one:`{{count}} installiert`,installedCount_other:`{{count}} installiert`},catalog:{headroom:{description:`Optimiert Codex- und Claude-Starts mit Headroom AI.`},jira:{description:`Synchronisiert Projektspecs mit einem Jira-Board, Statusmapping und Abschlusskommentaren.`},serena:{description:`Projektlokale semantische Code-Navigation über Serena MCP.`}},headroom:{title:`Headroom AI`,dialogDescription:`Globale Headroom-Installation und Provider-Routing verwalten.`,panelDescription:`Global installiert, separat für Codex und Claude aktivierbar.`,issueCode:`Code: {{code}}`,confirmDetach:`Dies deaktiviert Specrails-Routing und stoppt den Proxy. Die bestehende Systeminstallation von Headroom bleibt unverändert.`,confirmUninstall:`Dies deaktiviert Codex- und Claude-Routen, stoppt den Proxy und entfernt das von Specrails verwaltete Headroom-Tool.`,metrics:{install:`Installation`,checking:`Prüfen`,ready:`Bereit`,missing:`Fehlt`,source:`Quelle`,system:`System`,specrails:`Specrails`,none:`Keine`,proxy:`Proxy`,starting:`Startet`,off:`Aus`},actions:{installWithUv:`Mit gebündeltem uv installieren`,disableAllRoutes:`Alle Routen deaktivieren`,viewDiagnostics:`Diagnose anzeigen`,detachHeadroom:`Headroom trennen`,uninstallHeadroom:`Headroom deinstallieren`,detach:`Trennen`,uninstall:`Deinstallieren`},port:{label:`Proxy-Port`,apply:`Anwenden`},provider:{noProjectUsesProvider:`Kein Specrails-Projekt nutzt diesen Provider`,routedThroughHeadroom:`Über Headroom geroutet`,detectedExternalRoute:`Externe Route erkannt`,notRouted:`Nicht geroutet`},savings:{title:`Headroom-Tokenersparnis`,learningOn:`Ausgabe gemessen`,waitingForOutputSamples:`Ausgabe nicht gemessen`,baseline:`{{method}}e Basislinie`,updatedLive:`live aktualisiert`,baselineSamples_one:`{{count}} Basisbeispiel`,baselineSamples_other:`{{count}} Basisbeispiele`,tokens:`Tokens`,learning:`Keine Daten`,off:`Aus`,requestDetail:`{{method}} · {{count}} Anfragen`,requestCount:`{{count}} Anfragen`,detected:`erkannt`,totals:`Gesamt`,input:`Eingabe`,output:`Ausgabe`,processed:`Verarbeitet`,saved:`Gespart`,noData:`Keine Daten`,inputSaved:`Eingabe gespart`,outputSaved:`Ausgabe gespart`,inputSavingsActive:`Routing über Headroom`,statusInputOutput:`Eingabe + Ausgabe`,statusInputOnly:`Eingabe aktiv`,statusRouting:`Routing aktiv`,statusInactive:`Inaktiv`,methods:{estimated:`geschätzt`,measured:`gemessen`,none:`keine`},waitingForShapedResponses:`Noch keine Ausgabeantworten gemessen`,outputObserved:`{{value}} Ausgabe beobachtet`,routeDisabled:`Route deaktiviert`},issues:{uv_missing_or_corrupt:{title:`Gebündeltes uv ist nicht verfügbar`,guidance:`Specrails konnte die gebündelte uv-Laufzeit nicht starten. Installiere Specrails neu oder nutze Reparieren, sobald die Laufzeit verfügbar ist.`},network_unavailable:{title:`Headroom konnte nicht heruntergeladen werden`,guidance:`Prüfe die Netzwerkverbindung und versuche es erneut. Specrails hält die Installation isoliert in seinem eigenen Tool-Verzeichnis.`},package_resolution_failed:{title:`Headroom-Abhängigkeiten konnten nicht aufgelöst werden`,guidance:`Versuche die Installation erneut. Wenn sie weiter fehlschlägt, öffne die Diagnose und teile die uv-Ausgabe.`},install_permission_failed:{title:`Specrails kann nicht in sein Tool-Verzeichnis schreiben`,guidance:`Prüfe die Berechtigungen unter ~/.specrails/tools und versuche die Installation erneut.`},headroom_not_found_after_install:{title:`Installation abgeschlossen, aber Headroom wurde nicht gefunden`,guidance:`Führe Installation reparieren aus. Specrails installiert Headroom neu und prüft die ausführbare Datei.`},learning_setup_failed:{title:`Headroom-Lernen konnte nicht aktiviert werden`,guidance:`Headroom ist installiert, aber die Kalibrierung der Ausgabeersparnis wurde nicht abgeschlossen. Nutze weiter das Proxy-Routing, während Metriken Beispiele sammeln.`},metrics_unavailable:{title:`Headroom-Metriken sind noch nicht verfügbar`,guidance:`Route Traffic über Headroom. Specrails aktualisiert Token-Ersparnisse, sobald der Proxy Beispiele meldet.`},proxy_port_busy:{title:`Der Headroom-Proxy-Port ist bereits belegt`,guidance:`Wähle einen anderen Port oder stoppe den Prozess auf dem aktuellen Port und versuche die Aktivierung erneut.`},proxy_unhealthy:{title:`Der Headroom-Proxy wurde nicht fehlerfrei`,guidance:`Versuche die Aktivierung erneut. Wenn es wieder passiert, öffne die Diagnose und prüfe die Proxy-Ausgabe.`},provider_route_failed:{title:`Provider-Routenprüfung fehlgeschlagen`,guidance:`Specrails konnte die Provider-Route nicht prüfen. Der Provider bleibt inaktiv; versuche es nach der Diagnose erneut.`},provider_config_conflict:{title:`Bestehende Provider-Konfiguration kollidiert mit Headroom`,guidance:`Prüfe die Diagnose, bevor du systemweites Routing aktivierst. Von Specrails verwaltetes Routing bleibt rückgängig machbar.`},activation_partially_applied:{title:`Aktivierung wurde nur teilweise angewendet`,guidance:`Specrails hat ein Rollback versucht. Prüfe die Diagnose und versuche den betroffenen Provider erneut.`},not_installed:{title:`Headroom ist nicht installiert`,guidance:`Installiere zuerst Headroom und aktiviere dann Codex oder Claude.`},uninstall_failed:{title:`Headroom konnte nicht deinstalliert werden`,guidance:`Specrails hat Headroom-Routing deaktiviert, konnte das verwaltete Tool aber nicht entfernen. Öffne die Diagnose und versuche es erneut.`},unknown:{title:`Headroom-Vorgang fehlgeschlagen`,guidance:`Versuche den Vorgang erneut. Wenn es wieder passiert, öffne die Diagnose und teile die Details.`}}},projectWizard:{configureJira:`Jira konfigurieren`,installSerena:`Serena installieren`,description:`Wähle das Projekt aus, in dem dieses projektbezogene Plugin konfiguriert werden soll.`,chooseProject:`Projekt wählen`,requiresClaudeProvider:`Erfordert Claude-Provider`,selectProjectToContinue:`Wähle ein Projekt aus, um fortzufahren.`},serena:{loading:`Serena wird geladen…`,titleForProject:`Serena für {{name}}`,description:`Installiert projektlokale MCP-Konfiguration und Plugin-Status. Andere Projekte bleiben unverändert.`,status:`Status: {{status}}`,files:`Dateien`,prerequisites:`Voraussetzungen`},projectStatus:{installed:`installiert`,deactivated:`deaktiviert`,"not-installed":`nicht installiert`,orphan:`verwaist`,degraded:`beeinträchtigt`},diagnostics:{title:`Headroom-Diagnose`,description:`Technischer Status der von Specrails verwalteten Headroom-Installation und des Proxys.`}},f={page:e,card:t,toggle:n,cachedNotice:r,update:i,conflict:a,orphan:o,installDialog:s,uninstallDialog:c,docs:l,jiraCard:u,plugins:d};export{r as cachedNotice,t as card,a as conflict,f as default,l as docs,s as installDialog,u as jiraCard,o as orphan,e as page,d as plugins,n as toggle,c as uninstallDialog,i as update};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`インテグレーション`,subtitle:`プロジェクトごとのプラグイン。どのインテグレーションを有効にするかは各プロジェクトが独立して決定します。`,selectProject:`インテグレーションを管理するプロジェクトを選択してください。`,deprecated:`非推奨`,loadError:`プラグインの読み込みに失敗しました。`,empty:`このビルドにはプラグインが同梱されていません。`},t={statusActive:`有効`,statusDeactivated:`無効`,statusDegraded:`劣化`,updateAvailable:`アップデートあり`,requires:`必要条件: {{list}}`,deactivatedHint:`インストール済みですが無効です — 次のセッションで Claude は読み込みません。再有効化するには<strong>有効</strong>に切り替えてください。`,install:`インストール`,uninstall:`アンインストール`},n={titleActive:`有効 — クリックで無効化`,titleDeactivated:`無効 — クリックで有効化`},r={body:`Claude のキャッシュにはマーケットプレイス版プラグインが<strong>インストール済みかつ無効</strong>の状態で残っています。トグルがオフでも <code>~/.claude/plugins/cache/...</code> からサーバーを解決する可能性があります。プロジェクトスコープのみに限定するには、Claude からマーケットプレイス版プラグインをアンインストールしてください:`,runInstruction:`アクティブな Claude セッション内で実行し、その後このプロジェクトで Claude を再起動してください。`},i={body:`インストール後に同梱マニフェストが変更されました (おそらく上流での名前変更)。<code>.mcp.json</code> を正規のエントリで書き直します — 外科的な変更で、プラグインが所有するキーのみが対象です。`,button:`<code>.mcp.json</code> エントリを更新`},a={body:`<strong>{{name}}</strong> は Claude のプラグインマーケットプレイス経由でグローバルにも有効になっており、このプロジェクトスコープのインストールを覆い隠しています。このカードを有効にするには、下のグローバル版を無効にしてください — Claude からいつでも再有効化できます。`,disableButton:`<code>{{key}}</code> を無効化`},o={badge:`孤立`,removeButton:`孤立エントリを削除`},s={title:`{{name}} をインストール`,computingChanges:`変更内容を計算中…`,filesHeading:`変更されるファイル`,prerequisites:`前提条件`,autoInstall:`自動インストール`,progress:`進行状況`,installingPrereq:`{{name}} をインストール中…`,prereqStartFailed:`開始に失敗しました: {{message}}`},c={title:`{{name}} をアンインストールしますか?`,body:`<code>.mcp.json</code> 内のプラグイン管理エントリを元に戻し、プラグインが作成したファイルを削除します。コード、履歴、他のプラグインには影響しません。`},l={title:`ドキュメント`,dialogDescription:`同梱の Specrails ドキュメントを閲覧できます。サイドバーでガイドを切り替えてください。`,sidebarEmpty:`ドキュメントはまだありません`,indexEmpty:`ドキュメントはここに表示されます。ユーザーガイドはアプリに同梱され docs/guide/ にあります。~/.specrails/docs/guide/ 以下に Markdown ファイルを置くとカスタマイズできます。`,categoryEmpty:`このカテゴリにはまだドキュメントがありません。`,documentCount_one:`{{count}} 件のドキュメント`,documentCount_other:`{{count}} 件のドキュメント`,categoryCount_one:`{{count}} カテゴリ`,categoryCount_other:`{{count}} カテゴリ`,summary:`{{categories}}にわたって{{documents}}。`,loadError:`ドキュメントの読み込みに失敗しました`},u={title:`Jira`,category:`課題トラッキング`,description:`このプロジェクトのスペックを Jira ボードで裏付け — ステータスを双方向同期し、rail 完了時にコメントを投稿します。`,connectedDescription:`{{key}} と同期済み。スペックは Jira ボードと双方向でミラーされます。`,connect:`接続`,connected:`接続済み`,manage:`管理`,modalTitle:`Jira に接続`,manageTitle:`Jira 接続`,bullet1:`Jira ボードとステータスを双方向同期。`,bullet2:`rail 完了時にコメントを投稿。`,bullet3:`Jira のバックログがボードにスペックとして表示されます。`,requires:`Jira Cloud または Data Center のアカウントが必要です。`},d={page:{title:`プラグイン`,subtitle:`グローバルツールとプロジェクト連携を 1 か所で管理します。`,readyCount_one:`{{count}} 件準備完了`,readyCount_other:`{{count}} 件準備完了`,openWindow:`Open in window`},search:{placeholder:`プラグインを検索`},filters:{all:`すべて`,global:`グローバル`,project:`プロジェクト`},sections:{installed:`インストール済み`,available:`利用可能`},scope:{global:`グローバル`,project:`プロジェクト`},groups:{global:{title:`グローバル`,detail:`Specrails 全体に適用`},project:{title:`プロジェクトローカル`,detail:`リポジトリごとに設定`}},empty:{installedSearch:`この検索に一致するインストール済みプラグインはありません。`,installed:`インストール済みプラグインはまだありません。`,availableSearch:`この検索に一致する利用可能なプラグインはありません。`,allInstalled:`すべてのプラグインがインストール済みです。`},actions:{install:`インストール`,installing:`インストール中`,manage:`管理`,review:`確認`,cancel:`キャンセル`},status:{attention:`要確認`,active:`有効`,externalActive:`外部で有効`,external:`外部`,installed:`インストール済み`,available:`利用可能`,configuredCount_one:`{{count}} 件設定済み`,configuredCount_other:`{{count}} 件設定済み`,installedCount_one:`{{count}} 件インストール済み`,installedCount_other:`{{count}} 件インストール済み`},catalog:{headroom:{description:`Headroom AI で Codex と Claude の起動を最適化します。`},jira:{description:`プロジェクト specs を Jira ボード、ステータスマッピング、完了コメントと同期します。`},serena:{description:`Serena MCP によるプロジェクトローカルのセマンティックコードナビゲーション。`}},headroom:{title:`Headroom AI`,dialogDescription:`Headroom のグローバルインストールとプロバイダー別ルーティングを管理します。`,panelDescription:`グローバルにインストールされ、Codex と Claude で個別に有効化できます。`,issueCode:`コード: {{code}}`,confirmDetach:`Specrails ルーティングを無効化し、プロキシを停止します。既存のシステム Headroom インストールは変更されません。`,confirmUninstall:`Codex と Claude のルートを無効化し、プロキシを停止して、Specrails 管理の Headroom ツールを削除します。`,metrics:{install:`インストール`,checking:`確認中`,ready:`準備完了`,missing:`未検出`,source:`ソース`,system:`システム`,specrails:`Specrails`,none:`なし`,proxy:`プロキシ`,starting:`起動中`,off:`オフ`},actions:{installWithUv:`同梱 uv でインストール`,disableAllRoutes:`すべてのルートを無効化`,viewDiagnostics:`診断を表示`,detachHeadroom:`Headroom を切り離す`,uninstallHeadroom:`Headroom をアンインストール`,detach:`切り離す`,uninstall:`アンインストール`},port:{label:`プロキシポート`,apply:`適用`},provider:{noProjectUsesProvider:`このプロバイダーを使う Specrails プロジェクトはありません`,routedThroughHeadroom:`Headroom 経由でルーティング中`,detectedExternalRoute:`外部ルートを検出`,notRouted:`未ルーティング`},savings:{title:`Headroom トークン節約`,learningOn:`出力を測定済み`,waitingForOutputSamples:`出力は未測定`,baseline:`{{method}}ベースライン`,updatedLive:`ライブ更新`,baselineSamples_one:`{{count}} 件のベースラインサンプル`,baselineSamples_other:`{{count}} 件のベースラインサンプル`,tokens:`tokens`,learning:`データなし`,off:`オフ`,requestDetail:`{{method}} · {{count}} 件のリクエスト`,requestCount:`{{count}} 件のリクエスト`,detected:`検出済み`,totals:`合計`,input:`入力`,output:`出力`,processed:`処理済み`,saved:`節約`,noData:`データなし`,inputSaved:`入力の節約`,outputSaved:`出力の節約`,inputSavingsActive:`Headroom 経由でルーティング中`,statusInputOutput:`入力 + 出力`,statusInputOnly:`入力有効`,statusRouting:`ルーティング中`,statusInactive:`非アクティブ`,methods:{estimated:`推定`,measured:`測定`,none:`なし`},waitingForShapedResponses:`出力レスポンスは未測定`,outputObserved:`{{value}} の出力を確認済み`,routeDisabled:`ルート無効`},issues:{uv_missing_or_corrupt:{title:`同梱 uv が利用できません`,guidance:`Specrails は同梱 uv ランタイムを起動できませんでした。Specrails を再インストールするか、ランタイムが利用可能になったら修復を使ってください。`},network_unavailable:{title:`Headroom をダウンロードできませんでした`,guidance:`ネットワーク接続を確認して再試行してください。Specrails はインストールを専用ツールディレクトリに隔離します。`},package_resolution_failed:{title:`Headroom の依存関係を解決できませんでした`,guidance:`インストールを再試行してください。失敗が続く場合は診断を開き、uv の出力を共有してください。`},install_permission_failed:{title:`Specrails がツールディレクトリに書き込めません`,guidance:`~/.specrails/tools の権限を確認し、インストールを再試行してください。`},headroom_not_found_after_install:{title:`インストール完了後に Headroom が見つかりませんでした`,guidance:`インストール修復を実行してください。Specrails が Headroom を再インストールし、実行ファイルを検証します。`},learning_setup_failed:{title:`Headroom 学習を有効化できませんでした`,guidance:`Headroom はインストール済みですが、出力節約のキャリブレーションが完了していません。メトリクスがサンプルを収集するまでプロキシルーティングを使い続けてください。`},metrics_unavailable:{title:`Headroom メトリクスはまだ利用できません`,guidance:`Headroom 経由でトラフィックをルーティングしてください。プロキシがサンプルを報告すると、Specrails が token 節約メトリクスを更新します。`},proxy_port_busy:{title:`Headroom プロキシポートは既に使用中です`,guidance:`別のポートを選ぶか、現在のポートを使用しているプロセスを停止してから有効化を再試行してください。`},proxy_unhealthy:{title:`Headroom プロキシが正常状態になりませんでした`,guidance:`有効化を再試行してください。繰り返す場合は診断を開いてプロキシ出力を確認してください。`},provider_route_failed:{title:`プロバイダールートの検証に失敗しました`,guidance:`Specrails はプロバイダールートを検証できませんでした。プロバイダーは非アクティブのままです。診断確認後に再試行してください。`},provider_config_conflict:{title:`既存のプロバイダー設定が Headroom と競合しています`,guidance:`システム全体の有効化前に診断を確認してください。Specrails 管理のルーティングは元に戻せます。`},activation_partially_applied:{title:`有効化は一部のみ適用されました`,guidance:`Specrails はロールバックを試みました。診断を確認し、対象プロバイダーを再試行してください。`},not_installed:{title:`Headroom はインストールされていません`,guidance:`まず Headroom をインストールし、その後 Codex または Claude を有効化してください。`},uninstall_failed:{title:`Headroom をアンインストールできませんでした`,guidance:`Specrails は Headroom ルーティングを無効化しましたが、管理ツールを削除できませんでした。診断を開いて再試行してください。`},unknown:{title:`Headroom 操作に失敗しました`,guidance:`操作を再試行してください。繰り返す場合は診断を開き、詳細を共有してください。`}}},projectWizard:{configureJira:`Jira を設定`,installSerena:`Serena をインストール`,description:`このプロジェクトスコープのプラグインを設定するプロジェクトを選択してください。`,chooseProject:`プロジェクトを選択`,requiresClaudeProvider:`Claude プロバイダーが必要`,selectProjectToContinue:`続行するプロジェクトを選択してください。`},serena:{loading:`Serena を読み込み中…`,titleForProject:`{{name}} の Serena`,description:`プロジェクトローカルの MCP 設定とプラグイン状態をインストールします。他のプロジェクトは変更されません。`,status:`ステータス: {{status}}`,files:`ファイル`,prerequisites:`前提条件`},projectStatus:{installed:`インストール済み`,deactivated:`無効`,"not-installed":`未インストール`,orphan:`孤立`,degraded:`劣化`},diagnostics:{title:`Headroom 診断`,description:`Specrails 管理の Headroom インストールとプロキシの技術ステータス。`}},f={page:e,card:t,toggle:n,cachedNotice:r,update:i,conflict:a,orphan:o,installDialog:s,uninstallDialog:c,docs:l,jiraCard:u,plugins:d};export{r as cachedNotice,t as card,a as conflict,f as default,l as docs,s as installDialog,u as jiraCard,o as orphan,e as page,d as plugins,n as toggle,c as uninstallDialog,i as update};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({cachedNotice:()=>a,card:()=>r,conflict:()=>s,default:()=>m,docs:()=>d,installDialog:()=>l,jiraCard:()=>f,orphan:()=>c,page:()=>n,plugins:()=>p,toggle:()=>i,uninstallDialog:()=>u,update:()=>o}),n={title:`Integrations`,subtitle:`Per-project plugins. Each project decides which integrations to enable independently.`,selectProject:`Select a project to manage integrations.`,deprecated:`Deprecated`,loadError:`Failed to load plugins.`,empty:`No plugins are bundled with this build.`},r={statusActive:`Active`,statusDeactivated:`Deactivated`,statusDegraded:`Degraded`,updateAvailable:`Update available`,requires:`Requires: {{list}}`,deactivatedHint:`Installed but deactivated — Claude won't load it next session. Toggle <strong>Active</strong> to re-enable.`,install:`Install`,uninstall:`Uninstall`},i={titleActive:`Active — click to deactivate`,titleDeactivated:`Deactivated — click to activate`},a={body:`Claude has the marketplace plugin <strong>installed but disabled</strong> in its cache. It may still resolve the server from <code>~/.claude/plugins/cache/...</code> even though the toggle is off. To force project-scoped only, uninstall the marketplace plugin from Claude:`,runInstruction:`Run inside an active Claude session, then restart Claude in this project.`},o={body:`The bundled manifest changed since you installed (likely an upstream rename). Re-write <code>.mcp.json</code> with the canonical entry — surgical, only the plugin's owned keys are touched.`,button:`Update <code>.mcp.json</code> entry`},s={body:`<strong>{{name}}</strong> is also enabled globally via Claude's plugin marketplace, which shadows this project-scoped install. To make this card go Active, disable the global version below — it can be re-enabled from Claude any time.`,disableButton:`Disable <code>{{key}}</code>`},c={badge:`Orphan`,removeButton:`Remove orphan`},l={title:`Install {{name}}`,computingChanges:`Computing changes…`,filesHeading:`Files that will change`,prerequisites:`Prerequisites`,autoInstall:`Auto-install`,progress:`Progress`,installingPrereq:`Installing {{name}}…`,prereqStartFailed:`Failed to start: {{message}}`},u={title:`Uninstall {{name}}?`,body:`This will revert plugin-managed entries in <code>.mcp.json</code> and remove any plugin-created files. Your code, history, and other plugins are not affected.`},d={title:`Documentation`,dialogDescription:`Browse the bundled Specrails documentation. Use the sidebar to switch between guides.`,sidebarEmpty:`No docs yet`,indexEmpty:`Documentation will appear here. The user guide ships with the app under docs/guide/; drop Markdown files under ~/.specrails/docs/guide/ to customize it.`,categoryEmpty:`No documents in this category yet.`,documentCount_one:`{{count}} document`,documentCount_other:`{{count}} documents`,categoryCount_one:`{{count}} category`,categoryCount_other:`{{count}} categories`,summary:`{{documents}} across {{categories}}.`,loadError:`Failed to load document`},f={title:`Jira`,category:`Issue tracking`,description:`Back this project's specs with a Jira board — two-way sync of status, plus a completion comment when a rail finishes.`,connectedDescription:`Synced with {{key}}. Specs mirror your Jira board both ways.`,connect:`Connect`,connected:`Connected`,manage:`Manage`,modalTitle:`Connect to Jira`,manageTitle:`Jira connection`,bullet1:`Two-way status sync with your Jira board.`,bullet2:`Posts a completion comment when a rail finishes.`,bullet3:`Your Jira backlog appears as specs on the board.`,requires:`Requires a Jira Cloud or Data Center account.`},p={page:{title:`Plugins`,subtitle:`Global tools and project integrations, managed from one place.`,readyCount_one:`{{count}} ready`,readyCount_other:`{{count}} ready`,openWindow:`Open in window`},search:{placeholder:`Search plugins`},filters:{all:`all`,global:`global`,project:`project`},sections:{installed:`Installed`,available:`Available`},scope:{global:`global`,project:`project`},groups:{global:{title:`Global`,detail:`Applies across Specrails`},project:{title:`Project-local`,detail:`Configured per repository`}},empty:{installedSearch:`No installed plugins match this search.`,installed:`No installed plugins yet.`,availableSearch:`No available plugins match this search.`,allInstalled:`All plugins are installed.`},actions:{install:`Install`,installing:`Installing`,manage:`Manage`,review:`Review`,cancel:`Cancel`},status:{attention:`attention`,active:`active`,externalActive:`external active`,external:`external`,installed:`installed`,available:`available`,configuredCount_one:`{{count}} configured`,configuredCount_other:`{{count}} configured`,installedCount_one:`{{count}} installed`,installedCount_other:`{{count}} installed`},catalog:{headroom:{description:`Optimize Codex and Claude launches through Headroom AI.`},jira:{description:`Sync project specs with a Jira board, status mapping, and completion comments.`},serena:{description:`Project-local semantic code navigation through Serena MCP.`}},headroom:{title:`Headroom AI`,dialogDescription:`Manage the global Headroom installation and provider routing.`,panelDescription:`Installed globally, activated independently for Codex and Claude.`,issueCode:`Code: {{code}}`,confirmDetach:`This disables Specrails routing and stops the proxy. The existing system Headroom install is left untouched.`,confirmUninstall:`This disables Codex and Claude routes, stops the proxy, and removes the Specrails-managed Headroom tool.`,metrics:{install:`Install`,checking:`Checking`,ready:`Ready`,missing:`Missing`,source:`Source`,system:`System`,specrails:`Specrails`,none:`None`,proxy:`Proxy`,starting:`Starting`,off:`Off`},actions:{installWithUv:`Install with bundled uv`,disableAllRoutes:`Disable all routes`,viewDiagnostics:`View diagnostics`,detachHeadroom:`Detach Headroom`,uninstallHeadroom:`Uninstall Headroom`,detach:`Detach`,uninstall:`Uninstall`},port:{label:`Proxy port`,apply:`Apply`},provider:{noProjectUsesProvider:`No Specrails project uses this provider`,routedThroughHeadroom:`Routed through Headroom`,detectedExternalRoute:`Detected external route`,notRouted:`Not routed`},savings:{title:`Headroom Token Savings`,learningOn:`output measured`,waitingForOutputSamples:`output not measured`,baseline:`{{method}} baseline`,updatedLive:`updated live`,baselineSamples_one:`{{count}} baseline sample`,baselineSamples_other:`{{count}} baseline samples`,tokens:`tokens`,learning:`No data`,off:`Off`,requestDetail:`{{method}} · {{count}} requests`,requestCount:`{{count}} requests`,detected:`detected`,totals:`Totals`,input:`Input`,output:`Output`,processed:`Processed`,saved:`Saved`,noData:`No data`,inputSaved:`Input saved`,outputSaved:`Output saved`,inputSavingsActive:`Routing through Headroom`,statusInputOutput:`Input + output`,statusInputOnly:`Input active`,statusRouting:`Routing active`,statusInactive:`Inactive`,methods:{estimated:`estimated`,measured:`measured`,none:`none`},waitingForShapedResponses:`No output responses measured yet`,outputObserved:`{{value}} output observed`,routeDisabled:`Route disabled`},issues:{uv_missing_or_corrupt:{title:`Bundled uv is not available`,guidance:`Specrails could not start its bundled uv runtime. Reinstall Specrails or use Repair once the runtime is available.`},network_unavailable:{title:`Headroom could not be downloaded`,guidance:`Check your network connection and retry. Specrails will keep the install isolated in its own tool directory.`},package_resolution_failed:{title:`Headroom dependencies could not be resolved`,guidance:`Retry the install. If it keeps failing, open diagnostics and share the uv output.`},install_permission_failed:{title:`Specrails cannot write its tool directory`,guidance:`Check permissions under ~/.specrails/tools, then retry the install.`},headroom_not_found_after_install:{title:`Install finished but Headroom was not found`,guidance:`Run Repair install. Specrails will reinstall Headroom and verify the executable.`},learning_setup_failed:{title:`Headroom learning could not be enabled`,guidance:`Headroom is installed, but output-savings calibration did not finish. Keep using proxy routing while metrics collect output samples.`},metrics_unavailable:{title:`Headroom metrics are not available yet`,guidance:`Start routing traffic through Headroom. Specrails will refresh token-savings metrics as soon as the proxy reports samples.`},proxy_port_busy:{title:`Headroom proxy port is already in use`,guidance:`Choose another port or stop the process using the current port, then retry activation.`},proxy_unhealthy:{title:`Headroom proxy did not become healthy`,guidance:`Retry activation. If it repeats, open diagnostics to inspect the proxy output.`},provider_route_failed:{title:`Provider route verification failed`,guidance:`Specrails could not verify the provider route. The provider remains inactive; retry after checking diagnostics.`},provider_config_conflict:{title:`Existing provider configuration conflicts with Headroom`,guidance:`Review diagnostics before enabling system-wide activation. Specrails-managed routing remains reversible.`},activation_partially_applied:{title:`Activation was only partially applied`,guidance:`Specrails attempted rollback. Review diagnostics and retry the affected provider.`},not_installed:{title:`Headroom is not installed`,guidance:`Install Headroom first, then activate Codex or Claude.`},uninstall_failed:{title:`Headroom could not be uninstalled`,guidance:`Specrails disabled Headroom routing but could not remove the managed tool. Open diagnostics, then retry uninstall.`},unknown:{title:`Headroom operation failed`,guidance:`Retry the operation. If it repeats, open diagnostics and share the details.`}}},projectWizard:{configureJira:`Configure Jira`,installSerena:`Install Serena`,description:`Select the project where this project-scoped plugin should be configured.`,chooseProject:`Choose project`,requiresClaudeProvider:`Requires Claude provider`,selectProjectToContinue:`Select a project to continue.`},serena:{loading:`Loading Serena…`,titleForProject:`Serena for {{name}}`,description:`Installs project-local MCP configuration and plugin state. Other projects are untouched.`,status:`Status: {{status}}`,files:`Files`,prerequisites:`Prerequisites`},projectStatus:{installed:`installed`,deactivated:`deactivated`,"not-installed":`not installed`,orphan:`orphan`,degraded:`degraded`},diagnostics:{title:`Headroom diagnostics`,description:`Technical status for the Specrails-managed Headroom installation and proxy.`}},m={page:n,card:r,toggle:i,cachedNotice:a,update:o,conflict:s,orphan:c,installDialog:l,uninstallDialog:u,docs:d,jiraCard:f,plugins:p};export{t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`Integrazioni`,subtitle:`Plugin per progetto. Ogni progetto decide in autonomia quali integrazioni abilitare.`,selectProject:`Seleziona un progetto per gestire le integrazioni.`,deprecated:`Deprecato`,loadError:`Impossibile caricare i plugin.`,empty:`Nessun plugin incluso in questa build.`},t={statusActive:`Attivo`,statusDeactivated:`Disattivato`,statusDegraded:`Degradato`,updateAvailable:`Aggiornamento disponibile`,requires:`Richiede: {{list}}`,deactivatedHint:`Installato ma disattivato — Claude non lo caricherà nella prossima sessione. Imposta su <strong>Attivo</strong> per riabilitarlo.`,install:`Installa`,uninstall:`Disinstalla`},n={titleActive:`Attivo — clicca per disattivare`,titleDeactivated:`Disattivato — clicca per attivare`},r={body:`Claude ha il plugin del marketplace <strong>installato ma disabilitato</strong> nella sua cache. Potrebbe comunque risolvere il server da <code>~/.claude/plugins/cache/...</code> anche con l'interruttore disattivato. Per forzare il solo ambito di progetto, disinstalla il plugin del marketplace da Claude:`,runInstruction:`Esegui all'interno di una sessione Claude attiva, poi riavvia Claude in questo progetto.`},i={body:`Il manifest incluso è cambiato dopo l'installazione (probabilmente una rinomina upstream). Riscrivi <code>.mcp.json</code> con la voce canonica — intervento chirurgico, vengono toccate solo le chiavi di proprietà del plugin.`,button:`Aggiorna la voce in <code>.mcp.json</code>`},a={body:`<strong>{{name}}</strong> è abilitato anche globalmente tramite il marketplace dei plugin di Claude, che mette in ombra questa installazione a livello di progetto. Per rendere Attiva questa scheda, disabilita qui sotto la versione globale — potrà essere riabilitata da Claude in qualsiasi momento.`,disableButton:`Disabilita <code>{{key}}</code>`},o={badge:`Orfano`,removeButton:`Rimuovi orfano`},s={title:`Installa {{name}}`,computingChanges:`Calcolo delle modifiche…`,filesHeading:`File che verranno modificati`,prerequisites:`Prerequisiti`,autoInstall:`Installazione automatica`,progress:`Avanzamento`,installingPrereq:`Installazione di {{name}}…`,prereqStartFailed:`Avvio non riuscito: {{message}}`},c={title:`Disinstallare {{name}}?`,body:`Verranno ripristinate le voci gestite dal plugin in <code>.mcp.json</code> e rimossi i file creati dal plugin. Il tuo codice, la cronologia e gli altri plugin non vengono toccati.`},l={title:`Documentazione`,dialogDescription:`Sfoglia la documentazione di Specrails inclusa. Usa la barra laterale per passare da una guida all'altra.`,sidebarEmpty:`Ancora nessun documento`,indexEmpty:`La documentazione apparirà qui. La guida utente è inclusa nell’app in docs/guide/; aggiungi file Markdown in ~/.specrails/docs/guide/ per personalizzarla.`,categoryEmpty:`Ancora nessun documento in questa categoria.`,documentCount_one:`{{count}} documento`,documentCount_other:`{{count}} documenti`,categoryCount_one:`{{count}} categoria`,categoryCount_other:`{{count}} categorie`,summary:`{{documents}} in {{categories}}.`,loadError:`Impossibile caricare il documento`},u={title:`Jira`,category:`Tracciamento ticket`,description:`Appoggia le spec di questo progetto a una board Jira — sincronizzazione bidirezionale dello stato e un commento al termine di un rail.`,connectedDescription:`Sincronizzato con {{key}}. Le spec rispecchiano la tua board Jira in entrambe le direzioni.`,connect:`Connetti`,connected:`Connesso`,manage:`Gestisci`,modalTitle:`Connetti a Jira`,manageTitle:`Connessione Jira`,bullet1:`Sincronizzazione bidirezionale dello stato con la tua board Jira.`,bullet2:`Pubblica un commento al termine di un rail.`,bullet3:`Il tuo backlog Jira appare come spec sulla board.`,requires:`Richiede un account Jira Cloud o Data Center.`},d={page:{title:`Plugin`,subtitle:`Strumenti globali e integrazioni di progetto, gestiti da un unico posto.`,readyCount_one:`{{count}} pronto`,readyCount_other:`{{count}} pronti`,openWindow:`Open in window`},search:{placeholder:`Cerca plugin`},filters:{all:`tutti`,global:`globali`,project:`progetto`},sections:{installed:`Installati`,available:`Disponibili`},scope:{global:`globale`,project:`progetto`},groups:{global:{title:`Globali`,detail:`Si applicano a tutto Specrails`},project:{title:`Locali al progetto`,detail:`Configurati per repository`}},empty:{installedSearch:`Nessun plugin installato corrisponde a questa ricerca.`,installed:`Nessun plugin installato.`,availableSearch:`Nessun plugin disponibile corrisponde a questa ricerca.`,allInstalled:`Tutti i plugin sono installati.`},actions:{install:`Installa`,installing:`Installazione`,manage:`Gestisci`,review:`Controlla`,cancel:`Annulla`},status:{attention:`attenzione`,active:`attivo`,externalActive:`esterno attivo`,external:`esterno`,installed:`installato`,available:`disponibile`,configuredCount_one:`{{count}} configurato`,configuredCount_other:`{{count}} configurati`,installedCount_one:`{{count}} installato`,installedCount_other:`{{count}} installati`},catalog:{headroom:{description:`Ottimizza gli avvii di Codex e Claude tramite Headroom AI.`},jira:{description:`Sincronizza le spec di progetto con una board Jira, mapping degli stati e commenti di completamento.`},serena:{description:`Navigazione semantica del codice locale al progetto tramite Serena MCP.`}},headroom:{title:`Headroom AI`,dialogDescription:`Gestisci l’installazione globale di Headroom e il routing per provider.`,panelDescription:`Installato globalmente, attivato separatamente per Codex e Claude.`,issueCode:`Codice: {{code}}`,confirmDetach:`Questo disattiva il routing Specrails e ferma il proxy. L’installazione Headroom di sistema esistente resta intatta.`,confirmUninstall:`Questo disattiva le rotte Codex e Claude, ferma il proxy e rimuove lo strumento Headroom gestito da Specrails.`,metrics:{install:`Installazione`,checking:`Verifica`,ready:`Pronto`,missing:`Mancante`,source:`Origine`,system:`Sistema`,specrails:`Specrails`,none:`Nessuno`,proxy:`Proxy`,starting:`Avvio`,off:`Spento`},actions:{installWithUv:`Installa con uv incluso`,disableAllRoutes:`Disattiva tutte le rotte`,viewDiagnostics:`Vedi diagnostica`,detachHeadroom:`Scollega Headroom`,uninstallHeadroom:`Disinstalla Headroom`,detach:`Scollega`,uninstall:`Disinstalla`},port:{label:`Porta proxy`,apply:`Applica`},provider:{noProjectUsesProvider:`Nessun progetto Specrails usa questo provider`,routedThroughHeadroom:`Instradato tramite Headroom`,detectedExternalRoute:`Rotta esterna rilevata`,notRouted:`Non instradato`},savings:{title:`Risparmio token Headroom`,learningOn:`output misurato`,waitingForOutputSamples:`output non misurato`,baseline:`base {{method}}`,updatedLive:`aggiornato live`,baselineSamples_one:`{{count}} campione base`,baselineSamples_other:`{{count}} campioni base`,tokens:`token`,learning:`Nessun dato`,off:`Spento`,requestDetail:`{{method}} · {{count}} richieste`,requestCount:`{{count}} richieste`,detected:`rilevato`,totals:`Totali`,input:`Input`,output:`Output`,processed:`Processati`,saved:`Risparmiati`,noData:`Nessun dato`,inputSaved:`Input risparmiato`,outputSaved:`Output risparmiato`,inputSavingsActive:`Routing tramite Headroom`,statusInputOutput:`Input + output`,statusInputOnly:`Input attivo`,statusRouting:`Routing attivo`,statusInactive:`Inattivo`,methods:{estimated:`stimata`,measured:`misurata`,none:`nessuna`},waitingForShapedResponses:`Nessuna risposta di output misurata`,outputObserved:`{{value}} di output osservati`,routeDisabled:`Rotta disattivata`},issues:{uv_missing_or_corrupt:{title:`Il uv incluso non è disponibile`,guidance:`Specrails non è riuscito ad avviare il runtime uv incluso. Reinstalla Specrails o usa Ripara quando il runtime sarà disponibile.`},network_unavailable:{title:`Non è stato possibile scaricare Headroom`,guidance:`Controlla la connessione di rete e riprova. Specrails manterrà l’installazione isolata nella propria directory degli strumenti.`},package_resolution_failed:{title:`Non è stato possibile risolvere le dipendenze di Headroom`,guidance:`Riprova l’installazione. Se continua a fallire, apri la diagnostica e condividi l’output di uv.`},install_permission_failed:{title:`Specrails non può scrivere nella directory degli strumenti`,guidance:`Controlla i permessi in ~/.specrails/tools, poi riprova l’installazione.`},headroom_not_found_after_install:{title:`Installazione completata ma Headroom non trovato`,guidance:`Esegui Ripara installazione. Specrails reinstallerà Headroom e verificherà l’eseguibile.`},learning_setup_failed:{title:`Non è stato possibile abilitare l’apprendimento di Headroom`,guidance:`Headroom è installato, ma la calibrazione dei risparmi di output non è terminata. Continua a usare il routing proxy mentre le metriche raccolgono campioni.`},metrics_unavailable:{title:`Le metriche di Headroom non sono ancora disponibili`,guidance:`Inizia a instradare traffico tramite Headroom. Specrails aggiornerà le metriche di risparmio token appena il proxy riporterà campioni.`},proxy_port_busy:{title:`La porta del proxy Headroom è già in uso`,guidance:`Scegli un’altra porta o ferma il processo che usa la porta attuale, poi riprova l’attivazione.`},proxy_unhealthy:{title:`Il proxy Headroom non è diventato sano`,guidance:`Riprova l’attivazione. Se si ripete, apri la diagnostica per controllare l’output del proxy.`},provider_route_failed:{title:`Verifica della rotta del provider non riuscita`,guidance:`Specrails non ha potuto verificare la rotta del provider. Il provider resta inattivo; riprova dopo aver controllato la diagnostica.`},provider_config_conflict:{title:`La configurazione provider esistente è in conflitto con Headroom`,guidance:`Controlla la diagnostica prima di abilitare il routing a livello di sistema. Il routing gestito da Specrails resta reversibile.`},activation_partially_applied:{title:`L’attivazione è stata applicata solo in parte`,guidance:`Specrails ha tentato il rollback. Controlla la diagnostica e riprova il provider interessato.`},not_installed:{title:`Headroom non è installato`,guidance:`Installa prima Headroom, poi attiva Codex o Claude.`},uninstall_failed:{title:`Non è stato possibile disinstallare Headroom`,guidance:`Specrails ha disattivato il routing Headroom ma non ha potuto rimuovere lo strumento gestito. Apri la diagnostica e riprova.`},unknown:{title:`Operazione Headroom non riuscita`,guidance:`Riprova l’operazione. Se si ripete, apri la diagnostica e condividi i dettagli.`}}},projectWizard:{configureJira:`Configura Jira`,installSerena:`Installa Serena`,description:`Seleziona il progetto in cui configurare questo plugin locale al progetto.`,chooseProject:`Scegli progetto`,requiresClaudeProvider:`Richiede provider Claude`,selectProjectToContinue:`Seleziona un progetto per continuare.`},serena:{loading:`Caricamento Serena…`,titleForProject:`Serena per {{name}}`,description:`Installa la configurazione MCP e lo stato del plugin localmente al progetto. Gli altri progetti non vengono modificati.`,status:`Stato: {{status}}`,files:`File`,prerequisites:`Prerequisiti`},projectStatus:{installed:`installato`,deactivated:`disattivato`,"not-installed":`non installato`,orphan:`orfano`,degraded:`degradato`},diagnostics:{title:`Diagnostica Headroom`,description:`Stato tecnico dell’installazione Headroom gestita da Specrails e del proxy.`}},f={page:e,card:t,toggle:n,cachedNotice:r,update:i,conflict:a,orphan:o,installDialog:s,uninstallDialog:c,docs:l,jiraCard:u,plugins:d};export{r as cachedNotice,t as card,a as conflict,f as default,l as docs,s as installDialog,u as jiraCard,o as orphan,e as page,d as plugins,n as toggle,c as uninstallDialog,i as update};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`Jira`,subtitle:`Sincronizza le spec di questo progetto con una board Jira`,connectCta:`Connetti a Jira`},t={step:`Passo {{current}} di {{total}}`,step1Title:`Connetti il tuo account Jira`,step2Title:`Scegli un progetto Jira`,step3Title:`Mappa gli stati (facoltativo)`,step4Title:`Rivedi e connetti`,next:`Avanti`,back:`Indietro`,cancel:`Annulla`,connect:`Connetti`,connecting:`Connessione…`,later:`Fallo più tardi`},n={baseUrlLabel:`URL Jira`,baseUrlPlaceholder:`https://tua-azienda.atlassian.net`,baseUrlHelp:`L'URL del tuo sito Jira Cloud o server Data Center.`,emailLabel:`Email dell'account`,emailPlaceholder:`tu@azienda.com`,emailHelp:`Richiesta per Jira Cloud — l'email del tuo account Atlassian.`,tokenLabel:`Token API`,tokenHelp:`Creane uno su id.atlassian.com → Sicurezza → Token API. Viene memorizzato cifrato su questa macchina e non la lascia mai.`,test:`Prova connessione`,testing:`Verifica…`,testOk:`Connesso come {{name}}`,retest:`Riprova`},r={searchPlaceholder:`Cerca progetti…`,manualLabel:`Oppure inserisci una chiave progetto`,manualPlaceholder:`PROJ`,selected:`{{key}} — {{name}}`,none:`Nessun progetto trovato`,loading:`Caricamento progetti…`},i={intro:`Gli stati vengono associati automaticamente per categoria (Da fare / In corso / Fatto). Sovrascrivi uno stato se il tuo workflow usa nomi personalizzati.`,auto:`Automatico (per categoria)`,todo:`Backlog / Da fare`,inProgress:`In corso`,onReview:`In revisione`,done:`Fatto`,cancelled:`Annullato`,loading:`Caricamento stati…`,loadFailed:`Impossibile caricare gli stati Jira. Controlla la connessione e riprova.`,retry:`Riprova`},a={site:`Sito`,project:`Progetto`,account:`Account`,type:`Tipo`,cloud:`Jira Cloud`,dc:`Jira Data Center`},o={connected:`Connesso a {{key}}`,enabledLabel:`Sincronizzazione attiva`,enabledHelp:`Quando attiva, le spec si sincronizzano con Jira e gli esiti dei rail aggiornano i ticket collegati.`,pausedHelp:`La sincronizzazione è in pausa. Le spec restano sulla board ma non aggiornano più Jira.`,syncNow:`Sincronizza ora`,syncing:`Sincronizzazione…`,syncedToast:`{{count}} ticket sincronizzati da Jira`,disconnect:`Disconnetti`,disconnectConfirm:`Disconnettere questo progetto da Jira? Le spec esistenti restano sulla board; la sincronizzazione si ferma.`,disconnectedToast:`Disconnesso da Jira`},s={title:`Aggiornamenti Jira in sospeso`,pending:`{{count}} in sospeso`,dead:`{{count}} da verificare`,allSynced:`Tutti gli aggiornamenti sincronizzati`,retry:`Riprova`,deadHelp:`Controlla la mappatura degli stati qui sopra e le transizioni consentite per ogni issue Jira, poi riprova. Le richieste di stato sostituite da richieste più recenti non richiedono più attenzione.`,opTransition:`Aggiornamento stato`,opComment:`Commento`,opCreate:`Crea ticket`,issueFallback:`Issue Jira {{id}}`,target:`Destinazione: {{status}}`,retrying:`Nuovo tentativo…`,loadFailed:`Impossibile caricare gli aggiornamenti Jira in sospeso.`,opUpdate:`Modifica issue`,nonePending:`Nessun aggiornamento Jira in sospeso`},c={title:`Jira disconnesso`,body:`Il tuo token Jira è scaduto o è stato revocato. Riconnettiti per sincronizzare {{count}} aggiornamenti in sospeso.`,reconnect:`Riconnetti`},l={label:`Jira`,openInJira:`Apri in Jira`},u={willCreate:`Verrà creato in Jira · {{key}}`},d={saveTitle:`Aggiorna il ticket Jira`,saveBody:`Salvando, il ticket Jira {{key}} verrà aggiornato con queste modifiche.`,saveConfirm:`Salva e aggiorna Jira`,detailsTitle:`Dettagli Jira`,developmentTitle:`Sviluppo`,dev:{pullRequests:`Pull request`,branches:`Rami`,commits:`Commit`},goToTicket:`Vai al ticket {{key}}`,epic:`Epica`},f={moveButton:`Sposta in {{status}}`,title:`Spostare la spec in {{status}}?`,body:`Il ticket Jira {{key}} di questa spec verrà spostato in "{{status}}" invece di essere eliminato. Aggiungi un motivo facoltativo.`,commentLabel:`Motivo (facoltativo)`,commentPlaceholder:`Perché stai spostando questa spec?`,confirm:`Sposta in {{status}}`,moving:`Spostamento…`,movedToast:`{{key}} spostato in {{status}}`,configLabel:`Allo scarto, sposta il ticket in`,configHelp:`Quando scarti una spec collegata a Jira, il suo ticket viene spostato in questo stato invece di essere eliminato.`,configNone:`Nessuno — elimina normalmente`,reviewLabel:`Lo scarto sposta in`},p={generic:`Qualcosa è andato storto`,testFirst:`Prova prima la connessione`},m={queued:`Spostamento in "{{status}}" in coda — sincronizzazione con Jira`,failed:`Impossibile spostare la spec in Jira`},h={section:e,wizard:t,creds:n,project:r,mapping:i,review:a,status:o,outbox:s,authExpired:c,badge:l,addSpec:u,detail:d,discard:f,errors:p,moveToStatus:m};export{u as addSpec,c as authExpired,l as badge,n as creds,h as default,d as detail,f as discard,p as errors,i as mapping,m as moveToStatus,s as outbox,r as project,a as review,e as section,o as status,t as wizard};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`Jira`,subtitle:`Specs dieses Projekts mit einem Jira-Board synchronisieren`,connectCta:`Mit Jira verbinden`},t={step:`Schritt {{current}} von {{total}}`,step1Title:`Verbinde dein Jira-Konto`,step2Title:`Wähle ein Jira-Projekt`,step3Title:`Status zuordnen (optional)`,step4Title:`Prüfen und verbinden`,next:`Weiter`,back:`Zurück`,cancel:`Abbrechen`,connect:`Verbinden`,connecting:`Verbinde…`,later:`Später erledigen`},n={baseUrlLabel:`Jira-URL`,baseUrlPlaceholder:`https://dein-unternehmen.atlassian.net`,baseUrlHelp:`Die URL deiner Jira-Cloud-Site oder deines Data-Center-Servers.`,emailLabel:`Konto-E-Mail`,emailPlaceholder:`du@unternehmen.com`,emailHelp:`Für Jira Cloud erforderlich — die E-Mail deines Atlassian-Kontos.`,tokenLabel:`API-Token`,tokenHelp:`Erstelle einen unter id.atlassian.com → Sicherheit → API-Tokens. Er wird verschlüsselt auf diesem Gerät gespeichert und verlässt es nie.`,test:`Verbindung testen`,testing:`Teste…`,testOk:`Verbunden als {{name}}`,retest:`Erneut testen`},r={searchPlaceholder:`Projekte suchen…`,manualLabel:`Oder gib einen Projektschlüssel ein`,manualPlaceholder:`PROJ`,selected:`{{key}} — {{name}}`,none:`Keine Projekte gefunden`,loading:`Projekte werden geladen…`},i={intro:`Status werden automatisch nach Kategorie zugeordnet (To Do / In Arbeit / Fertig). Überschreibe einen Status, wenn dein Workflow eigene Namen verwendet.`,auto:`Automatisch (nach Kategorie)`,todo:`Backlog / To Do`,inProgress:`In Arbeit`,onReview:`In Prüfung`,done:`Fertig`,cancelled:`Abgebrochen`,loading:`Status werden geladen…`,loadFailed:`Die Jira-Status konnten nicht geladen werden. Prüfe die Verbindung und versuche es erneut.`,retry:`Erneut versuchen`},a={site:`Site`,project:`Projekt`,account:`Konto`,type:`Typ`,cloud:`Jira Cloud`,dc:`Jira Data Center`},o={connected:`Verbunden mit {{key}}`,enabledLabel:`Synchronisierung aktiviert`,enabledHelp:`Wenn aktiviert, werden Specs mit Jira synchronisiert und Rail-Ergebnisse aktualisieren die verknüpften Vorgänge.`,pausedHelp:`Die Synchronisierung ist pausiert. Specs bleiben auf dem Board, aktualisieren Jira aber nicht mehr.`,syncNow:`Jetzt synchronisieren`,syncing:`Synchronisiere…`,syncedToast:`{{count}} Vorgang/Vorgänge aus Jira synchronisiert`,disconnect:`Trennen`,disconnectConfirm:`Dieses Projekt von Jira trennen? Bestehende Specs bleiben auf dem Board; die Synchronisierung stoppt.`,disconnectedToast:`Von Jira getrennt`},s={title:`Ausstehende Jira-Updates`,pending:`{{count}} ausstehend`,dead:`{{count}} benötigen Aufmerksamkeit`,allSynced:`Alle Updates synchronisiert`,retry:`Erneut versuchen`,deadHelp:`Prüfe die Statuszuordnung oben und die zulässigen Übergänge für jeden Jira-Vorgang. Versuche es dann erneut. Durch neuere Anfragen ersetzte Statusanfragen benötigen keine Aufmerksamkeit mehr.`,opTransition:`Status-Update`,opComment:`Kommentar`,opCreate:`Vorgang erstellen`,issueFallback:`Jira-Vorgang {{id}}`,target:`Ziel: {{status}}`,retrying:`Neuer Versuch…`,loadFailed:`Ausstehende Jira-Aktualisierungen konnten nicht geladen werden.`,opUpdate:`Vorgang bearbeiten`,nonePending:`Keine ausstehenden Jira-Aktualisierungen`},c={title:`Jira getrennt`,body:`Dein Jira-Token ist abgelaufen oder wurde widerrufen. Verbinde dich erneut, um {{count}} ausstehende(s) Update(s) zu synchronisieren.`,reconnect:`Erneut verbinden`},l={label:`Jira`,openInJira:`In Jira öffnen`},u={willCreate:`Wird in Jira erstellt · {{key}}`},d={saveTitle:`Jira-Vorgang aktualisieren`,saveBody:`Beim Speichern wird der Jira-Vorgang {{key}} mit diesen Änderungen aktualisiert.`,saveConfirm:`Speichern und Jira aktualisieren`,detailsTitle:`Jira-Details`,developmentTitle:`Entwicklung`,dev:{pullRequests:`Pull Requests`,branches:`Branches`,commits:`Commits`},goToTicket:`Zum Ticket {{key}}`,epic:`Epic`},f={moveButton:`Verschieben nach {{status}}`,title:`Spec nach {{status}} verschieben?`,body:`Das Jira-Ticket {{key}} dieser Spec wird nach „{{status}}“ verschoben, statt gelöscht zu werden. Optional einen Grund angeben.`,commentLabel:`Grund (optional)`,commentPlaceholder:`Warum verschiebst du diese Spec?`,confirm:`Nach {{status}} verschieben`,moving:`Wird verschoben…`,movedToast:`{{key}} nach {{status}} verschoben`,configLabel:`Beim Verwerfen Ticket verschieben nach`,configHelp:`Wenn du eine mit Jira verknüpfte Spec verwirfst, wird ihr Ticket in diesen Status verschoben, statt gelöscht zu werden.`,configNone:`Keiner — normal löschen`,reviewLabel:`Verwerfen verschiebt nach`},p={generic:`Etwas ist schiefgelaufen`,testFirst:`Teste zuerst die Verbindung`},m={queued:`Verschieben nach „{{status}}" eingereiht — Synchronisierung mit Jira`,failed:`Spec konnte in Jira nicht verschoben werden`},h={section:e,wizard:t,creds:n,project:r,mapping:i,review:a,status:o,outbox:s,authExpired:c,badge:l,addSpec:u,detail:d,discard:f,errors:p,moveToStatus:m};export{u as addSpec,c as authExpired,l as badge,n as creds,h as default,d as detail,f as discard,p as errors,i as mapping,m as moveToStatus,s as outbox,r as project,a as review,e as section,o as status,t as wizard};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`Jira`,subtitle:`Synchronisez les specs de ce projet avec un tableau Jira`,connectCta:`Se connecter à Jira`},t={step:`Étape {{current}} sur {{total}}`,step1Title:`Connectez votre compte Jira`,step2Title:`Choisissez un projet Jira`,step3Title:`Associer les statuts (facultatif)`,step4Title:`Vérifier et connecter`,next:`Suivant`,back:`Retour`,cancel:`Annuler`,connect:`Connecter`,connecting:`Connexion…`,later:`Le faire plus tard`},n={baseUrlLabel:`URL Jira`,baseUrlPlaceholder:`https://votre-entreprise.atlassian.net`,baseUrlHelp:`L'URL de votre site Jira Cloud ou serveur Data Center.`,emailLabel:`E-mail du compte`,emailPlaceholder:`vous@entreprise.com`,emailHelp:`Requis pour Jira Cloud — l'e-mail de votre compte Atlassian.`,tokenLabel:`Jeton API`,tokenHelp:`Créez-en un sur id.atlassian.com → Sécurité → Jetons API. Il est stocké chiffré sur cette machine et n'en sort jamais.`,test:`Tester la connexion`,testing:`Test en cours…`,testOk:`Connecté en tant que {{name}}`,retest:`Retester`},r={searchPlaceholder:`Rechercher des projets…`,manualLabel:`Ou saisissez une clé de projet`,manualPlaceholder:`PROJ`,selected:`{{key}} — {{name}}`,none:`Aucun projet trouvé`,loading:`Chargement des projets…`},i={intro:`Les statuts sont associés automatiquement par catégorie (À faire / En cours / Terminé). Remplacez un état si votre workflow utilise des noms personnalisés.`,auto:`Automatique (par catégorie)`,todo:`Backlog / À faire`,inProgress:`En cours`,onReview:`En révision`,done:`Terminé`,cancelled:`Annulé`,loading:`Chargement des statuts…`,loadFailed:`Impossible de charger les statuts Jira. Vérifiez la connexion et réessayez.`,retry:`Réessayer`},a={site:`Site`,project:`Projet`,account:`Compte`,type:`Type`,cloud:`Jira Cloud`,dc:`Jira Data Center`},o={connected:`Connecté à {{key}}`,enabledLabel:`Synchronisation activée`,enabledHelp:`Lorsqu'elle est activée, les specs se synchronisent avec Jira et les résultats des rails mettent à jour les tickets liés.`,pausedHelp:`La synchronisation est en pause. Les specs restent sur le tableau mais ne mettent plus Jira à jour.`,syncNow:`Synchroniser maintenant`,syncing:`Synchronisation…`,syncedToast:`{{count}} ticket(s) synchronisé(s) depuis Jira`,disconnect:`Déconnecter`,disconnectConfirm:`Déconnecter ce projet de Jira ? Les specs existantes restent sur le tableau ; la synchronisation s'arrête.`,disconnectedToast:`Déconnecté de Jira`},s={title:`Mises à jour Jira en attente`,pending:`{{count}} en attente`,dead:`{{count}} à vérifier`,allSynced:`Toutes les mises à jour sont synchronisées`,retry:`Réessayer`,deadHelp:`Vérifiez la correspondance des statuts ci-dessus et les transitions autorisées pour chaque ticket Jira, puis réessayez. Les demandes de statut remplacées par des demandes plus récentes ne nécessitent plus votre attention.`,opTransition:`Mise à jour du statut`,opComment:`Commentaire`,opCreate:`Créer un ticket`,issueFallback:`Ticket Jira {{id}}`,target:`Destination : {{status}}`,retrying:`Nouvelle tentative…`,loadFailed:`Impossible de charger les mises à jour Jira en attente.`,opUpdate:`Modification du ticket`,nonePending:`Aucune mise à jour Jira en attente`},c={title:`Jira déconnecté`,body:`Votre jeton Jira a expiré ou a été révoqué. Reconnectez-vous pour synchroniser {{count}} mise(s) à jour en attente.`,reconnect:`Se reconnecter`},l={label:`Jira`,openInJira:`Ouvrir dans Jira`},u={willCreate:`Sera créé dans Jira · {{key}}`},d={saveTitle:`Mettre à jour le ticket Jira`,saveBody:`L'enregistrement mettra à jour le ticket Jira {{key}} avec ces modifications.`,saveConfirm:`Enregistrer et mettre à jour Jira`,detailsTitle:`Détails Jira`,developmentTitle:`Développement`,dev:{pullRequests:`Pull requests`,branches:`Branches`,commits:`Commits`},goToTicket:`Aller au ticket {{key}}`,epic:`Épopée`},f={moveButton:`Déplacer vers {{status}}`,title:`Déplacer la spec vers {{status}} ?`,body:`Le ticket Jira {{key}} de cette spec sera déplacé vers « {{status}} » au lieu d'être supprimé. Ajoutez un motif facultatif.`,commentLabel:`Motif (facultatif)`,commentPlaceholder:`Pourquoi déplacez-vous cette spec ?`,confirm:`Déplacer vers {{status}}`,moving:`Déplacement…`,movedToast:`{{key}} déplacé vers {{status}}`,configLabel:`À l'abandon, déplacer le ticket vers`,configHelp:`Lorsque vous abandonnez une spec liée à Jira, son ticket est déplacé vers ce statut au lieu d'être supprimé.`,configNone:`Aucun — supprimer normalement`,reviewLabel:`L'abandon déplace vers`},p={generic:`Une erreur s'est produite`,testFirst:`Testez d'abord la connexion`},m={queued:`Déplacement vers « {{status}} » en file — synchronisation avec Jira`,failed:`Impossible de déplacer la spec dans Jira`},h={section:e,wizard:t,creds:n,project:r,mapping:i,review:a,status:o,outbox:s,authExpired:c,badge:l,addSpec:u,detail:d,discard:f,errors:p,moveToStatus:m};export{u as addSpec,c as authExpired,l as badge,n as creds,h as default,d as detail,f as discard,p as errors,i as mapping,m as moveToStatus,s as outbox,r as project,a as review,e as section,o as status,t as wizard};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`Jira`,subtitle:`将此项目的规格与 Jira 看板同步`,connectCta:`连接到 Jira`},t={step:`第 {{current}} 步,共 {{total}} 步`,step1Title:`连接你的 Jira 账户`,step2Title:`选择一个 Jira 项目`,step3Title:`映射状态(可选)`,step4Title:`检查并连接`,next:`下一步`,back:`返回`,cancel:`取消`,connect:`连接`,connecting:`正在连接…`,later:`稍后再做`},n={baseUrlLabel:`Jira 网址`,baseUrlPlaceholder:`https://your-company.atlassian.net`,baseUrlHelp:`你的 Jira Cloud 站点或 Data Center 服务器网址。`,emailLabel:`账户邮箱`,emailPlaceholder:`you@company.com`,emailHelp:`Jira Cloud 必填——你的 Atlassian 账户邮箱。`,tokenLabel:`API 令牌`,tokenHelp:`在 id.atlassian.com → 安全 → API 令牌中创建。它会加密存储在本机,永不外泄。`,test:`测试连接`,testing:`测试中…`,testOk:`已连接为 {{name}}`,retest:`重新测试`},r={searchPlaceholder:`搜索项目…`,manualLabel:`或输入项目键`,manualPlaceholder:`PROJ`,selected:`{{key}} — {{name}}`,none:`未找到项目`,loading:`正在加载项目…`},i={intro:`状态会按类别自动匹配(待办 / 进行中 / 完成)。如果你的工作流使用自定义名称,可覆盖任一状态。`,auto:`自动(按类别)`,todo:`待办 / To Do`,inProgress:`进行中`,onReview:`评审中`,done:`完成`,cancelled:`已取消`,loading:`正在加载状态…`,loadFailed:`无法加载 Jira 状态。请检查连接并重试。`,retry:`重试`},a={site:`站点`,project:`项目`,account:`账户`,type:`类型`,cloud:`Jira Cloud`,dc:`Jira Data Center`},o={connected:`已连接到 {{key}}`,enabledLabel:`已启用同步`,enabledHelp:`启用后,规格会与 Jira 同步,rail 的结果会更新关联的事务。`,pausedHelp:`同步已暂停。规格仍在看板上,但不再更新 Jira。`,syncNow:`立即同步`,syncing:`正在同步…`,syncedToast:`已从 Jira 同步 {{count}} 个事务`,disconnect:`断开连接`,disconnectConfirm:`要断开此项目与 Jira 的连接吗?现有规格仍保留在看板上;同步将停止。`,disconnectedToast:`已断开与 Jira 的连接`},s={title:`待处理的 Jira 更新`,pending:`{{count}} 个待处理`,dead:`{{count}} 个需要处理`,allSynced:`所有更新已同步`,retry:`重试`,deadHelp:`请检查上方的状态映射以及每个 Jira 事项允许的状态转换,然后重试。已被较新请求替代的旧状态请求不再需要处理。`,opTransition:`状态更新`,opComment:`评论`,opCreate:`创建事务`,issueFallback:`Jira 事项 {{id}}`,target:`目标:{{status}}`,retrying:`正在重试…`,loadFailed:`无法加载待处理的 Jira 更新。`,opUpdate:`编辑事项`,nonePending:`没有待处理的 Jira 更新`},c={title:`Jira 已断开`,body:`你的 Jira 令牌已过期或被吊销。请重新连接以同步 {{count}} 个待处理更新。`,reconnect:`重新连接`},l={label:`Jira`,openInJira:`在 Jira 中打开`},u={willCreate:`将在 Jira 中创建 · {{key}}`},d={saveTitle:`更新 Jira 工单`,saveBody:`保存后将用这些更改更新 Jira 工单 {{key}}。`,saveConfirm:`保存并更新 Jira`,detailsTitle:`Jira 详情`,developmentTitle:`开发`,dev:{pullRequests:`拉取请求`,branches:`分支`,commits:`提交`},goToTicket:`前往工单 {{key}}`,epic:`史诗`},f={moveButton:`移动到 {{status}}`,title:`将规格移动到 {{status}}?`,body:`此规格的 Jira 工单 {{key}} 将被移动到“{{status}}”,而不是被删除。可选择填写原因。`,commentLabel:`原因(可选)`,commentPlaceholder:`为什么要移动此规格?`,confirm:`移动到 {{status}}`,moving:`正在移动…`,movedToast:`已将 {{key}} 移动到 {{status}}`,configLabel:`丢弃时将工单移动到`,configHelp:`当你丢弃一个关联 Jira 的规格时,其工单将被移动到此状态,而不是被删除。`,configNone:`无 — 正常删除`,reviewLabel:`丢弃时移动到`},p={generic:`出了点问题`,testFirst:`请先测试连接`},m={queued:`移动到"{{status}}"已排队 — 正在与 Jira 同步`,failed:`在 Jira 中移动该 spec 失败`},h={section:e,wizard:t,creds:n,project:r,mapping:i,review:a,status:o,outbox:s,authExpired:c,badge:l,addSpec:u,detail:d,discard:f,errors:p,moveToStatus:m};export{u as addSpec,c as authExpired,l as badge,n as creds,h as default,d as detail,f as discard,p as errors,i as mapping,m as moveToStatus,s as outbox,r as project,a as review,e as section,o as status,t as wizard};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`Jira`,subtitle:`Sincronize as specs deste projeto com um quadro Jira`,connectCta:`Conectar ao Jira`},t={step:`Passo {{current}} de {{total}}`,step1Title:`Conecte a sua conta Jira`,step2Title:`Escolha um projeto Jira`,step3Title:`Mapear estados (opcional)`,step4Title:`Revisar e conectar`,next:`Seguinte`,back:`Voltar`,cancel:`Cancelar`,connect:`Conectar`,connecting:`A conectar…`,later:`Fazer mais tarde`},n={baseUrlLabel:`URL do Jira`,baseUrlPlaceholder:`https://sua-empresa.atlassian.net`,baseUrlHelp:`O URL do seu site Jira Cloud ou servidor Data Center.`,emailLabel:`E-mail da conta`,emailPlaceholder:`voce@empresa.com`,emailHelp:`Necessário para o Jira Cloud — o e-mail da sua conta Atlassian.`,tokenLabel:`Token de API`,tokenHelp:`Crie um em id.atlassian.com → Segurança → Tokens de API. É armazenado cifrado nesta máquina e nunca a abandona.`,test:`Testar ligação`,testing:`A testar…`,testOk:`Ligado como {{name}}`,retest:`Testar de novo`},r={searchPlaceholder:`Procurar projetos…`,manualLabel:`Ou introduza uma chave de projeto`,manualPlaceholder:`PROJ`,selected:`{{key}} — {{name}}`,none:`Nenhum projeto encontrado`,loading:`A carregar projetos…`},i={intro:`Os estados são associados automaticamente por categoria (A fazer / Em curso / Concluído). Substitua um estado se o seu fluxo de trabalho usar nomes personalizados.`,auto:`Automático (por categoria)`,todo:`Backlog / A fazer`,inProgress:`Em curso`,onReview:`Em revisão`,done:`Concluído`,cancelled:`Cancelado`,loading:`A carregar estados…`,loadFailed:`Não foi possível carregar os estados do Jira. Verifique a ligação e tente novamente.`,retry:`Tentar novamente`},a={site:`Site`,project:`Projeto`,account:`Conta`,type:`Tipo`,cloud:`Jira Cloud`,dc:`Jira Data Center`},o={connected:`Ligado a {{key}}`,enabledLabel:`Sincronização ativada`,enabledHelp:`Quando ativa, as specs sincronizam com o Jira e os resultados dos rails atualizam os tickets associados.`,pausedHelp:`A sincronização está em pausa. As specs permanecem no quadro mas já não atualizam o Jira.`,syncNow:`Sincronizar agora`,syncing:`A sincronizar…`,syncedToast:`{{count}} ticket(s) sincronizados do Jira`,disconnect:`Desligar`,disconnectConfirm:`Desligar este projeto do Jira? As specs existentes permanecem no quadro; a sincronização para.`,disconnectedToast:`Desligado do Jira`},s={title:`Atualizações Jira pendentes`,pending:`{{count}} pendentes`,dead:`{{count}} a precisar de atenção`,allSynced:`Todas as atualizações sincronizadas`,retry:`Tentar de novo`,deadHelp:`Verifique o mapeamento de estados acima e as transições permitidas para cada issue no Jira e tente novamente. Os pedidos de estado substituídos por pedidos mais recentes já não precisam de atenção.`,opTransition:`Atualização de estado`,opComment:`Comentário`,opCreate:`Criar ticket`,issueFallback:`Issue do Jira {{id}}`,target:`Destino: {{status}}`,retrying:`A tentar novamente…`,loadFailed:`Não foi possível carregar as atualizações pendentes do Jira.`,opUpdate:`Editar issue`,nonePending:`Não há atualizações pendentes do Jira`},c={title:`Jira desligado`,body:`O seu token Jira expirou ou foi revogado. Volte a ligar para sincronizar {{count}} atualizações pendentes.`,reconnect:`Voltar a ligar`},l={label:`Jira`,openInJira:`Abrir no Jira`},u={willCreate:`Será criado no Jira · {{key}}`},d={saveTitle:`Atualizar ticket do Jira`,saveBody:`Ao salvar, o ticket do Jira {{key}} será atualizado com estas alterações.`,saveConfirm:`Salvar e atualizar Jira`,detailsTitle:`Detalhes do Jira`,developmentTitle:`Desenvolvimento`,dev:{pullRequests:`Pull requests`,branches:`Ramos`,commits:`Commits`},goToTicket:`Ir para o ticket {{key}}`,epic:`Épico`},f={moveButton:`Mover para {{status}}`,title:`Mover a spec para {{status}}?`,body:`O ticket do Jira {{key}} desta spec será movido para "{{status}}" em vez de ser excluído. Adicione um motivo opcional.`,commentLabel:`Motivo (opcional)`,commentPlaceholder:`Por que está movendo esta spec?`,confirm:`Mover para {{status}}`,moving:`Movendo…`,movedToast:`{{key}} movido para {{status}}`,configLabel:`Ao descartar, mover o ticket para`,configHelp:`Quando você descarta uma spec vinculada ao Jira, o ticket é movido para este status em vez de ser excluído.`,configNone:`Nenhum — excluir normalmente`,reviewLabel:`Descartar move para`},p={generic:`Algo correu mal`,testFirst:`Teste primeiro a ligação`},m={queued:`Movimento para "{{status}}" em fila — a sincronizar com o Jira`,failed:`Não foi possível mover a spec no Jira`},h={section:e,wizard:t,creds:n,project:r,mapping:i,review:a,status:o,outbox:s,authExpired:c,badge:l,addSpec:u,detail:d,discard:f,errors:p,moveToStatus:m};export{u as addSpec,c as authExpired,l as badge,n as creds,h as default,d as detail,f as discard,p as errors,i as mapping,m as moveToStatus,s as outbox,r as project,a as review,e as section,o as status,t as wizard};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({addSpec:()=>f,authExpired:()=>u,badge:()=>d,creds:()=>i,default:()=>_,detail:()=>p,discard:()=>m,errors:()=>h,mapping:()=>o,moveToStatus:()=>g,outbox:()=>l,project:()=>a,review:()=>s,section:()=>n,status:()=>c,wizard:()=>r}),n={title:`Jira`,subtitle:`Sync this project's specs with a Jira board`,connectCta:`Connect to Jira`},r={step:`Step {{current}} of {{total}}`,step1Title:`Connect your Jira account`,step2Title:`Choose a Jira project`,step3Title:`Map statuses (optional)`,step4Title:`Review & connect`,next:`Next`,back:`Back`,cancel:`Cancel`,connect:`Connect`,connecting:`Connecting…`,later:`Do it later`},i={baseUrlLabel:`Jira URL`,baseUrlPlaceholder:`https://your-company.atlassian.net`,baseUrlHelp:`Your Jira Cloud site or Data Center server URL.`,emailLabel:`Account email`,emailPlaceholder:`you@company.com`,emailHelp:`Required for Jira Cloud — the email of your Atlassian account.`,tokenLabel:`API token`,tokenHelp:`Create one at id.atlassian.com → Security → API tokens. It is stored encrypted on this machine and never leaves it.`,test:`Test connection`,testing:`Testing…`,testOk:`Connected as {{name}}`,retest:`Re-test`},a={searchPlaceholder:`Search projects…`,manualLabel:`Or enter a project key`,manualPlaceholder:`PROJ`,selected:`{{key}} — {{name}}`,none:`No projects found`,loading:`Loading projects…`},o={intro:`Statuses are matched automatically by category (To Do / In Progress / Done). Override any state if your workflow uses custom names.`,auto:`Automatic (by category)`,todo:`Backlog / To Do`,inProgress:`In Progress`,onReview:`On Review`,done:`Done`,cancelled:`Cancelled`,loading:`Loading statuses…`,loadFailed:`Couldn't load Jira statuses. Check the connection and try again.`,retry:`Retry`},s={site:`Site`,project:`Project`,account:`Account`,type:`Type`,cloud:`Jira Cloud`,dc:`Jira Data Center`},c={connected:`Connected to {{key}}`,enabledLabel:`Sync enabled`,enabledHelp:`When on, specs sync with Jira and rail outcomes update the linked issues.`,pausedHelp:`Sync is paused. Specs stay on the board but no longer update Jira.`,syncNow:`Sync now`,syncing:`Syncing…`,syncedToast:`Synced {{count}} issue(s) from Jira`,disconnect:`Disconnect`,disconnectConfirm:`Disconnect this project from Jira? Existing specs stay on the board; sync stops.`,disconnectedToast:`Disconnected from Jira`},l={title:`Pending Jira updates`,pending:`{{count}} pending`,dead:`{{count}} need attention`,allSynced:`All updates synced`,retry:`Retry`,deadHelp:`Check the status mapping above and the permitted transitions for each issue in Jira, then retry. Older status requests replaced by newer ones no longer need attention.`,opTransition:`Status update`,opComment:`Comment`,opCreate:`Create issue`,issueFallback:`Jira issue {{id}}`,target:`Target: {{status}}`,retrying:`Retrying…`,loadFailed:`Couldn't load pending Jira updates.`,opUpdate:`Issue update`,nonePending:`No pending Jira updates`},u={title:`Jira disconnected`,body:`Your Jira token expired or was revoked. Reconnect to sync {{count}} pending update(s).`,reconnect:`Reconnect`},d={label:`Jira`,openInJira:`Open in Jira`},f={willCreate:`Will be created in Jira · {{key}}`},p={saveTitle:`Update Jira ticket`,saveBody:`Saving will update Jira issue {{key}} with these changes.`,saveConfirm:`Save & update Jira`,detailsTitle:`Jira details`,developmentTitle:`Development`,dev:{pullRequests:`Pull requests`,branches:`Branches`,commits:`Commits`},goToTicket:`Go to Ticket {{key}}`,epic:`Epic`},m={moveButton:`Move to {{status}}`,title:`Move spec to {{status}}?`,body:`This spec's Jira issue {{key}} will be moved to "{{status}}" instead of being deleted. Add an optional reason for the move.`,commentLabel:`Reason (optional)`,commentPlaceholder:`Why are you moving this spec?`,confirm:`Move to {{status}}`,moving:`Moving…`,movedToast:`Moved {{key}} to {{status}}`,configLabel:`On discard, move issue to`,configHelp:`When you discard a Jira-backed spec, its issue is moved to this status instead of being deleted.`,configNone:`None — delete normally`,reviewLabel:`Discard moves to`},h={generic:`Something went wrong`,testFirst:`Test the connection first`},g={queued:`Move to "{{status}}" queued — syncing with Jira`,failed:`Failed to move the spec in Jira`},_={section:n,wizard:r,creds:i,project:a,mapping:o,review:s,status:c,outbox:l,authExpired:u,badge:d,addSpec:f,detail:p,discard:m,errors:h,moveToStatus:g};export{t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={title:`Jira`,subtitle:`このプロジェクトのスペックを Jira ボードと同期します`,connectCta:`Jira に接続`},t={step:`ステップ {{current}} / {{total}}`,step1Title:`Jira アカウントに接続`,step2Title:`Jira プロジェクトを選択`,step3Title:`ステータスを対応付け(任意)`,step4Title:`確認して接続`,next:`次へ`,back:`戻る`,cancel:`キャンセル`,connect:`接続`,connecting:`接続中…`,later:`後で行う`},n={baseUrlLabel:`Jira の URL`,baseUrlPlaceholder:`https://your-company.atlassian.net`,baseUrlHelp:`Jira Cloud サイトまたは Data Center サーバーの URL。`,emailLabel:`アカウントのメール`,emailPlaceholder:`you@company.com`,emailHelp:`Jira Cloud では必須です — Atlassian アカウントのメールアドレス。`,tokenLabel:`API トークン`,tokenHelp:`id.atlassian.com → セキュリティ → API トークンで作成します。このマシンに暗号化して保存され、外部に出ることはありません。`,test:`接続をテスト`,testing:`テスト中…`,testOk:`{{name}} として接続しました`,retest:`再テスト`},r={searchPlaceholder:`プロジェクトを検索…`,manualLabel:`またはプロジェクトキーを入力`,manualPlaceholder:`PROJ`,selected:`{{key}} — {{name}}`,none:`プロジェクトが見つかりません`,loading:`プロジェクトを読み込み中…`},i={intro:`ステータスはカテゴリ(To Do / 進行中 / 完了)で自動的に対応付けられます。ワークフローが独自の名前を使う場合は上書きできます。`,auto:`自動(カテゴリ別)`,todo:`バックログ / To Do`,inProgress:`進行中`,onReview:`レビュー中`,done:`完了`,cancelled:`キャンセル`,loading:`ステータスを読み込み中…`,loadFailed:`Jiraのステータスを読み込めませんでした。接続を確認して再試行してください。`,retry:`再試行`},a={site:`サイト`,project:`プロジェクト`,account:`アカウント`,type:`種類`,cloud:`Jira Cloud`,dc:`Jira Data Center`},o={connected:`{{key}} に接続済み`,enabledLabel:`同期を有効化`,enabledHelp:`有効にすると、スペックが Jira と同期し、rail の結果がリンクされた課題を更新します。`,pausedHelp:`同期は一時停止中です。スペックはボードに残りますが、Jira は更新されなくなります。`,syncNow:`今すぐ同期`,syncing:`同期中…`,syncedToast:`Jira から {{count}} 件の課題を同期しました`,disconnect:`切断`,disconnectConfirm:`このプロジェクトを Jira から切断しますか?既存のスペックはボードに残り、同期は停止します。`,disconnectedToast:`Jira から切断しました`},s={title:`保留中の Jira 更新`,pending:`{{count}} 件保留中`,dead:`{{count}} 件は対応が必要`,allSynced:`すべての更新が同期されました`,retry:`再試行`,deadHelp:`上のステータスの対応付けと、各Jira課題で許可されている遷移を確認してから再試行してください。新しいリクエストに置き換えられた古いステータス変更は、対応不要になります。`,opTransition:`ステータス更新`,opComment:`コメント`,opCreate:`課題を作成`,issueFallback:`Jiraの課題 {{id}}`,target:`移行先: {{status}}`,retrying:`再試行中…`,loadFailed:`保留中のJira更新を読み込めませんでした。`,opUpdate:`課題の編集`,nonePending:`保留中のJira更新はありません`},c={title:`Jira が切断されました`,body:`Jira トークンが失効または取り消されました。再接続して保留中の {{count}} 件の更新を同期してください。`,reconnect:`再接続`},l={label:`Jira`,openInJira:`Jira で開く`},u={willCreate:`Jira に作成されます · {{key}}`},d={saveTitle:`Jira 課題を更新`,saveBody:`保存すると、Jira 課題 {{key}} がこの変更で更新されます。`,saveConfirm:`保存して Jira を更新`,detailsTitle:`Jira の詳細`,developmentTitle:`開発`,dev:{pullRequests:`プルリクエスト`,branches:`ブランチ`,commits:`コミット`},goToTicket:`チケット {{key}} を開く`,epic:`エピック`},f={moveButton:`{{status}} に移動`,title:`仕様を {{status}} に移動しますか?`,body:`この仕様の Jira 課題 {{key}} は削除されず、「{{status}}」に移動されます。任意で理由を追加できます。`,commentLabel:`理由(任意)`,commentPlaceholder:`この仕様を移動する理由は?`,confirm:`{{status}} に移動`,moving:`移動中…`,movedToast:`{{key}} を {{status}} に移動しました`,configLabel:`破棄時に課題を移動する先`,configHelp:`Jira と連携した仕様を破棄すると、その課題は削除されず、このステータスに移動されます。`,configNone:`なし — 通常どおり削除`,reviewLabel:`破棄時の移動先`},p={generic:`問題が発生しました`,testFirst:`先に接続をテストしてください`},m={queued:`「{{status}}」への移動をキューに追加 — Jira と同期中`,failed:`Jira でのスペック移動に失敗しました`},h={section:e,wizard:t,creds:n,project:r,mapping:i,review:a,status:o,outbox:s,authExpired:c,badge:l,addSpec:u,detail:d,discard:f,errors:p,moveToStatus:m};export{u as addSpec,c as authExpired,l as badge,n as creds,h as default,d as detail,f as discard,p as errors,i as mapping,m as moveToStatus,s as outbox,r as project,a as review,e as section,o as status,t as wizard};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./createLucideIcon-DtODIU64.js";import{a as t}from"./useDesktop-BjLT0_EE.js";var n={name:`wrench`,size:24,node:[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]};n.node;var r=e(n);async function i(e){let t=await e.text(),n=t?JSON.parse(t):{};if(!e.ok)throw Error(n.error||`Request failed (${e.status})`);return n}function a(e){return e??t()}var o=e=>({method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}),s={getConnection(e){return fetch(`${a(e)}/jira/connection`).then(e=>i(e))},test(e,t){return fetch(`${a(t)}/jira/test`,o(e)).then(e=>i(e))},discoverProjects(e,t){return fetch(`${a(t)}/jira/discover-projects`,o(e)).then(e=>i(e))},discoverStatuses(e,t){return fetch(`${a(t)}/jira/discover-statuses`,o(e)).then(e=>i(e))},connect(e,t){return fetch(`${a(t)}/jira/connect`,o(e)).then(e=>i(e))},setEnabled(e,t){return fetch(`${a(t)}/jira/connection`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({enabled:e})}).then(e=>i(e))},patchConnection(e,t){return fetch(`${a(t)}/jira/connection`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}).then(e=>i(e))},listStatuses(e){return fetch(`${a(e)}/jira/statuses`).then(e=>i(e))},moveSpecToStatus(e,t,n){return fetch(`${a(n)}/jira/specs/${e}/move-to-status`,o({status:t})).then(e=>i(e))},discardSpec(e,t,n){return fetch(`${a(n)}/jira/specs/${e}/discard`,o({comment:t})).then(e=>i(e))},getSpecDetails(e,t){return fetch(`${a(t)}/jira/specs/${e}/details`).then(e=>i(e))},disconnect(e){return fetch(`${a(e)}/jira/connection`,{method:`DELETE`}).then(e=>i(e))},syncNow(e){return fetch(`${a(e)}/jira/sync`,{method:`POST`}).then(e=>i(e))},resume(e){return fetch(`${a(e)}/jira/resume`,{method:`POST`}).then(e=>i(e))},listOutbox(e,t){let n=e?`?state=${e}`:``;return fetch(`${a(t)}/jira/outbox${n}`).then(e=>i(e))},retryOutbox(e,t){return fetch(`${a(t)}/jira/outbox/${e}/retry`,{method:`POST`}).then(e=>i(e))}};export{r as n,s as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function e(e){return e.status===`queued`?e.enqueued_at??null:e.started_at}function t(e){if(!e)return null;let t=/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}(?:\.\d+)?$/.test(e)?`${e.replace(` `,`T`)}Z`:e,n=new Date(t);return Number.isNaN(n.getTime())?null:n}export{t as n,e as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={running:`実行中`,completed:`完了`,done:`完了`,failed:`失敗`,canceled:`キャンセル`,queued:`待機中`,zombie:`ゾンビ`,skipped:`スキップ`},t={running:`ジョブは実行中です`,completed:`ジョブは正常に完了しました`,failed:`ジョブは非ゼロの終了コードで終了しました`,canceled:`ジョブは手動でキャンセルされました`,queued:`ジョブはキュー内で待機しています`,queuedToRun:`ジョブは実行待ちです`,zombie:`長時間アクティビティがなかったため、ジョブは自動終了されました`,skipped:`パイプライン内の親ジョブが失敗したため、ジョブはスキップされました`},n={running:`実行中`,completed:`完了`,failed:`失敗`,canceled:`キャンセル`,zombie_terminated:`ゾンビ`,queued:`待機中`,skipped:`スキップ`},r={title:`ジョブ`,exportJobs:`ジョブをエクスポート`,proposalDeleted:`提案を削除しました`,proposal:{title:`提案`,noContent:`提案の内容はまだありません。`,githubIssue:`GitHub Issue:`,status:{input:`入力待ち`,exploring:`調査中`,review:`レビュー待ち`,refining:`改善中`,creatingIssue:`Issue を作成中`,created:`作成済み`,cancelled:`キャンセル済み`,unknown:`不明なステータス: {{status}}`}}},i={breadcrumbDashboard:`ダッシュボード`,breadcrumbJob:`ジョブ #{{id}}`,notFound:`ジョブが見つかりません`,notFoundDescription:`ジョブ ID「{{id}}」は存在しません`,backToDashboard:`ダッシュボードに戻る`,startedAgo:`{{timeAgo}}に開始`,queuedWaiting:`キュー登録済み — 開始待ち`,exportDiagnostic:`診断をエクスポート`,exportDiagnosticAria:`診断バンドルをエクスポート`,exportDiagnosticTooltip:`このジョブのテレメトリ、ログ、サマリーを含む ZIP をダウンロード`,reExecute:`再実行`,reExecuteTooltip:`同じコマンドで新しいジョブを起動`,cancelJob:`ジョブをキャンセル`,cancelJobTooltip:`実行中のプロセスに SIGTERM を送信します。ジョブはキャンセル済みとしてマークされます。`,cancelInteractive:`破棄`,finalizeJob:`ジョブをファイナライズ`,finalizing:`ファイナライズ中…`,finalizeJobTooltip:`このインタラクティブセッションを終了し、各ターンのトークンとコストをジョブの合計に集計します。`,interactive:{ready:`準備完了 — プロンプトを送信してください`,working:`エージェント作業中…`,placeholder:`実行中のジョブにメッセージを送信…`,send:`送信`,liveTotals:"{{turns}} ターン · ${{cost}}",autoHint:`このジョブは計画に沿って自動で完了します — メッセージは任意の指示です。`,wrapUp:`今すぐ切り上げる`,wrapUpTooltip:`セッションを今すぐ終了します — これまでの成果でジョブが完了し、各ターンのトークンとコストは合計に計上されます。`,wrapUpStep:`このステップを確定`,wrapUpStepTooltip:`現在のステップを今すぐ終了します — ループはこれまでの成果を持って次へ進みます。`,wrappingUp:`切り上げ中…`,queued_one:`{{count}} 件のキュー済みメッセージ`,queued_other:`{{count}} 件のキュー済みメッセージ`,waitingForStep:`ステップの合間です — ループが次に実行する内容を決めています。次の AI ステップが始まるとメッセージを送信できます。`,waitingForStepShort:`次のステップを待機中…`,sendDisabledEmpty:`先にメッセージを入力してください`,sendDisabledWaiting:`現在アクティブなステップセッションはありません`},toast:{jobDeleted:`ジョブを削除しました`,cancelSignalSent:`キャンセルシグナルを送信しました`,cancelSignalSentDescription:`ジョブは次の安全なポイントで停止します`,failed:`失敗しました`,networkError:`ネットワークエラー`,exportFailed:`エクスポートに失敗しました`,exportFailedHttp:`エクスポートに失敗しました (HTTP {{status}})`,jobRequeued:`ジョブを再キューしました`,spawnFailed:`ジョブの起動に失敗しました`,finalizeScheduled:`インタラクティブジョブをファイナライズ中…`,finalizeFailed:`ジョブのファイナライズに失敗しました`,sendFailed:`メッセージの送信に失敗しました`,wrapUpScheduled:`ジョブを切り上げ中…`,wrapUpStepScheduled:`ステップを確定中 — ループは産出済みの成果で先へ進みます`}},a={inProgress:`ジョブ実行中`,completed:`ジョブ完了`,failed:`ジョブ失敗`,duration:`実行時間`,cost:`コスト`,turns:`ターン`,tokens:`トークン`,filesCount_one:`{{count}} ファイル`,filesCount_other:`{{count}} ファイル`,pipelineTotal:`パイプライン合計({{count}} フェーズ)`,totalCost:`合計コスト`,totalTokens:`合計トークン`,filesModified:`変更ファイル`,zoneInProgress:`進行中`,zoneFinal:`最終サマリー`,zoneFinalPending:`最終サマリー — 完了時に計算`,pendingCaption:`完了時に計算`,pendingTooltip:`これはプロバイダーの実際の数値です。ジョブ完了時に表示されます。`,costTooltip:`実際のコストはジョブ終了時にプロバイダーが請求します。`,liveTooltip:`ライブ`,explainer:`コスト・ターン・トークンはプロバイダーの実際の数値で、完了時に表示されます。`,notAvailable:`利用不可`,steps_one:`{{count}} ステップ`,steps_other:`{{count}} ステップ`,activity:{editing:`{{arg}} を編集中`,writing:`{{arg}} を書き込み中`,reading:`{{arg}} を読み込み中`,searching:`「{{arg}}」を検索中`,running:`実行中: {{arg}}`,thinking:`思考中…`,reasoning:`推論中…`,working:`作業中…`,connecting:`エージェントに接続中…`,starting:`起動中…`,delegating:`{{arg}} に委任中`},pipelinePartial:`≥ は部分値 — {{count}} 個のフェーズにコスト記録がありません`,pipelinePartialTooltip:`一部のフェーズはコストを報告する前に終了したため、この合計は下限値です。`,pipelineCostUnavailable:`すべてのフェーズでコストのテレメトリを利用できません。`,pipelineUsageUnavailable:`すべてのフェーズでトークンのテレメトリを利用できません。`,pipelineUsagePartial:`≥ 表示値 — {{count}} フェーズでトークンのテレメトリなし`,pipelineUsageTooltip:`プロバイダーはトークンのテレメトリを提供せずにフェーズを完了する場合があります。既知の使用量のみが含まれます。`,costUnknownLocal:`コスト不明(ローカルエンジン)`,costUnknownLocalTooltip:`コスト不明(ローカルエンジン)。接続に料金を追加すると概算が表示されます。`},o={showMore:`+ 他 {{count}} 件`,showLess:`折りたたむ`,deletedTicket:`#{{id}}(削除済み)`,deletedTooltip:`チケットはもう存在しません`},s={notFound:`ジョブが見つかりません`,cancelConfirmTitle:`ジョブをキャンセルしますか?`,cancelConfirmDescription:`ジョブは次の安全なポイントで停止します。この操作は元に戻せません。`,keepRunning:`実行を続ける`,cancelJob:`ジョブをキャンセル`,stopRun:`実行を停止`,stopRunConfirmTitle:`この実行を停止しますか?`,stopRunConfirmDescription:`ループ実行は次のステップ境界で停止します。この操作は取り消せません。`,toast:{cancelSignalSent:`キャンセルシグナルを送信しました`,cancelSignalSentDescription:`ジョブは次の安全なポイントで停止します`,stopSignalSent:`停止シグナルを送信しました`,stopSignalSentDescription:`実行は次のステップ境界で停止します`,cancelFailed:`キャンセルに失敗しました`,networkError:`ネットワークエラー`}},c={title:`ジョブ比較`,jobN:`ジョブ {{n}}`,loadFailed:`比較の読み込みに失敗しました: {{error}}`,duration:`実行時間`,cost:`コスト`,tokensOut:`出力トークン`,tokensIn:`入力トークン`,cacheRead:`キャッシュ読み取り`,model:`モデル`,phasesDone:`完了フェーズ`,betterValueHint:`緑のハイライトはより良い値を示します`},l={emptyTitle:`ジョブはまだありません`,emptyDescription:`上でコマンドを実行すると、ここにジョブ履歴が表示されます`,loadFailed:`ジョブの読み込みに失敗しました`,filterAll:`すべて ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`開始日`,toDate:`終了日`,clear:`クリア`,exitCompareMode:`比較モードを終了`,compareTwoJobs:`ジョブを2件比較`,clearJobs:`ジョブをクリア`,selectTwoToCompare:`比較するジョブを2件選択`,selectOneMore:`あと1件選択してください`,readyToCompare:`準備完了 — 比較をクリック`,compareAction:`比較 →`,colStatus:`ステータス`,colCommand:`コマンド`,colDuration:`実行時間`,colTokens:`トークン`,colCost:`コスト`,colStarted:`開始`,profileTooltip:`プロファイル: {{name}}`,pipelinePart:`パイプラインの一部`,pipelineDependsOn:`(前のステップに依存)`,deleteProposal:`提案を削除`,loadMore:`さらに読み込む(残り {{count}} 件)`,priority:{critical:`クリティカル`,high:`高`,normal:`通常`,low:`低`},clearModal:{title:`ジョブをクリア`,jobsInHistory_one:`履歴に {{count}} 件のジョブ`,jobsInHistory_other:`履歴に {{count}} 件のジョブ`,clearAll_one:`{{count}} 件のジョブをすべてクリア`,clearAll_other:`{{count}} 件のジョブをすべてクリア`,orByRange:`または日付範囲でクリア:`,fromPlaceholder:`開始`,toPlaceholder:`終了`,clearInRange_one:`範囲内の {{count}} 件のジョブをクリア`,clearInRange_other:`範囲内の {{count}} 件のジョブをクリア`,clearRange:`範囲をクリア`},deleteProposalConfirm:{title:`提案を削除しますか?`,description:`1件の提案が完全に削除されます。この操作は元に戻せません。`},toast:{cleared_one:`{{count}} 件のジョブをクリアしました`,cleared_other:`{{count}} 件のジョブをクリアしました`,clearFailed:`ジョブのクリアに失敗しました`,networkError:`ネットワークエラー`}},u={none:`アクティブなジョブはありません`,noneHint:`下のコマンドを選択してジョブを開始`,exitCode:`exit {{code}}`,cancelTooltip:`実行中の claude プロセスに SIGTERM を送信`,viewLogs:`ログを表示`,toast:{cancelRequested:`ジョブのキャンセルをリクエストしました`,cancelRequestedDescription:`プロセスに SIGTERM を送信しています`,cancelFailed:`ジョブのキャンセルに失敗しました`,networkError:`ジョブのキャンセル中にネットワークエラーが発生しました`}},d={setup:`セットアップ`,iteration:`反復 {{current}}/{{limit}}`,iterationBadge:`反復 {{count}}`,follow:`ライブ追従中`,resumeFollow:`追従を再開`,expandAll:`すべて展開`,collapseAll:`すべて折りたたむ`,copyStep:`ステップをコピー`,copied:`ステップをクリップボードにコピーしました`,stepDetail:`ステップの詳細`,stepDetailTemplate:`テンプレート`,stepDetailCommand:`コマンド`,copyCommand:`コピー`,interrupted:`中断`,waiting:`次のステップを待機中...`,stepMapAria:`ループのステップマップ`,stalled:`停止`,stalledIdle_one:`{{count}} 分間プロバイダーの出力がなく、アプリがこの試行を停止しました`,stalledIdle_other:`{{count}} 分間プロバイダーの出力がなく、アプリがこの試行を停止しました`,providerLimit:`プロバイダー上限`,providerLimitHint:`プロバイダーが利用上限の通知を返したため、アプリはループを続けずに実行を停止しました。`,paused:`一時停止中`,runtimeGraph:`実行グラフ`,graphFullscreen:`全画面表示`,graphExitFullscreen:`全画面表示を終了`,graphBack:`戻る`,graphOpenComponent:`コンポーネントを開く`,graphNoAttempts:`記録された試行はありません`,graphState:{running:`実行中`,paused:`一時停止`,failed:`失敗`,stalled:`進行停止`,interrupted:`中断`,ok:`成功`,pending:`待機中`,unknown:`不明`},repeatFromHere:`ここから繰り返す`,forkFailed:`リンクされた実行を作成できませんでした`,forkPending:`保留中の分岐を完了するには、最初に選択したステップを再試行してください。`,forkCreated:`リンクされた実行を作成しました。開いて選択したチェックポイントから再開してください。`,openFork:`リンクされた実行を開く`},f={loading:`ログを読み込み中...`,empty:`ログ出力はまだありません`,filterPlaceholder:`ログをフィルター...`,copySuccess:`ログをクリップボードにコピーしました`,copyFailed:`ログのコピーに失敗しました`,retainedTail:`このビューでは以前のログ出力が省略されています。コピーには保持された内容のみが含まれます。利用可能な検証の証拠は「詳細」で確認してください。`,lineCount:`{{filtered}} / {{total}} 行`,jumpToBottom:`最下部へ移動`,phaseLines_one:`{{count}} 行`,phaseLines_other:`{{count}} 行`,noMatchingLines:`一致する行はありません`,noOutput:`出力なし`,completed:`完了`,turns_one:`{{count}} ターン`,turns_other:`{{count}} ターン`},p={title:`実行結果`,execution:`実行`,implementation:`実装`,validation:`検証`,archive:`アーカイブ`,delivery:`引き渡し`,counters:`{{steps}} ステップ · {{evaluations}} 回の判定 · エージェント {{turns}} ターン`,unavailable:`利用不可`,evidence:`証拠、例外、フェーズの所要時間`,snapshot:`完了時の記録:{{change}} · {{at}}`,acceptedBy:`承認者:{{by}}`,required:`必須`,supplementary:`補足`,attempts:`{{count}} 回の試行`,phaseCostUnavailable:`Core のフェーズ別コストは利用できません。プロバイダー使用量はループのステップに割り当てられます。`,noCoreEvidence:`受け入れの証拠は利用できません。実行の成功だけではチケットの完了を確認できません。`,status:{success:`成功`,failed:`失敗`,blocked:`ブロック`,stopped:`停止`,stalled:`進展なし`,complete:`完了`,incomplete:`未完了`,verified:`検証済み`,"with-exceptions":`例外付きで検証済み`,pending:`保留`,"pending-host":`ホストの引き渡し待ち`,done:`完了`,running:`実行中`,skipped:`スキップ`,passed:`合格`,unavailable:`利用不可`}},m={details:`詳細`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`これまでにプロバイダーが報告した値です。最終的な数値はジョブ終了時に届きます。`,questionPending:`質問に回答`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={running:`运行中`,completed:`已完成`,done:`完成`,failed:`失败`,canceled:`已取消`,queued:`排队中`,zombie:`僵尸`,skipped:`已跳过`},t={running:`任务正在执行`,completed:`任务已成功完成`,failed:`任务以非零退出码结束`,canceled:`任务已被手动取消`,queued:`任务正在队列中等待`,queuedToRun:`任务正在等待运行`,zombie:`任务因长时间无活动而被自动终止`,skipped:`因流水线中的上游任务失败,此任务被跳过`},n={running:`运行中`,completed:`已完成`,failed:`失败`,canceled:`已取消`,zombie_terminated:`僵尸`,queued:`排队中`,skipped:`已跳过`},r={title:`任务`,exportJobs:`导出任务`,proposalDeleted:`提案已删除`,proposal:{title:`提案`,noContent:`暂无提案内容。`,githubIssue:`GitHub Issue:`,status:{input:`等待输入`,exploring:`探索中`,review:`等待审核`,refining:`优化中`,creatingIssue:`正在创建议题`,created:`已创建`,cancelled:`已取消`,unknown:`未知状态:{{status}}`}}},i={breadcrumbDashboard:`Dashboard`,breadcrumbJob:`任务 #{{id}}`,notFound:`未找到任务`,notFoundDescription:`任务 ID“{{id}}”不存在`,backToDashboard:`返回 Dashboard`,startedAgo:`开始于 {{timeAgo}}`,queuedWaiting:`已排队——等待开始`,exportDiagnostic:`导出诊断`,exportDiagnosticAria:`导出诊断包`,exportDiagnosticTooltip:`下载包含此任务遥测、日志和摘要的 ZIP`,reExecute:`重新执行`,reExecuteTooltip:`用相同命令启动一个新任务`,cancelJob:`取消任务`,cancelJobTooltip:`向运行中的进程发送 SIGTERM。任务将被标记为已取消。`,cancelInteractive:`丢弃`,finalizeJob:`定稿任务`,finalizing:`正在定稿…`,finalizeJobTooltip:`结束此交互会话,并将每一轮的 token 和成本汇总到任务总计中。`,interactive:{ready:`就绪 — 发送提示`,working:`代理处理中…`,placeholder:`向运行中的任务发送消息…`,send:`发送`,liveTotals:"{{turns}} 轮 · ${{cost}}",autoHint:`该任务会按计划自行完成 — 消息只是可选的引导。`,wrapUp:`立即收尾`,wrapUpTooltip:`立即结束会话 — 任务以目前已产出的工作完成,每一轮的 token 与费用都会计入总额。`,wrapUpStep:`结算此步骤`,wrapUpStepTooltip:`立即结束当前步骤 — 循环将带着该步骤目前的产出继续推进。`,wrappingUp:`正在收尾…`,queued_one:`{{count}} 条排队消息`,queued_other:`{{count}} 条排队消息`,waitingForStep:`步骤间隙 — 循环正在决定接下来运行什么。下一个 AI 步骤开始后即可发送消息。`,waitingForStepShort:`等待下一个步骤…`,sendDisabledEmpty:`请先输入消息`,sendDisabledWaiting:`当前没有活跃的步骤会话`},toast:{jobDeleted:`任务已删除`,cancelSignalSent:`已发送取消信号`,cancelSignalSentDescription:`任务将在下一个安全点停止`,failed:`失败`,networkError:`网络错误`,exportFailed:`导出失败`,exportFailedHttp:`导出失败(HTTP {{status}})`,jobRequeued:`任务已重新排队`,spawnFailed:`启动任务失败`,finalizeScheduled:`正在定稿交互任务…`,finalizeFailed:`任务定稿失败`,sendFailed:`发送消息失败`,wrapUpScheduled:`正在收尾任务…`,wrapUpStepScheduled:`正在结算步骤 — 循环将带着已有产出继续`}},a={inProgress:`任务进行中`,completed:`任务已完成`,failed:`任务失败`,duration:`时长`,cost:`成本`,turns:`轮次`,tokens:`Token`,filesCount_one:`{{count}} 个文件`,filesCount_other:`{{count}} 个文件`,pipelineTotal:`流水线合计({{count}} 个阶段)`,totalCost:`总成本`,totalTokens:`总 token 数`,filesModified:`修改的文件`,zoneInProgress:`进行中`,zoneFinal:`最终汇总`,zoneFinalPending:`最终汇总 — 完成后计算`,pendingCaption:`完成后计算`,pendingTooltip:`这是提供方的真实数字;任务完成后显示。`,costTooltip:`真实费用由提供方在任务结束时计费。`,liveTooltip:`实时`,explainer:`费用、轮次和令牌是提供方的真实数字,将在任务完成后显示。`,notAvailable:`不可用`,steps_one:`{{count}} 步`,steps_other:`{{count}} 步`,activity:{editing:`正在编辑 {{arg}}`,writing:`正在写入 {{arg}}`,reading:`正在读取 {{arg}}`,searching:`正在搜索“{{arg}}”`,running:`正在执行:{{arg}}`,thinking:`正在思考…`,reasoning:`正在推理…`,working:`正在处理…`,connecting:`正在连接代理…`,starting:`正在启动…`,delegating:`委派给 {{arg}}`},pipelinePartial:`≥ 表示部分 — {{count}} 个阶段尚无成本记录`,pipelinePartialTooltip:`部分阶段在报告成本前已结束,因此该总额为下限。`,pipelineCostUnavailable:`所有阶段的成本遥测数据均不可用。`,pipelineUsageUnavailable:`所有阶段的 token 遥测数据均不可用。`,pipelineUsagePartial:`≥ 显示值 — {{count}} 个阶段无 token 遥测数据`,pipelineUsageTooltip:`提供方可能在不提供 token 遥测数据的情况下完成阶段;仅计入已知用量。`,costUnknownLocal:`费用未知(本地引擎)`,costUnknownLocalTooltip:`费用未知(本地引擎)。为连接添加费率以查看估算。`},o={showMore:`+ 还有 {{count}} 个`,showLess:`收起`,deletedTicket:`#{{id}}(已删除)`,deletedTooltip:`工单已不存在`},s={notFound:`未找到任务`,cancelConfirmTitle:`取消任务?`,cancelConfirmDescription:`任务将在下一个安全点停止。此操作无法撤销。`,keepRunning:`继续运行`,cancelJob:`取消任务`,stopRun:`停止运行`,stopRunConfirmTitle:`停止此运行?`,stopRunConfirmDescription:`循环运行将在下一个步骤边界停止。此操作无法撤销。`,toast:{cancelSignalSent:`已发送取消信号`,cancelSignalSentDescription:`任务将在下一个安全点停止`,stopSignalSent:`已发送停止信号`,stopSignalSentDescription:`运行将在下一个步骤边界停止`,cancelFailed:`取消失败`,networkError:`网络错误`}},c={title:`任务对比`,jobN:`任务 {{n}}`,loadFailed:`加载对比失败:{{error}}`,duration:`时长`,cost:`成本`,tokensOut:`输出 token`,tokensIn:`输入 token`,cacheRead:`缓存读取`,model:`模型`,phasesDone:`完成阶段数`,betterValueHint:`绿色高亮表示更优值`},l={emptyTitle:`暂无任务`,emptyDescription:`在上方运行命令后,任务历史会显示在这里`,loadFailed:`加载任务失败`,filterAll:`全部({{count}})`,filterStatus:`{{status}}({{count}})`,fromDate:`开始日期`,toDate:`结束日期`,clear:`清除`,exitCompareMode:`退出对比模式`,compareTwoJobs:`对比 2 个任务`,clearJobs:`清空任务`,selectTwoToCompare:`选择 2 个任务进行对比`,selectOneMore:`再选择 1 个任务`,readyToCompare:`就绪——点击对比`,compareAction:`对比 →`,colStatus:`状态`,colCommand:`命令`,colDuration:`时长`,colTokens:`Token`,colCost:`成本`,colStarted:`开始时间`,profileTooltip:`Profile:{{name}}`,pipelinePart:`属于某个流水线`,pipelineDependsOn:`(依赖上一步)`,deleteProposal:`删除提案`,loadMore:`加载更多(剩余 {{count}} 个)`,priority:{critical:`紧急`,high:`高`,normal:`普通`,low:`低`},clearModal:{title:`清空任务`,jobsInHistory_one:`历史中有 {{count}} 个任务`,jobsInHistory_other:`历史中有 {{count}} 个任务`,clearAll_one:`清空全部 {{count}} 个任务`,clearAll_other:`清空全部 {{count}} 个任务`,orByRange:`或按日期范围清除:`,fromPlaceholder:`开始`,toPlaceholder:`结束`,clearInRange_one:`清除范围内 {{count}} 个任务`,clearInRange_other:`清除范围内 {{count}} 个任务`,clearRange:`清除范围`},deleteProposalConfirm:{title:`删除提案?`,description:`将永久删除 1 个提案。此操作无法撤销。`},toast:{cleared_one:`已清除 {{count}} 个任务`,cleared_other:`已清除 {{count}} 个任务`,clearFailed:`清除任务失败`,networkError:`网络错误`}},u={none:`没有进行中的任务`,noneHint:`在下方选择一个命令以启动任务`,exitCode:`退出码 {{code}}`,cancelTooltip:`向运行中的 claude 进程发送 SIGTERM`,viewLogs:`查看日志`,toast:{cancelRequested:`已请求取消任务`,cancelRequestedDescription:`正在向进程发送 SIGTERM`,cancelFailed:`取消任务失败`,networkError:`取消任务时发生网络错误`}},d={setup:`准备`,iteration:`迭代 {{current}}/{{limit}}`,iterationBadge:`迭代 {{count}}`,follow:`实时跟随中`,resumeFollow:`恢复跟随`,expandAll:`全部展开`,collapseAll:`全部折叠`,copyStep:`复制步骤`,copied:`步骤已复制到剪贴板`,stepDetail:`步骤详情`,stepDetailTemplate:`模板`,stepDetailCommand:`命令`,copyCommand:`复制`,interrupted:`已中断`,waiting:`等待下一个步骤…`,stepMapAria:`循环步骤图`,stalled:`已停滞`,stalledIdle_one:`{{count}} 分钟内无提供方输出,应用已停止此次尝试`,stalledIdle_other:`{{count}} 分钟内无提供方输出,应用已停止此次尝试`,providerLimit:`提供商限额`,providerLimitHint:`提供商返回了用量限额提示,应用已停止运行而不是继续循环。`,paused:`已暂停`,runtimeGraph:`执行图`,graphFullscreen:`全屏`,graphExitFullscreen:`退出全屏`,graphBack:`返回`,graphOpenComponent:`打开组件`,graphNoAttempts:`没有已记录的尝试`,graphState:{running:`运行中`,paused:`已暂停`,failed:`失败`,stalled:`无进展`,interrupted:`已中断`,ok:`成功`,pending:`待处理`,unknown:`未知`},repeatFromHere:`从此处重复`,forkFailed:`无法创建关联运行`,forkPending:`请重试最初选择的步骤,以完成待处理的分支。`,forkCreated:`已创建关联运行。请打开并从所选检查点恢复。`,openFork:`打开关联运行`},f={loading:`正在加载日志…`,empty:`暂无日志输出`,filterPlaceholder:`筛选日志…`,copySuccess:`日志已复制到剪贴板`,copyFailed:`复制日志失败`,retainedTail:`此视图省略了较早的日志输出。复制仅包含保留的内容。请在“详情”中查看可用的验证证据。`,lineCount:`{{filtered}} / {{total}} 行`,jumpToBottom:`跳到底部`,phaseLines_one:`{{count}} 行`,phaseLines_other:`{{count}} 行`,noMatchingLines:`没有匹配的行`,noOutput:`无输出`,completed:`已完成`,turns_one:`{{count}} 轮`,turns_other:`{{count}} 轮`},p={title:`运行结果`,execution:`执行`,implementation:`实现`,validation:`验证`,archive:`归档`,delivery:`交付`,counters:`{{steps}} 个步骤 · {{evaluations}} 次决策评估 · {{turns}} 轮代理对话`,unavailable:`不可用`,evidence:`证据、例外和阶段耗时`,snapshot:`完成时记录:{{change}} · {{at}}`,acceptedBy:`由 {{by}} 接受`,required:`必需`,supplementary:`补充`,attempts:`{{count}} 次尝试`,phaseCostUnavailable:`Core 各阶段成本不可用;供应商用量归属于循环步骤。`,noCoreEvidence:`验收证据不可用。执行成功本身并不代表工单已完成。`,status:{success:`成功`,failed:`失败`,blocked:`已阻塞`,stopped:`已停止`,stalled:`无进展`,complete:`已完成`,incomplete:`未完成`,verified:`已验证`,"with-exceptions":`已验证(含例外)`,pending:`待处理`,"pending-host":`等待宿主交付`,done:`已完成`,running:`进行中`,skipped:`已跳过`,passed:`通过`,unavailable:`不可用`}},m={details:`详情`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`截至目前由提供方上报;最终数据在任务结束时给出。`,questionPending:`回答问题`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={running:`em execução`,completed:`concluído`,done:`feito`,failed:`falhou`,canceled:`cancelado`,queued:`em fila`,zombie:`zombie`,skipped:`ignorado`},t={running:`O job está em execução`,completed:`O job foi concluído com sucesso`,failed:`O job terminou com um código de saída diferente de zero`,canceled:`O job foi cancelado manualmente`,queued:`O job está a aguardar na fila`,queuedToRun:`O job está a aguardar para ser executado`,zombie:`O job foi terminado automaticamente após inatividade prolongada`,skipped:`O job foi ignorado porque um job anterior do pipeline falhou`},n={running:`em execução`,completed:`concluído`,failed:`falhou`,canceled:`cancelado`,zombie_terminated:`zombie`,queued:`em fila`,skipped:`ignorado`},r={title:`Jobs`,exportJobs:`Exportar jobs`,proposalDeleted:`Proposta eliminada`,proposal:{title:`Proposta`,noContent:`Ainda não há conteúdo da proposta.`,githubIssue:`Issue do GitHub:`,status:{input:`A aguardar dados`,exploring:`A explorar`,review:`Pronta para revisão`,refining:`A refinar`,creatingIssue:`A criar issue`,created:`Criada`,cancelled:`Cancelada`,unknown:`Estado desconhecido: {{status}}`}}},i={breadcrumbDashboard:`Dashboard`,breadcrumbJob:`Job #{{id}}`,notFound:`Job não encontrado`,notFoundDescription:`O ID de job "{{id}}" não existe`,backToDashboard:`Voltar ao Dashboard`,startedAgo:`Iniciado {{timeAgo}}`,queuedWaiting:`Em fila — a aguardar início`,exportDiagnostic:`Exportar diagnóstico`,exportDiagnosticAria:`Exportar pacote de diagnóstico`,exportDiagnosticTooltip:`Transferir um ZIP com telemetria, logs e resumo deste job`,reExecute:`Reexecutar`,reExecuteTooltip:`Lançar um novo job com o mesmo comando`,cancelJob:`Cancelar job`,cancelJobTooltip:`Enviar SIGTERM ao processo em execução. O job será marcado como cancelado.`,cancelInteractive:`Descartar`,finalizeJob:`Finalizar job`,finalizing:`A finalizar…`,finalizeJobTooltip:`Terminar esta sessão interativa e somar os tokens e o custo de cada turno ao total do job.`,interactive:{ready:`Pronto — envie um prompt`,working:`Agente a trabalhar…`,placeholder:`Envie uma mensagem ao job em execução…`,send:`Enviar`,liveTotals:"{{turns}} turnos · ${{cost}}",autoHint:`Este job segue o seu plano e termina sozinho — as mensagens são orientação opcional.`,wrapUp:`Concluir agora`,wrapUpTooltip:`Termina a sessão agora — o job conclui com o trabalho produzido até ao momento, com os tokens e o custo de cada turno somados ao total.`,wrapUpStep:`Fechar este passo`,wrapUpStepTooltip:`Termina o passo atual agora — o loop avança com o que o passo produziu até ao momento.`,wrappingUp:`A concluir…`,queued_one:`{{count}} mensagem em fila`,queued_other:`{{count}} mensagens em fila`,waitingForStep:`Entre passos — o loop está a decidir o que corre a seguir. Poderá enviar uma mensagem quando o próximo passo de IA começar.`,waitingForStepShort:`A aguardar o próximo passo…`,sendDisabledEmpty:`Escreva primeiro uma mensagem`,sendDisabledWaiting:`Não há nenhuma sessão de passo ativa neste momento`},toast:{jobDeleted:`Job eliminado`,cancelSignalSent:`Sinal de cancelamento enviado`,cancelSignalSentDescription:`O job vai parar no próximo ponto seguro`,failed:`Falhou`,networkError:`Erro de rede`,exportFailed:`Falha na exportação`,exportFailedHttp:`Falha na exportação (HTTP {{status}})`,jobRequeued:`Job colocado novamente na fila`,spawnFailed:`Falha ao lançar o job`,finalizeScheduled:`A finalizar o job interativo…`,finalizeFailed:`Falha ao finalizar o job`,sendFailed:`Falha ao enviar a mensagem`,wrapUpScheduled:`A concluir o job…`,wrapUpStepScheduled:`A fechar o passo — o loop avança com o que produziu`}},a={inProgress:`Job em curso`,completed:`Job concluído`,failed:`Job falhou`,duration:`Duração`,cost:`Custo`,turns:`Turnos`,tokens:`Tokens`,filesCount_one:`{{count}} ficheiro`,filesCount_other:`{{count}} ficheiros`,pipelineTotal:`Total do pipeline ({{count}} fases)`,totalCost:`Custo total`,totalTokens:`Total de tokens`,filesModified:`Ficheiros modificados`,zoneInProgress:`Em andamento`,zoneFinal:`Resumo final`,zoneFinalPending:`Resumo final — calculado ao terminar`,pendingCaption:`Calculado ao terminar`,pendingTooltip:`Este é o valor real do provedor; aparece ao terminar o job.`,costTooltip:`O custo real é cobrado pelo provedor ao encerrar o job.`,liveTooltip:`Ao vivo`,explainer:`Custo, turnos e tokens são os valores reais do provedor e aparecem ao terminar.`,notAvailable:`Indisponível`,steps_one:`{{count}} passo`,steps_other:`{{count}} passos`,activity:{editing:`Editando {{arg}}`,writing:`Escrevendo {{arg}}`,reading:`Lendo {{arg}}`,searching:`Buscando “{{arg}}”`,running:`Executando: {{arg}}`,thinking:`Pensando…`,reasoning:`Raciocinando…`,working:`Trabalhando…`,connecting:`Conectando ao agente…`,starting:`Iniciando…`,delegating:`Delegando a {{arg}}`},pipelinePartial:`≥ exibido — {{count}} fase(s) sem custo registrado`,pipelinePartialTooltip:`Algumas fases terminaram antes de reportar o custo, portanto este total é um limite inferior.`,pipelineCostUnavailable:`A telemetria de custo está indisponível em todas as fases.`,pipelineUsageUnavailable:`A telemetria de tokens está indisponível em todas as fases.`,pipelineUsagePartial:`≥ mostrado — fases sem telemetria de tokens: {{count}}`,pipelineUsageTooltip:`Os fornecedores podem concluir fases sem fornecer telemetria de tokens; apenas a utilização conhecida é incluída.`,costUnknownLocal:`Custo desconhecido (motor local)`,costUnknownLocalTooltip:`Custo desconhecido (motor local). Adicione tarifas à conexão para ver uma estimativa.`},o={showMore:`+ {{count}} mais`,showLess:`Mostrar menos`,deletedTicket:`#{{id}} (eliminado)`,deletedTooltip:`O ticket já não existe`},s={notFound:`Job não encontrado`,cancelConfirmTitle:`Cancelar o job?`,cancelConfirmDescription:`O job vai parar no próximo ponto seguro. Esta ação não pode ser anulada.`,keepRunning:`Manter em execução`,cancelJob:`Cancelar job`,stopRun:`Parar execução`,stopRunConfirmTitle:`Parar esta execução?`,stopRunConfirmDescription:`A execução do loop será interrompida no próximo limite de etapa. Esta ação não pode ser desfeita.`,toast:{cancelSignalSent:`Sinal de cancelamento enviado`,cancelSignalSentDescription:`O job vai parar no próximo ponto seguro`,stopSignalSent:`Sinal de parada enviado`,stopSignalSentDescription:`A execução será interrompida no próximo limite de etapa`,cancelFailed:`Falha ao cancelar`,networkError:`Erro de rede`}},c={title:`Comparação de jobs`,jobN:`Job {{n}}`,loadFailed:`Falha ao carregar a comparação: {{error}}`,duration:`Duração`,cost:`Custo`,tokensOut:`Tokens de saída`,tokensIn:`Tokens de entrada`,cacheRead:`Leitura de cache`,model:`Modelo`,phasesDone:`Fases concluídas`,betterValueHint:`Os destaques a verde indicam melhor valor`},l={emptyTitle:`Ainda não há jobs`,emptyDescription:`Execute um comando acima para ver aqui o seu histórico de jobs`,loadFailed:`Falha ao carregar os jobs`,filterAll:`Todos ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`Data inicial`,toDate:`Data final`,clear:`Limpar`,exitCompareMode:`Sair do modo de comparação`,compareTwoJobs:`Comparar 2 jobs`,clearJobs:`Limpar jobs`,selectTwoToCompare:`Selecione 2 jobs para comparar`,selectOneMore:`Selecione mais 1 job`,readyToCompare:`Pronto — clique em comparar`,compareAction:`Comparar →`,colStatus:`Estado`,colCommand:`Comando`,colDuration:`Duração`,colTokens:`Tokens`,colCost:`Custo`,colStarted:`Início`,profileTooltip:`Perfil: {{name}}`,pipelinePart:`Parte de um pipeline`,pipelineDependsOn:`(depende do passo anterior)`,deleteProposal:`Eliminar proposta`,loadMore:`Carregar mais ({{count}} restantes)`,priority:{critical:`crítica`,high:`alta`,normal:`normal`,low:`baixa`},clearModal:{title:`Limpar jobs`,jobsInHistory_one:`{{count}} job no histórico`,jobsInHistory_other:`{{count}} jobs no histórico`,clearAll_one:`Limpar {{count}} job`,clearAll_other:`Limpar todos os {{count}} jobs`,orByRange:`Ou limpar por intervalo de datas:`,fromPlaceholder:`De`,toPlaceholder:`Até`,clearInRange_one:`Limpar {{count}} job no intervalo`,clearInRange_other:`Limpar {{count}} jobs no intervalo`,clearRange:`Limpar intervalo`},deleteProposalConfirm:{title:`Eliminar a proposta?`,description:`Isto vai eliminar permanentemente 1 proposta. Esta ação não pode ser anulada.`},toast:{cleared_one:`{{count}} job removido`,cleared_other:`{{count}} jobs removidos`,clearFailed:`Falha ao limpar os jobs`,networkError:`Erro de rede`}},u={none:`Nenhum job ativo`,noneHint:`Selecione um comando abaixo para iniciar um job`,exitCode:`exit {{code}}`,cancelTooltip:`Enviar SIGTERM ao processo claude em execução`,viewLogs:`Ver logs`,toast:{cancelRequested:`Cancelamento do job pedido`,cancelRequestedDescription:`A enviar SIGTERM ao processo`,cancelFailed:`Falha ao cancelar o job`,networkError:`Erro de rede ao cancelar o job`}},d={setup:`Preparação`,iteration:`Iteração {{current}}/{{limit}}`,iterationBadge:`iter {{count}}`,follow:`A seguir em direto`,resumeFollow:`Retomar acompanhamento`,expandAll:`Expandir tudo`,collapseAll:`Recolher tudo`,copyStep:`Copiar passo`,copied:`Passo copiado para a área de transferência`,stepDetail:`Detalhes do passo`,stepDetailTemplate:`Modelo`,stepDetailCommand:`Comando`,copyCommand:`Copiar`,interrupted:`Interrompido`,waiting:`A aguardar o próximo passo...`,stepMapAria:`Mapa de passos do loop`,stalled:`Travado`,stalledIdle_one:`Sem saída do fornecedor durante {{count}} minuto — a app parou esta tentativa`,stalledIdle_other:`Sem saída do fornecedor durante {{count}} minutos — a app parou esta tentativa`,providerLimit:`Limite do fornecedor`,providerLimitHint:`O fornecedor respondeu com um aviso de limite de utilização, por isso a app parou a execução em vez de continuar a ciclar.`,paused:`Em pausa`,runtimeGraph:`Grafo de execução`,graphFullscreen:`Tela cheia`,graphExitFullscreen:`Sair da tela cheia`,graphBack:`Voltar`,graphOpenComponent:`Abrir componente`,graphNoAttempts:`Nenhuma tentativa registada`,graphState:{running:`Em execução`,paused:`Pausado`,failed:`Falhou`,stalled:`Sem progresso`,interrupted:`Interrompido`,ok:`Concluído`,pending:`Pendente`,unknown:`Desconhecido`},repeatFromHere:`Repetir a partir daqui`,forkFailed:`Não foi possível criar a execução vinculada`,forkPending:`Tente novamente a etapa selecionada originalmente para concluir a bifurcação pendente.`,forkCreated:`Execução vinculada criada. Abra-a e retome a partir do ponto selecionado.`,openFork:`Abrir execução vinculada`},f={loading:`A carregar logs...`,empty:`Ainda sem saída de log`,filterPlaceholder:`Filtrar logs...`,copySuccess:`Log copiado para a área de transferência`,copyFailed:`Falha ao copiar o log`,retainedTail:`As linhas anteriores do registro foram omitidas desta visualização. A cópia inclui apenas o conteúdo mantido. Consulte Detalhes para as evidências de verificação disponíveis.`,lineCount:`{{filtered}} / {{total}} linhas`,jumpToBottom:`Ir para o fim`,phaseLines_one:`{{count}} linha`,phaseLines_other:`{{count}} linhas`,noMatchingLines:`Nenhuma linha corresponde`,noOutput:`Sem saída`,completed:`Concluído`,turns_one:`{{count}} turno`,turns_other:`{{count}} turnos`},p={title:`Resultado da execução`,execution:`Execução`,implementation:`Implementação`,validation:`Validação`,archive:`Arquivo`,delivery:`Entrega`,counters:`Passos: {{steps}} · Avaliações: {{evaluations}} · Turnos do agente: {{turns}}`,unavailable:`Indisponível`,evidence:`Evidências, exceções e tempos por fase`,snapshot:`Registado ao concluir: {{change}} · {{at}}`,acceptedBy:`Aceite por {{by}}`,required:`Obrigatório`,supplementary:`Complementar`,attempts:`Tentativas: {{count}}`,phaseCostUnavailable:`O custo por fase do Core não está disponível; o consumo do fornecedor é atribuído aos passos do loop.`,noCoreEvidence:`Evidência de aceitação indisponível. O sucesso da execução, por si só, não confirma a conclusão do ticket.`,status:{success:`Bem-sucedida`,failed:`Falhou`,blocked:`Bloqueada`,stopped:`Parada`,stalled:`Sem progresso`,complete:`Completa`,incomplete:`Incompleta`,verified:`Verificada`,"with-exceptions":`Verificada com exceções`,pending:`Pendente`,"pending-host":`Entrega pelo host pendente`,done:`Concluído`,running:`Em curso`,skipped:`Ignorado`,passed:`Aprovado`,unavailable:`Indisponível`}},m={details:`Detalhes`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`Reportado pelo provedor até agora; os números finais chegam quando o job termina.`,questionPending:`Responder à pergunta`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={running:`en cours`,completed:`terminé`,done:`fini`,failed:`échoué`,canceled:`annulé`,queued:`en attente`,zombie:`zombie`,skipped:`ignoré`},t={running:`Le job est en cours d'exécution`,completed:`Le job s'est terminé avec succès`,failed:`Le job s'est terminé avec un code de sortie non nul`,canceled:`Le job a été annulé manuellement`,queued:`Le job attend dans la file`,queuedToRun:`Le job attend de s'exécuter`,zombie:`Le job a été arrêté automatiquement après une inactivité prolongée`,skipped:`Le job a été ignoré car un job parent du pipeline a échoué`},n={running:`en cours`,completed:`terminé`,failed:`échoué`,canceled:`annulé`,zombie_terminated:`zombie`,queued:`en attente`,skipped:`ignoré`},r={title:`Jobs`,exportJobs:`Exporter les jobs`,proposalDeleted:`Proposition supprimée`,proposal:{title:`Proposition`,noContent:`Aucun contenu de proposition pour l'instant.`,githubIssue:`Issue GitHub :`,status:{input:`En attente de saisie`,exploring:`Exploration`,review:`Prête pour révision`,refining:`Affinage`,creatingIssue:`Création du ticket`,created:`Créée`,cancelled:`Annulée`,unknown:`Statut inconnu : {{status}}`}}},i={breadcrumbDashboard:`Tableau de bord`,breadcrumbJob:`Job #{{id}}`,notFound:`Job introuvable`,notFoundDescription:`L'ID de job « {{id}} » n'existe pas`,backToDashboard:`Retour au tableau de bord`,startedAgo:`Démarré {{timeAgo}}`,queuedWaiting:`En file d'attente — en attente de démarrage`,exportDiagnostic:`Exporter le diagnostic`,exportDiagnosticAria:`Exporter le bundle de diagnostic`,exportDiagnosticTooltip:`Télécharger un ZIP avec la télémétrie, les logs et le résumé de ce job`,reExecute:`Réexécuter`,reExecuteTooltip:`Lancer un nouveau job avec la même commande`,cancelJob:`Annuler le job`,cancelJobTooltip:`Envoyer SIGTERM au processus en cours. Le job sera marqué comme annulé.`,cancelInteractive:`Abandonner`,finalizeJob:`Finaliser le job`,finalizing:`Finalisation…`,finalizeJobTooltip:`Terminer cette session interactive et agréger les tokens et le coût de chaque tour dans le total du job.`,interactive:{ready:`Prêt — envoyez un prompt`,working:`L'agent travaille…`,placeholder:`Envoyez un message au job en cours…`,send:`Envoyer`,liveTotals:"{{turns}} tours · ${{cost}}",autoHint:`Ce job suit son plan et se termine tout seul — les messages ne sont qu'un pilotage optionnel.`,wrapUp:`Terminer maintenant`,wrapUpTooltip:`Met fin à la session maintenant — le job se termine avec le travail produit jusqu'ici, les tokens et le coût de chaque tour étant intégrés au total.`,wrapUpStep:`Clore cette étape`,wrapUpStepTooltip:`Met fin à l'étape en cours maintenant — la boucle avance avec ce que l'étape a produit jusqu'ici.`,wrappingUp:`Finalisation…`,queued_one:`{{count}} message en attente`,queued_other:`{{count}} messages en attente`,waitingForStep:`Entre deux étapes — la boucle décide de la suite. Vous pourrez envoyer un message au démarrage de la prochaine étape IA.`,waitingForStepShort:`En attente de la prochaine étape…`,sendDisabledEmpty:`Écrivez d'abord un message`,sendDisabledWaiting:`Aucune session d'étape active pour le moment`},toast:{jobDeleted:`Job supprimé`,cancelSignalSent:`Signal d'annulation envoyé`,cancelSignalSentDescription:`Le job s'arrêtera au prochain point sûr`,failed:`Échec`,networkError:`Erreur réseau`,exportFailed:`Échec de l'export`,exportFailedHttp:`Échec de l'export (HTTP {{status}})`,jobRequeued:`Job remis en file`,spawnFailed:`Échec du lancement du job`,finalizeScheduled:`Finalisation du job interactif…`,finalizeFailed:`Échec de la finalisation du job`,sendFailed:`Échec de l'envoi du message`,wrapUpScheduled:`Finalisation du job…`,wrapUpStepScheduled:`Clôture de l'étape — la boucle avance avec ce qu'elle a produit`}},a={inProgress:`Job en cours`,completed:`Job terminé`,failed:`Job échoué`,duration:`Durée`,cost:`Coût`,turns:`Tours`,tokens:`Tokens`,filesCount_one:`{{count}} fichier`,filesCount_other:`{{count}} fichiers`,pipelineTotal:`Total du pipeline ({{count}} phases)`,totalCost:`Coût total`,totalTokens:`Total des tokens`,filesModified:`Fichiers modifiés`,zoneInProgress:`En cours`,zoneFinal:`Résumé final`,zoneFinalPending:`Résumé final — calculé à la fin`,pendingCaption:`Calculé à la fin`,pendingTooltip:`C'est le chiffre réel du fournisseur ; il apparaît à la fin du job.`,costTooltip:`Le coût réel est facturé par le fournisseur à la clôture du job.`,liveTooltip:`En direct`,explainer:`Le coût, les tours et les tokens sont les chiffres réels du fournisseur et apparaissent à la fin.`,notAvailable:`Non disponible`,steps_one:`{{count}} étape`,steps_other:`{{count}} étapes`,activity:{editing:`Édition de {{arg}}`,writing:`Écriture de {{arg}}`,reading:`Lecture de {{arg}}`,searching:`Recherche de « {{arg}} »`,running:`Exécution : {{arg}}`,thinking:`Réflexion…`,reasoning:`Raisonnement…`,working:`Travail en cours…`,connecting:`Connexion à l'agent…`,starting:`Démarrage…`,delegating:`Délégation à {{arg}}`},pipelinePartial:`≥ affiché — {{count}} phase(s) sans coût enregistré`,pipelinePartialTooltip:`Certaines phases se sont arrêtées avant de rapporter leur coût ; ce total est donc une borne inférieure.`,pipelineCostUnavailable:`La télémétrie de coût est indisponible pour toutes les phases.`,pipelineUsageUnavailable:`La télémétrie des tokens est indisponible pour toutes les phases.`,pipelineUsagePartial:`≥ affiché — phases sans télémétrie des tokens : {{count}}`,pipelineUsageTooltip:`Les fournisseurs peuvent terminer des phases sans exposer la télémétrie des tokens ; seule l'utilisation connue est incluse.`,costUnknownLocal:`Coût inconnu (moteur local)`,costUnknownLocalTooltip:`Coût inconnu (moteur local). Ajoutez des tarifs à la connexion pour voir une estimation.`},o={showMore:`+ {{count}} de plus`,showLess:`Voir moins`,deletedTicket:`#{{id}} (supprimé)`,deletedTooltip:`Le ticket n'existe plus`},s={notFound:`Job introuvable`,cancelConfirmTitle:`Annuler le job ?`,cancelConfirmDescription:`Le job s'arrêtera au prochain point sûr. Cette action est irréversible.`,keepRunning:`Laisser tourner`,cancelJob:`Annuler le job`,stopRun:`Arrêter l'exécution`,stopRunConfirmTitle:`Arrêter cette exécution ?`,stopRunConfirmDescription:`L'exécution de la boucle s'arrêtera à la prochaine limite d'étape. Cette action est irréversible.`,toast:{cancelSignalSent:`Signal d'annulation envoyé`,cancelSignalSentDescription:`Le job s'arrêtera au prochain point sûr`,stopSignalSent:`Signal d'arrêt envoyé`,stopSignalSentDescription:`L'exécution s'arrêtera à la prochaine limite d'étape`,cancelFailed:`Échec de l'annulation`,networkError:`Erreur réseau`}},c={title:`Comparaison de jobs`,jobN:`Job {{n}}`,loadFailed:`Échec du chargement de la comparaison : {{error}}`,duration:`Durée`,cost:`Coût`,tokensOut:`Tokens en sortie`,tokensIn:`Tokens en entrée`,cacheRead:`Lecture cache`,model:`Modèle`,phasesDone:`Phases terminées`,betterValueHint:`Les surlignages verts indiquent la meilleure valeur`},l={emptyTitle:`Aucun job pour l'instant`,emptyDescription:`Exécutez une commande ci-dessus pour voir l'historique de vos jobs ici`,loadFailed:`Échec du chargement des jobs`,filterAll:`Tous ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`Date de début`,toDate:`Date de fin`,clear:`Effacer`,exitCompareMode:`Quitter le mode comparaison`,compareTwoJobs:`Comparer 2 jobs`,clearJobs:`Effacer les jobs`,selectTwoToCompare:`Sélectionnez 2 jobs à comparer`,selectOneMore:`Sélectionnez 1 job de plus`,readyToCompare:`Prêt — cliquez sur comparer`,compareAction:`Comparer →`,colStatus:`Statut`,colCommand:`Commande`,colDuration:`Durée`,colTokens:`Tokens`,colCost:`Coût`,colStarted:`Démarré`,profileTooltip:`Profil : {{name}}`,pipelinePart:`Fait partie d'un pipeline`,pipelineDependsOn:`(dépend de l'étape précédente)`,deleteProposal:`Supprimer la proposition`,loadMore:`Charger plus ({{count}} restants)`,priority:{critical:`critique`,high:`haute`,normal:`normale`,low:`basse`},clearModal:{title:`Effacer les jobs`,jobsInHistory_one:`{{count}} job dans l'historique`,jobsInHistory_other:`{{count}} jobs dans l'historique`,clearAll_one:`Effacer {{count}} job`,clearAll_other:`Effacer les {{count}} jobs`,orByRange:`Ou effacer par plage de dates :`,fromPlaceholder:`Du`,toPlaceholder:`Au`,clearInRange_one:`Effacer {{count}} job dans la plage`,clearInRange_other:`Effacer {{count}} jobs dans la plage`,clearRange:`Effacer la plage`},deleteProposalConfirm:{title:`Supprimer la proposition ?`,description:`Cela supprimera définitivement 1 proposition. Cette action est irréversible.`},toast:{cleared_one:`{{count}} job effacé`,cleared_other:`{{count}} jobs effacés`,clearFailed:`Échec de l'effacement des jobs`,networkError:`Erreur réseau`}},u={none:`Aucun job actif`,noneHint:`Sélectionnez une commande ci-dessous pour démarrer un job`,exitCode:`exit {{code}}`,cancelTooltip:`Envoyer SIGTERM au processus claude en cours`,viewLogs:`Voir les logs`,toast:{cancelRequested:`Annulation du job demandée`,cancelRequestedDescription:`Envoi de SIGTERM au processus`,cancelFailed:`Échec de l'annulation du job`,networkError:`Erreur réseau lors de l'annulation du job`}},d={setup:`Préparation`,iteration:`Itération {{current}}/{{limit}}`,iterationBadge:`itér. {{count}}`,follow:`Suivi en direct`,resumeFollow:`Reprendre le suivi`,expandAll:`Tout développer`,collapseAll:`Tout réduire`,copyStep:`Copier l'étape`,copied:`Étape copiée dans le presse-papiers`,stepDetail:`Détails de l'étape`,stepDetailTemplate:`Modèle`,stepDetailCommand:`Commande`,copyCommand:`Copier`,interrupted:`Interrompue`,waiting:`En attente de la prochaine étape…`,stepMapAria:`Carte des étapes de la boucle`,stalled:`Bloquée`,stalledIdle_one:`Aucune sortie du fournisseur pendant {{count}} minute — l'app a arrêté cette tentative`,stalledIdle_other:`Aucune sortie du fournisseur pendant {{count}} minutes — l'app a arrêté cette tentative`,providerLimit:`Limite du fournisseur`,providerLimitHint:`Le fournisseur a répondu par un avis de limite d'utilisation ; l'app a arrêté l'exécution au lieu de boucler.`,paused:`En pause`,runtimeGraph:`Graphe d’exécution`,graphFullscreen:`Plein écran`,graphExitFullscreen:`Quitter le plein écran`,graphBack:`Retour`,graphOpenComponent:`Ouvrir le composant`,graphNoAttempts:`Aucune tentative enregistrée`,graphState:{running:`En cours`,paused:`En pause`,failed:`Échec`,stalled:`Bloqué`,interrupted:`Interrompu`,ok:`Réussi`,pending:`En attente`,unknown:`Inconnu`},repeatFromHere:`Reprendre à partir d’ici`,forkFailed:`Impossible de créer l’exécution liée`,forkPending:`Réessayez l’étape sélectionnée initialement pour terminer la bifurcation en attente.`,forkCreated:`Exécution liée créée. Ouvrez-la et reprenez au point sélectionné.`,openFork:`Ouvrir l’exécution liée`},f={loading:`Chargement des logs…`,empty:`Aucune sortie de log pour l'instant`,filterPlaceholder:`Filtrer les logs…`,copySuccess:`Log copié dans le presse-papiers`,copyFailed:`Échec de la copie du log`,retainedTail:`Les premières lignes du journal ont été omises de cette vue. La copie contient uniquement la vue conservée. Consultez Détails pour les preuves de vérification disponibles.`,lineCount:`{{filtered}} / {{total}} lignes`,jumpToBottom:`Aller en bas`,phaseLines_one:`{{count}} ligne`,phaseLines_other:`{{count}} lignes`,noMatchingLines:`Aucune ligne correspondante`,noOutput:`Aucune sortie`,completed:`Terminé`,turns_one:`{{count}} tour`,turns_other:`{{count}} tours`},p={title:`Résultat de l’exécution`,execution:`Exécution`,implementation:`Implémentation`,validation:`Validation`,archive:`Archivage`,delivery:`Livraison`,counters:`Étapes : {{steps}} · Évaluations : {{evaluations}} · Tours de l’agent : {{turns}}`,unavailable:`Indisponible`,evidence:`Preuves, exceptions et durées des phases`,snapshot:`Enregistré à la fin : {{change}} · {{at}}`,acceptedBy:`Accepté par {{by}}`,required:`Obligatoire`,supplementary:`Complémentaire`,attempts:`Tentatives : {{count}}`,phaseCostUnavailable:`Le coût par phase Core est indisponible ; la consommation du fournisseur est attribuée aux étapes de la boucle.`,noCoreEvidence:`Preuves d’acceptation indisponibles. Une exécution réussie ne confirme pas à elle seule que le ticket est terminé.`,status:{success:`Réussie`,failed:`Échouée`,blocked:`Bloquée`,stopped:`Arrêtée`,stalled:`Sans progression`,complete:`Terminée`,incomplete:`Incomplète`,verified:`Vérifiée`,"with-exceptions":`Vérifiée avec exceptions`,pending:`En attente`,"pending-host":`Livraison par l’hôte en attente`,done:`Terminé`,running:`En cours`,skipped:`Ignoré`,passed:`Réussi`,unavailable:`Indisponible`}},m={details:`Détails`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`Rapporté par le fournisseur jusqu'ici ; les chiffres définitifs arrivent à la fin du job.`,questionPending:`Répondre à la question`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={running:`en ejecución`,completed:`completado`,done:`hecho`,failed:`fallido`,canceled:`cancelado`,queued:`en cola`,zombie:`zombie`,skipped:`omitido`},t={running:`El job se está ejecutando`,completed:`El job se completó correctamente`,failed:`El job terminó con un código de salida distinto de cero`,canceled:`El job se canceló manualmente`,queued:`El job está esperando en la cola`,queuedToRun:`El job está esperando para ejecutarse`,zombie:`El job se terminó automáticamente tras una inactividad prolongada`,skipped:`El job se omitió porque falló un job padre del pipeline`},n={running:`en ejecución`,completed:`completado`,failed:`fallido`,canceled:`cancelado`,zombie_terminated:`zombie`,queued:`en cola`,skipped:`omitido`},r={title:`Jobs`,exportJobs:`Exportar jobs`,proposalDeleted:`Propuesta eliminada`,proposal:{title:`Propuesta`,noContent:`Aún no hay contenido de la propuesta.`,githubIssue:`Issue de GitHub:`,status:{input:`Esperando información`,exploring:`Explorando`,review:`Lista para revisión`,refining:`Refinando`,creatingIssue:`Creando incidencia`,created:`Creada`,cancelled:`Cancelada`,unknown:`Estado desconocido: {{status}}`}}},i={breadcrumbDashboard:`Dashboard`,breadcrumbJob:`Job #{{id}}`,notFound:`Job no encontrado`,notFoundDescription:`El ID de job «{{id}}» no existe`,backToDashboard:`Volver al Dashboard`,startedAgo:`Iniciado {{timeAgo}}`,queuedWaiting:`En cola — esperando para empezar`,exportDiagnostic:`Exportar diagnóstico`,exportDiagnosticAria:`Exportar paquete de diagnóstico`,exportDiagnosticTooltip:`Descarga un ZIP con la telemetría, los logs y el resumen de este job`,reExecute:`Reejecutar`,reExecuteTooltip:`Lanza un nuevo job con el mismo comando`,cancelJob:`Cancelar job`,cancelJobTooltip:`Envía SIGTERM al proceso en ejecución. El job se marcará como cancelado.`,cancelInteractive:`Descartar`,finalizeJob:`Finalizar job`,finalizing:`Finalizando…`,finalizeJobTooltip:`Termina esta sesión interactiva e incorpora los tokens y el coste de cada turno al total del job.`,interactive:{ready:`Listo — envía un prompt`,working:`El agente está trabajando…`,placeholder:`Envía un mensaje al job en ejecución…`,send:`Enviar`,liveTotals:"{{turns}} turnos · ${{cost}}",autoHint:`Este job sigue su plan y termina solo — los mensajes son orientación opcional.`,wrapUp:`Terminar ahora`,wrapUpTooltip:`Finaliza la sesión ahora — el job se completa con el trabajo producido hasta el momento, con los tokens y el coste de cada turno sumados al total.`,wrapUpStep:`Cerrar este paso`,wrapUpStepTooltip:`Finaliza el paso actual ahora — el loop avanza con lo que el paso ha producido hasta el momento.`,wrappingUp:`Terminando…`,queued_one:`{{count}} mensaje en cola`,queued_other:`{{count}} mensajes en cola`,waitingForStep:`Entre pasos — el loop está decidiendo qué se ejecuta a continuación. Podrás enviar un mensaje cuando empiece el siguiente paso de IA.`,waitingForStepShort:`Esperando el siguiente paso…`,sendDisabledEmpty:`Escribe un mensaje primero`,sendDisabledWaiting:`Ahora mismo no hay ninguna sesión de paso activa`},toast:{jobDeleted:`Job eliminado`,cancelSignalSent:`Señal de cancelación enviada`,cancelSignalSentDescription:`El job se detendrá en el siguiente punto seguro`,failed:`Error`,networkError:`Error de red`,exportFailed:`Error al exportar`,exportFailedHttp:`Error al exportar (HTTP {{status}})`,jobRequeued:`Job reencolado`,spawnFailed:`No se pudo lanzar el job`,finalizeScheduled:`Finalizando job interactivo…`,finalizeFailed:`No se pudo finalizar el job`,sendFailed:`No se pudo enviar el mensaje`,wrapUpScheduled:`Terminando el job…`,wrapUpStepScheduled:`Cerrando el paso — el loop avanza con lo que ha producido`}},a={inProgress:`Job en curso`,completed:`Job completado`,failed:`Job fallido`,duration:`Duración`,cost:`Coste`,turns:`Turnos`,tokens:`Tokens`,filesCount_one:`{{count}} archivo`,filesCount_other:`{{count}} archivos`,pipelineTotal:`Total del pipeline ({{count}} fases)`,totalCost:`Coste total`,totalTokens:`Tokens totales`,filesModified:`Archivos modificados`,zoneInProgress:`En curso`,zoneFinal:`Resumen final`,zoneFinalPending:`Resumen final — se calcula al terminar`,pendingCaption:`Se calcula al terminar`,pendingTooltip:`Esta cifra es la real del proveedor; aparece al terminar el job.`,costTooltip:`El coste real lo factura el proveedor al cerrar el job.`,liveTooltip:`En vivo`,explainer:`Las cifras de coste, turnos y tokens son las reales del proveedor y aparecen al terminar.`,notAvailable:`No disponible`,steps_one:`{{count}} paso`,steps_other:`{{count}} pasos`,activity:{editing:`Editando {{arg}}`,writing:`Escribiendo {{arg}}`,reading:`Leyendo {{arg}}`,searching:`Buscando “{{arg}}”`,running:`Ejecutando: {{arg}}`,thinking:`Pensando…`,reasoning:`Razonando…`,working:`Trabajando…`,connecting:`Conectando con el agente…`,starting:`Iniciando…`,delegating:`Delegando a {{arg}}`},pipelinePartial:`≥ mostrado — {{count}} fase(s) aún sin coste registrado`,pipelinePartialTooltip:`Algunas fases no informaron el coste, por lo que este total es un mínimo.`,pipelineCostUnavailable:`La telemetría de coste no está disponible en ninguna fase.`,pipelineUsageUnavailable:`La telemetría de tokens no está disponible en ninguna fase.`,pipelineUsagePartial:`≥ mostrado — {{count}} fase(s) sin telemetría de tokens`,pipelineUsageTooltip:`Los proveedores pueden completar fases sin exponer telemetría de tokens; solo se incluye el uso conocido.`,costUnknownLocal:`Coste desconocido (motor local)`,costUnknownLocalTooltip:`Coste desconocido (motor local). Añade tarifas a la conexión para ver una estimación.`},o={showMore:`+ {{count}} más`,showLess:`Mostrar menos`,deletedTicket:`#{{id}} (eliminado)`,deletedTooltip:`El ticket ya no existe`},s={notFound:`Job no encontrado`,cancelConfirmTitle:`¿Cancelar el job?`,cancelConfirmDescription:`El job se detendrá en el siguiente punto seguro. Esta acción no se puede deshacer.`,keepRunning:`Seguir ejecutando`,cancelJob:`Cancelar job`,stopRun:`Detener ejecución`,stopRunConfirmTitle:`¿Detener esta ejecución?`,stopRunConfirmDescription:`La ejecución del loop se detendrá en el siguiente límite de paso. Esta acción no se puede deshacer.`,toast:{cancelSignalSent:`Señal de cancelación enviada`,cancelSignalSentDescription:`El job se detendrá en el siguiente punto seguro`,stopSignalSent:`Señal de detención enviada`,stopSignalSentDescription:`La ejecución se detendrá en el siguiente límite de paso`,cancelFailed:`No se pudo cancelar`,networkError:`Error de red`}},c={title:`Comparación de jobs`,jobN:`Job {{n}}`,loadFailed:`No se pudo cargar la comparación: {{error}}`,duration:`Duración`,cost:`Coste`,tokensOut:`Tokens de salida`,tokensIn:`Tokens de entrada`,cacheRead:`Lectura de caché`,model:`Modelo`,phasesDone:`Fases completadas`,betterValueHint:`Los resaltados en verde indican mejor valor`},l={emptyTitle:`Aún no hay jobs`,emptyDescription:`Ejecuta un comando arriba para ver aquí tu historial de jobs`,loadFailed:`No se pudieron cargar los jobs`,filterAll:`Todos ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`Fecha de inicio`,toDate:`Fecha de fin`,clear:`Limpiar`,exitCompareMode:`Salir del modo comparación`,compareTwoJobs:`Comparar 2 jobs`,clearJobs:`Limpiar jobs`,selectTwoToCompare:`Selecciona 2 jobs para comparar`,selectOneMore:`Selecciona 1 job más`,readyToCompare:`Listo — haz clic en comparar`,compareAction:`Comparar →`,colStatus:`Estado`,colCommand:`Comando`,colDuration:`Duración`,colTokens:`Tokens`,colCost:`Coste`,colStarted:`Inicio`,profileTooltip:`Perfil: {{name}}`,pipelinePart:`Parte de un pipeline`,pipelineDependsOn:`(depende del paso anterior)`,deleteProposal:`Eliminar propuesta`,loadMore:`Cargar más ({{count}} restantes)`,priority:{critical:`crítica`,high:`alta`,normal:`normal`,low:`baja`},clearModal:{title:`Limpiar jobs`,jobsInHistory_one:`{{count}} job en el historial`,jobsInHistory_other:`{{count}} jobs en el historial`,clearAll_one:`Limpiar {{count}} job`,clearAll_other:`Limpiar los {{count}} jobs`,orByRange:`O limpiar por rango de fechas:`,fromPlaceholder:`Desde`,toPlaceholder:`Hasta`,clearInRange_one:`Limpiar {{count}} job del rango`,clearInRange_other:`Limpiar {{count}} jobs del rango`,clearRange:`Limpiar rango`},deleteProposalConfirm:{title:`¿Eliminar la propuesta?`,description:`Se eliminará permanentemente 1 propuesta. Esta acción no se puede deshacer.`},toast:{cleared_one:`{{count}} job eliminado`,cleared_other:`{{count}} jobs eliminados`,clearFailed:`No se pudieron limpiar los jobs`,networkError:`Error de red`}},u={none:`Ningún job activo`,noneHint:`Selecciona un comando abajo para iniciar un job`,exitCode:`exit {{code}}`,cancelTooltip:`Envía SIGTERM al proceso de claude en ejecución`,viewLogs:`Ver logs`,toast:{cancelRequested:`Cancelación del job solicitada`,cancelRequestedDescription:`Enviando SIGTERM al proceso`,cancelFailed:`No se pudo cancelar el job`,networkError:`Error de red al cancelar el job`}},d={setup:`Preparación`,iteration:`Iteración {{current}}/{{limit}}`,iterationBadge:`iter {{count}}`,follow:`Siguiendo en vivo`,resumeFollow:`Reanudar seguimiento`,expandAll:`Expandir todo`,collapseAll:`Contraer todo`,copyStep:`Copiar paso`,copied:`Paso copiado al portapapeles`,stepDetail:`Detalles del paso`,stepDetailTemplate:`Plantilla`,stepDetailCommand:`Comando`,copyCommand:`Copiar`,interrupted:`Interrumpido`,waiting:`Esperando el siguiente paso...`,stepMapAria:`Mapa de pasos del loop`,stalled:`Atascado`,stalledIdle_one:`Sin salida del proveedor durante {{count}} minuto: la app detuvo este intento`,stalledIdle_other:`Sin salida del proveedor durante {{count}} minutos: la app detuvo este intento`,providerLimit:`Límite del proveedor`,providerLimitHint:`El proveedor respondió con un aviso de límite de uso, así que la app detuvo el run en vez de seguir iterando.`,paused:`En pausa`,runtimeGraph:`Grafo de ejecución`,graphFullscreen:`Pantalla completa`,graphExitFullscreen:`Salir de pantalla completa`,graphBack:`Volver`,graphOpenComponent:`Abrir componente`,graphNoAttempts:`Sin intentos registrados`,graphState:{running:`En ejecución`,paused:`Pausado`,failed:`Fallido`,stalled:`Sin progreso`,interrupted:`Interrumpido`,ok:`Completado`,pending:`Pendiente`,unknown:`Desconocido`},repeatFromHere:`Repetir desde aquí`,forkFailed:`No se pudo crear la ejecución enlazada`,forkPending:`Reintenta el paso seleccionado originalmente para completar la bifurcación pendiente.`,forkCreated:`Ejecución enlazada creada. Ábrela y reanuda desde el punto seleccionado.`,openFork:`Abrir ejecución enlazada`},f={loading:`Cargando logs...`,empty:`Aún no hay salida de log`,filterPlaceholder:`Filtrar logs...`,copySuccess:`Log copiado al portapapeles`,copyFailed:`No se pudo copiar el log`,retainedTail:`Se ha omitido texto anterior del registro en esta vista. La copia incluye solo la vista conservada. Consulta en Detalles las evidencias de verificación disponibles.`,lineCount:`{{filtered}} / {{total}} líneas`,jumpToBottom:`Ir al final`,phaseLines_one:`{{count}} línea`,phaseLines_other:`{{count}} líneas`,noMatchingLines:`Ninguna línea coincide`,noOutput:`Sin salida`,completed:`Completado`,turns_one:`{{count}} turno`,turns_other:`{{count}} turnos`},p={title:`Resultado de ejecución`,execution:`Ejecución`,implementation:`Implementación`,validation:`Validación`,archive:`Archivo`,delivery:`Entrega`,counters:`Pasos: {{steps}} · Evaluaciones del decider: {{evaluations}} · Turnos del agente: {{turns}}`,unavailable:`No disponible`,evidence:`Evidencia, excepciones y tiempos por fase`,snapshot:`Registrado al finalizar: {{change}} · {{at}}`,acceptedBy:`Aceptado por {{by}}`,required:`Obligatorio`,supplementary:`Complementario`,attempts:`Intentos: {{count}}`,phaseCostUnavailable:`El coste por fase de Core no está disponible; el consumo del proveedor se atribuye a pasos del loop.`,noCoreEvidence:`Evidencia de aceptación no disponible. El éxito de ejecución por sí solo no confirma que se haya completado el ticket.`,status:{success:`Correcta`,failed:`Fallida`,blocked:`Bloqueada`,stopped:`Detenida`,stalled:`Sin progreso`,complete:`Completa`,incomplete:`Incompleta`,verified:`Verificada`,"with-exceptions":`Verificada con excepciones`,pending:`Pendiente`,"pending-host":`Pendiente del host`,done:`Completado`,running:`En curso`,skipped:`Omitido`,passed:`Correcto`,unavailable:`No disponible`}},m={details:`Detalles`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`Reportado por el proveedor hasta ahora; las cifras finales llegan al terminar el job.`,questionPending:`Responder la pregunta`},h={statusLabel:e,statusTooltip:t,statusName:n,page:r,detail:i,statusPanel:a,ticketHeader:o,modal:s,comparison:c,recent:l,activeJob:u,loopExplorer:d,logViewer:f,completion:p,runHeader:m};export{u as activeJob,c as comparison,p as completion,h as default,i as detail,f as logViewer,d as loopExplorer,s as modal,r as page,l as recent,m as runHeader,e as statusLabel,n as statusName,a as statusPanel,t as statusTooltip,o as ticketHeader};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({activeJob:()=>f,comparison:()=>u,completion:()=>h,default:()=>_,detail:()=>o,logViewer:()=>m,loopExplorer:()=>p,modal:()=>l,page:()=>a,recent:()=>d,runHeader:()=>g,statusLabel:()=>n,statusName:()=>i,statusPanel:()=>s,statusTooltip:()=>r,ticketHeader:()=>c}),n={running:`running`,completed:`completed`,done:`done`,failed:`failed`,canceled:`canceled`,queued:`queued`,zombie:`zombie`,skipped:`skipped`},r={running:`Job is actively executing`,completed:`Job completed successfully`,failed:`Job exited with a non-zero exit code`,canceled:`Job was manually canceled`,queued:`Job is waiting in the queue`,queuedToRun:`Job is waiting to run`,zombie:`Job was auto-terminated after prolonged inactivity`,skipped:`Job was skipped because a parent job in the pipeline failed`},i={running:`running`,completed:`completed`,failed:`failed`,canceled:`canceled`,zombie_terminated:`zombie`,queued:`queued`,skipped:`skipped`},a={title:`Jobs`,exportJobs:`Export Jobs`,proposalDeleted:`Proposal deleted`,proposal:{title:`Proposal`,noContent:`No proposal content yet.`,githubIssue:`GitHub Issue:`,status:{input:`Awaiting input`,exploring:`Exploring`,review:`Ready for review`,refining:`Refining`,creatingIssue:`Creating issue`,created:`Created`,cancelled:`Cancelled`,unknown:`Unknown status: {{status}}`}}},o={breadcrumbDashboard:`Dashboard`,breadcrumbJob:`Job #{{id}}`,notFound:`Job not found`,notFoundDescription:`The job ID "{{id}}" doesn't exist`,backToDashboard:`Back to Dashboard`,startedAgo:`Started {{timeAgo}}`,queuedWaiting:`Queued — waiting to start`,exportDiagnostic:`Export diagnostic`,exportDiagnosticAria:`Export diagnostic bundle`,exportDiagnosticTooltip:`Download ZIP with telemetry, logs, and summary for this job`,reExecute:`Re-execute`,reExecuteTooltip:`Spawn a new job with the same command`,cancelJob:`Cancel Job`,cancelJobTooltip:`Send SIGTERM to the running process. The job will be marked as canceled.`,cancelInteractive:`Discard`,finalizeJob:`Finalize Job`,finalizing:`Finalizing…`,finalizeJobTooltip:`End this interactive session and roll every turn's tokens and cost into the job total.`,interactive:{ready:`Ready — send a prompt`,working:`Agent working…`,placeholder:`Send a message to the running job…`,send:`Send`,liveTotals:"{{turns}} turns · ${{cost}}",autoHint:`This job follows its plan and finishes on its own — messages are optional steering.`,wrapUp:`Wrap up now`,wrapUpTooltip:`End the session now — the job completes with the work produced so far, every turn's tokens and cost rolled into the total.`,wrapUpStep:`Settle this step`,wrapUpStepTooltip:`End the current step now — the loop advances with what the step has produced so far.`,wrappingUp:`Wrapping up…`,queued_one:`{{count}} queued message`,queued_other:`{{count}} queued messages`,waitingForStep:`Between steps — the loop is deciding what runs next. You can send a message when the next AI step starts.`,waitingForStepShort:`Waiting for the next step…`,sendDisabledEmpty:`Type a message first`,sendDisabledWaiting:`No active step session right now`},toast:{jobDeleted:`Job deleted`,cancelSignalSent:`Cancel signal sent`,cancelSignalSentDescription:`Job will stop at the next safe point`,failed:`Failed`,networkError:`Network error`,exportFailed:`Export failed`,exportFailedHttp:`Export failed (HTTP {{status}})`,jobRequeued:`Job re-queued`,spawnFailed:`Failed to spawn job`,finalizeScheduled:`Finalizing interactive job…`,finalizeFailed:`Failed to finalize job`,sendFailed:`Failed to send message`,wrapUpScheduled:`Wrapping up the job…`,wrapUpStepScheduled:`Settling the step — the loop advances with what it produced`}},s={inProgress:`Job in progress`,completed:`Job completed`,failed:`Job failed`,duration:`Duration`,cost:`Cost`,turns:`Turns`,tokens:`Tokens`,filesCount_one:`{{count}} file`,filesCount_other:`{{count}} files`,pipelineTotal:`Pipeline total ({{count}} phases)`,totalCost:`Total cost`,totalTokens:`Total tokens`,filesModified:`Files modified`,zoneInProgress:`In progress`,zoneFinal:`Final summary`,zoneFinalPending:`Final summary — calculated when finished`,pendingCaption:`Calculated when finished`,pendingTooltip:`This is the provider's real figure; it appears when the job finishes.`,costTooltip:`The real cost is billed by the provider when the job closes.`,liveTooltip:`Live`,explainer:`Cost, turns and tokens are the provider's real figures and appear when the job finishes.`,notAvailable:`Not available`,steps_one:`{{count}} step`,steps_other:`{{count}} steps`,activity:{editing:`Editing {{arg}}`,writing:`Writing {{arg}}`,reading:`Reading {{arg}}`,searching:`Searching “{{arg}}”`,running:`Running: {{arg}}`,thinking:`Thinking…`,reasoning:`Reasoning…`,working:`Working…`,connecting:`Connecting to the agent…`,starting:`Starting…`,delegating:`Delegating to {{arg}}`},pipelinePartial:`≥ shown — {{count}} phase(s) have no recorded cost yet`,pipelinePartialTooltip:`Some phases did not report cost, so this total is a lower bound.`,pipelineCostUnavailable:`Cost telemetry is unavailable for every phase.`,pipelineUsageUnavailable:`Token telemetry is unavailable for every phase.`,pipelineUsagePartial:`≥ shown — {{count}} phase(s) have no token telemetry`,pipelineUsageTooltip:`Providers may complete phases without exposing token telemetry; only known usage is included.`,costUnknownLocal:`Cost unknown (local engine)`,costUnknownLocalTooltip:`Cost unknown (local engine). Add rates to the connection to see an estimate.`},c={showMore:`+ {{count}} more`,showLess:`Show less`,deletedTicket:`#{{id}} (deleted)`,deletedTooltip:`Ticket no longer exists`},l={notFound:`Job not found`,cancelConfirmTitle:`Cancel job?`,cancelConfirmDescription:`The job will stop at the next safe point. This action cannot be undone.`,keepRunning:`Keep running`,cancelJob:`Cancel job`,stopRun:`Stop run`,stopRunConfirmTitle:`Stop this run?`,stopRunConfirmDescription:`The loop run will stop at the next step boundary. This action cannot be undone.`,toast:{cancelSignalSent:`Cancel signal sent`,cancelSignalSentDescription:`Job will stop at the next safe point`,stopSignalSent:`Stop signal sent`,stopSignalSentDescription:`The run will stop at the next step boundary`,cancelFailed:`Failed to cancel`,networkError:`Network error`}},u={title:`Job Comparison`,jobN:`Job {{n}}`,loadFailed:`Failed to load comparison: {{error}}`,duration:`Duration`,cost:`Cost`,tokensOut:`Tokens out`,tokensIn:`Tokens in`,cacheRead:`Cache read`,model:`Model`,phasesDone:`Phases done`,betterValueHint:`Green highlights indicate better value`},d={emptyTitle:`No jobs yet`,emptyDescription:`Run a command above to see your job history here`,loadFailed:`Failed to load jobs`,filterAll:`All ({{count}})`,filterStatus:`{{status}} ({{count}})`,fromDate:`From date`,toDate:`To date`,clear:`Clear`,exitCompareMode:`Exit compare mode`,compareTwoJobs:`Compare 2 jobs`,clearJobs:`Clear jobs`,selectTwoToCompare:`Select 2 jobs to compare`,selectOneMore:`Select 1 more job`,readyToCompare:`Ready — click compare`,compareAction:`Compare →`,colStatus:`Status`,colCommand:`Command`,colDuration:`Duration`,colTokens:`Tokens`,colCost:`Cost`,colStarted:`Started`,profileTooltip:`Profile: {{name}}`,pipelinePart:`Part of a pipeline`,pipelineDependsOn:`(depends on previous step)`,deleteProposal:`Delete proposal`,loadMore:`Load more ({{count}} remaining)`,priority:{critical:`critical`,high:`high`,normal:`normal`,low:`low`},clearModal:{title:`Clear Jobs`,jobsInHistory_one:`{{count}} job in history`,jobsInHistory_other:`{{count}} jobs in history`,clearAll_one:`Clear all {{count}} job`,clearAll_other:`Clear all {{count}} jobs`,orByRange:`Or clear by date range:`,fromPlaceholder:`From`,toPlaceholder:`To`,clearInRange_one:`Clear {{count}} job in range`,clearInRange_other:`Clear {{count}} jobs in range`,clearRange:`Clear range`},deleteProposalConfirm:{title:`Delete proposal?`,description:`This will permanently delete 1 proposal. This action cannot be undone.`},toast:{cleared_one:`Cleared {{count}} job`,cleared_other:`Cleared {{count}} jobs`,clearFailed:`Failed to clear jobs`,networkError:`Network error`}},f={none:`No active job`,noneHint:`Select a command below to start a job`,exitCode:`exit {{code}}`,cancelTooltip:`Send SIGTERM to the running claude process`,viewLogs:`View Logs`,toast:{cancelRequested:`Job cancellation requested`,cancelRequestedDescription:`Sending SIGTERM to the process`,cancelFailed:`Failed to cancel job`,networkError:`Network error canceling job`}},p={setup:`Setup`,iteration:`Iteration {{current}}/{{limit}}`,iterationBadge:`iter {{count}}`,follow:`Following live`,resumeFollow:`Resume follow`,expandAll:`Expand all`,collapseAll:`Collapse all`,copyStep:`Copy step`,copied:`Step copied to clipboard`,stepDetail:`Step details`,stepDetailTemplate:`Template`,stepDetailCommand:`Command`,copyCommand:`Copy`,interrupted:`Interrupted`,waiting:`Waiting for the next step…`,stepMapAria:`Loop step map`,stalled:`Stalled`,stalledIdle_one:`No provider output for {{count}} minute — the app stopped this attempt`,stalledIdle_other:`No provider output for {{count}} minutes — the app stopped this attempt`,providerLimit:`Provider limit`,providerLimitHint:`The provider answered with a usage or rate-limit notice, so the app stopped the run instead of cycling.`,paused:`Paused`,runtimeGraph:`Run graph`,graphFullscreen:`Full screen`,graphExitFullscreen:`Exit full screen`,graphBack:`Back`,graphOpenComponent:`Open component`,graphNoAttempts:`No recorded attempts`,graphState:{running:`Running`,paused:`Paused`,failed:`Failed`,stalled:`Stalled`,interrupted:`Interrupted`,ok:`Succeeded`,pending:`Pending`,unknown:`Unknown`},repeatFromHere:`Repeat from here`,forkFailed:`Could not create the linked run`,forkPending:`Retry the originally selected step to finish the pending fork.`,forkCreated:`Linked run created. Open it and resume from the selected checkpoint.`,openFork:`Open linked run`},m={loading:`Loading logs...`,empty:`No log output yet`,filterPlaceholder:`Filter logs...`,copySuccess:`Log copied to clipboard`,copyFailed:`Failed to copy log`,retainedTail:`Earlier log output omitted from this view. Copy includes only the retained view. Check Details for available verification evidence.`,lineCount:`{{filtered}} / {{total}} lines`,jumpToBottom:`Jump to bottom`,phaseLines_one:`{{count}} line`,phaseLines_other:`{{count}} lines`,noMatchingLines:`No matching lines`,noOutput:`No output`,completed:`Completed`,turns_one:`{{count}} turn`,turns_other:`{{count}} turns`},h={title:`Run result`,execution:`Execution`,implementation:`Implementation`,validation:`Validation`,archive:`Archive`,delivery:`Delivery`,counters:`Steps: {{steps}} · Decider evaluations: {{evaluations}} · Agent turns: {{turns}}`,unavailable:`Unavailable`,evidence:`Evidence, exceptions and phase timings`,snapshot:`Recorded at completion: {{change}} · {{at}}`,acceptedBy:`Accepted by {{by}}`,required:`Required`,supplementary:`Supplementary`,attempts:`Attempts: {{count}}`,phaseCostUnavailable:`Cost per Core phase is unavailable; provider usage is attributed to loop steps.`,noCoreEvidence:`Acceptance evidence unavailable. Execution success alone does not confirm ticket completion.`,status:{success:`Succeeded`,failed:`Failed`,blocked:`Blocked`,stopped:`Stopped`,stalled:`Stalled`,complete:`Complete`,incomplete:`Incomplete`,verified:`Verified`,"with-exceptions":`Verified with exceptions`,pending:`Pending`,"pending-host":`Pending host delivery`,done:`Done`,running:`Running`,skipped:`Skipped`,passed:`Passed`,unavailable:`Unavailable`}},g={details:`Details`,phaseActivity:`{{phase}} · {{activity}}`,liveReported:`Reported by the provider so far; the final figures arrive when the job finishes.`,questionPending:`Answer the question`},_={statusLabel:n,statusTooltip:r,statusName:i,page:a,detail:o,statusPanel:s,ticketHeader:c,modal:l,comparison:u,recent:d,activeJob:f,loopExplorer:p,logViewer:m,completion:h,runHeader:g};export{t};
|