gennady 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (319) hide show
  1. package/README.md +2 -15
  2. package/ai/agents/agent-resolve-conflicts.xml +6 -0
  3. package/ai/agents/agent-review-verifier.xml +6 -0
  4. package/ai/directives/architecture/README.md +21 -0
  5. package/ai/directives/coding/README.md +23 -0
  6. package/ai/directives/coding/result-conventions.xml +55 -0
  7. package/ai/directives/coding/svelte5-runes.xml +248 -0
  8. package/ai/directives/coding/sveltekit-rules.xml +247 -0
  9. package/ai/directives/coding/typescript-rules.xml +589 -0
  10. package/ai/directives/coding/uikit-component-storybook.xml +347 -0
  11. package/ai/directives/coding/uikit-component-svelte.xml +344 -0
  12. package/ai/directives/coding/uikit-spec-drafting.xml +243 -0
  13. package/ai/directives/dbc-audit.directive.xml +131 -0
  14. package/ai/directives/dev-review.directive.xml +148 -0
  15. package/ai/directives/infra/README.md +11 -0
  16. package/ai/directives/infra/eslint-setup.xml +467 -0
  17. package/ai/directives/infra/git-setup.xml +261 -0
  18. package/ai/directives/infra/nodejs-npm-setup.xml +354 -0
  19. package/ai/directives/infra/storybook-setup.xml +153 -0
  20. package/ai/directives/knowledge.xml +206 -0
  21. package/ai/directives/perf-auditor/perf-auditor.directive.xml +75 -0
  22. package/ai/directives/perf-auditor/rules/async-latency.xml +101 -0
  23. package/ai/directives/perf-auditor/rules/data-structures.xml +103 -0
  24. package/ai/directives/perf-auditor/rules/iteration-fusion.xml +96 -0
  25. package/ai/directives/perf-auditor/rules/memory-gc.xml +102 -0
  26. package/ai/directives/sdd/README.md +49 -0
  27. package/ai/directives/sdd/audit.directive.xml +543 -0
  28. package/ai/directives/sdd/discovery.directive.xml +824 -0
  29. package/ai/directives/sdd/fix.directive.xml +249 -0
  30. package/ai/directives/sdd/module-decomposition.directive.xml +666 -0
  31. package/ai/directives/sdd/phase-execution-protocol.xml +339 -0
  32. package/ai/directives/sdd/scaffold.directive.xml +717 -0
  33. package/ai/directives/sdd/setup.directive.xml +213 -0
  34. package/ai/directives/sdd/svelte-ui-discovery.directive.xml +263 -0
  35. package/ai/directives/semantic-change-extractor.directive.xml +99 -0
  36. package/ai/directives/testing/README.md +25 -0
  37. package/ai/directives/testing/common.xml +234 -0
  38. package/ai/directives/testing/node-test.xml +288 -0
  39. package/ai/directives/testing/playwright-cli.xml +199 -0
  40. package/ai/directives/testing/playwright-e2e.xml +292 -0
  41. package/ai/directives/testing/storybook-usage.xml +173 -0
  42. package/ai/directives/testing/svelte-testing.xml +237 -0
  43. package/ai/directives/testing/vitest-rules.xml +326 -0
  44. package/ai/docs/README.md +17 -0
  45. package/ai/docs/ai-icl.md +538 -0
  46. package/ai/docs/ai-priming.md +548 -0
  47. package/ai/docs/ai-prompt-formats.md +406 -0
  48. package/ai/docs/ai-promting.md +572 -0
  49. package/ai/drafts/DRAFT.md +120 -0
  50. package/ai/drafts/agent-devgen-class-from-description.rules.xml +123 -0
  51. package/ai/drafts/agent-typescript-devgen.v1.xml +303 -0
  52. package/ai/drafts/d.md +65 -0
  53. package/ai/drafts/music-posts.md +105 -0
  54. package/ai/fw/v1/architecture/blueprint-factory.xml +77 -0
  55. package/ai/fw/v1/core/mental-model.xml +50 -0
  56. package/ai/fw/v1/discovery/intent-reactor.xml +92 -0
  57. package/ai/fw/v1/production/swarm-protocol.xml +122 -0
  58. package/ai/fw/v1/review/quality-pipeline.xml +102 -0
  59. package/ai/fw/v2/arch-universal.xml +73 -0
  60. package/ai/fw-draft/README.md +79 -0
  61. package/ai/fw-draft/bin/discovery.sh +116 -0
  62. package/ai/fw-draft/gennady.xml +58 -0
  63. package/ai/fw-draft/provider/claude.xml +16 -0
  64. package/ai/fw-draft/provider/cursor.xml +23 -0
  65. package/ai/fw-draft/provider/default.xml +12 -0
  66. package/ai/fw-draft/roles/developer.xml +18 -0
  67. package/ai/fw-draft/router.xml +39 -0
  68. package/ai/fw-draft/routes/development.xml +32 -0
  69. package/ai/fw-draft/routes/universal.xml +58 -0
  70. package/ai/fw-draft/rules/dev/base/file-structure-rules.xml +89 -0
  71. package/ai/fw-draft/rules/dev/typescript/contacts.xml +194 -0
  72. package/dist/ai/agents/agent-resolve-conflicts.xml +6 -0
  73. package/dist/ai/agents/agent-review-verifier.xml +6 -0
  74. package/dist/ai/directives/architecture/README.md +21 -0
  75. package/dist/ai/directives/coding/README.md +23 -0
  76. package/dist/ai/directives/coding/result-conventions.xml +55 -0
  77. package/dist/ai/directives/coding/svelte5-runes.xml +248 -0
  78. package/dist/ai/directives/coding/sveltekit-rules.xml +247 -0
  79. package/dist/ai/directives/coding/typescript-rules.xml +589 -0
  80. package/dist/ai/directives/coding/uikit-component-storybook.xml +347 -0
  81. package/dist/ai/directives/coding/uikit-component-svelte.xml +344 -0
  82. package/dist/ai/directives/coding/uikit-spec-drafting.xml +243 -0
  83. package/dist/ai/directives/dbc-audit.directive.xml +131 -0
  84. package/dist/ai/directives/dev-review.directive.xml +148 -0
  85. package/dist/ai/directives/infra/README.md +11 -0
  86. package/dist/ai/directives/infra/eslint-setup.xml +467 -0
  87. package/dist/ai/directives/infra/git-setup.xml +261 -0
  88. package/dist/ai/directives/infra/nodejs-npm-setup.xml +354 -0
  89. package/dist/ai/directives/infra/storybook-setup.xml +153 -0
  90. package/dist/ai/directives/knowledge.xml +206 -0
  91. package/dist/ai/directives/perf-auditor/perf-auditor.directive.xml +75 -0
  92. package/dist/ai/directives/perf-auditor/rules/async-latency.xml +101 -0
  93. package/dist/ai/directives/perf-auditor/rules/data-structures.xml +103 -0
  94. package/dist/ai/directives/perf-auditor/rules/iteration-fusion.xml +96 -0
  95. package/dist/ai/directives/perf-auditor/rules/memory-gc.xml +102 -0
  96. package/dist/ai/directives/sdd/README.md +49 -0
  97. package/dist/ai/directives/sdd/audit.directive.xml +543 -0
  98. package/dist/ai/directives/sdd/discovery.directive.xml +824 -0
  99. package/dist/ai/directives/sdd/fix.directive.xml +249 -0
  100. package/dist/ai/directives/sdd/module-decomposition.directive.xml +666 -0
  101. package/dist/ai/directives/sdd/phase-execution-protocol.xml +339 -0
  102. package/dist/ai/directives/sdd/scaffold.directive.xml +717 -0
  103. package/dist/ai/directives/sdd/setup.directive.xml +213 -0
  104. package/dist/ai/directives/sdd/svelte-ui-discovery.directive.xml +263 -0
  105. package/dist/ai/directives/semantic-change-extractor.directive.xml +99 -0
  106. package/dist/ai/directives/testing/README.md +25 -0
  107. package/dist/ai/directives/testing/common.xml +234 -0
  108. package/dist/ai/directives/testing/node-test.xml +288 -0
  109. package/dist/ai/directives/testing/playwright-cli.xml +199 -0
  110. package/dist/ai/directives/testing/playwright-e2e.xml +292 -0
  111. package/dist/ai/directives/testing/storybook-usage.xml +173 -0
  112. package/dist/ai/directives/testing/svelte-testing.xml +237 -0
  113. package/dist/ai/directives/testing/vitest-rules.xml +326 -0
  114. package/dist/ai/docs/README.md +17 -0
  115. package/dist/ai/docs/ai-icl.md +538 -0
  116. package/dist/ai/docs/ai-priming.md +548 -0
  117. package/dist/ai/docs/ai-prompt-formats.md +406 -0
  118. package/dist/ai/docs/ai-promting.md +572 -0
  119. package/dist/ai/drafts/DRAFT.md +120 -0
  120. package/dist/ai/drafts/agent-devgen-class-from-description.rules.xml +123 -0
  121. package/dist/ai/drafts/agent-typescript-devgen.v1.xml +303 -0
  122. package/dist/ai/drafts/d.md +65 -0
  123. package/dist/ai/drafts/music-posts.md +105 -0
  124. package/dist/ai/fw/v1/architecture/blueprint-factory.xml +77 -0
  125. package/dist/ai/fw/v1/core/mental-model.xml +50 -0
  126. package/dist/ai/fw/v1/discovery/intent-reactor.xml +92 -0
  127. package/dist/ai/fw/v1/production/swarm-protocol.xml +122 -0
  128. package/dist/ai/fw/v1/review/quality-pipeline.xml +102 -0
  129. package/dist/ai/fw/v2/arch-universal.xml +73 -0
  130. package/dist/ai/fw-draft/README.md +79 -0
  131. package/dist/ai/fw-draft/bin/discovery.sh +116 -0
  132. package/dist/ai/fw-draft/gennady.xml +58 -0
  133. package/dist/ai/fw-draft/provider/claude.xml +16 -0
  134. package/dist/ai/fw-draft/provider/cursor.xml +23 -0
  135. package/dist/ai/fw-draft/provider/default.xml +12 -0
  136. package/dist/ai/fw-draft/roles/developer.xml +18 -0
  137. package/dist/ai/fw-draft/router.xml +39 -0
  138. package/dist/ai/fw-draft/routes/development.xml +32 -0
  139. package/dist/ai/fw-draft/routes/universal.xml +58 -0
  140. package/dist/ai/fw-draft/rules/dev/base/file-structure-rules.xml +89 -0
  141. package/dist/ai/fw-draft/rules/dev/typescript/contacts.xml +194 -0
  142. package/dist/chunks/devtools-B-7ugZhF.js +79 -0
  143. package/dist/chunks/{help.cmd-CWasx25o.js → help.cmd-B_G7EWzF.js} +9 -2
  144. package/dist/chunks/{index-B63fYXL2.js → index-BeL1Zcbg.js} +1 -1
  145. package/dist/chunks/index-CVR66voe.js +26963 -0
  146. package/dist/chunks/index-CXuhZzS3.js +16979 -0
  147. package/dist/chunks/{index-B5bA2T7A.js → index-CaahtXiM.js} +33 -9
  148. package/dist/chunks/{index-iqg0w_pE.js → index-CiEM-8nJ.js} +35 -19
  149. package/dist/chunks/{index-B4m0-PAT.js → index-D1qsi0Uc.js} +57 -33
  150. package/dist/chunks/index-D9ceRUyB.js +443 -0
  151. package/dist/chunks/index-DJpVmyp2.js +176 -0
  152. package/dist/chunks/{index-C0andxna.js → index-DU6jD7SS.js} +1 -1
  153. package/dist/chunks/index-KxSZKmZn.js +540 -0
  154. package/dist/chunks/{index-Dqe1TdW4.js → index-UbHoePfr.js} +12 -12
  155. package/dist/chunks/{index-5xIgwwKx.js → index-g1LXlp77.js} +2 -2
  156. package/dist/chunks/index-zBnnuvLA.js +3788 -0
  157. package/dist/chunks/{run-review-command.logic-a_M3CkeZ.js → run-review-command.logic-DpkRoEi8.js} +2 -2
  158. package/dist/chunks/services-CaLOhuLV.js +2889 -0
  159. package/dist/chunks/shared-Bjy30TeM.js +665 -0
  160. package/dist/cli/cmd/_shared/prompt/io/load-agent-template.io.d.ts +3 -3
  161. package/dist/cli/cmd/_shared/prompt/logic/build-ai-first-knowledge-block.logic.d.ts +3 -3
  162. package/dist/cli/cmd/_shared/prompt/logic/build-ai-verify-placeholders.logic.d.ts +7 -4
  163. package/dist/cli/cmd/_shared/prompt/logic/verify-commands/resolve-verify-commands.logic.d.ts +5 -0
  164. package/dist/cli/cmd/_shared/update-check-worker.d.ts +1 -0
  165. package/dist/cli/cmd/_shared/update-check.d.ts +38 -0
  166. package/dist/cli/cmd/agent-mon/cmd/create-providers.d.ts +15 -0
  167. package/dist/cli/cmd/agent-mon/cmd/index.d.ts +1 -0
  168. package/dist/cli/cmd/agent-mon/cmd/run.d.ts +12 -0
  169. package/dist/cli/cmd/agent-mon/state/create-state-manager.d.ts +32 -0
  170. package/dist/cli/cmd/agent-mon/state/group-by-provider.d.ts +14 -0
  171. package/dist/cli/cmd/agent-mon/state/index.d.ts +5 -0
  172. package/dist/cli/cmd/agent-mon/state/is-waiting.d.ts +9 -0
  173. package/dist/cli/cmd/agent-mon/state/view-model.type.d.ts +74 -0
  174. package/dist/cli/cmd/agent-mon/ui/app.d.ts +16 -0
  175. package/dist/cli/cmd/agent-mon/ui/column-view.d.ts +14 -0
  176. package/dist/cli/cmd/agent-mon/ui/index.d.ts +10 -0
  177. package/dist/cli/cmd/agent-mon/ui/provider-column.d.ts +14 -0
  178. package/dist/cli/cmd/agent-mon/ui/session-card.d.ts +12 -0
  179. package/dist/cli/cmd/agent-mon/ui/status-badge.d.ts +10 -0
  180. package/dist/cli/cmd/alt-opinion/alt-opinion-parser.d.ts +18 -0
  181. package/dist/cli/cmd/alt-opinion/alt-opinion-runner.d.ts +32 -0
  182. package/dist/cli/cmd/alt-opinion/alt-opinion.cmd.d.ts +34 -0
  183. package/dist/cli/cmd/alt-opinion/alt-opinion.types.d.ts +88 -0
  184. package/dist/cli/cmd/alt-opinion/index.d.ts +1 -0
  185. package/dist/cli/cmd/cat/cat-url.fn.d.ts +19 -0
  186. package/dist/cli/cmd/lint/checks/anchor.check.d.ts +11 -0
  187. package/dist/cli/cmd/lint/checks/dbc-contract.check.d.ts +16 -0
  188. package/dist/cli/cmd/lint/checks/disables.check.d.ts +12 -0
  189. package/dist/cli/cmd/lint/checks/file-header.check.d.ts +10 -0
  190. package/dist/cli/cmd/lint/checks/language.check.d.ts +11 -0
  191. package/dist/cli/cmd/lint/index.d.ts +1 -0
  192. package/dist/cli/cmd/lint/lint.cmd.d.ts +18 -0
  193. package/dist/cli/cmd/lint/lint.types.d.ts +72 -0
  194. package/dist/cli/cmd/lint/utils/resolve-references.fn.d.ts +32 -0
  195. package/dist/cli/cmd/remote-console/index.d.ts +2 -0
  196. package/dist/cli/cmd/remote-console/remote-console.cmd.d.ts +55 -0
  197. package/dist/cli/cmd/resolve-conflicts/_core/io/resolve-conflicts-template-load.io.d.ts +2 -2
  198. package/dist/cli/cmd/resolve-conflicts/_core/logic/resolve-conflicts-command-args-parse.logic.d.ts +3 -3
  199. package/dist/cli/cmd/resolve-conflicts/_core/logic/resolve-conflicts-command-run.logic.d.ts +3 -3
  200. package/dist/cli/cmd/resolve-conflicts/_core/logic/resolve-conflicts-context-git-build.logic.d.ts +4 -4
  201. package/dist/cli/cmd/resolve-conflicts/_core/types/resolve-conflicts-artifact.type.d.ts +3 -1
  202. package/dist/cli/cmd/resolve-conflicts/_core/types/resolve-conflicts-command-args.type.d.ts +3 -1
  203. package/dist/cli/cmd/resolve-conflicts/_core/types/resolve-conflicts-command-result.type.d.ts +5 -1
  204. package/dist/cli/cmd/resolve-conflicts/_core/types/resolve-conflicts-context-git.type.d.ts +18 -2
  205. package/dist/cli/cmd/resolve-conflicts/_core/xml/resolve-conflicts-artifact-build.xml.d.ts +6 -6
  206. package/dist/cli/cmd/resolve-conflicts/_core/xml/resolve-conflicts-render.xml.d.ts +4 -4
  207. package/dist/cli/cmd/review/_core/io/load-review-verify-template.io.d.ts +2 -2
  208. package/dist/cli/cmd/review/_core/logic/build-review-context-git.logic.d.ts +3 -3
  209. package/dist/cli/cmd/review/_core/logic/build-review-context-vcs.logic.d.ts +2 -2
  210. package/dist/cli/cmd/review/_core/logic/load-review-context-mr.logic.d.ts +5 -5
  211. package/dist/cli/cmd/review/_core/logic/parse-review-command-args.logic.d.ts +3 -3
  212. package/dist/cli/cmd/review/_core/logic/resolve-review-intent.logic.d.ts +3 -3
  213. package/dist/cli/cmd/review/_core/logic/run-review-command.logic.d.ts +3 -3
  214. package/dist/cli/cmd/review/_core/types/review-artifact.type.d.ts +4 -1
  215. package/dist/cli/cmd/review/_core/types/review-command-args.type.d.ts +7 -1
  216. package/dist/cli/cmd/review/_core/types/review-command-mode.type.d.ts +1 -1
  217. package/dist/cli/cmd/review/_core/types/review-command-options.type.d.ts +3 -1
  218. package/dist/cli/cmd/review/_core/types/review-command-result.type.d.ts +5 -1
  219. package/dist/cli/cmd/review/_core/types/review-context-git.type.d.ts +3 -1
  220. package/dist/cli/cmd/review/_core/types/review-context-mr.type.d.ts +22 -3
  221. package/dist/cli/cmd/review/_core/types/review-context-vcs.type.d.ts +4 -1
  222. package/dist/cli/cmd/review/_core/types/review-intent.type.d.ts +1 -1
  223. package/dist/cli/cmd/review/_core/xml/build-review-artifact.xml.d.ts +10 -10
  224. package/dist/cli/cmd/review/_core/xml/render-review-issues.xml.d.ts +3 -3
  225. package/dist/cli/cmd/review/_core/xml/render-review-verify.xml.d.ts +4 -4
  226. package/dist/cli/cmd/sync/index.d.ts +1 -0
  227. package/dist/cli/cmd/sync/sync-core.d.ts +65 -0
  228. package/dist/cli/cmd/sync/sync-formatter.d.ts +12 -0
  229. package/dist/cli/cmd/sync/sync.cmd.d.ts +33 -0
  230. package/dist/cli/cmd/sync/sync.types.d.ts +50 -0
  231. package/dist/cli/cmd/vcs-reply/vcs-reply.cmd.d.ts +4 -4
  232. package/dist/cli/utils/ai-legacy/ai-legacy-agent.d.ts +12 -11
  233. package/dist/cli/utils/ai-legacy/ai-legacy-core.d.ts +33 -17
  234. package/dist/cli/utils/ai-legacy/ai-legacy-model.d.ts +42 -23
  235. package/dist/cli/utils/cat-gen/cat-gen.d.ts +19 -8
  236. package/dist/cli/utils/commit-gen/commit-gen.d.ts +39 -15
  237. package/dist/cli/utils/prompts/index.d.ts +6 -6
  238. package/dist/cli/utils/review-gen/review-gen.d.ts +33 -9
  239. package/dist/gennady.js +30 -10
  240. package/dist/index.d.ts +1 -0
  241. package/dist/index.js +44 -23
  242. package/dist/services/agent-mon/diff/diff.d.ts +9 -0
  243. package/dist/services/agent-mon/diff/index.d.ts +1 -0
  244. package/dist/services/agent-mon/index.d.ts +10 -0
  245. package/dist/services/agent-mon/model/agent-provider.type.d.ts +20 -0
  246. package/dist/services/agent-mon/model/agent-session.type.d.ts +49 -0
  247. package/dist/services/agent-mon/model/errors.d.ts +20 -0
  248. package/dist/services/agent-mon/model/index.d.ts +7 -0
  249. package/dist/services/agent-mon/model/observe-opts.type.d.ts +7 -0
  250. package/dist/services/agent-mon/model/scan-opts.type.d.ts +7 -0
  251. package/dist/services/agent-mon/model/session-changes.type.d.ts +10 -0
  252. package/dist/services/agent-mon/monitor/agent-monitor.d.ts +44 -0
  253. package/dist/services/agent-mon/monitor/create-monitor.d.ts +6 -0
  254. package/dist/services/agent-mon/monitor/index.d.ts +2 -0
  255. package/dist/services/agent-mon/observe/index.d.ts +1 -0
  256. package/dist/services/agent-mon/observe/observe.d.ts +12 -0
  257. package/dist/services/agent-mon/providers/claude/claude-provider.d.ts +50 -0
  258. package/dist/services/agent-mon/providers/claude/index.d.ts +5 -0
  259. package/dist/services/agent-mon/providers/claude/ps.d.ts +36 -0
  260. package/dist/services/agent-mon/providers/claude/session-json.d.ts +37 -0
  261. package/dist/services/agent-mon/providers/opencode/db.d.ts +41 -0
  262. package/dist/services/agent-mon/providers/opencode/index.d.ts +3 -0
  263. package/dist/services/agent-mon/providers/opencode/model-parser.d.ts +6 -0
  264. package/dist/services/agent-mon/providers/opencode/opencode-provider.d.ts +45 -0
  265. package/dist/services/ai-client/providers/ai-model.type.d.ts +14 -0
  266. package/dist/services/ai-client/providers/open-router/open-router-model.type.d.ts +1 -4
  267. package/dist/services/ai-client/providers/open-router/open-router-provider.d.ts +17 -0
  268. package/dist/services/ai-client/providers/openai-like-provider.d.ts +1 -0
  269. package/dist/services/data-ore/telegram/telegram-data-ore.d.ts +17 -0
  270. package/dist/services/data-ore/telegram/telegram-data-ore.types.d.ts +4 -0
  271. package/dist/services/data-ore/telegram/telegram-demo-music-helper.d.ts +1 -0
  272. package/dist/services/data-ore/telegram/telegram-demo.d.ts +1 -0
  273. package/dist/services/dbc/linter/dbc-ast-adapter.types.d.ts +82 -0
  274. package/dist/services/dbc/linter/dbc-linter.types.d.ts +95 -0
  275. package/dist/services/dbc/linter/implementations/ts/dbc-ts-ast-adapter.d.ts +183 -0
  276. package/dist/services/dbc/linter/implementations/ts/dbc-ts-linter.d.ts +152 -0
  277. package/dist/services/dbc/parser/dbc-parser.types.d.ts +16 -16
  278. package/dist/services/dbc/parser/implementations/jsdoc/dbc-jsdoc-parser.d.ts +14 -4
  279. package/dist/services/logger/logger.d.ts +26 -6
  280. package/dist/services/remote-console/client/remote-console-client-serializer.d.ts +7 -0
  281. package/dist/services/remote-console/client/remote-console-client.d.ts +20 -0
  282. package/dist/services/remote-console/client/remote-console-client.types.d.ts +88 -0
  283. package/dist/services/remote-console/remote-console.d.ts +6 -0
  284. package/dist/services/remote-console/server/remote-console-server.d.ts +10 -0
  285. package/dist/services/remote-console/server/remote-console-server.types.d.ts +44 -0
  286. package/dist/services/remote-console/server/remote-console-stdout-writer.d.ts +26 -0
  287. package/dist/services/vcs-client/abstract/vcs-client-merge-discussions.d.ts +22 -14
  288. package/dist/services/vcs-client/abstract/vcs-client-merge-requests.d.ts +31 -14
  289. package/dist/services/vcs-client/abstract/vcs-client-repository-files.d.ts +16 -0
  290. package/dist/services/vcs-client/abstract/vcs-client.d.ts +9 -5
  291. package/dist/services/vcs-client/entities/vcs-file-content.type.d.ts +24 -0
  292. package/dist/services/vcs-client/entities/vcs-merge-request-changes.type.d.ts +32 -0
  293. package/dist/services/vcs-client/entities/vcs-url.type.d.ts +14 -0
  294. package/dist/services/vcs-client/entities/vcs-user.type.d.ts +3 -0
  295. package/dist/services/vcs-client/github/vcs-github-client.d.ts +31 -0
  296. package/dist/services/vcs-client/github/vcs-github-merge-requests.d.ts +40 -0
  297. package/dist/services/vcs-client/github/vcs-github-repository-files.d.ts +27 -0
  298. package/dist/services/vcs-client/gitlab/vcs-gitlab-client.d.ts +13 -4
  299. package/dist/services/vcs-client/gitlab/vcs-gitlab-merge-discussions.d.ts +16 -5
  300. package/dist/services/vcs-client/gitlab/vcs-gitlab-merge-requests.d.ts +24 -5
  301. package/dist/services/vcs-client/gitlab/vcs-gitlab-repository-files.d.ts +27 -0
  302. package/dist/services/vcs-client/parse-vcs-url.d.ts +3 -0
  303. package/dist/shared/backend/git/git-core.d.ts +24 -22
  304. package/dist/shared/backend/git/git-diff.d.ts +16 -5
  305. package/dist/shared/backend/rc/rc-config.d.ts +27 -15
  306. package/dist/shared/common/exec.d.ts +4 -6
  307. package/dist/shared/common/files.d.ts +1 -3
  308. package/dist/shared/common/language.d.ts +3 -6
  309. package/dist/shared/common/parse-args.d.ts +1 -4
  310. package/dist/shared/common/style.d.ts +3 -3
  311. package/dist/shared/common/think.d.ts +1 -5
  312. package/dist/shared/common/tokens.d.ts +1 -5
  313. package/dist/shared/common/unguard.d.ts +4 -8
  314. package/dist/shared/common/xml.d.ts +16 -12
  315. package/package.json +20 -4
  316. package/dist/.ai/agents/agent-review-verifier.xml +0 -181
  317. package/dist/chunks/index-CNbmXK8M.js +0 -3548
  318. package/dist/chunks/services-Sb7TwLxt.js +0 -122
  319. package/dist/chunks/shared-BgLzFWMH.js +0 -577
@@ -0,0 +1,572 @@
1
+ <Module_ID id="PROMPTING_FOR_PROGRAMMING_2026" />
2
+
3
+ # AI Prompting
4
+
5
+ ## Модуль 1. Дерево prompt-архитектуры для программирования
6
+
7
+ - **Суть:** Для инженерных задач prompt лучше строить не как произвольный текст, а как стек управляющих слоев: краткий priming, цель, контекст, аксиомы, критерии качества, примеры, контракт ответа и проверка.
8
+ - **Ресерч:** [Language Models are Few-Shot Learners](https://arxiv.org/abs/2005.14165), [Rethinking the Role of Demonstrations: What Makes In-Context Learning Work?](https://aclanthology.org/2022.emnlp-main.759), [What Makes Good In-Context Examples for GPT-3?](https://aclanthology.org/2022.deelio-1.10), [Chain-of-Thought Prompting Elicits Reasoning in Large Language Models](https://arxiv.org/abs/2201.11903), [Large Language Models Might Not Care What You Are Saying: Prompt Format Beats Descriptions](https://aclanthology.org/2025.findings-emnlp.3/).
9
+
10
+ ## Модуль 2. Belief State, аксиомы и критерии вознаграждения
11
+
12
+ - **Суть:** Устойчивые правила проекта, acceptance criteria и rubric полезны как prompt-level замена неявным ожиданиям. Но их нельзя подавать как реальную инъекцию reward function внутрь модели.
13
+ - **Ресерч:** [Constitutional AI: Harmlessness from AI Feedback](https://arxiv.org/abs/2212.08073), [Role play with large language models](https://www.nature.com/articles/s41586-023-06647-8), [Large Language Models Might Not Care What You Are Saying: Prompt Format Beats Descriptions](https://aclanthology.org/2025.findings-emnlp.3/).
14
+
15
+ ## Модуль 3. Golden Examples, anti-examples и retrieval
16
+
17
+ - **Суть:** Сильный пример остается одним из самых надежных способов задать качество кода, формат reasoning и границы допустимого поведения. Пример должен быть репрезентативным, а не декоративным.
18
+ - **Ресерч:** [Language Models are Few-Shot Learners](https://arxiv.org/abs/2005.14165), [What Makes Good In-Context Examples for GPT-3?](https://aclanthology.org/2022.deelio-1.10), [Rethinking the Role of Demonstrations: What Makes In-Context Learning Work?](https://aclanthology.org/2022.emnlp-main.759), [Many-Shot In-Context Learning](https://arxiv.org/abs/2404.11018).
19
+
20
+ ## Модуль 4. Verification Loops, self-feedback и coding tasks
21
+
22
+ - **Суть:** Для программирования полезно не только сгенерировать решение, но и принудительно прогнать модель через цикл проверки: план, реализация, тесты, critique, исправление.
23
+ - **Ресерч:** [Self-Refine: Iterative Refinement with Self-Feedback](https://arxiv.org/abs/2303.17651), [Reflexion: Language Agents with Verbal Reinforcement Learning](https://arxiv.org/abs/2303.11366), [STaR: Self-Taught Reasoner Bootstrapping Reasoning With Reasoning](https://arxiv.org/abs/2203.14465).
24
+
25
+ ## Модуль 5. Длинный контекст, навигация и layout
26
+
27
+ - **Суть:** На длинных coding-prompts важны порядок секций, явные границы между правилами и данными, а также близость критичных ограничений к месту применения.
28
+ - **Ресерч:** [Lost in the Middle: How Language Models Use Long Contexts](https://arxiv.org/abs/2307.03172), [What Makes a Good Order of Examples in In-Context Learning](https://aclanthology.org/2024.findings-acl.884), [Large Language Models Might Not Care What You Are Saying: Prompt Format Beats Descriptions](https://aclanthology.org/2025.findings-emnlp.3/).
29
+
30
+ ---
31
+
32
+ ### Общая картина
33
+
34
+ Для программиста prompt полезно понимать как временную архитектуру управления моделью. Он не заменяет обучение, но может временно:
35
+
36
+ - сузить задачу;
37
+ - закрепить локальные правила проекта;
38
+ - задать критерии качества;
39
+ - показать эталон;
40
+ - организовать самопроверку;
41
+ - связать решение с тестами и acceptance criteria.
42
+
43
+ Самый полезный способ думать об этом такой: prompt не "переобучает" модель, а создает **inference-time scaffold** поверх уже имеющихся весов.
44
+
45
+ Это важная граница fact-check:
46
+
47
+ - **Да:** prompt может заметно менять поведение модели.
48
+ - **Да:** prompt может имитировать некоторые паттерны из instruction tuning, preference training и self-critique.
49
+ - **Нет:** prompt не превращается в настоящее SFT или RL.
50
+ - **Нет:** нельзя честно писать, что мы прямо "внедрили reward function в веса" во время одного запроса.
51
+
52
+ ---
53
+
54
+ <Module_ID id="MOD_PROMPT_01_TREE_2026" />
55
+
56
+ # Модуль 1. Дерево prompt-архитектуры для программирования
57
+
58
+ ### Базовое дерево
59
+
60
+ ```text
61
+ Prompt for Coding
62
+ ├── 1. Short Priming
63
+ │ ├── Кто мы и в каком режиме работаем
64
+ │ └── Какой тип задачи решаем
65
+ ├── 2. Goal
66
+ │ ├── Что нужно сделать
67
+ │ ├── Что считается готовым
68
+ │ └── Что запрещено ломать
69
+ ├── 3. Context
70
+ │ ├── Кодовая база / файлы / diff
71
+ │ ├── Ограничения среды
72
+ │ └── Зависимости и интерфейсы
73
+ ├── 4. Belief State / Axioms
74
+ │ ├── Неподвижные правила проекта
75
+ │ ├── Инварианты
76
+ │ └── Приоритеты качества
77
+ ├── 5. Reward Criteria
78
+ │ ├── Acceptance criteria
79
+ │ ├── Проверки / тесты / сигналы успеха
80
+ │ └── Что считается плохим решением
81
+ ├── 6. Golden Example
82
+ │ ├── Эталонный кусок кода или ответа
83
+ │ └── Образец reasoning или review-format
84
+ ├── 7. Counter-Example
85
+ │ ├── Что делать нельзя
86
+ │ └── Как выглядит плохой выход
87
+ ├── 8. Output Contract
88
+ │ ├── Формат ответа
89
+ │ ├── Структура findings / patch / report
90
+ │ └── Степень детализации
91
+ └── 9. Verification Loop
92
+ ├── План
93
+ ├── Реализация
94
+ ├── Проверка
95
+ └── Исправление
96
+ ```
97
+
98
+ ### 1. Short Priming
99
+
100
+ Короткий priming нужен не для магии, а чтобы сразу задать рабочий режим. Для coding-task это обычно 1-3 строки, а не полстраницы role-play.
101
+
102
+ #### Пример
103
+
104
+ ```text
105
+ Ты работаешь как инженерный агент по TypeScript-коду.
106
+ Фокус: корректность, поведенческие регрессии, контракт API и тестируемость.
107
+ Не подменяй задачу пересказом кода.
108
+ ```
109
+
110
+ ### 2. Goal
111
+
112
+ Goal должен отвечать на три вопроса:
113
+
114
+ - что изменить;
115
+ - какой результат нужен;
116
+ - по каким признакам задача считается закрытой.
117
+
118
+ #### Пример
119
+
120
+ ```text
121
+ Задача: исправить генерацию review-summary так, чтобы пустой diff не приводил к ложному finding.
122
+ Готово, если: пустой diff дает пустой список findings; существующие сценарии не ломаются.
123
+ ```
124
+
125
+ ### 3. Context
126
+
127
+ Контекст должен включать только то, что реально нужно для решения:
128
+
129
+ - файлы;
130
+ - API-контракты;
131
+ - тесты;
132
+ - инварианты;
133
+ - ограничения среды.
134
+
135
+ ### 4. Belief State / Axioms
136
+
137
+ Это блок стабильных правил, который задает локальную "конституцию" задачи:
138
+
139
+ - не ломать публичный API;
140
+ - не удалять тесты ради прохождения;
141
+ - предпочитать минимальный патч;
142
+ - логировать причину изменения;
143
+ - считать backward compatibility приоритетом.
144
+
145
+ ### 5. Reward Criteria
146
+
147
+ Это внешний proxy для качества. Он объясняет модели, какой выход выглядит как "успех", а какой как "провал".
148
+
149
+ Для coding-task здесь полезны:
150
+
151
+ - acceptance criteria;
152
+ - expected tests;
153
+ - failure modes;
154
+ - rubric review-quality.
155
+
156
+ ### 6. Golden Example
157
+
158
+ Golden example показывает не абстрактную цель, а конкретный сильный образец. Для программиста это особенно ценно, потому что можно задать:
159
+
160
+ - стиль patch;
161
+ - формат review finding;
162
+ - структуру explanation;
163
+ - тип JSDoc / type-contract;
164
+ - формат commit message или changelog.
165
+
166
+ ### 7. Counter-Example
167
+
168
+ Контрпример полезен, если у модели есть типовой плохой паттерн:
169
+
170
+ - болтливый ответ вместо patch;
171
+ - псевдо-review без реального риска;
172
+ - нарушение schema;
173
+ - удаление тестов;
174
+ - переписывание половины модуля без необходимости.
175
+
176
+ ### 8. Output Contract
177
+
178
+ Нужно явно задать, что именно вернуть:
179
+
180
+ - patch;
181
+ - findings;
182
+ - JSON;
183
+ - plan;
184
+ - test matrix;
185
+ - краткий инженерный отчет.
186
+
187
+ ### 9. Verification Loop
188
+
189
+ Для code-task один проход часто слабее, чем цепочка:
190
+
191
+ - сначала план;
192
+ - потом изменение;
193
+ - потом проверка;
194
+ - потом краткое исправление после проверки.
195
+
196
+ ---
197
+
198
+ ### Научное подтверждение и Fact-Checking
199
+
200
+ #### Прямо подтверждается:
201
+
202
+ - Демонстрации, формат и организация prompt реально влияют на поведение модели: [Brown et al., 2020](https://arxiv.org/abs/2005.14165), [Min et al., 2022](https://aclanthology.org/2022.emnlp-main.759), [Tang et al., 2025](https://aclanthology.org/2025.findings-emnlp.3/).
203
+ - Качество примеров критично для ICL: [Liu et al., 2022](https://aclanthology.org/2022.deelio-1.10).
204
+ - Пошаговые reasoning scaffolds полезны на сложных задачах: [Wei et al., 2022](https://arxiv.org/abs/2201.11903).
205
+
206
+ #### Косвенно подтверждается:
207
+
208
+ - Prompt, организованный как стек слоев, обычно работает лучше, чем одна длинная свободная инструкция.
209
+ - Для coding-task acceptance criteria и tests действуют как сильный направляющий сигнал.
210
+
211
+ #### Не подтверждено / требует аккуратности:
212
+
213
+ - Что существует одна каноническая prompt-структура для всех языков, моделей и задач.
214
+ - Что длинный priming сам по себе усиливает качество.
215
+ - Что tree-структура prompt автоматически лучше любого другого layout.
216
+
217
+ ---
218
+
219
+ <Module_ID id="MOD_PROMPT_02_BELIEF_STATE_2026" />
220
+
221
+ ## Модуль 2. Belief State, аксиомы и критерии вознаграждения
222
+
223
+ ### Суть метода
224
+
225
+ Самая полезная мысль из старого `ai-protocol` не в XML и не в псевдофизике attention, а в другом: модели полезно явно сказать, **какие правила здесь неподвижны** и **что считается хорошим результатом**.
226
+
227
+ В документе для программиста это удобно разделить на два блока:
228
+
229
+ 1. `Belief State / Axioms` — что в этой задаче считается фундаментом.
230
+ 2. `Reward Criteria` — что именно увеличивает ценность ответа.
231
+
232
+ ### 1. Belief State / Axioms
233
+
234
+ Это не "виртуальная архитектура сознания", а просто стабильный policy-block.
235
+
236
+ #### Примеры аксиом для coding-task
237
+
238
+ ```text
239
+ A1. Не ломай публичный контракт без явного запроса.
240
+ A2. Не удаляй тесты ради прохождения.
241
+ A3. Предпочитай минимальный патч перед широким рефакторингом.
242
+ A4. Если причина бага не доказана, не утверждай ее как факт.
243
+ A5. При конфликте между стилем и корректностью выигрывает корректность.
244
+ ```
245
+
246
+ ### 2. Reward Criteria
247
+
248
+ Это слой про критерии успеха. Он особенно полезен для генерации кода, review и refactoring.
249
+
250
+ #### Примеры reward criteria
251
+
252
+ ```text
253
+ Положительный результат:
254
+ - код проходит тесты;
255
+ - патч минимален;
256
+ - причина изменения объяснима;
257
+ - edge cases покрыты.
258
+
259
+ Негативный результат:
260
+ - ломается backward compatibility;
261
+ - исчезают проверки;
262
+ - ответ уходит в пересказ вместо изменения;
263
+ - решение не связано с acceptance criteria.
264
+ ```
265
+
266
+ ### 3. Что здесь реально подтверждается
267
+
268
+ #### Прямо подтверждается:
269
+
270
+ - Constitutional AI показывает, что набор принципов и self-critique/rule-based revision может быть использован как внешний источник управления поведением модели: [Bai et al., 2022](https://arxiv.org/abs/2212.08073).
271
+ - Persona/rule framing действительно меняет выход модели: [Shanahan et al., 2023](https://www.nature.com/articles/s41586-023-06647-8).
272
+ - Формат и rubric-like structure могут влиять на результат сильнее, чем длинные словесные описания: [Tang et al., 2025](https://aclanthology.org/2025.findings-emnlp.3/).
273
+
274
+ #### Косвенно подтверждается:
275
+
276
+ - Явные acceptance criteria и rubric работают как prompt-level proxy для preference optimization.
277
+ - Аксиомы полезны как способ стабилизировать локальные инварианты проекта.
278
+
279
+ #### Не подтверждено / требует аккуратности:
280
+
281
+ - Что prompt буквально внедряет reward function в веса модели.
282
+ - Что аксиомы в prompt запускают тот же механизм, что PPO/GRPO/RLAIF во время обучения.
283
+ - Что достаточно один раз написать `следуй аксиомам`, и модель будет строго их соблюдать в любом длинном контексте.
284
+
285
+ ### 4. Эвристическая интерпретация LLM
286
+
287
+ Это не научное доказательство, а рабочая модель интерпретации.
288
+
289
+ Belief State полезен как способ уменьшить неопределенность локальной среды. Reward Criteria полезны как способ сделать видимым, какой ответ здесь статистически "выигрывает". Это похоже на имитацию элементов alignment-пайплайна, но только на уровне inference scaffolding, а не реального обучения.
290
+
291
+ ### 5. Практическая ценность для программиста
292
+
293
+ - Если проект чувствителен к инвариантам, аксиомы лучше писать отдельно от task.
294
+ - Acceptance criteria и tests нужно ставить не в конец как комментарий, а в центральную часть prompt.
295
+ - Если важна минимальность патча, это надо объявлять явно.
296
+ - Если важен review-mode, нужно задать, что именно считать finding, а что нет.
297
+
298
+ ---
299
+
300
+ <Module_ID id="MOD_PROMPT_03_GOLDEN_EXAMPLES_2026" />
301
+
302
+ ## Модуль 3. Golden Examples, anti-examples и retrieval
303
+
304
+ ### Суть метода
305
+
306
+ Golden example нужен тогда, когда модель должна не просто понять задачу, а воспроизвести конкретный качественный паттерн:
307
+
308
+ - стиль решения;
309
+ - глубину reasoning;
310
+ - структуру code review;
311
+ - способ оформления тестов;
312
+ - формат миграции или changelog.
313
+
314
+ ### 1. Когда golden example действительно нужен
315
+
316
+ #### Полезен:
317
+
318
+ - для review findings;
319
+ - для schema-bound output;
320
+ - для JSDoc / contract style;
321
+ - для тестов и BDD-сценариев;
322
+ - для сложного доменного формата ответа.
323
+
324
+ #### Необязателен:
325
+
326
+ - для простой одноходовой правки, где задача и acceptance criteria и так прозрачны.
327
+
328
+ ### 2. Как должен выглядеть сильный пример
329
+
330
+ Сильный пример должен быть:
331
+
332
+ - релевантным реальной задаче;
333
+ - достаточно коротким;
334
+ - без лишнего декоративного reasoning;
335
+ - качественным именно по тем критериям, которые ты хочешь закрепить.
336
+
337
+ ### 3. Anti-example
338
+
339
+ Иногда полезно добавить один плохой пример и коротко пояснить, почему он плохой.
340
+
341
+ #### Пример
342
+
343
+ ```text
344
+ Плохо:
345
+ - "Код выглядит нормально, серьезных проблем нет"
346
+
347
+ Почему плохо:
348
+ - нет проверки поведения;
349
+ - нет ссылок на риск;
350
+ - нет конкретного finding.
351
+ ```
352
+
353
+ ### 4. Retrieval examples
354
+
355
+ Если examples много, сильнее не вставлять все подряд, а выбирать наиболее близкие к текущей задаче. Это особенно важно в codebase, где один хороший пример из нужного домена полезнее десяти случайных.
356
+
357
+ ### 5. Научное подтверждение и Fact-Checking
358
+
359
+ #### Прямо подтверждается:
360
+
361
+ - Выбор и качество in-context examples критично влияют на performance: [Brown et al., 2020](https://arxiv.org/abs/2005.14165), [Liu et al., 2022](https://aclanthology.org/2022.deelio-1.10).
362
+ - Демонстрации работают не только через labels, но и через формат, распределение входов и образец последовательности: [Min et al., 2022](https://aclanthology.org/2022.emnlp-main.759).
363
+ - Many-shot может давать дополнительный выигрыш, если примеры качественные и не перегружают контекст: [Agarwal et al., 2024](https://arxiv.org/abs/2404.11018).
364
+
365
+ #### Косвенно подтверждается:
366
+
367
+ - Golden example для coding-task особенно полезен там, где задача требует не просто факта, а правильного способа решения.
368
+ - Negative examples полезны как инженерная практика, хотя их база слабее, чем у standard ICL.
369
+
370
+ #### Не подтверждено / требует аккуратности:
371
+
372
+ - Что больше примеров всегда лучше.
373
+ - Что любой пример с подробным reasoning улучшает кодогенерацию.
374
+ - Что anti-examples универсально полезны для всех моделей и задач.
375
+
376
+ ### 6. Практическая ценность для программиста
377
+
378
+ - Для code review лучше один эталонный finding, чем пять общих советов.
379
+ - Для codegen лучше один репрезентативный patch, чем длинный role-play.
380
+ - Для тестов лучше образец test-case и expected assertion pattern.
381
+ - Примеры должны быть похожи на текущую задачу, а не просто красивыми.
382
+
383
+ ---
384
+
385
+ <Module_ID id="MOD_PROMPT_04_VERIFICATION_2026" />
386
+
387
+ ## Модуль 4. Verification Loops, self-feedback и coding tasks
388
+
389
+ ### Суть метода
390
+
391
+ В программировании часто важен не первый ответ, а способность модели проверить себя. Поэтому prompt имеет смысл строить не как `скажи ответ`, а как `пройди цикл`.
392
+
393
+ ### 1. Базовый verification loop
394
+
395
+ ```text
396
+ Шаг 1. Сформулируй краткий план.
397
+ Шаг 2. Сделай изменение.
398
+ Шаг 3. Сопоставь результат с acceptance criteria.
399
+ Шаг 4. Проверь риски регрессии.
400
+ Шаг 5. Если есть конфликт с критериями, исправь решение.
401
+ ```
402
+
403
+ ### 2. Для каких coding-task это особенно полезно
404
+
405
+ #### Генерация кода
406
+
407
+ - сначала интерфейс;
408
+ - потом реализация;
409
+ - потом тесты;
410
+ - потом проверка edge cases.
411
+
412
+ #### Code review
413
+
414
+ - сначала выделить возможные риски;
415
+ - потом отфильтровать ложноположительные;
416
+ - потом оставить только findings.
417
+
418
+ #### Bugfix
419
+
420
+ - сначала сформулировать гипотезу бага;
421
+ - потом предложить минимальный patch;
422
+ - потом проверить, что patch покрывает симптом и не ломает соседнее поведение.
423
+
424
+ ### 3. Научное подтверждение и Fact-Checking
425
+
426
+ #### Прямо подтверждается:
427
+
428
+ - Iterative self-feedback может улучшать результат без нового fine-tuning: [Self-Refine](https://arxiv.org/abs/2303.17651).
429
+ - Verbal reinforcement и reflective memory могут заметно усиливать агентное поведение, включая coding tasks: [Reflexion](https://arxiv.org/abs/2303.11366).
430
+ - Bootstrap reasoning traces полезны как inference-time scaffold: [STaR](https://arxiv.org/abs/2203.14465).
431
+
432
+ #### Косвенно подтверждается:
433
+
434
+ - Для программирования acceptance checks и tests — наиболее естественная форма внешнего feedback signal.
435
+ - Review pass после generation pass часто полезнее, чем одна более длинная генерация.
436
+
437
+ #### Не подтверждено / требует аккуратности:
438
+
439
+ - Что self-critique всегда улучшает результат.
440
+ - Что модель надежно оценивает собственный output без внешних checks.
441
+ - Что внутренний critique-pass эквивалентен настоящему unit test или compiler feedback.
442
+
443
+ ### 4. Практическая ценность для программиста
444
+
445
+ - Если есть компилятор, линтер или тесты, лучше использовать их как внешний feedback.
446
+ - Если внешней проверки нет, нужен хотя бы forced critique-pass.
447
+ - Review-loop особенно полезен для больших patch и risky refactoring.
448
+ - Самый сильный loop обычно: `plan -> patch -> test/check -> refine`.
449
+
450
+ ### 5. Опасности
451
+
452
+ - **Self-bias:** модель склонна любить собственный первый ответ.
453
+ - **Loop inflation:** слишком длинная самопроверка без новых сигналов превращается в шум.
454
+ - **Fake verification:** модель пишет, что все проверила, но фактического внешнего check не было.
455
+
456
+ ---
457
+
458
+ <Module_ID id="MOD_PROMPT_05_LAYOUT_2026" />
459
+
460
+ ## Модуль 5. Длинный контекст, навигация и layout
461
+
462
+ ### Суть метода
463
+
464
+ Формат важен, но он вторичен относительно структуры. Для программиста главный вопрос не `XML или Markdown?`, а `может ли модель быстро понять, где задача, где правила, где примеры и где контракт ответа`.
465
+
466
+ ### 1. Что действительно важно
467
+
468
+ - разделять task, context, axioms, examples и output contract;
469
+ - не смешивать код, правила и поясняющий текст в один поток;
470
+ - держать критичные ограничения близко к месту генерации;
471
+ - не перегружать prompt нерелевантным контекстом.
472
+
473
+ ### 2. Формат как вторичный выбор
474
+
475
+ #### Markdown
476
+
477
+ Хорош для большинства everyday engineering tasks, если структура простая.
478
+
479
+ #### XML
480
+
481
+ Полезен для длинных, вложенных и многодокументных prompts.
482
+
483
+ #### JSON
484
+
485
+ Хорош для machine-readable contracts, state data и schema-bound output.
486
+
487
+ #### YAML
488
+
489
+ Годится для компактных конфигов, но не стоит объявлять его запрещенным или непригодным как класс.
490
+
491
+ ### 3. Научное подтверждение и Fact-Checking
492
+
493
+ #### Прямо подтверждается:
494
+
495
+ - Формат prompt может заметно влиять на результат: [Tang et al., 2025](https://aclanthology.org/2025.findings-emnlp.3/).
496
+ - На длинном контексте модель использует информацию неравномерно, особенно из середины: [Lost in the Middle](https://arxiv.org/abs/2307.03172).
497
+ - Порядок и организация примеров тоже важны: [Lu et al., 2024](https://aclanthology.org/2024.findings-acl.884).
498
+
499
+ #### Косвенно подтверждается:
500
+
501
+ - XML и другие явно структурированные layouts полезны как навигационные якоря.
502
+ - Markdown часто достаточен, если prompt короткий и хорошо разделен.
503
+
504
+ #### Не подтверждено / требует аккуратности:
505
+
506
+ - Что существует один научно лучший формат prompt engineering.
507
+ - Что JSON или YAML плохи именно из-за доказанной проблемы positional encoding.
508
+ - Что формат важнее самой архитектуры задачи.
509
+
510
+ ---
511
+
512
+ ## Практический шаблон для программиста
513
+
514
+ ```text
515
+ [Short Priming]
516
+ Ты работаешь как инженерный агент по {стек/роль}.
517
+ Фокус: {корректность | тесты | review | минимальный patch}.
518
+
519
+ [Goal]
520
+ Нужно: {что сделать}.
521
+ Готово, если: {acceptance criteria}.
522
+
523
+ [Context]
524
+ Файлы: {paths}
525
+ Ограничения: {api, compatibility, environment}
526
+
527
+ [Belief State / Axioms]
528
+ - {инвариант 1}
529
+ - {инвариант 2}
530
+ - {инвариант 3}
531
+
532
+ [Reward Criteria]
533
+ Хорошо:
534
+ - {signal 1}
535
+ - {signal 2}
536
+ Плохо:
537
+ - {failure mode 1}
538
+ - {failure mode 2}
539
+
540
+ [Golden Example]
541
+ {1 сильный пример}
542
+
543
+ [Counter-Example]
544
+ {1 плохой пример, если нужен}
545
+
546
+ [Output Contract]
547
+ Верни: {patch | findings | plan | json}
548
+
549
+ [Verification Loop]
550
+ Сначала {plan/check}, потом {implementation}, потом {verification/refine}.
551
+ ```
552
+
553
+ ---
554
+
555
+ ## Практический вывод
556
+
557
+ Для programming-пrompting полезнее всего такой порядок приоритета:
558
+
559
+ 1. Сначала цель и acceptance criteria.
560
+ 2. Потом локальные инварианты проекта.
561
+ 3. Потом примеры качества.
562
+ 4. Потом контракт ответа.
563
+ 5. Потом verification loop.
564
+ 6. И только после этого выбор конкретного layout.
565
+
566
+ Главная ценность старого экспериментального протокола после fact-check сохранилась в ослабленном и более честном виде:
567
+
568
+ - да, модели полезно явно задавать аксиомы;
569
+ - да, модели полезно показывать критерии успеха;
570
+ - да, golden examples и self-feedback работают;
571
+ - да, это можно использовать в coding-prompts;
572
+ - нет, это не нужно объяснять через псевдофизику attention или прямую инъекцию reward function в веса модели.