reviewdeck 0.2.2 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/README.md +6 -11
  2. package/dist/reviewdeck.mjs +4 -56
  3. package/dist/web/assets/{angular-html-BW6jlb6j.js → angular-html-CFINC1oa.js} +1 -1
  4. package/dist/web/assets/{angular-ts-DWBNOji_.js → angular-ts-m2GITFyR.js} +1 -1
  5. package/dist/web/assets/{apl-uRKDN2p3.js → apl-D9-Wam_I.js} +1 -1
  6. package/dist/web/assets/{astro-BiNvR4wU.js → astro-COogqYsa.js} +1 -1
  7. package/dist/web/assets/{blade-CogPuRcD.js → blade-B8dse4-d.js} +1 -1
  8. package/dist/web/assets/{c-c6mXMDpL.js → c-1lQO50Xh.js} +1 -1
  9. package/dist/web/assets/{cobol-BBFZi1TD.js → cobol-BF1TJ-40.js} +1 -1
  10. package/dist/web/assets/{coffee-CoyNl-Vr.js → coffee-MQoiLPsg.js} +1 -1
  11. package/dist/web/assets/{cpp-BhZISK2o.js → cpp-BuNBvzHq.js} +1 -1
  12. package/dist/web/assets/{crystal-DARwJIth.js → crystal-BjB4YIMp.js} +1 -1
  13. package/dist/web/assets/{css-BFlkO4hH.js → css-BSS61pHw.js} +1 -1
  14. package/dist/web/assets/{edge-1uDQap2l.js → edge-DFfeSQ66.js} +1 -1
  15. package/dist/web/assets/{elixir-B630FsAX.js → elixir-yCZfQzZ6.js} +1 -1
  16. package/dist/web/assets/{elm-B0CYJExx.js → elm-Be0M9OZm.js} +1 -1
  17. package/dist/web/assets/{erb-BCuuvlI8.js → erb-CQ5myCXi.js} +1 -1
  18. package/dist/web/assets/{git-rebase-CMGqxEzO.js → git-rebase-CDsHo7Jw.js} +1 -1
  19. package/dist/web/assets/{glimmer-js-CwCQsT5O.js → glimmer-js-DqIdPfxo.js} +1 -1
  20. package/dist/web/assets/{glimmer-ts-CDiy87zB.js → glimmer-ts-BUz6aSXE.js} +1 -1
  21. package/dist/web/assets/{glsl-KkJIjOyq.js → glsl-B-6MUrDA.js} +1 -1
  22. package/dist/web/assets/{graphql-MKTYUDMa.js → graphql-CxjpsAXu.js} +1 -1
  23. package/dist/web/assets/{hack-Bwo3McIF.js → hack-7N6Df3Om.js} +1 -1
  24. package/dist/web/assets/{haml-D88Ucy2e.js → haml-DdJsWHCd.js} +1 -1
  25. package/dist/web/assets/{handlebars-BU0LZwZ1.js → handlebars-Dv_Cln2V.js} +1 -1
  26. package/dist/web/assets/{html-DrMQJsXw.js → html-BJ8yrONl.js} +1 -1
  27. package/dist/web/assets/{html-derivative-0WBbZowl.js → html-derivative-BXnhMKhS.js} +1 -1
  28. package/dist/web/assets/{http-DbEAkxXN.js → http-OIkivVx7.js} +1 -1
  29. package/dist/web/assets/{hurl-CqJXynMd.js → hurl-D3w5NbV2.js} +1 -1
  30. package/dist/web/assets/{index-BPtNzy1Q.js → index-BlTwM_Ro.js} +2 -2
  31. package/dist/web/assets/index-Dd56xqmK.css +2 -0
  32. package/dist/web/assets/{java-BRVCc-Q1.js → java-C7ySLk4N.js} +1 -1
  33. package/dist/web/assets/{javascript-BD4fYJEn.js → javascript-DwDR6_XF.js} +1 -1
  34. package/dist/web/assets/{jinja-CelQ23ws.js → jinja-BqIEU6l_.js} +1 -1
  35. package/dist/web/assets/{jison-DBS-9n7v.js → jison-saoTtMTd.js} +1 -1
  36. package/dist/web/assets/{json-DZDuupM6.js → json-B2Bj5M9o.js} +1 -1
  37. package/dist/web/assets/{jsx-BZOBrdrR.js → jsx-CQRa2jtI.js} +1 -1
  38. package/dist/web/assets/{julia-BCQpMN0P.js → julia-Dzii-ckR.js} +1 -1
  39. package/dist/web/assets/{just-C3xXABnW.js → just-mtlOG7e9.js} +1 -1
  40. package/dist/web/assets/{latex-OIm821Jq.js → latex-CTL68cr9.js} +1 -1
  41. package/dist/web/assets/{liquid-CtRnMjLR.js → liquid-D9EXpsaN.js} +1 -1
  42. package/dist/web/assets/{lua-C4GAsLLv.js → lua-hBgX63Y7.js} +1 -1
  43. package/dist/web/assets/{marko-BzBo2m_h.js → marko-DDS0f7G3.js} +1 -1
  44. package/dist/web/assets/{mdc-Diez5J4p.js → mdc-CLKnP2QB.js} +1 -1
  45. package/dist/web/assets/{nginx-B-O05-Ip.js → nginx-CzlXiIzN.js} +1 -1
  46. package/dist/web/assets/{nim-DYodfN_j.js → nim-Cf91bz7u.js} +1 -1
  47. package/dist/web/assets/{perl-BajmpJw1.js → perl-Cp5Ex_5S.js} +1 -1
  48. package/dist/web/assets/{php-GbSlF-ma.js → php-CIbRLSC8.js} +1 -1
  49. package/dist/web/assets/{pug-B3pftVq7.js → pug-Bp7WO61T.js} +1 -1
  50. package/dist/web/assets/{qml-CU7fIqWl.js → qml-CGRBeZW6.js} +1 -1
  51. package/dist/web/assets/{r-VFD3g93S.js → r-CCGa39Ip.js} +1 -1
  52. package/dist/web/assets/{razor-YJmCxoz7.js → razor-C5j6kznI.js} +1 -1
  53. package/dist/web/assets/{regexp-xQImVJyz.js → regexp-bBXnVS6a.js} +1 -1
  54. package/dist/web/assets/{rst-C-l1vIhG.js → rst-BRopP0eg.js} +1 -1
  55. package/dist/web/assets/{ruby-ClXcG6Uc.js → ruby-DaRWoQDM.js} +1 -1
  56. package/dist/web/assets/{sas-UbdvwYYC.js → sas-BAw2SDis.js} +1 -1
  57. package/dist/web/assets/{scss-BSFxtSCj.js → scss-D0KFsuzh.js} +1 -1
  58. package/dist/web/assets/{shellscript-DipAQUtx.js → shellscript-BeIAlF0N.js} +1 -1
  59. package/dist/web/assets/{shellsession-4iJrG6C5.js → shellsession-S3p6uiQf.js} +1 -1
  60. package/dist/web/assets/{soy-DbrU_Nxg.js → soy-b_MVyvD8.js} +1 -1
  61. package/dist/web/assets/{sql-5eAwe7x9.js → sql-SLE7Ylfl.js} +1 -1
  62. package/dist/web/assets/{stata-DPzpuJuP.js → stata-BVOZaOVV.js} +1 -1
  63. package/dist/web/assets/{surrealql-BFHjstCU.js → surrealql-CkR5pngk.js} +1 -1
  64. package/dist/web/assets/{svelte-DEFiloGp.js → svelte-BGW07BxJ.js} +1 -1
  65. package/dist/web/assets/{templ-B3axXApj.js → templ-m-K71tHh.js} +1 -1
  66. package/dist/web/assets/{tex-DhbFB_y0.js → tex-Dk734v66.js} +1 -1
  67. package/dist/web/assets/{ts-tags-BN89t81C.js → ts-tags-BywbeuBc.js} +1 -1
  68. package/dist/web/assets/{tsx-LzmugIB3.js → tsx-JJx43CZ-.js} +1 -1
  69. package/dist/web/assets/{twig-BcvJvETg.js → twig-BHF81fIV.js} +1 -1
  70. package/dist/web/assets/{typescript-vZfgIWhk.js → typescript-BCsma20W.js} +1 -1
  71. package/dist/web/assets/{vue-DTJd19mx.js → vue-DOm-ZmLD.js} +1 -1
  72. package/dist/web/assets/{vue-html-DN1O1Gud.js → vue-html-BRbyRKwc.js} +1 -1
  73. package/dist/web/assets/{vue-vine-CPt4e1Kz.js → vue-vine-fHfcy6yG.js} +1 -1
  74. package/dist/web/assets/{xml-fA_cpwGb.js → xml-BaXpNxqG.js} +1 -1
  75. package/dist/web/assets/{xsl-3f3GC_Uf.js → xsl-ZtGSD274.js} +1 -1
  76. package/dist/web/assets/{yaml-Ca1_GRr1.js → yaml-zXATzheP.js} +1 -1
  77. package/dist/web/index.html +3 -3
  78. package/package.json +4 -5
  79. package/skills/reviewdeck/SKILL.md +96 -66
  80. package/skills/reviewdeck/references/split.md +125 -0
  81. package/dist/web/assets/index-BkEoZ-nI.css +0 -2
  82. package/dist/web-inline/assets/index-BkEoZ-nI.css +0 -2
  83. package/dist/web-inline/assets/index-Qzj-BIcs.js +0 -1933
  84. package/dist/web-inline/index.html +0 -13
  85. package/skills/reviewdeck/assets/prompt-template.md +0 -111
  86. package/skills/reviewdeck/references/get-diff.md +0 -24
@@ -1 +1 @@
1
- import{t as e}from"./index-BPtNzy1Q.js";import{t}from"./java-BRVCc-Q1.js";var n=e({default:()=>i}),r=Object.freeze(JSON.parse(`{"displayName":"XML","name":"xml","patterns":[{"begin":"(<\\\\?)\\\\s*([-0-9A-Z_a-z]+)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"}},"end":"(\\\\?>)","name":"meta.tag.preprocessor.xml","patterns":[{"match":" ([-A-Za-z]+)","name":"entity.other.attribute-name.xml"},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},{"begin":"(<!)(DOCTYPE)\\\\s+([:A-Z_a-z][-.0-:A-Z_a-z]*)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"keyword.other.doctype.xml"},"3":{"name":"variable.language.documentroot.xml"}},"end":"\\\\s*(>)","name":"meta.tag.sgml.doctype.xml","patterns":[{"include":"#internalSubset"}]},{"include":"#comments"},{"begin":"(<)((?:([-0-9A-Z_a-z]+)(:))?([-0-:A-Z_a-z]+))(?=(\\\\s[^>]*)?></\\\\2>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"},"3":{"name":"entity.name.tag.namespace.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(>)(</)((?:([-0-9A-Z_a-z]+)(:))?([-0-:A-Z_a-z]+))(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"punctuation.definition.tag.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"entity.name.tag.namespace.xml"},"5":{"name":"punctuation.separator.namespace.xml"},"6":{"name":"entity.name.tag.localname.xml"},"7":{"name":"punctuation.definition.tag.xml"}},"name":"meta.tag.no-content.xml","patterns":[{"include":"#tagStuff"}]},{"begin":"(</?)(?:([-.\\\\w]+)((:)))?([-.:\\\\w]+)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.namespace.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(/?>)","name":"meta.tag.xml","patterns":[{"include":"#tagStuff"}]},{"include":"#entity"},{"include":"#bare-ampersand"},{"begin":"<%@","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"end":"%>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}},"name":"source.java-props.embedded.xml","patterns":[{"match":"page|include|taglib","name":"keyword.other.page-props.xml"}]},{"begin":"<%[!=]?(?!--)","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"end":"(?!--)%>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}},"name":"source.java.embedded.xml","patterns":[{"include":"source.java"}]},{"begin":"<!\\\\[CDATA\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"]]>","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.unquoted.cdata.xml"}],"repository":{"EntityDecl":{"begin":"(<!)(ENTITY)\\\\s+(%\\\\s+)?([:A-Z_a-z][-.0-:A-Z_a-z]*)(\\\\s+(?:SYSTEM|PUBLIC)\\\\s+)?","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"keyword.other.entity.xml"},"3":{"name":"punctuation.definition.entity.xml"},"4":{"name":"variable.language.entity.xml"},"5":{"name":"keyword.other.entitytype.xml"}},"end":"(>)","patterns":[{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},"bare-ampersand":{"match":"&","name":"invalid.illegal.bad-ampersand.xml"},"comments":{"patterns":[{"begin":"<%--","captures":{"0":{"name":"punctuation.definition.comment.xml"},"end":"--%>","name":"comment.block.xml"}},{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.xml"}},"end":"-->","name":"comment.block.xml","patterns":[{"begin":"--(?!>)","captures":{"0":{"name":"invalid.illegal.bad-comments-or-CDATA.xml"}}}]}]},"doublequotedString":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.double.xml","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}]},"entity":{"captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}},"match":"(&)([:A-Z_a-z][-.0-:A-Z_a-z]*|#[0-9]+|#x\\\\h+)(;)","name":"constant.character.entity.xml"},"internalSubset":{"begin":"(\\\\[)","captures":{"1":{"name":"punctuation.definition.constant.xml"}},"end":"(])","name":"meta.internalsubset.xml","patterns":[{"include":"#EntityDecl"},{"include":"#parameterEntity"},{"include":"#comments"}]},"parameterEntity":{"captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}},"match":"(%)([:A-Z_a-z][-.0-:A-Z_a-z]*)(;)","name":"constant.character.parameter-entity.xml"},"singlequotedString":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.single.xml","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}]},"tagStuff":{"patterns":[{"captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}},"match":"(?:^|\\\\s+)(?:([-.\\\\w]+)((:)))?([-.:\\\\w]+)\\\\s*="},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]}},"scopeName":"text.xml","embeddedLangs":["java"]}`)),i=[...t,r];export{n,i as t};
1
+ import{t as e}from"./index-BlTwM_Ro.js";import{t}from"./java-C7ySLk4N.js";var n=e({default:()=>i}),r=Object.freeze(JSON.parse(`{"displayName":"XML","name":"xml","patterns":[{"begin":"(<\\\\?)\\\\s*([-0-9A-Z_a-z]+)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"}},"end":"(\\\\?>)","name":"meta.tag.preprocessor.xml","patterns":[{"match":" ([-A-Za-z]+)","name":"entity.other.attribute-name.xml"},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},{"begin":"(<!)(DOCTYPE)\\\\s+([:A-Z_a-z][-.0-:A-Z_a-z]*)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"keyword.other.doctype.xml"},"3":{"name":"variable.language.documentroot.xml"}},"end":"\\\\s*(>)","name":"meta.tag.sgml.doctype.xml","patterns":[{"include":"#internalSubset"}]},{"include":"#comments"},{"begin":"(<)((?:([-0-9A-Z_a-z]+)(:))?([-0-:A-Z_a-z]+))(?=(\\\\s[^>]*)?></\\\\2>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"},"3":{"name":"entity.name.tag.namespace.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(>)(</)((?:([-0-9A-Z_a-z]+)(:))?([-0-:A-Z_a-z]+))(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"punctuation.definition.tag.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"entity.name.tag.namespace.xml"},"5":{"name":"punctuation.separator.namespace.xml"},"6":{"name":"entity.name.tag.localname.xml"},"7":{"name":"punctuation.definition.tag.xml"}},"name":"meta.tag.no-content.xml","patterns":[{"include":"#tagStuff"}]},{"begin":"(</?)(?:([-.\\\\w]+)((:)))?([-.:\\\\w]+)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.namespace.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(/?>)","name":"meta.tag.xml","patterns":[{"include":"#tagStuff"}]},{"include":"#entity"},{"include":"#bare-ampersand"},{"begin":"<%@","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"end":"%>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}},"name":"source.java-props.embedded.xml","patterns":[{"match":"page|include|taglib","name":"keyword.other.page-props.xml"}]},{"begin":"<%[!=]?(?!--)","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"end":"(?!--)%>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}},"name":"source.java.embedded.xml","patterns":[{"include":"source.java"}]},{"begin":"<!\\\\[CDATA\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"]]>","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.unquoted.cdata.xml"}],"repository":{"EntityDecl":{"begin":"(<!)(ENTITY)\\\\s+(%\\\\s+)?([:A-Z_a-z][-.0-:A-Z_a-z]*)(\\\\s+(?:SYSTEM|PUBLIC)\\\\s+)?","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"keyword.other.entity.xml"},"3":{"name":"punctuation.definition.entity.xml"},"4":{"name":"variable.language.entity.xml"},"5":{"name":"keyword.other.entitytype.xml"}},"end":"(>)","patterns":[{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},"bare-ampersand":{"match":"&","name":"invalid.illegal.bad-ampersand.xml"},"comments":{"patterns":[{"begin":"<%--","captures":{"0":{"name":"punctuation.definition.comment.xml"},"end":"--%>","name":"comment.block.xml"}},{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.xml"}},"end":"-->","name":"comment.block.xml","patterns":[{"begin":"--(?!>)","captures":{"0":{"name":"invalid.illegal.bad-comments-or-CDATA.xml"}}}]}]},"doublequotedString":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.double.xml","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}]},"entity":{"captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}},"match":"(&)([:A-Z_a-z][-.0-:A-Z_a-z]*|#[0-9]+|#x\\\\h+)(;)","name":"constant.character.entity.xml"},"internalSubset":{"begin":"(\\\\[)","captures":{"1":{"name":"punctuation.definition.constant.xml"}},"end":"(])","name":"meta.internalsubset.xml","patterns":[{"include":"#EntityDecl"},{"include":"#parameterEntity"},{"include":"#comments"}]},"parameterEntity":{"captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}},"match":"(%)([:A-Z_a-z][-.0-:A-Z_a-z]*)(;)","name":"constant.character.parameter-entity.xml"},"singlequotedString":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.single.xml","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}]},"tagStuff":{"patterns":[{"captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}},"match":"(?:^|\\\\s+)(?:([-.\\\\w]+)((:)))?([-.:\\\\w]+)\\\\s*="},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]}},"scopeName":"text.xml","embeddedLangs":["java"]}`)),i=[...t,r];export{n,i as t};
@@ -1 +1 @@
1
- import{t as e}from"./xml-fA_cpwGb.js";var t=Object.freeze(JSON.parse(`{"displayName":"XSL","name":"xsl","patterns":[{"begin":"(<)(xsl)((:))(template)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.namespace.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(>)","name":"meta.tag.xml.template","patterns":[{"captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}},"match":" (?:([-0-9A-Z_a-z]+)((:)))?([-A-Za-z]+)"},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},{"include":"text.xml"}],"repository":{"doublequotedString":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.double.xml"},"singlequotedString":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.single.xml"}},"scopeName":"text.xml.xsl","embeddedLangs":["xml"]}`)),n=[...e,t];export{n as default};
1
+ import{t as e}from"./xml-BaXpNxqG.js";var t=Object.freeze(JSON.parse(`{"displayName":"XSL","name":"xsl","patterns":[{"begin":"(<)(xsl)((:))(template)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.namespace.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(>)","name":"meta.tag.xml.template","patterns":[{"captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}},"match":" (?:([-0-9A-Z_a-z]+)((:)))?([-A-Za-z]+)"},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},{"include":"text.xml"}],"repository":{"doublequotedString":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.double.xml"},"singlequotedString":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.single.xml"}},"scopeName":"text.xml.xsl","embeddedLangs":["xml"]}`)),n=[...e,t];export{n as default};
@@ -1 +1 @@
1
- import{t as e}from"./index-BPtNzy1Q.js";var t=e({default:()=>n}),n=[Object.freeze(JSON.parse(`{"displayName":"YAML","fileTypes":["yaml","yml","rviz","reek","clang-format","yaml-tmlanguage","syntax","sublime-syntax"],"firstLineMatch":"^%YAML( ?1.\\\\d+)?","name":"yaml","patterns":[{"include":"#comment"},{"include":"#property"},{"include":"#directive"},{"match":"^---","name":"entity.other.document.begin.yaml"},{"match":"^\\\\.{3}","name":"entity.other.document.end.yaml"},{"include":"#node"}],"repository":{"block-collection":{"patterns":[{"include":"#block-sequence"},{"include":"#block-mapping"}]},"block-mapping":{"patterns":[{"include":"#block-pair"}]},"block-node":{"patterns":[{"include":"#prototype"},{"include":"#block-scalar"},{"include":"#block-collection"},{"include":"#flow-scalar-plain-out"},{"include":"#flow-node"}]},"block-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"1":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=\\\\?)|^ *(:)|(:)","endCaptures":{"1":{"name":"punctuation.separator.key-value.mapping.yaml"},"2":{"name":"invalid.illegal.expected-newline.yaml"}},"name":"meta.block-mapping.yaml","patterns":[{"include":"#block-node"}]},{"begin":"(?=(?:[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S)([^:\\\\s]|:\\\\S|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},{"match":":(?=\\\\s|$)","name":"punctuation.separator.key-value.mapping.yaml"}]},"block-scalar":{"begin":"(?:(\\\\|)|(>))([1-9])?([-+])?(.*\\\\n?)","beginCaptures":{"1":{"name":"keyword.control.flow.block-scalar.literal.yaml"},"2":{"name":"keyword.control.flow.block-scalar.folded.yaml"},"3":{"name":"constant.numeric.indentation-indicator.yaml"},"4":{"name":"storage.modifier.chomping-indicator.yaml"},"5":{"patterns":[{"include":"#comment"},{"match":".+","name":"invalid.illegal.expected-comment-or-newline.yaml"}]}},"end":"^(?=\\\\S)|(?!\\\\G)","patterns":[{"begin":"^( +)(?! )","end":"^(?!\\\\1|\\\\s*$)","name":"string.unquoted.block.yaml"}]},"block-sequence":{"match":"(-)(?!\\\\S)","name":"punctuation.definition.block.sequence.item.yaml"},"comment":{"begin":"(?:^([\\\\t ]*)|[\\\\t ]+)(?=#\\\\p{print}*$)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.yaml"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.yaml"}},"end":"\\\\n","name":"comment.line.number-sign.yaml"}]},"directive":{"begin":"^%","beginCaptures":{"0":{"name":"punctuation.definition.directive.begin.yaml"}},"end":"(?=$|[\\\\t ]+($|#))","name":"meta.directive.yaml","patterns":[{"captures":{"1":{"name":"keyword.other.directive.yaml.yaml"},"2":{"name":"constant.numeric.yaml-version.yaml"}},"match":"\\\\G(YAML)[\\\\t ]+(\\\\d+\\\\.\\\\d+)"},{"captures":{"1":{"name":"keyword.other.directive.tag.yaml"},"2":{"name":"storage.type.tag-handle.yaml"},"3":{"name":"support.type.tag-prefix.yaml"}},"match":"\\\\G(TAG)(?:[\\\\t ]+(!(?:[-0-9A-Za-z]*!)?)(?:[\\\\t ]+(!(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])*|(?![]!,\\\\[{}])(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])+))?)?"},{"captures":{"1":{"name":"support.other.directive.reserved.yaml"},"2":{"name":"string.unquoted.directive-name.yaml"},"3":{"name":"string.unquoted.directive-parameter.yaml"}},"match":"\\\\G(\\\\w+)(?:[\\\\t ]+(\\\\w+)(?:[\\\\t ]+(\\\\w+))?)?"},{"match":"\\\\S+","name":"invalid.illegal.unrecognized.yaml"}]},"flow-alias":{"captures":{"1":{"name":"keyword.control.flow.alias.yaml"},"2":{"name":"punctuation.definition.alias.yaml"},"3":{"name":"variable.other.alias.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"((\\\\*))([^],/\\\\[{}\\\\s]+)([^],}\\\\s]\\\\S*)?"},"flow-collection":{"patterns":[{"include":"#flow-sequence"},{"include":"#flow-mapping"}]},"flow-mapping":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.mapping.begin.yaml"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.mapping.end.yaml"}},"name":"meta.flow-mapping.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.mapping.yaml"},{"include":"#flow-pair"}]},"flow-node":{"patterns":[{"include":"#prototype"},{"include":"#flow-alias"},{"include":"#flow-collection"},{"include":"#flow-scalar"}]},"flow-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=[],}])","name":"meta.flow-pair.explicit.yaml","patterns":[{"include":"#prototype"},{"include":"#flow-pair"},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[],\\\\[{}])","beginCaptures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[],}])","patterns":[{"include":"#flow-value"}]}]},{"begin":"(?=(?:[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s])([^],:\\\\[{}\\\\s]|:[^],\\\\[{}\\\\s]|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"meta.flow-pair.key.yaml","patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s]","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"string.unquoted.plain.in.yaml"}]},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[],\\\\[{}])","captures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[],}])","name":"meta.flow-pair.yaml","patterns":[{"include":"#flow-value"}]}]},"flow-scalar":{"patterns":[{"include":"#flow-scalar-double-quoted"},{"include":"#flow-scalar-single-quoted"},{"include":"#flow-scalar-plain-in"}]},"flow-scalar-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.double.yaml","patterns":[{"match":"\\\\\\\\([ \\"/0LN\\\\\\\\_abefnprtv]|x\\\\d\\\\d|u\\\\d{4}|U\\\\d{8})","name":"constant.character.escape.yaml"},{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.double-quoted.newline.yaml"}]},"flow-scalar-plain-in":{"patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s]","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"string.unquoted.plain.in.yaml"}]},"flow-scalar-plain-in-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|([Yy]|yes|Yes|YES|[Nn]|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|([-+]?0b[01_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[_\\\\h]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+)|([-+]?(?:[0-9][0-9_]*)?\\\\.[.0-9]*(?:[Ee][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN))|(\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[\\\\t ]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:[\\\\t ]*Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?)|(=)|(<<))(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])"}]},"flow-scalar-plain-out":{"patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},"flow-scalar-plain-out-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|([Yy]|yes|Yes|YES|[Nn]|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|([-+]?0b[01_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[_\\\\h]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+)|([-+]?(?:[0-9][0-9_]*)?\\\\.[.0-9]*(?:[Ee][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN))|(\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[\\\\t ]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:[\\\\t ]*Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?)|(=)|(<<))(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))"}]},"flow-scalar-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"'(?!')","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.single.yaml","patterns":[{"match":"''","name":"constant.character.escape.single-quoted.yaml"}]},"flow-sequence":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.sequence.begin.yaml"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.sequence.end.yaml"}},"name":"meta.flow-sequence.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.sequence.yaml"},{"include":"#flow-pair"},{"include":"#flow-node"}]},"flow-value":{"patterns":[{"begin":"\\\\G(?![],}])","end":"(?=[],}])","name":"meta.flow-pair.value.yaml","patterns":[{"include":"#flow-node"}]}]},"node":{"patterns":[{"include":"#block-node"}]},"property":{"begin":"(?=[!\\\\&])","end":"(?!\\\\G)","name":"meta.property.yaml","patterns":[{"captures":{"1":{"name":"keyword.control.property.anchor.yaml"},"2":{"name":"punctuation.definition.anchor.yaml"},"3":{"name":"entity.name.type.anchor.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"\\\\G((&))([^],/\\\\[{}\\\\s]+)(\\\\S+)?"},{"match":"\\\\G!(?:<(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])+>|(?:[-0-9A-Za-z]*!)?(?:%\\\\h{2}|[#$\\\\&-+\\\\--;=?-Z_a-z~])+|)(?=[\\\\t ]|$)","name":"storage.type.tag-handle.yaml"},{"match":"\\\\S+","name":"invalid.illegal.tag-handle.yaml"}]},"prototype":{"patterns":[{"include":"#comment"},{"include":"#property"}]}},"scopeName":"source.yaml","aliases":["yml"]}`))];export{t as n,n as t};
1
+ import{t as e}from"./index-BlTwM_Ro.js";var t=e({default:()=>n}),n=[Object.freeze(JSON.parse(`{"displayName":"YAML","fileTypes":["yaml","yml","rviz","reek","clang-format","yaml-tmlanguage","syntax","sublime-syntax"],"firstLineMatch":"^%YAML( ?1.\\\\d+)?","name":"yaml","patterns":[{"include":"#comment"},{"include":"#property"},{"include":"#directive"},{"match":"^---","name":"entity.other.document.begin.yaml"},{"match":"^\\\\.{3}","name":"entity.other.document.end.yaml"},{"include":"#node"}],"repository":{"block-collection":{"patterns":[{"include":"#block-sequence"},{"include":"#block-mapping"}]},"block-mapping":{"patterns":[{"include":"#block-pair"}]},"block-node":{"patterns":[{"include":"#prototype"},{"include":"#block-scalar"},{"include":"#block-collection"},{"include":"#flow-scalar-plain-out"},{"include":"#flow-node"}]},"block-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"1":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=\\\\?)|^ *(:)|(:)","endCaptures":{"1":{"name":"punctuation.separator.key-value.mapping.yaml"},"2":{"name":"invalid.illegal.expected-newline.yaml"}},"name":"meta.block-mapping.yaml","patterns":[{"include":"#block-node"}]},{"begin":"(?=(?:[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S)([^:\\\\s]|:\\\\S|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},{"match":":(?=\\\\s|$)","name":"punctuation.separator.key-value.mapping.yaml"}]},"block-scalar":{"begin":"(?:(\\\\|)|(>))([1-9])?([-+])?(.*\\\\n?)","beginCaptures":{"1":{"name":"keyword.control.flow.block-scalar.literal.yaml"},"2":{"name":"keyword.control.flow.block-scalar.folded.yaml"},"3":{"name":"constant.numeric.indentation-indicator.yaml"},"4":{"name":"storage.modifier.chomping-indicator.yaml"},"5":{"patterns":[{"include":"#comment"},{"match":".+","name":"invalid.illegal.expected-comment-or-newline.yaml"}]}},"end":"^(?=\\\\S)|(?!\\\\G)","patterns":[{"begin":"^( +)(?! )","end":"^(?!\\\\1|\\\\s*$)","name":"string.unquoted.block.yaml"}]},"block-sequence":{"match":"(-)(?!\\\\S)","name":"punctuation.definition.block.sequence.item.yaml"},"comment":{"begin":"(?:^([\\\\t ]*)|[\\\\t ]+)(?=#\\\\p{print}*$)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.yaml"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.yaml"}},"end":"\\\\n","name":"comment.line.number-sign.yaml"}]},"directive":{"begin":"^%","beginCaptures":{"0":{"name":"punctuation.definition.directive.begin.yaml"}},"end":"(?=$|[\\\\t ]+($|#))","name":"meta.directive.yaml","patterns":[{"captures":{"1":{"name":"keyword.other.directive.yaml.yaml"},"2":{"name":"constant.numeric.yaml-version.yaml"}},"match":"\\\\G(YAML)[\\\\t ]+(\\\\d+\\\\.\\\\d+)"},{"captures":{"1":{"name":"keyword.other.directive.tag.yaml"},"2":{"name":"storage.type.tag-handle.yaml"},"3":{"name":"support.type.tag-prefix.yaml"}},"match":"\\\\G(TAG)(?:[\\\\t ]+(!(?:[-0-9A-Za-z]*!)?)(?:[\\\\t ]+(!(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])*|(?![]!,\\\\[{}])(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])+))?)?"},{"captures":{"1":{"name":"support.other.directive.reserved.yaml"},"2":{"name":"string.unquoted.directive-name.yaml"},"3":{"name":"string.unquoted.directive-parameter.yaml"}},"match":"\\\\G(\\\\w+)(?:[\\\\t ]+(\\\\w+)(?:[\\\\t ]+(\\\\w+))?)?"},{"match":"\\\\S+","name":"invalid.illegal.unrecognized.yaml"}]},"flow-alias":{"captures":{"1":{"name":"keyword.control.flow.alias.yaml"},"2":{"name":"punctuation.definition.alias.yaml"},"3":{"name":"variable.other.alias.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"((\\\\*))([^],/\\\\[{}\\\\s]+)([^],}\\\\s]\\\\S*)?"},"flow-collection":{"patterns":[{"include":"#flow-sequence"},{"include":"#flow-mapping"}]},"flow-mapping":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.mapping.begin.yaml"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.mapping.end.yaml"}},"name":"meta.flow-mapping.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.mapping.yaml"},{"include":"#flow-pair"}]},"flow-node":{"patterns":[{"include":"#prototype"},{"include":"#flow-alias"},{"include":"#flow-collection"},{"include":"#flow-scalar"}]},"flow-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=[],}])","name":"meta.flow-pair.explicit.yaml","patterns":[{"include":"#prototype"},{"include":"#flow-pair"},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[],\\\\[{}])","beginCaptures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[],}])","patterns":[{"include":"#flow-value"}]}]},{"begin":"(?=(?:[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s])([^],:\\\\[{}\\\\s]|:[^],\\\\[{}\\\\s]|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"meta.flow-pair.key.yaml","patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s]","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"string.unquoted.plain.in.yaml"}]},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[],\\\\[{}])","captures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[],}])","name":"meta.flow-pair.yaml","patterns":[{"include":"#flow-value"}]}]},"flow-scalar":{"patterns":[{"include":"#flow-scalar-double-quoted"},{"include":"#flow-scalar-single-quoted"},{"include":"#flow-scalar-plain-in"}]},"flow-scalar-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.double.yaml","patterns":[{"match":"\\\\\\\\([ \\"/0LN\\\\\\\\_abefnprtv]|x\\\\d\\\\d|u\\\\d{4}|U\\\\d{8})","name":"constant.character.escape.yaml"},{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.double-quoted.newline.yaml"}]},"flow-scalar-plain-in":{"patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s]","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"string.unquoted.plain.in.yaml"}]},"flow-scalar-plain-in-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|([Yy]|yes|Yes|YES|[Nn]|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|([-+]?0b[01_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[_\\\\h]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+)|([-+]?(?:[0-9][0-9_]*)?\\\\.[.0-9]*(?:[Ee][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN))|(\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[\\\\t ]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:[\\\\t ]*Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?)|(=)|(<<))(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])"}]},"flow-scalar-plain-out":{"patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},"flow-scalar-plain-out-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|([Yy]|yes|Yes|YES|[Nn]|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|([-+]?0b[01_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[_\\\\h]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+)|([-+]?(?:[0-9][0-9_]*)?\\\\.[.0-9]*(?:[Ee][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN))|(\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[\\\\t ]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:[\\\\t ]*Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?)|(=)|(<<))(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))"}]},"flow-scalar-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"'(?!')","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.single.yaml","patterns":[{"match":"''","name":"constant.character.escape.single-quoted.yaml"}]},"flow-sequence":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.sequence.begin.yaml"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.sequence.end.yaml"}},"name":"meta.flow-sequence.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.sequence.yaml"},{"include":"#flow-pair"},{"include":"#flow-node"}]},"flow-value":{"patterns":[{"begin":"\\\\G(?![],}])","end":"(?=[],}])","name":"meta.flow-pair.value.yaml","patterns":[{"include":"#flow-node"}]}]},"node":{"patterns":[{"include":"#block-node"}]},"property":{"begin":"(?=[!\\\\&])","end":"(?!\\\\G)","name":"meta.property.yaml","patterns":[{"captures":{"1":{"name":"keyword.control.property.anchor.yaml"},"2":{"name":"punctuation.definition.anchor.yaml"},"3":{"name":"entity.name.type.anchor.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"\\\\G((&))([^],/\\\\[{}\\\\s]+)(\\\\S+)?"},{"match":"\\\\G!(?:<(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])+>|(?:[-0-9A-Za-z]*!)?(?:%\\\\h{2}|[#$\\\\&-+\\\\--;=?-Z_a-z~])+|)(?=[\\\\t ]|$)","name":"storage.type.tag-handle.yaml"},{"match":"\\\\S+","name":"invalid.illegal.tag-handle.yaml"}]},"prototype":{"patterns":[{"include":"#comment"},{"include":"#property"}]}},"scopeName":"source.yaml","aliases":["yml"]}`))];export{t as n,n as t};
@@ -3,9 +3,9 @@
3
3
  <head>
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
- <title>Stacked Diff Review</title>
7
- <script type="module" crossorigin src="/assets/index-BPtNzy1Q.js"></script>
8
- <link rel="stylesheet" crossorigin href="/assets/index-BkEoZ-nI.css">
6
+ <title>reviewdeck Review</title>
7
+ <script type="module" crossorigin src="/assets/index-BlTwM_Ro.js"></script>
8
+ <link rel="stylesheet" crossorigin href="/assets/index-Dd56xqmK.css">
9
9
  </head>
10
10
  <body>
11
11
  <div id="root"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "reviewdeck",
3
- "version": "0.2.2",
3
+ "version": "0.2.4",
4
4
  "description": "Split large PR diffs into reviewable sub-patches via indexed groups.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -14,7 +14,8 @@
14
14
  "reviewdeck": "dist/reviewdeck.mjs"
15
15
  },
16
16
  "files": [
17
- "dist",
17
+ "dist/reviewdeck.mjs",
18
+ "dist/web",
18
19
  "skills/reviewdeck",
19
20
  "README.md"
20
21
  ],
@@ -26,8 +27,7 @@
26
27
  "knip": "knip",
27
28
  "build:cli": "esbuild src/cli/main.ts --bundle --platform=node --format=esm --outfile=dist/reviewdeck.mjs --banner:js='#!/usr/bin/env node'",
28
29
  "build:web": "vp build -c src/web/vite.config.ts",
29
- "build:html": "vp build -c src/web/vite.config.inline.ts",
30
- "build": "npm run build:cli && npm run build:web && npm run build:html",
30
+ "build": "npm run build:cli && npm run build:web",
31
31
  "lint": "vp test && vp check && knip && depcruise src --config .dependency-cruiser.cjs",
32
32
  "pack:dry-run": "npm pack --dry-run",
33
33
  "prepack": "npm run build",
@@ -51,7 +51,6 @@
51
51
  "esbuild": "^0.27.4",
52
52
  "knip": "^5.86.0",
53
53
  "tailwindcss": "^4.2.1",
54
- "tsx": "^4.21.0",
55
54
  "vite-plus": "latest"
56
55
  },
57
56
  "overrides": {
@@ -1,121 +1,151 @@
1
1
  ---
2
2
  name: reviewdeck
3
- description: Split a large PR diff into a sequence of smaller, reviewable sub-patches. Use when the user wants to break up a big PR for easier code review, or mentions review decks, patch splitting, or review chunking.
3
+ description: Split a large PR diff into reviewable sub-patches for easier code review.
4
4
  compatibility: Requires Node.js 18+ and npx (or the reviewdeck CLI installed globally).
5
5
  metadata:
6
6
  author: yanzhen
7
- version: "0.1"
7
+ version: "0.4"
8
8
  ---
9
9
 
10
10
  # Reviewdeck
11
11
 
12
- You help a code reviewer split a large PR diff into a sequence of smaller, logically coherent sub-patches, then prepare the PR for human review.
12
+ You help a code reviewer turn a large PR diff into an ordered review deck, then hand it off for human review.
13
13
 
14
- If the user wants to review a PR, do not stop after `split`. Continue into `render` unless the user explicitly says they only want the split output.
15
- But do not substitute your own code review for the human review step unless the user explicitly asks you to review the code yourself.
14
+ Default posture:
16
15
 
17
- When invoking the CLI via `npx`, use `npx reviewdeck@latest ...` so the workflow tracks the latest published CLI version.
16
+ - If the user wants PR review help, do not stop after `split`. Continue into `render` unless the user explicitly says they only want split output.
17
+ - Do not substitute your own autonomous review for the human review step unless the user explicitly asks you to review the code yourself.
18
+ - When invoking the CLI via `npx`, use `npx reviewdeck@^0.2.0 ...`.
18
19
 
19
- ## Workflow
20
+ ## Main Path
20
21
 
21
- ### Step 1: Get the diff
22
+ ### 1. Get the diff
22
23
 
23
- Ask the user for the diff, or generate it. See [get-diff reference](references/get-diff.md) for different methods.
24
+ Use the cheapest path that already matches the user's situation:
24
25
 
25
- ### Step 2: Index changes
26
+ - If the user already provided a `.diff`, use it directly.
27
+ - If the user is reviewing a GitHub PR, run:
26
28
 
27
29
  ```bash
28
- npx reviewdeck@latest index pr.diff
30
+ gh pr diff 123 > pr.diff
29
31
  ```
30
32
 
31
- This outputs to stdout a numbered list of every changed line in the diff.
33
+ - If the user is in a local git repo and wants the current branch vs `main`, run:
32
34
 
33
- ### Step 3: Generate split metadata
35
+ ```bash
36
+ git diff main...HEAD > pr.diff
37
+ ```
34
38
 
35
- Read the index output, then read the [prompt template](assets/prompt-template.md) and follow its instructions to produce a JSON split plan.
39
+ Other common fallbacks:
36
40
 
37
- When writing each group's `description`, optimize for reviewer guidance, not literal restatement.
38
- The description should help someone understand why this group exists and why it appears at this point in the sequence.
41
+ ```bash
42
+ # Specific PR in another repo
43
+ gh pr diff 123 --repo owner/repo > pr.diff
39
44
 
40
- If you notice concrete review issues while splitting, attach them as `draftComments` on the matching group.
41
- Each draft comment must point to a `change` index that belongs to that same group.
42
- These are candidate co-review comments for the human reviewer to accept or reject later in `render`, not your final autonomous review output.
45
+ # Between two commits
46
+ git diff <commit-a> <commit-b> > pr.diff
43
47
 
44
- ### Step 4: Split and verify
48
+ # Staged changes
49
+ git diff --cached > pr.diff
50
+ ```
45
51
 
46
- Pipe the JSON directly via stdin:
52
+ ### 2. Index changes
47
53
 
48
54
  ```bash
49
- echo '<meta JSON>' | npx reviewdeck@latest split pr.diff -
55
+ npx reviewdeck@^0.2.0 index pr.diff
50
56
  ```
51
57
 
52
- This validates the metadata, generates sub-patches, verifies that applying them sequentially reproduces the original diff, and outputs the sub-patches to stdout separated by `===SUB_PATCH===`.
53
- If your metadata included `draftComments`, they are preserved for `render`.
58
+ This prints a numbered list of changed lines. Those indices are the units you group in the split metadata.
54
59
 
55
- To write sub-patches to files instead:
60
+ ### 3. Choose a review pattern
56
61
 
57
- ```bash
58
- echo '<meta JSON>' | npx reviewdeck@latest split pr.diff - -o output/
62
+ Before generating split metadata, decide whether the user has already expressed a preferred review flow.
63
+
64
+ - If the user already implies a preferred flow, follow it.
65
+ - If the user does not express a clear preference and interactive guidance would help, briefly offer these patterns:
66
+ - `deps-first` (recommended): order groups so earlier groups introduce context and dependencies needed by later groups.
67
+ - `tests/docs-first`: review tests or docs that define expected behavior before the implementation that satisfies them.
68
+ - If the user does not choose, continue without blocking. Default to `deps-first`.
69
+
70
+ Use `tests/docs-first` only when tests or docs materially explain the expected behavior. If the tests are trivial or only mirror the implementation, stay with `deps-first`.
71
+
72
+ If you need more detail about the patterns or how to choose between them, read [references/split.md](references/split.md).
73
+
74
+ ### 4. Generate split metadata
75
+
76
+ Output a single JSON object:
77
+
78
+ ```json
79
+ {
80
+ "groups": [
81
+ {
82
+ "description": "Add version selection plumbing so later upgrade flows have a stable input",
83
+ "changes": ["0-2", 5, 6]
84
+ }
85
+ ]
86
+ }
59
87
  ```
60
88
 
61
- If the command fails, read the error message, fix the metadata JSON, and retry.
89
+ Default rules:
62
90
 
63
- ### Step 5: Start human review
91
+ - Every change index must appear exactly once.
92
+ - Choose the number of groups based on reviewability. Keep tightly related changes together, and split only when doing so makes the review sequence clearer.
93
+ - Choose an ordering that matches the selected review pattern.
94
+ - Under `deps-first`, put prerequisite changes before changes that rely on them when possible.
95
+ - Under `tests/docs-first`, put behavior-defining tests or docs before the implementation they explain when that improves reviewability.
96
+ - `description` should help a reviewer navigate the sequence, not just restate filenames or labels.
97
+ - When equivalent, prefer compact range syntax such as `"0-23"` over enumerating many individual indices to save tokens.
98
+ - `draftComments` is optional. Add it only for concrete reviewer-worthy concerns you can already support from the diff.
99
+ - Each draft comment must anchor to a `change` that belongs to the same group.
64
100
 
65
- After `split` succeeds, the normal next step for PR review is `render`.
66
- Use it to open a human review UI for the generated sub-patches and collect comments.
67
- Default to the live render session. Only switch to `--html` when the user explicitly wants a static artifact, a file to share, or the environment clearly cannot support a live local review session.
101
+ If you need heavier guidance for grouping, description writing, or draft comment quality, then read [references/split.md](references/split.md).
68
102
 
69
- Launch a local diff review UI:
103
+ ### 5. Split and verify
70
104
 
71
105
  ```bash
72
- # From a directory of .diff files
73
- npx reviewdeck@latest render output/
106
+ echo '<meta JSON>' | npx reviewdeck@^0.2.0 split pr.diff -
107
+ ```
108
+
109
+ Or write files:
74
110
 
75
- # From stdin
76
- echo '<meta JSON>' | npx reviewdeck@latest split pr.diff - | npx reviewdeck@latest render -
111
+ ```bash
112
+ echo '<meta JSON>' | npx reviewdeck@^0.2.0 split pr.diff - -o output/
77
113
  ```
78
114
 
79
- The server opens a browser, blocks until submission, and prints a review submission JSON object to stdout.
80
- That object contains:
115
+ This validates the metadata, generates sub-patches, and verifies that they compose back to the original diff.
81
116
 
82
- - `comments`: the final comments to submit back to the source review
83
- - `draftComments`: the agent draft comments with `accepted` / `rejected` / `pending` status
117
+ If `split` fails, read the error, fix the metadata JSON, and retry.
84
118
 
85
- Treat `comments` as the final human-approved payload.
86
- Treat `draftComments` as provenance that tells you which of your draft findings survived review.
119
+ ### 6. Hand off to human review
87
120
 
88
- If the user wants a file instead of a live browser session, generate self-contained HTML:
121
+ After `split` succeeds, the default next step is live review:
89
122
 
90
123
  ```bash
91
- echo '<meta JSON>' | npx reviewdeck@latest split pr.diff - | npx reviewdeck@latest render - --html > review.html
124
+ npx reviewdeck@^0.2.0 render output/
92
125
  ```
93
126
 
94
- Treat the live `render` session as the default human review handoff.
95
- Prefer to actually launch it, wait for submission, and then continue the task with the returned submission JSON.
127
+ Or from stdin:
96
128
 
97
- When you finish this step without waiting for a live session, prefer an output like:
98
-
99
- - the split completed successfully
100
- - where the review UI or HTML artifact is
101
- - what the user should open next
129
+ ```bash
130
+ echo '<meta JSON>' | npx reviewdeck@^0.2.0 split pr.diff - | npx reviewdeck@^0.2.0 render -
131
+ ```
102
132
 
103
- Do not immediately switch into autonomous bug-finding or produce review findings unless the user explicitly asks for your own review.
133
+ The server opens a browser, blocks until submission, and prints a review submission JSON object to stdout.
104
134
 
105
- After `render` completes and you have the submission JSON:
135
+ Default behavior:
106
136
 
107
- - summarize the accepted/rejected/pending draft comment outcome clearly
108
- - if there are final `comments`, ask whether the user wants them submitted back to the source review system
109
- - if the user has already made the target explicit in context, such as a specific PR or review thread, go ahead and submit there instead of asking again
110
- - when you do submit, use `comments`, not the raw `draftComments`
137
+ - Prefer to actually launch `render` and wait for submission when the user wants PR review help.
138
+ - Do not stop at “split succeeded” if a live local review session is possible.
139
+ - Treat `comments` as the final human-approved payload.
140
+ - Treat `draftComments` as provenance for which agent drafts were accepted, rejected, or left pending.
111
141
 
112
- If you are still before `render` submission and the user asked for PR review help, do not stop at “artifact generated” when a live local review session is possible.
142
+ ### 7. Submit comments back to source
113
143
 
114
- ## Tips
144
+ After `render` completes:
115
145
 
116
- - Aim for 3-6 sub-patches per PR
117
- - Order: peripheral/config first, core logic next, tests last
118
- - Each sub-patch should be independently understandable
119
- - Group descriptions should help the reviewer navigate the stack, not just repeat the touched area
120
- - Use range syntax in changes (for example `"0-23"`) to keep the JSON compact
121
- - Draft comments are optional and should be concrete enough that a human can accept or reject them inline
146
+ - Summarize accepted/rejected/pending draft comment outcomes.
147
+ - If there are final `comments`, ask whether the user wants them submitted back to the source review system.
148
+ - If the target is already explicit in context, such as a specific PR or review thread, continue there instead of asking again.
149
+ - When submitting, use `comments`, not raw `draftComments`.
150
+ - If there are no final `comments`, say so clearly and stop.
151
+ - Ask first when the target review system or PR/thread is not explicit.
@@ -0,0 +1,125 @@
1
+ # Split Guidance
2
+
3
+ Use this reference only when the basic rules in `SKILL.md` are not enough.
4
+
5
+ ## Goal
6
+
7
+ Split a large PR diff into a sequence of smaller, logically coherent sub-patches that are easier to review.
8
+
9
+ ## Principles
10
+
11
+ - Pattern-aware ordering: choose a review flow that matches the user's preference or the diff shape
12
+ - Cohesive grouping: keep tightly related changes together, and separate unrelated concerns when doing so improves reviewability
13
+ - Stable review flow: order groups so a reviewer can build context without jumping back and forth unnecessarily
14
+ - Reviewer-oriented descriptions: describe why this group exists in the review flow, not just the touched area
15
+ - Co-review drafts when warranted: if you notice a concrete review concern while splitting, attach it as a draft comment instead of switching into a full review report
16
+
17
+ ## Review patterns
18
+
19
+ Use one of these patterns when ordering groups:
20
+
21
+ - `deps-first`: review prerequisites before dependents so later groups do not rely on unseen context. This is the default when the user does not express a preference.
22
+ - `tests/docs-first`: review tests or docs that define expected behavior before the implementation that satisfies them.
23
+
24
+ ## Pattern selection
25
+
26
+ Use these heuristics:
27
+
28
+ - If the user names a preferred flow, follow it.
29
+ - If the prompt has no clear preference and asking would help, briefly offer `deps-first` and `tests/docs-first`.
30
+ - If the user does not choose, continue with `deps-first`.
31
+ - Prefer `tests/docs-first` only when the tests or docs materially clarify expected behavior or review intent.
32
+ - Fall back to `deps-first` when tests are trivial, purely mechanical, or depend on too much unseen implementation detail.
33
+
34
+ ## Output format
35
+
36
+ Output a single JSON object with no markdown fences and no extra commentary:
37
+
38
+ ```json
39
+ {
40
+ "groups": [
41
+ {
42
+ "description": "Add version selector plumbing so later upgrade flows have a stable input",
43
+ "changes": ["0-2", 5, 6],
44
+ "draftComments": [
45
+ {
46
+ "change": 6,
47
+ "body": "Check whether the new selector can drift out of sync when no compatible versions exist."
48
+ }
49
+ ]
50
+ },
51
+ {
52
+ "description": "Cover the upgrade path with e2e checks after the UI flow is in place",
53
+ "changes": ["3-4", "7-9"]
54
+ }
55
+ ]
56
+ }
57
+ ```
58
+
59
+ ## Rules
60
+
61
+ 1. Every change index must appear in exactly one group.
62
+ 2. No index may appear in more than one group.
63
+ 3. No index may be omitted.
64
+ 4. Groups are ordered. Group 1 is reviewed first, group N last.
65
+ 5. Choose the number of groups based on the PR shape. Use as many groups as needed to keep the review understandable, but avoid splitting tightly coupled changes just to create more groups.
66
+ 6. Use range syntax for consecutive indices: `"0-2"` means `[0, 1, 2]`.
67
+ 7. `draftComments` is optional.
68
+ 8. Each draft comment must anchor to a `change` that belongs to the same group.
69
+
70
+ ## Description guidance
71
+
72
+ Good descriptions help a reviewer understand why this group should be reviewed as one unit and how it fits into the sequence.
73
+
74
+ Prefer descriptions that:
75
+
76
+ - explain the intent or review value of the group
77
+ - mention the dependency or sequencing reason when useful
78
+ - tell the reviewer what they can learn or verify in this step
79
+
80
+ Avoid descriptions that are only:
81
+
82
+ - a raw area label like `form version selector`
83
+ - an as-is restatement of filenames, component names, or ticket labels
84
+ - too vague to distinguish this group from adjacent ones
85
+
86
+ Examples that usually work well:
87
+
88
+ - `Add version selection plumbing so the upgrade flow has a stable entry point`
89
+ - `Show current version and status before wiring upgrade actions`
90
+ - `Isolate the upgrade dialog and action handling as the main behavior change`
91
+ - `Add e2e coverage once the upgrade flow is in place`
92
+
93
+ Examples that are often too vague:
94
+
95
+ - `version selector`
96
+ - `status display`
97
+ - `upgrade dialog`
98
+ - `e2e`
99
+
100
+ ## Draft comment guidance
101
+
102
+ Use `draftComments` selectively. They are candidate review comments that the human reviewer can accept or reject during `render`.
103
+
104
+ Prefer draft comments that:
105
+
106
+ - point to a specific risk, regression, or questionable assumption
107
+ - are anchored to one concrete indexed change
108
+ - read like something worth sending to the source review if accepted
109
+
110
+ Avoid draft comments that are only:
111
+
112
+ - a summary of what the code does
113
+ - generic praise or noise
114
+ - a vague warning with no concrete concern
115
+
116
+ Examples that usually work well:
117
+
118
+ - `Potential regression: this update path bypasses the sanitizing transform used by the normal edit flow.`
119
+ - `This selector keeps the old version when no compatible options exist, so the form may submit an unavailable version.`
120
+
121
+ Examples that are often too weak:
122
+
123
+ - `Adds selector logic`
124
+ - `Looks risky`
125
+ - `Need review`
@@ -1,2 +0,0 @@
1
- /*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
2
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:"DM Sans", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.5rem;--radius-lg:.75rem;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:oklch(15.5% .008 60);--color-foreground:oklch(88% .01 80);--color-card:oklch(18.5% .008 60);--color-surface:oklch(20.5% .01 60);--color-muted:oklch(28% .01 60);--color-muted-foreground:oklch(58% .01 80);--color-border:oklch(28% .008 60);--color-border-subtle:oklch(23% .006 60);--color-input:oklch(22% .008 60);--color-ring:oklch(75% .15 75);--color-primary:oklch(78% .145 75);--color-primary-foreground:oklch(18% .02 60);--color-primary-muted:oklch(78% .145 75/.12);--color-secondary:oklch(28% .01 60);--color-secondary-foreground:oklch(78% .01 80);--color-destructive:oklch(62% .2 25);--color-destructive-foreground:oklch(98% .005 80);--color-success:oklch(65% .17 155);--color-success-foreground:oklch(98% .005 80)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.z-10{z-index:10}.z-20{z-index:20}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-14{width:calc(var(--spacing) * 14);height:calc(var(--spacing) * 14)}.size-\[18px\]{width:18px;height:18px}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-\[18px\]{height:18px}.h-screen{height:100vh}.min-h-\[60px\]{min-height:60px}.w-8{width:calc(var(--spacing) * 8)}.w-72{width:calc(var(--spacing) * 72)}.w-full{width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[18px\]{min-width:18px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.cursor-pointer{cursor:pointer}.resize-y{resize:vertical}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-border{border-color:var(--color-border)}.border-border\/30{border-color:#2c28254d}@supports (color:color-mix(in lab, red, red)){.border-border\/30{border-color:color-mix(in oklab, var(--color-border) 30%, transparent)}}.border-border\/60{border-color:#2c282599}@supports (color:color-mix(in lab, red, red)){.border-border\/60{border-color:color-mix(in oklab, var(--color-border) 60%, transparent)}}.border-border\/70{border-color:#2c2825b3}@supports (color:color-mix(in lab, red, red)){.border-border\/70{border-color:color-mix(in oklab, var(--color-border) 70%, transparent)}}.border-muted-foreground\/50{border-color:#7d7a7480}@supports (color:color-mix(in lab, red, red)){.border-muted-foreground\/50{border-color:color-mix(in oklab, var(--color-muted-foreground) 50%, transparent)}}.border-primary{border-color:var(--color-primary)}.bg-background\/55{background-color:#0f0b098c}@supports (color:color-mix(in lab, red, red)){.bg-background\/55{background-color:color-mix(in oklab, var(--color-background) 55%, transparent)}}.bg-background\/60{background-color:#0f0b0999}@supports (color:color-mix(in lab, red, red)){.bg-background\/60{background-color:color-mix(in oklab, var(--color-background) 60%, transparent)}}.bg-background\/70{background-color:#0f0b09b3}@supports (color:color-mix(in lab, red, red)){.bg-background\/70{background-color:color-mix(in oklab, var(--color-background) 70%, transparent)}}.bg-card{background-color:var(--color-card)}.bg-card\/40{background-color:#15120f66}@supports (color:color-mix(in lab, red, red)){.bg-card\/40{background-color:color-mix(in oklab, var(--color-card) 40%, transparent)}}.bg-card\/55{background-color:#15120f8c}@supports (color:color-mix(in lab, red, red)){.bg-card\/55{background-color:color-mix(in oklab, var(--color-card) 55%, transparent)}}.bg-card\/80{background-color:#15120fcc}@supports (color:color-mix(in lab, red, red)){.bg-card\/80{background-color:color-mix(in oklab, var(--color-card) 80%, transparent)}}.bg-destructive{background-color:var(--color-destructive)}.bg-destructive\/12{background-color:#e643431f}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/12{background-color:color-mix(in oklab, var(--color-destructive) 12%, transparent)}}.bg-input\/60{background-color:#1d1a1799}@supports (color:color-mix(in lab, red, red)){.bg-input\/60{background-color:color-mix(in oklab, var(--color-input) 60%, transparent)}}.bg-muted\/60{background-color:#2d282499}@supports (color:color-mix(in lab, red, red)){.bg-muted\/60{background-color:color-mix(in oklab, var(--color-muted) 60%, transparent)}}.bg-primary{background-color:var(--color-primary)}.bg-primary-muted{background-color:var(--color-primary-muted)}.bg-secondary{background-color:var(--color-secondary)}.bg-success{background-color:var(--color-success)}.bg-success\/12{background-color:#00ab601f}@supports (color:color-mix(in lab, red, red)){.bg-success\/12{background-color:color-mix(in oklab, var(--color-success) 12%, transparent)}}.bg-success\/15{background-color:#00ab6026}@supports (color:color-mix(in lab, red, red)){.bg-success\/15{background-color:color-mix(in oklab, var(--color-success) 15%, transparent)}}.bg-success\/20{background-color:#00ab6033}@supports (color:color-mix(in lab, red, red)){.bg-success\/20{background-color:color-mix(in oklab, var(--color-success) 20%, transparent)}}.bg-surface{background-color:var(--color-surface)}.bg-transparent{background-color:#0000}.p-1{padding:calc(var(--spacing) * 1)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-6{padding:calc(var(--spacing) * 6)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-px{padding-top:1px}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.text-center{text-align:center}.text-left{text-align:left}.font-\[family-name\:var\(--font-mono\)\]{font-family:var(--font-mono)}.font-\[family-name\:var\(--font-sans\)\]{font-family:var(--font-sans)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-destructive{color:var(--color-destructive)}.text-destructive-foreground{color:var(--color-destructive-foreground)}.text-foreground{color:var(--color-foreground)}.text-muted-foreground{color:var(--color-muted-foreground)}.text-muted-foreground\/50{color:#7d7a7480}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/50{color:color-mix(in oklab, var(--color-muted-foreground) 50%, transparent)}}.text-muted-foreground\/60{color:#7d7a7499}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/60{color:color-mix(in oklab, var(--color-muted-foreground) 60%, transparent)}}.text-primary{color:var(--color-primary)}.text-primary-foreground{color:var(--color-primary-foreground)}.text-secondary-foreground{color:var(--color-secondary-foreground)}.text-success{color:var(--color-success)}.text-success-foreground{color:var(--color-success-foreground)}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.decoration-muted-foreground\/30{text-decoration-color:#7d7a744d}@supports (color:color-mix(in lab, red, red)){.decoration-muted-foreground\/30{-webkit-text-decoration-color:color-mix(in oklab, var(--color-muted-foreground) 30%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-muted-foreground) 30%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--color-muted-foreground) 30%, transparent);text-decoration-color:color-mix(in oklab, var(--color-muted-foreground) 30%, transparent)}}.shadow-\[0_0_8px_oklch\(0\.78_0\.145_75\/0\.3\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,oklch(78% .145 75/.3));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_20px_oklch\(0\.65_0\.17_155\/0\.15\)\]{--tw-shadow:0 0 20px var(--tw-shadow-color,oklch(65% .17 155/.15));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_1px_2px_oklch\(0\/0\/0\/0\.3\)\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,oklch(0/0/0/.3));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_1px_2px_oklch\(0\/0\/0\/0\.12\)\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,oklch(0/0/0/.12));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_1px_2px_oklch\(0\/0\/0\/0\.15\)\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,oklch(0/0/0/.15));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_1px_3px_oklch\(0\/0\/0\/0\.2\)\]{--tw-shadow:0 1px 3px var(--tw-shadow-color,oklch(0/0/0/.2));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}@media (hover:hover){.group-hover\:border-foreground\/20:is(:where(.group):hover *){border-color:#dbd7d033}@supports (color:color-mix(in lab, red, red)){.group-hover\:border-foreground\/20:is(:where(.group):hover *){border-color:color-mix(in oklab, var(--color-foreground) 20%, transparent)}}.group-hover\:text-foreground\/70:is(:where(.group):hover *){color:#dbd7d0b3}@supports (color:color-mix(in lab, red, red)){.group-hover\:text-foreground\/70:is(:where(.group):hover *){color:color-mix(in oklab, var(--color-foreground) 70%, transparent)}}.group-hover\:text-foreground\/80:is(:where(.group):hover *){color:#dbd7d0cc}@supports (color:color-mix(in lab, red, red)){.group-hover\:text-foreground\/80:is(:where(.group):hover *){color:color-mix(in oklab, var(--color-foreground) 80%, transparent)}}}.placeholder\:text-muted-foreground::placeholder{color:var(--color-muted-foreground)}@media (hover:hover){.hover\:border-foreground\/20:hover{border-color:#dbd7d033}@supports (color:color-mix(in lab, red, red)){.hover\:border-foreground\/20:hover{border-color:color-mix(in oklab, var(--color-foreground) 20%, transparent)}}.hover\:bg-secondary\/80:hover{background-color:#2d2824cc}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--color-secondary) 80%, transparent)}}.hover\:bg-surface:hover{background-color:var(--color-surface)}.hover\:bg-surface\/50:hover{background-color:#1b161380}@supports (color:color-mix(in lab, red, red)){.hover\:bg-surface\/50:hover{background-color:color-mix(in oklab, var(--color-surface) 50%, transparent)}}.hover\:bg-white\/8:hover{background-color:#ffffff14}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/8:hover{background-color:color-mix(in oklab, var(--color-white) 8%, transparent)}}.hover\:text-foreground:hover{color:var(--color-foreground)}.hover\:text-white:hover{color:var(--color-white)}.hover\:brightness-110:hover{--tw-brightness:brightness(110%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.focus-visible\:border-primary\/40:focus-visible{border-color:#eda83966}@supports (color:color-mix(in lab, red, red)){.focus-visible\:border-primary\/40:focus-visible{border-color:color-mix(in oklab, var(--color-primary) 40%, transparent)}}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-primary\/50:focus-visible{--tw-ring-color:#eda83980}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-primary\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-primary) 50%, transparent)}}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--color-ring)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:scale-\[0\.97\]:active{scale:.97}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}}body{background-color:var(--color-background);color:var(--color-foreground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--font-sans)}body:before{content:"";z-index:9999;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;position:fixed;inset:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:oklch(35% .01 60);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:oklch(42% .01 60)}.rail-track{position:relative}.rail-track:before{content:"";background:linear-gradient(to bottom, var(--color-border) 0%, var(--color-border-subtle) 100%);width:1px;position:absolute;top:16px;bottom:16px;left:22px}@keyframes fade-in-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-dot{0%,to{box-shadow:0 0 oklch(78% .145 75/.3)}50%{box-shadow:0 0 0 4px oklch(78% .145 75/0)}}.animate-fade-in-up{animation:.35s ease-out both fade-in-up}.animate-pulse-dot{animation:2s ease-in-out infinite pulse-dot}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:40ms}.stagger-children>:nth-child(3){animation-delay:80ms}.stagger-children>:nth-child(4){animation-delay:.12s}.stagger-children>:nth-child(5){animation-delay:.16s}.stagger-children>:nth-child(6){animation-delay:.2s}.stagger-children>:nth-child(7){animation-delay:.24s}.stagger-children>:nth-child(8){animation-delay:.28s}.stagger-children>:nth-child(9){animation-delay:.32s}.stagger-children>:nth-child(10){animation-delay:.36s}.annotation-card{--annotation-bg:oklch(24% .012 255/.98);--annotation-border:oklch(38% .02 255/.95);--annotation-meta:oklch(78% .015 255);--annotation-text:oklch(96% .005 80);border:1px solid var(--annotation-border);background:var(--annotation-bg);color:var(--annotation-text);isolation:isolate}.annotation-card-human{--annotation-bg:oklch(23.5% .012 250/.98);--annotation-border:oklch(36% .02 250/.95);--annotation-meta:oklch(77% .015 250);--annotation-text:oklch(96.5% .005 80)}.annotation-card-agent-pending{--annotation-bg:oklch(31% .06 72/.96);--annotation-border:oklch(58% .12 72/.95);--annotation-meta:oklch(93% .02 85);--annotation-text:oklch(98.5% .005 90)}.annotation-card-agent-accepted{--annotation-bg:oklch(29% .055 160/.97);--annotation-border:oklch(48% .09 160/.95);--annotation-meta:oklch(90% .02 160);--annotation-text:oklch(98% .005 160)}.annotation-card-agent-rejected{--annotation-bg:oklch(22% .008 255/.96);--annotation-border:oklch(31% .012 255/.95);--annotation-meta:oklch(72% .01 255);--annotation-text:oklch(90% .01 80)}.annotation-meta{color:var(--annotation-meta)}.annotation-body{color:var(--annotation-text)}.annotation-button-accept{color:oklch(98% .005 160)!important;background:oklch(34% .065 160/.92)!important;border-color:oklch(50% .09 160/.9)!important}.annotation-button-accept:hover{background:oklch(38% .07 160/.96)!important}.annotation-button-reject{color:oklch(90% .01 80)!important;background:oklch(26% .01 255/.88)!important;border-color:oklch(34% .012 255/.9)!important}.annotation-button-reject:hover{background:oklch(30% .01 255/.92)!important}.file-toolbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(oklch(19% .008 60/.97) 0%,oklch(18.5% .008 60/.93) 100%);border-bottom:1px solid oklch(28% .008 60/.92);box-shadow:0 8px 24px oklch(0% 0 0/.14)}.file-toolbar-additions{color:oklch(72% .13 155)}.file-toolbar-deletions{color:oklch(70% .17 25)}.comment-progress-track{background:oklch(23.5% .008 60);border:1px solid oklch(30% .008 60/.8);height:8px;display:flex}.comment-progress-segment{height:100%}.comment-progress-segment-included{background:linear-gradient(90deg,oklch(63% .12 155),oklch(69% .13 155))}.comment-progress-segment-pending{background:linear-gradient(90deg,oklch(72% .13 75),oklch(78% .14 75))}.comment-progress-segment-omitted{background:linear-gradient(90deg,oklch(44% .02 255),oklch(50% .02 255))}.comment-progress-empty{background:linear-gradient(90deg,oklch(22% .008 60),oklch(25% .008 60));flex:auto}.comment-progress-chip{color:var(--color-muted-foreground);align-items:center;gap:.4rem;display:inline-flex}.comment-progress-dot{border-radius:9999px;width:.45rem;height:.45rem}.comment-progress-dot-included{background:oklch(67% .13 155)}.comment-progress-dot-pending{background:oklch(76% .14 75)}.comment-progress-dot-omitted{background:oklch(48% .02 255)}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}