Commit Graph
23 Commits
Author SHA1 Message Date
csh 2938300acb 📝 docs(tsl-syntax-reference): document external and remote calls 2026-08-10 18:22:35 +08:00
csh 736d1a8ad7 feat(tsl-syntax-reference): harden retrieval contracts
Add stable section IDs, structural and routing regressions, quickstart consistency checks, and CI enforcement.

BREAKING CHANGE: replace heading-derived Section IDs with explicit syntax-NN-NNN identifiers.
2026-07-31 10:05:15 +08:00
cshandClaude Opus 5 21e688a436 🎨 style(tsl-syntax-reference): run prettier on unguarded tables
- SKILL.md and 02 were the only files prettier still reported in this
  skill; their tables carry no prettier-ignore guard like the wide ones on
  06 and 15, so `prettier -w` pads the cells
- formatting only, no wording change

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-30 21:33:42 +08:00
cshandClaude Opus 5 948a3ed85b 🐛 fix(tsl-syntax-reference): repair routing for colloquial queries
- split 03's overloaded 字符串边界规则: substring read/replace/delete/insert
  now sit in 字符串子串读写 with their own tags, so `截取子串` / `子串` /
  `字符串区间` stop returning only weak candidates, which SKILL.md tells the
  agent to treat as a fact gap even though the fact is on the page
- tag the remaining 03 section for wide strings, encoding conversion and
  binary buffers; those queries used to land on the neighbouring concat
  section, or on 23's binary-function overload
- add 异常处理 to 07's try-except and rename 21's H3 to 无效输入替换参数: the
  matrix ErrDefine section owned that phrase and outranked try-except by
  92 to a weak 11, while its own text says NAN is not an error position
- tag 03's like section for 正则表达式 and 08 for 调用父类方法 / 定义类; all
  three reached the wrong section on the right page, and 定义类 could not
  reach 最小类与声明位置 at all because the per-page cap was already full
- drop the redundant 可直接照写示例 under 03's 禁止项 and state the closed
  interval rule as a bullet instead; a positive example does not belong in
  the prohibition list

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-30 21:33:29 +08:00
cshandClaude Opus 5 68a3b852b0 🐛 fix(tsl-syntax-reference): check fence language per block identity
- `--check` now requires `反例 / 不可照写` in a text fence and
  `可直接照写示例` in a tsl fence; the AGENTS.md flow that extracts every
  ```tsl block and runs it would otherwise execute a counterexample as if
  it were a valid example, and an example hidden in a text fence would
  never be extracted for verification
- 10 held the only counterexample in a tsl fence (a local function call
  with a trailing `with array(...)`); the rule and that fix cannot land in
  separate commits or --check fails in between
- 配置片段 / 概念骨架 and 仅服务端可执行示例 stay unconstrained, since both
  languages are in use for them today

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-30 21:33:14 +08:00
cshandClaude Opus 5 bcad28d22c 🐛 fix(tsl-syntax-reference): correct wrong facts on pages 15 and 16
- 16's numeric literal example prints nine values but its output fragment
  listed three lines; replace it with what the interpreter actually
  prints, so the fragment stops contradicting the prose in the same block
- 15's keyword table listed `inherited` as reserved-but-unused, which
  contradicts the `Inherited;` / `Inherited MethodName(...)` examples on
  08; both run on windows-tsl and AnalyseNG.NET, so the keyword moves to
  the class row and points at 08

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-30 21:33:03 +08:00
csh bd25835d2d 🗑️ remove(test): drop skill regression suites
- delete the gitea-fix-ci credential suite (13 cases covering secret
  redaction, cross-origin redirect refusal and header injection); the
  script keeps those behaviours but nothing guards them now
- stop pointing at the tsl-syntax lookup recall suite from data/README.md:
  that suite was never committed and is now deleted, leaving --check as the
  only guard for lexicon/page correspondence
2026-07-29 15:45:49 +08:00
csh c6895fe41a 🐛 fix(tsl-syntax-reference): require exact long options in lookup cli
- drop the -h short option and disable long-option abbreviation: `--che`
  used to run `--check` and exit 0, so a misspelled argument silently
  performed a different action instead of failing
- document the lexicon/page alias validation under --check, now the only
  guard against a renamed page silently losing its natural language entry
- state that --query takes terms rather than the user's own words, and
  describe the weak-hit marker and its rc=2 in both --query help and epilog
2026-07-29 15:45:49 +08:00
csh 40a9885eb4 feat(tsl-syntax-reference): harden retrieval and restructure pages
- flag weak candidates (no intent/heading/identifier/tag hit) and exit 2
  when every candidate is weak: mis-hits used to be indistinguishable
  from real hits, so the retry-with-better-terms loop never fired
- accept multiple ids per --section for batch fetch, failing atomically
  on any unknown id so a partial fetch cannot pass as complete
- move query synonyms and page intent aliases to data/lexicon.json and
  enforce alias/page correspondence in --check; curation data no longer
  lives in the engine
- document the weak-hit rule, batch fetch and prelude-once guidance in
  SKILL.md, with curation discipline in data/README.md
- drop 11_pitfalls.md, renumber the trailing pages and spread retrieval
  tags across topics; lexicon keys are page filenames, so the renumbering
  and the new --check rule cannot land in separate commits
2026-07-29 15:45:47 +08:00
csh e7110bd3b1 🗑️ remove(tsl_syntax): drop platform-specific agent metadata 2026-07-13 09:17:01 +08:00
csh d663c2dae5 🐛 fix(tsl-syntax): close lookup review gaps 2026-07-13 09:17:00 +08:00
csh 455661c936 📝 docs(tsl-syntax): enforce two-stage fact ownership workflow 2026-07-13 09:17:00 +08:00
csh 4076682895 feat(tsl-syntax): improve natural language topic routing 2026-07-13 09:16:59 +08:00
csh 4a84dbae3a 🐛 fix(tsl-syntax): index precise sections and enforce map integrity 2026-07-13 09:16:59 +08:00
csh 6728ed070e ♻️ refactor(tsl-syntax): make query output compact and safe 2026-07-13 09:16:58 +08:00
cshandClaude Fable 5 59fe4eb83d feat(tsl_syntax): add concept map to lookup
新增 --map 模式,扫描 24 页「本篇职责」段实时生成 TSL 概念地图,
帮助从零写代码时把自然语言需求映射到该查的 TSL 概念(property、
unit、operator 重载等),随后仍用 --query 取精确语法。地图从
references 实时生成,零漂移;--check 增加护栏,职责段被清空即报错。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 09:16:57 +08:00
cshandClaude Fable 5 b597edfc70 🐛 fix(tsl_syntax): repair lookup engine and reconcile reference facts
lookup.py: exempt code-anchored ASCII identifiers from the mixed
zh/en gate so exact hits are no longer dropped; dedup parent/child
sections in results; validate write-prelude anchors in --check.

references: correct interpreter-verified facts (case-as-expression,
control-flow semicolons, __line__/__stack_frame, tslObjects order,
destroy timing, ErrDefine, truncated outputs), fix headings, scope
qualifiers and reversed quotes; strip dead preamble metadata from all
24 pages.

packaging: exclude __pycache__/*.pyc from playbook and bundle copies;
update build test file-count assertion to match.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 09:16:57 +08:00
csh 923bce91b0 🐛 fix(tsl-syntax): tighten lookup contracts 2026-07-13 09:16:55 +08:00
csh 617275e92d 🐛 fix(tsl-syntax): remove body routing instructions 2026-07-13 09:16:53 +08:00
csh b4d2fc8246 ♻️ refactor(tsl-syntax): make reference lookup-only 2026-07-13 09:16:53 +08:00
csh 4558d32043 🐛 fix(tsl-syntax): gate lookup mode boosts 2026-07-13 09:16:52 +08:00
csh 5e31a7ccf6 feat(tsl-syntax): add section lookup core 2026-07-13 09:16:52 +08:00
csh ce1b92bbde feat(skills): add tsl syntax reference skill 2026-07-13 09:16:51 +08:00