Commit Graph
286 Commits
Author SHA1 Message Date
csh c69278283f feat(tsl-codegen): add decoupled documentation toolkit
Generate TSL API Markdown from YAML or JSON into a configurable project scope.\nAdd file and directory lint modes, tags-aware indexing, and keyword search across tags and descriptions.\nBundle the toolkit through the playbook build and sync workflows.
2026-07-20 09:08:38 +08:00
csh 1d5304e7b6 🔧 chore(cpp): align conventions and formatter config 2026-07-20 09:08:37 +08:00
csh 502e1321c1 🐛 fix(style-cleanup): preserve scope and git state 2026-07-20 09:08:37 +08:00
csh 034b562e70 🐛 fix(commit-message): resolve policy and staged boundaries 2026-07-20 09:08:37 +08:00
csh fd63164328 🔧 chore(ci): inline skill sync and standardize git identity 2026-07-20 09:08:36 +08:00
csh ff07c79818 ♻️ refactor(test): consolidate repository checks 2026-07-20 09:08:36 +08:00
ci[bot] 10ce779b1b 📦 deps(skills): sync thirdparty skills 2026-07-18 00:03:08 +00:00
ci[bot] c9f2cfa29d 📦 deps(skills): sync thirdparty skills 2026-07-13 16:04:15 +00:00
cshandClaude Fable 5 bb8bc6dff9 ♻️ refactor(tsl): decouple skill routing from static docs
删除静态文档中对 tsl-syntax-reference / tsl-api-reference 的导航路由,
改由运行时按需自动触发;语法/API 事实的所有权与 fail-closed 约束
只保留在 rulesets/tsl/index.md 这一唯一权威载体。

- docs/tsl/index.md:删 4 行 skill 路由及重复的所有权/fail-closed 段,回归纯分流
- docs/tsl/modules/index.md:删 API 路由及指向已删 syntax 的 3 处回跳
- docs/index.md:删 skill 导航行及 2 条指向不存在文件的死 catalog 链
- docs/tsl/syntax/index.md:删除旧路径兼容 stub,不再保留任何兼容
- rulesets/tsl/index.md:删首跳 2 条 skill 导航,保留事实边界与 Fail closed
- 同步修正相关测试断言

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 15:26:25 +08:00
cshandClaude Fable 5 3efd9abc11 🐛 fix(test): pin REPO_DIR in sync integration test env
run_sync copied os.environ but never set REPO_DIR. In CI, test.yml
exports REPO_DIR (the real checkout) via GITHUB_ENV, so the inherited
value made the sync operate on the real CI checkout instead of the temp
fixture, deleting dirs later tests need. Pin REPO_DIR to the passed repo
and add a regression test proving an inherited REPO_DIR does not leak.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 11:23:06 +08:00
cshandClaude Fable 5 265c891e19 🐛 fix(ci): allow kebab-case commit scopes
The scope regex only accepted [a-z0-9_], rejecting hyphenated scopes
like tsl-syntax that dominate the history (12x vs 4x underscore form).
Align both linter copies and the spec doc to accept lower-kebab-case.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 11:22:50 +08:00
csh df8c402afb 🔧 chore(ci): scope tsl playbook sync paths 2026-07-13 10:29:23 +08:00
csh a32dd5dd3c 📝 docs(ci): plan scoped tsl playbook sync 2026-07-13 10:12:36 +08:00
csh 9fc823d893 📝 docs(ci): design scoped tsl playbook sync 2026-07-13 09:56:25 +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
csh 0ace66571f 📝 docs(tsl-syntax): plan lookup logic hardening 2026-07-13 09:16:58 +08:00
csh da72d3f28c 📝 docs(tsl-syntax): design lookup logic hardening 2026-07-13 09:16:57 +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 9b9e0dfcb7 test(tsl_syntax): enforce lookup packaging contracts 2026-07-13 09:16:54 +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
csh 1a9a1aeee9 📝 docs(tsl): retarget legacy auth links to local anchors 2026-07-13 09:16:50 +08:00
ci[bot] d8b77dc46a 📦 deps(skills): sync thirdparty skills 2026-07-10 16:04:27 +00:00
cshandClaude Opus 4.8 94d968d68d 🔒 security(ci): keep sync token out of remote url via GIT_ASKPASS
- inline .gitea/ci/sync_tsl_playbook.sh into sync-tsl-playbook.yml
- clone over plain repo url; credentials flow through an ephemeral
  GIT_ASKPASS helper removed in cleanup
- rewrite tests to extract and exercise the workflow run block

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 13:11:58 +08:00
csh d0a41380d0 🗑️ remove(tsl): drop duplicate codegen docs 2026-07-08 11:21:28 +08:00
csh 38ccc67238 🐛 fix(tsl): preserve manual files during playbook sync
Limit tsl-playbook publishing to generated bundle paths so existing branch-local files are not removed.

Add tests for preserving non-generated files and for creating a clean orphan target branch.
2026-07-07 17:10:24 +08:00
csh c0bf0358e0 📝 docs(tsl): sync api skill with corrected codegen
Mirror docs/tsl/codegen into the bundled tsl-api-reference skill and rebuild the function index.

Remove invalid duplicate API entries for cb_delistedbydate, createhttpsession, exportJsonString, and Anova_Bartlett so exact lookup returns the canonical entries.
2026-07-07 16:47:03 +08:00
csh bbf6977f57 📝 docs(tsl): complete and lint codegen reference 2026-07-07 16:46:51 +08:00
csh 16e0992dd2 📝 docs(gitea): clarify failing job log lookup 2026-07-07 16:46:42 +08:00
csh 6f94cd3ee4 🔧 chore(tsl): add playbook sync workflow 2026-07-07 16:46:40 +08:00
csh e1f7ce052c feat(skills): add tsl api reference skill
Bundle the TSL API index and markdown references under the skill, route TSL docs to use it, and update the codegen index generator to maintain the bundled data.
2026-07-07 16:36:15 +08:00
csh 4cd6b9410f 📝 docs(agent): require first-principles brainstorming 2026-07-07 16:36:10 +08:00
csh 6b05d97c00 📝 docs(agent): standardize intelligent agent wording 2026-07-07 16:36:10 +08:00
csh e6bde2cf0e 🔧 chore(git): ignore Python cache artifacts 2026-07-07 16:36:09 +08:00
csh b6160676b4 ♻️ refactor(tsl): rebuild codegen taxonomy
Move generated builtin and dotnet function docs into the upgraded taxonomy, remove legacy route pages, and regenerate function_index.tsv from markdown headings.
2026-07-07 16:36:08 +08:00
csh 54c1c11e77 🗑️ remove(tsl): drop special codegen placeholders 2026-07-07 16:35:59 +08:00
csh 14acc39179 🗑️ remove(tsl): delete legacy reference docs 2026-07-07 16:35:58 +08:00
csh 7046f0b60e 📝 docs(tsl): add generated codegen reference 2026-07-07 16:34:27 +08:00
cshandClaude Fable 5 014c23d386 🎨 style(syntax): normalize naming conventions
Align all TSL syntax documentation examples with docs/tsl/naming.md:

- Classes/types: PascalCase, drop Hungarian prefix (THuman→Human)
- Parameters/locals: snake_case with meaningful names (isLeft→is_left, maxb→max_b)
- Private members: snake_case_ with trailing underscore (real_part_, imaginary_part_)
- Public members: PascalCase (value→Value)
- Top-level functions: PascalCase (test→Test)
- Module constants: kPascalCase (kernel_dll→kKernelDll)

Affected: 01-24 syntax docs (23 files)
Verified: 150+ code blocks locally tested, output unchanged
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 16:34:19 +08:00
ci[bot] 23c35fdfda 📦 deps(skills): sync thirdparty skills 2026-07-06 16:03:03 +00:00