57 Commits
Author SHA1 Message Date
xbsheng 11c6ce5ff5 fix(web): restore pointer cursor on buttons (#595)
Tailwind v4 dropped the v3 preflight rule that set `cursor: pointer` on
`button, [role="button"]`, so every <button> in the web app fell back to
the UA default. <a> elements (nav links, GitHub icon) were unaffected, which
is why only the locale switcher and dark-mode toggle looked broken in the header.

Restore the rule once in globals.css instead of adding `cursor-pointer` to
each of the 18 buttons. `:not(:disabled)` keeps disabled playback controls
on the default cursor.

Closes #594
2026-10-27 12:41:32 +08:00
jyx b057622db2 fix: add hysteresis to message-count compaction (#582)
* fix: add hysteresis to message-count compaction

* ci: retrigger checks after approval timeout
2026-10-27 12:40:33 +08:00
chx7776-afk e1a35baa8b fix(web): replace fs.cpSync to avoid Windows crash in extract step (#574)
`fs.cpSync` in `copyChapterAssets` terminates the Node process on Windows
with Node 22. Running `npm run extract` (the `predev` hook of `npm run dev`)
prints "Source: root chapter folders (17)" and then exits with
STATUS_STACK_BUFFER_OVERRUN (exit code 0xC0000409) without any JS-level
error, so the course data is never written and the dev server never starts.

Replace it with a small recursive copy helper built on `fs.readdirSync` +
`fs.copyFileSync`, which is what `fs.cpSync` does internally minus the
native path that crashes here.

Verified on Windows 11 / Node v22.20.0:
- before: exit 0xC0000409, extraction aborted, no course-assets output
- after:  exit 0, "17 versions / 16 diffs / 51 docs", 74 asset files written
2026-10-27 12:40:19 +08:00
kunshanyep-beep 4e3f7273d3 docs(s02): explain why specialized tools matter (#562)
Clarify that specialized tools structure the model-harness interface for safer arguments, precise permissions, and shared logging. Keep the English, Chinese, and Japanese lessons in sync and regenerate the web content.\n\nRefs #549
2026-10-27 12:39:25 +08:00
Anupam Mediratta 85ee4f15be fix: CVE-2026-67213 security vulnerability (#552)
Automated dependency upgrade by OrbisAI Security
2026-10-27 12:38:42 +08:00
Haoran 08263f49b3 refactor: simplify destructive command matching 2026-08-27 00:33:25 +08:00
Haoran 1293797585 fix: harden destructive command matching 2026-08-26 15:07:59 +08:00
mameikagou 44e33d0ec3 fix(s03): match Windows del as a command word 2026-08-26 02:48:13 +08:00
Haoran cce031e632 fix: harden subprocess output decoding across lessons 2026-08-26 01:05:16 +08:00
Yang Haoran 251b39b910 Merge pull request #451 from cloud-of-equality/fix/message-growth-animation
fix(web): stabilize Message Growth animation and fit chips on one line
2026-08-25 22:55:57 +08:00
Haoran ce952ff1f3 fix(web): keep message chips on one desktop row 2026-08-25 22:50:56 +08:00
Haoran 922265145b fix: complete readline prompt coverage 2026-08-25 21:56:24 +08:00
Haoran b99447946d Merge remote-tracking branch 'shareai/main' into fix/pr-536-readline-prompt-wrap
# Conflicts:
#	web/src/data/generated/versions.json
2026-08-25 21:38:38 +08:00
Haoran 199402f9d4 fix: use UTF-8 for text file operations 2026-08-24 20:28:37 +08:00
Haoran 6d70d2e071 fix: preserve tool results during context compaction 2026-08-23 11:50:52 +08:00
Jared 1342a990a2 fix(s08): support recursive glob and conditional micro compact 2026-08-20 16:39:45 +08:00
Unilinear fe32cd7ecf fix: preserve wrapped input display in colored prompts 2026-08-20 14:44:01 +08:00
Haoran 711249e297 fix: build task dependencies in two phases 2026-08-19 01:35:08 +08:00
Yang Haoran 10768e1b74 Merge pull request #308 from Bill-Billion/fix/s09-memory-preview-overflow
fix: prevent s09 memory preview overflow
2026-08-17 14:27:57 +08:00
Haoran b6b5f331ab fix: preserve only unseen tool results 2026-08-16 17:32:53 +08:00
Haoran 9a466040b3 Merge main into fix/micro-compact-latest-batch 2026-08-16 17:25:14 +08:00
Haoran 078eca78ac fix(s15): harden background task lifecycle 2026-08-16 00:26:25 +08:00
123456wda c77cd7e813 fix: normalize generated content newlines 2026-08-15 21:15:27 +08:00
Haoran 168fff86dd Fix empty tool-use response handling 2026-08-15 00:03:45 +08:00
Haoran acdeacc47a Fix skill frontmatter parsing 2026-08-14 23:14:19 +08:00
Haoran 7e2f2fd99b refactor: streamline the course to 17 lessons 2026-08-12 03:02:42 +08:00
Haoran ab35e59672 Refine course progression and runtime safety 2026-08-11 15:13:13 +08:00
Haoran b36dbcd84f Consolidate agent harness course into 19 lessons 2026-08-04 02:25:40 +08:00
Haoran 2ad77cee19 feat: refresh goal loop lesson 2026-07-31 21:44:10 +08:00
Haoran 2affb3f345 docs: simplify Chinese course prose 2026-07-31 03:54:12 +08:00
Haoran 4a14529774 docs: rename s19 to integrated harness 2026-07-31 03:35:17 +08:00
Haoran 2d69019342 feat: consolidate course into 21 lessons 2026-07-31 03:15:58 +08:00
Haoran 4bc33ec858 docs: make workflow and goal lessons harness-first 2026-07-30 20:05:33 +08:00
Haoran cb8fae1bdd feat: refresh course through workflow and goal loops 2026-07-30 19:14:04 +08:00
Zhiyuan 09a04e8b9b fix(web): stabilize Message Growth animation and fit chips on one line
The "Message Growth" visualization (message-flow.tsx) had three issues:

1. Flicker at len=0/1. The setInterval kept firing while the array was
   full, queuing multiple setCount(0) resets that snapped the counter
   back mid-regrowth; and index-keyed chips inside AnimatePresence
   collided with still-exiting nodes on reset, leaving stuck invisible
   chips (len=1 rendered 8 chips at opacity 0). Replaced with a single
   self-scheduling setTimeout chain and removed AnimatePresence/exit so
   chips unmount cleanly on reset.

2. Horizontal scrollbar at len=8. Switched overflow-x-auto to flex-wrap
   and tightened chip padding/gap (px-2.5->px-2, gap-1.5->gap-1) so all
   8 chips fit on one line within the existing column width.

3. Inconsistent entrance animation. Dropped the width:0->auto slide in
   favor of a unified scale+opacity zoom with layout for smooth reflow.

Refs #450
2026-07-05 15:32:19 -07:00
gui-yue 99a1e52b36 fix: harden compaction pair handling 2026-06-07 12:35:08 +08:00
wanna 7891c25c12 fix: keep tool-use/result pairs intact during compaction
Preserve assistant tool_use / user tool_result adjacency when compaction trims message history.

Fixes #325.

Squashed original PR commits:

- Fix compaction breaking tool-use/result pairs

- Simplify compaction boundary fix
2026-06-07 12:35:00 +08:00
Haoranandgui-yue ee9a747e09 fix: handle todo_write string inputs for issue 340
Co-authored-by: gui-yue <yuemeng.gui@gmail.com>
2026-06-03 23:24:34 +08:00
gui-yue abe09a9ccb Sync generated course content 2026-05-31 17:27:29 +08:00
gui-yue 0100b3dc32 Fix skill frontmatter parsing 2026-05-31 16:54:14 +08:00
Haoran 4d12ca93de fix: prevent course svg text overflow 2026-05-26 11:17:58 +08:00
Yang Haoran 3ca3f57868 fix: prevent s09 memory preview overflow 2026-05-25 15:45:40 +00:00
Haoran fdd7d2a851 feat: complete web curriculum visuals 2026-05-25 22:38:02 +08:00
chenyizhongx d882d01e07 fix(web): remove duplicate "Execution Flow" heading in Deep Dive (#151) 2026-04-01 21:00:52 +08:00
Xinlu Lai e4edd82c8c Merge pull request #88 from wbxl2000/main
优化中文翻译: 保留英文专有名词
2026-03-30 00:04:18 +08:00
Xinlu Lai 21bc06153f Merge pull request #83 from QuentinHsu/fix/web-theme-mount-sync
fix(header): sync theme icon state after mount
2026-03-30 00:04:13 +08:00
Xinlu Lai 3b9b87f027 Merge pull request #69 from w4n9hu1/main
fix(i18n): correct Chinese label for memory layer — 内存管理 → 记忆管理
2026-03-29 23:06:12 +08:00
copilot-swe-agent[bot]andwbxl2000 13409478ef Optimize Chinese translations: preserve English proper nouns (Skills, Agent, Subagent, Context Compact, etc.)
Co-authored-by: wbxl2000 <57169560+wbxl2000@users.noreply.github.com>
2026-03-16 14:23:59 +00:00
QuentinHsu 69f8abdbda fix(header): sync theme icon state after mount
- initialize dark mode state after mount from document to avoid mismatched first render state.
- render a placeholder before mount to reduce theme icon hydration mismatch risk.
2026-03-15 14:12:40 +08:00
CrazyBoyM e57ced7d07 redirect vercel traffic to learn.shareai.run 2026-03-14 23:50:32 +08:00