Commit Graph
105 Commits
Author SHA1 Message Date
ci[bot] 8a80757131 📦 deps(skills): sync thirdparty skills 2026-08-27 05:00:47 +08:00
ci[bot] 8f59f527e6 📦 deps(skills): sync thirdparty skills 2026-08-25 13:52:31 +08:00
csh 9c8d77e1c4 📝 docs(tsl-api): resolve backtesting return contract 2026-08-25 13:16:45 +08:00
ci[bot] 35e4ce316f 📦 deps(skills): sync thirdparty skills 2026-08-24 09:30:06 +08:00
csh ecedf69b9c 🎨 style(tsl-api): format financial API tables 2026-08-22 20:59:03 +08:00
csh b101b13bba feat(tsl-api): add parameter value domain lookup 2026-08-22 14:15:54 +08:00
csh 476f999139 📝 docs(tsl-api): add missing financial API codegen entries 2026-08-21 16:09:08 +08:00
csh 5484fc7519 ♻️ refactor(tsl-api): tighten docs and retire stale tests 2026-08-21 10:11:48 +08:00
cshandClaude Fable 5 2e8c46e152 📝 docs(tsl-syntax-reference): document verified facts from FAQ corpus
从 FAQ 语料(2018 篇镜像)与参考页做完 169 条逐条差集,补入 6 组此前未收录的语言
事实。每条先用 TSL.exe 实跑观察行为,再收敛成 39 条断言的回归门,在 TSLGen2、
AnalyseNG.NET、TSL 三个解释器上均通过后才写入。

- 16 页:0/0 得 nan、2/0 得 inf;nan 的 = > < >= <= 恒假而 <> 为真;nan 沿算术
  传播;nil 在乘除减里按 0 参与
- 04 页:整体赋值免声明,但对未建立的变量写单元格赋值会报「变量类型不是Array」
- 07 页:相邻两个 if 是两条独立语句都会执行;for..in 单控制变量拿到的是键不是值;
  二维数组按行推进,行本身是数组(新增 syntax-07-013)
- 21 页:子矩阵赋值语句求值为 0;t[:,:] 按位置复制不按列名对齐(新增
  syntax-21-019);| 列并时同名字符串列键由右操作数覆盖(新增 syntax-21-018)
- 13 页:select 输出列表同名列后者覆盖前者,须用 as 改名(新增 syntax-13-032)

三条 FAQ 说法实跑不复现,故未写入:12574 的括号消歧、19857 的 -2147483648
字面量限制、31474 的 :. bugfix 记录。15305/11045 的用户/公用/共享函数同名解析
优先级需要服务端多账号环境,本地无法验证,仍为已知缺口。

lexicon.json 为 16 页补两个页级 alias,使 nan/nil 语义能被自然语言查询命中。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-20 20:58:10 +08:00
csh cd0405d64b ♻️ refactor(tsl-api-reference): split lookup workflows and maintenance tooling 2026-08-20 17:47:48 +08:00
csh 9b95bf2682 ♻️ refactor(cook-it-through): move workflow engine into skill 2026-08-20 17:02:34 +08:00
csh f6854d065a 🔧 chore(integration): merge CI maintenance updates 2026-08-20 16:13:17 +08:00
csh 59e40a85a2 🐛 fix(tsl-syntax-reference): keep skill self-contained 2026-08-20 16:03:00 +08:00
csh 77ab8211b1 🐛 fix(gitea-fix-ci): trace workflow_run CI chains 2026-08-20 15:56:40 +08:00
csh 5a8d95ebcf 🐛 fix(tsl-syntax-reference): route derived rules and bound section size 2026-08-20 15:49:41 +08:00
cshandClaude Fable 5 7408c532f0 🐛 fix(commit-message): enforce one rule owner across skill and CI
CI ran .gitea/ci/commit_message_lint.py, an independent reimplementation
that parsed the type/emoji mapping out of docs/common/commit_message.md.
Its scope pattern accepted fix(-a), fix(a-), fix(a--b) and fix(_), and it
had no subject length check, so the gate that actually blocks merges
enforced weaker rules than the Validation this skill reports.

The CI entry is now a wrapper that locates the skill validator and
delegates to it with no arguments; commit_policy.json becomes the only
rule source and explanatory docs stop being a machine policy input.

The validator also learns the workflow_run event, whose payload carries
neither a PR title nor a before/after range. An upstream pull_request now
validates <integration-branch>..head_sha instead of HEAD alone, taking
the branch name from COMMIT_LINT_MAIN_BRANCH, and degrades to the
upstream head commit with a WARN rather than guessing a base.

Alongside: --help now documents the no-argument CI mode it had always
supported silently, CI wiring detail moves to references/ci-wiring.md,
and the description gains negative boundaries.

test/test_commit_message_policy.py asserts policy/spec-table equality and
uses ast to assert the CI entry imports no regex and reads no file, so a
second implementation cannot reappear unnoticed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-20 15:21:37 +08:00
csh 651c1f68d2 feat(tsl-api-reference): add class and framework API lookup 2026-08-20 13:49:55 +08:00
ci[bot] 7233646398 📦 deps(skills): sync thirdparty skills 2026-08-14 17:16:06 +08:00
csh 5d73964db8 🐛 fix(tsl-syntax-reference): prefer ordinary quotes for plain text 2026-08-14 17:12:56 +08:00
csh 3d3036ebe1 feat(tsl-api-reference): expand API and module coverage 2026-08-14 17:12:55 +08:00
ci[bot] 9487dbddf1 📦 deps(skills): sync thirdparty skills 2026-08-13 17:38:27 +08:00
csh 8315f1060a 🐛 fix(tsl-syntax-reference): close verified syntax gaps 2026-08-13 14:49:43 +08:00
csh ede9287d5f 🐛 fix(gitea-fix-ci): distinguish symptoms from root causes 2026-08-13 12:05:03 +08:00
csh 61ea467a37 ♻️ refactor(gitea-fix-ci): centralize evidence fallback routing 2026-08-13 12:05:02 +08:00
csh 64458cd7a0 🐛 fix(gitea-fix-ci): require approval for recovery actions 2026-08-13 12:05:01 +08:00
csh 0a42350e22 ♻️ refactor(commit-message): separate CI input validation 2026-08-13 12:05:01 +08:00
csh 7ca6a69130 🐛 fix(commit-message): reject unsafe drafting shortcuts 2026-08-13 12:04:58 +08:00
csh bcbc53b7ce 🐛 fix(commit-message): separate commit and staging authorization 2026-08-13 12:04:58 +08:00
csh 3f0beae26b test(skills): add Darwin optimization prompts 2026-08-13 12:04:57 +08:00
csh 823b8c5560 🐛 fix(tsl-syntax-reference): cite prose syntax conclusions 2026-08-13 10:05:58 +08:00
csh d21ddb09a1 🐛 fix(tsl-syntax-reference): enforce fact-gap stop checkpoint 2026-08-13 10:05:58 +08:00
csh 6486632034 📝 docs(tsl-syntax-reference): document anonymous function scope 2026-08-13 10:05:57 +08:00
ci[bot] 073dac13a3 📦 deps(skills): sync thirdparty skills 2026-08-12 12:41:45 +08:00
csh a0131f52c6 🐛 fix(thirdparty): align human skill registry 2026-08-12 12:40:48 +08:00
csh 1d9590f6a1 🐛 fix(ci): validate thirdparty skills without local sync 2026-08-12 11:39:33 +08:00
csh 7bd965de89 feat(tsl-api-reference): update API catalog and data dictionary 2026-08-11 18:10:24 +08:00
csh 34a3a5dec1 ♻️ refactor(agent): streamline skills and rulesets 2026-08-11 14:56:21 +08:00
csh 9010829c6d feat(tsl-api-reference): expand and reorganize api catalog
Flatten builtin pages, add third-party and platform scopes, and import financial and data warehouse references.

Keep the existing generated index without rebuilding after signature normalization.
2026-08-10 18:26:24 +08:00
csh 2938300acb 📝 docs(tsl-syntax-reference): document external and remote calls 2026-08-10 18:22:35 +08:00
csh 699b431cac feat(workflow): adopt Matt Pocock ticket workflow
Replace the Superpowers plan pipeline with grill-with-docs, specs, local tickets, and ticket-native execution.

BREAKING CHANGE: Remove the legacy Plan CLI, prompt templates, and Superpowers skills.
2026-08-10 16:55:46 +08:00
csh 29d110110b feat(tsl-api-reference): improve tagged API discovery 2026-07-31 12:37:59 +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
ci[bot] d8b83e30ba 📦 deps(skills): sync thirdparty skills 2026-07-29 07:59:27 +00:00
csh 13be5ea0aa feat(tsl-api-reference): index class and unit APIs
Migrate reference pages to declaration-line storage and rebuild the
13-column index.

Add qualified member lookup plus regression and end-to-end coverage.
2026-07-29 15:47:46 +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