mirror of
https://github.com/NomaDamas/k-skill.git
synced 2026-06-24 02:04:11 +00:00
Keep published Korean count examples aligned with the shipped helper
The korean-character-count feature guide drifted from the verified NEIS helper output, so this follow-up adds a docs regression that executes the live command and corrects the stale byte example in the feature doc. Constraint: The skill promises deterministic exact counts in both docs and CLI output Rejected: Hardcode a separate doc-only expected value in tests | would still allow the published example to drift from the helper Confidence: high Scope-risk: narrow Reversibility: clean Directive: When docs publish exact count values, keep them pinned to live helper output rather than a copied constant Tested: node --test scripts/skill-docs.test.js scripts/test_korean_character_count.js Tested: node scripts/korean_character_count.js --text '가나다' --format json Tested: node scripts/korean_character_count.js --file <tmpfile> --profile neis --format text Tested: printf '한\r\n나' | node scripts/korean_character_count.js --stdin --format json Tested: npm test Tested: npm run ci Not-tested: none
This commit is contained in:
parent
488a9f129e
commit
1180f41b82
2 changed files with 24 additions and 1 deletions
|
|
@ -82,7 +82,7 @@ node scripts/korean_character_count.js --text $'첫 줄\n둘째 줄🙂' --profi
|
|||
profile: neis
|
||||
characters: 9
|
||||
lines: 2
|
||||
bytes: 24
|
||||
bytes: 23
|
||||
```
|
||||
|
||||
### 파일 입력
|
||||
|
|
|
|||
|
|
@ -1789,6 +1789,29 @@ test("repository docs advertise the korean-character-count skill and determinist
|
|||
assert.equal(fs.existsSync(path.join(repoRoot, "packages", "korean-character-count")), false);
|
||||
});
|
||||
|
||||
test("korean-character-count feature doc NEIS example matches live helper output", () => {
|
||||
const featureDoc = read(path.join("docs", "features", "korean-character-count.md"));
|
||||
const helperOutput = childProcess.execFileSync(
|
||||
"node",
|
||||
[
|
||||
"scripts/korean_character_count.js",
|
||||
"--text",
|
||||
"첫 줄\n둘째 줄🙂",
|
||||
"--profile",
|
||||
"neis",
|
||||
"--format",
|
||||
"text",
|
||||
],
|
||||
{ cwd: repoRoot, encoding: "utf8" },
|
||||
);
|
||||
const bytesMatch = helperOutput.match(/^bytes:\s+(\d+)$/m);
|
||||
|
||||
assert.ok(bytesMatch, `expected helper text output to include a bytes line, got: ${helperOutput}`);
|
||||
assert.equal(bytesMatch[1], "23");
|
||||
assert.match(featureDoc, new RegExp(String.raw`bytes:\s+${bytesMatch[1]}`));
|
||||
assert.match(featureDoc, /bytes=23/);
|
||||
});
|
||||
|
||||
test("korean-character-count install payload includes the documented helper command", () => {
|
||||
const tempRoot = fs.mkdtempSync(path.join(os.tmpdir(), "korean-character-count-"));
|
||||
const installedSkillPath = path.join(tempRoot, "korean-character-count");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue