Просмотр исходного кода

fix(review): lint prompt Markdown paragraphs

Tianyi Cui 2 месяцев назад
Родитель
Сommit
169f86966a

+ 2 - 4
examples/acp-agent/both-mode.cordis.snapshot.yml

@@ -20,11 +20,9 @@
           tools:
             mode: both
           persona: |
-            You are a coding assistant powered by the {{model}} model. Your working
-            directory is {{cwd}}.
+            You are a coding assistant powered by the {{model}} model. Your working directory is {{cwd}}.
 
-            Verify your work by running the code or tests. Keep answers brief and
-            factual.
+            Verify your work by running the code or tests. Keep answers brief and factual.
       - insert:
           - id: code-runtime
             name: '@deepseek-ai/dsh-code-runtime-worker'

+ 2 - 4
examples/acp-agent/both-mode.cordis.yml

@@ -19,11 +19,9 @@
           tools:
             mode: both
           persona: |
-            You are a coding assistant powered by the {{model}} model. Your working
-            directory is {{cwd}}.
+            You are a coding assistant powered by the {{model}} model. Your working directory is {{cwd}}.
 
-            Verify your work by running the code or tests. Keep answers brief and
-            factual.
+            Verify your work by running the code or tests. Keep answers brief and factual.
       - insert:
           - id: code-runtime
             name: '@deepseek-ai/dsh-code-runtime-worker'

+ 2 - 4
examples/acp-agent/code-mode.cordis.snapshot.yml

@@ -20,11 +20,9 @@
           tools:
             mode: code
           persona: |
-            You are a coding assistant powered by the {{model}} model. Your working
-            directory is {{cwd}}.
+            You are a coding assistant powered by the {{model}} model. Your working directory is {{cwd}}.
 
-            Verify your work by running the code or tests. Keep answers brief and
-            factual.
+            Verify your work by running the code or tests. Keep answers brief and factual.
       - insert:
           - id: code-runtime
             name: '@deepseek-ai/dsh-code-runtime-worker'

+ 2 - 4
examples/acp-agent/code-mode.cordis.yml

@@ -20,11 +20,9 @@
           tools:
             mode: code
           persona: |
-            You are a coding assistant powered by the {{model}} model. Your working
-            directory is {{cwd}}.
+            You are a coding assistant powered by the {{model}} model. Your working directory is {{cwd}}.
 
-            Verify your work by running the code or tests. Keep answers brief and
-            factual.
+            Verify your work by running the code or tests. Keep answers brief and factual.
       - insert:
           - id: code-runtime
             name: '@deepseek-ai/dsh-code-runtime-worker'

+ 2 - 4
examples/acp-agent/cordis.yml

@@ -44,11 +44,9 @@
     # loop resolves per session (every ACP session carries the client's cwd,
     # so the persona can state the workspace).
     persona: |
-      You are a coding assistant powered by the {{model}} model. Your working
-      directory is {{cwd}}.
+      You are a coding assistant powered by the {{model}} model. Your working directory is {{cwd}}.
 
-      Verify your work by running the code or tests. Keep answers brief and
-      factual.
+      Verify your work by running the code or tests. Keep answers brief and factual.
 
 # The subagent seam + both in-process backends + two model-facing tools, as leaf
 # entries after the app (which provides ctx.agents/ctx.tools). spawn (a fresh

+ 2 - 4
examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.golden.md

@@ -1,10 +1,8 @@
 You are an AI agent powered by the DeepSeek Harness SDK.
 
-You are a coding assistant powered by the deepseek-v4-flash model. Your working
-directory is {{cwd}}.
+You are a coding assistant powered by the deepseek-v4-flash model. Your working directory is {{cwd}}.
 
-Verify your work by running the code or tests. Keep answers brief and
-factual.
+Verify your work by running the code or tests. Keep answers brief and factual.
 
 
 Use the read tool — not shell commands like cat — to inspect text files. Results include line numbers. Use offset and limit to continue reading large files.

+ 2 - 4
examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.golden.md

@@ -1,10 +1,8 @@
 You are an AI agent powered by the DeepSeek Harness SDK.
 
-You are a coding assistant powered by the deepseek-v4-flash model. Your working
-directory is {{cwd}}.
+You are a coding assistant powered by the deepseek-v4-flash model. Your working directory is {{cwd}}.
 
-Verify your work by running the code or tests. Keep answers brief and
-factual.
+Verify your work by running the code or tests. Keep answers brief and factual.
 
 
 Use the read tool — not shell commands like cat — to inspect text files. Results include line numbers. Use offset and limit to continue reading large files.

+ 2 - 4
examples/acp-agent/tests/snapshots/text-turn/system-prompt.golden.md

@@ -1,10 +1,8 @@
 You are an AI agent powered by the DeepSeek Harness SDK.
 
-You are a coding assistant powered by the deepseek-v4-flash model. Your working
-directory is {{cwd}}.
+You are a coding assistant powered by the deepseek-v4-flash model. Your working directory is {{cwd}}.
 
-Verify your work by running the code or tests. Keep answers brief and
-factual.
+Verify your work by running the code or tests. Keep answers brief and factual.
 
 
 Use the read tool — not shell commands like cat — to inspect text files. Results include line numbers. Use offset and limit to continue reading large files.

+ 17 - 5
scripts/verify-md-wrap.ts

@@ -18,9 +18,11 @@
  * A wrapped paragraph inside a list item or blockquote is still a `paragraph`
  * node, so those are caught too. Scope mirrors doc-typecheck plus the two
  * AGENTS.md files that doc-sync does NOT otherwise cover (the convention itself
- * lives there): README.md, docs/** /*.md, packages/* /*.md, AGENTS.md,
- * packages/AGENTS.md. The root and packages/ CLAUDE.md are symlinks to the
- * AGENTS.md files, so they are deduped by real path.
+ * lives there), plus generated system-prompt Markdown goldens: README.md,
+ * docs/** /*.md, packages/* /*.md, examples/** /system-prompt.golden.md,
+ * packages/** /system-prompt.golden.md, AGENTS.md, packages/AGENTS.md. The root
+ * and packages/ CLAUDE.md are symlinks to the AGENTS.md files, so they are
+ * deduped by real path.
  *
  * Run: `tsx scripts/verify-md-wrap.ts`.
  */
@@ -34,8 +36,18 @@ import type { Nodes } from 'mdast'
 
 const root = resolve(import.meta.dirname, '..')
 
-/** Files to check: doc-typecheck's scope plus the AGENTS.md pair. */
-const PATTERNS = ['README.md', 'README.zh.md', 'docs/**/*.md', 'packages/*/*.md', 'packages/*/*/*.md', 'AGENTS.md', 'packages/AGENTS.md']
+/** Files to check: doc-typecheck's scope, prompt goldens, and the AGENTS.md pair. */
+const PATTERNS = [
+  'README.md',
+  'README.zh.md',
+  'docs/**/*.md',
+  'packages/*/*.md',
+  'packages/*/*/*.md',
+  'examples/**/system-prompt.golden.md',
+  'packages/**/system-prompt.golden.md',
+  'AGENTS.md',
+  'packages/AGENTS.md',
+]
 
 /** A located hard-wrap: a prose paragraph spanning more than one source line. */
 interface Violation {