Commit Graph
248 Commits
Author SHA1 Message Date
Xinlu Laiandship a7bbf7dfe6 fix(s08): preserve the complete active request after compaction
Incorporate PR #578, retain the overflow regression tests from #561,
and match the complete request field in retained summaries.

Co-authored-by: ship <shiyipeng2002@163.com>
2026-10-27 12:44:36 +08:00
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
Xingqi Dong aa7ee1662c Clarify s03 permission prompt (#593) 2026-10-27 12:41:17 +08:00
zl1nq a2f81623d5 docs: translate code comments in Chinese READMEs (s04-s06) (#590) 2026-10-27 12:41:03 +08:00
Wu Shuwen 8491527b3c fix(s11): document unreachable else branch in inject_background_results (#584)
The else branch in inject_background_results is never reached in the
current agent_loop call pattern, where messages[-1] is always a user
message. Kept for independent reuse or future wake-up scenarios.
2026-10-27 12:40:48 +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
BRYCE 45a0f3585a fix(s16): wait for parallel agents before closing the journal (#571)
Signed-off-by: Bryce <1557635468@qq.com>
2026-10-27 12:39:55 +08:00
Lukas 2f8cfb03a6 fix: an empty REPL line no longer quits the chapter silently (#569)
Every chapter REPL treated an empty line as a quit command and exited with
status 0 without a word, while the banner only promises "Type q to quit".
Under VS Code's debugger the Python extension's environment-activation line
is often injected into stdin after the program started, so the first thing
the REPL read was a blank line and the chapter vanished right after its
banner.

An empty line is now ignored and the prompt comes back; q and exit still
quit, and EOF/Ctrl-C still end the loop. s17 already behaved this way. A
static test keeps every chapter's quit check free of the empty string.

Fixes #567
2026-10-27 12:39:40 +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
Carlz d5cba86f41 fix(s08): recognize Anthropic prompt overflow errors (#561)
Recognize the documented prompt is too long message in the bounded reactive-compaction path. Synchronize all three chapter READMEs and add regression coverage for recovery, compatible markers, retry exhaustion, and unrelated errors.

Validation: 21 targeted tests and 22 subtests passed. Full suite: 486 passed, 1 pre-existing S16 scenario ordering failure, 100 subtests passed.

Refs shareAI-lab/learn-claude-code#560. Prepared with AI assistance.
2026-10-27 12:39:11 +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
Agustin Torres 2dde971276 fix(agent-builder): replace retired Sonnet 4 default (#602)
Use claude-sonnet-5-5 for the minimal agent, scaffold templates, and generated .env.example. Preserve MODEL_NAME overrides.
2026-10-27 12:09:08 +08:00
CosmicHourglassandCursor ce8f9f1860 fix: keep s11 and s15 process cleanup working on Windows (#586)
Windows has no fcntl, killpg, or SIGKILL, so stopping background processes crashed.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-28 21:49:16 +08:00
LiJiasheng 94ca468557 Add OS-aware shell context to current course prompts (#587)
* Add host environment context to chapter prompts

* Align prompt examples with environment context
2026-09-28 21:48:45 +08:00
Yang Haoran 0dcafa2ae0 Merge pull request #548 from mameikagou/fix-s03-del-command-448
fix(s03): match Windows del as a command word
2026-08-27 00:38:22 +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
Yang Haoran 04486201fc Merge pull request #510 from xiarimr/fix-windows-encoding-crash
fix: prevent Windows subprocess output decode crashes
2026-08-26 01:11:49 +08:00
Haoran cce031e632 fix: harden subprocess output decoding across lessons 2026-08-26 01:05:16 +08:00
Haoran 3e17b98504 Merge remote-tracking branch 'shareai/main' into fix/pr510-subprocess-output
# Conflicts:
#	s07_skill_loading/code.py
2026-08-26 00:45:18 +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
Yang Haoran 0a40b0635d Merge pull request #536 from Unilinear/fix/readline-prompt-wrap
fix: preserve wrapped input display in colored prompts
2026-08-25 22:11:47 +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
Yang Haoran e929ccc55b Merge pull request #540 from ruiruiru/docs/issue-539-sync-readme-zh
docs: sync Chinese README with English version
2026-08-24 21:45:03 +08:00
Yang Haoran 65cf9e1b7f Merge pull request #546 from Bill-Billion/fix/explicit-utf8-text-io
fix: use UTF-8 for text file operations
2026-08-24 20:43:16 +08:00
Haoran 199402f9d4 fix: use UTF-8 for text file operations 2026-08-24 20:28:37 +08:00
Yang Haoran a32a73f700 Merge pull request #544 from Bill-Billion/fix/provider-compatibility-note
docs: clarify provider compatibility limits
2026-08-24 18:31:10 +08:00
Haoran fc165bbada docs: clarify provider compatibility limits 2026-08-24 18:28:34 +08:00
Yang Haoran d39ac1b406 Merge pull request #537 from 0xJieREN/fix/s08-recursive-glob-conditional-micro-compact
fix(s08): support recursive glob and conditional micro compact
2026-08-24 17:02:59 +08:00
Haoran 6d70d2e071 fix: preserve tool results during context compaction 2026-08-23 11:50:52 +08:00
Haoran 61c3e64595 fix: support bounded recursive glob across lessons 2026-08-23 11:28:14 +08:00
ruiruiru 8a2b2ae0b9 docs: sync Chinese README with English version 2026-08-21 18:03:17 +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
Yang Haoran f9e8b280f7 Merge pull request #533 from Bill-Billion/fix/task-dependency-two-phase
fix: build task dependencies in two phases
2026-08-19 01:42:28 +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
Yang Haoran 291e5f88fd Merge pull request #240 from huanghuang358/fix/s08-consecutive-user-messages
fix(s08): avoid consecutive user messages
2026-08-17 14:27:21 +08:00
Haoran a2e5be85cd fix: merge async notices in full agent 2026-08-17 14:25:07 +08:00
Yang Haoran b7de91139e Merge pull request #529 from shareAI-lab/fix/remove-fork-sync-workflow
ci: remove fork-only upstream sync workflow
2026-08-16 22:51:47 +08:00
Haoran e51a013eb5 ci: remove fork-only upstream sync workflow 2026-08-16 22:49:10 +08:00
Yang Haoran f2a1825d56 Merge pull request #523 from 123456wda/fix/micro-compact-latest-batch
fix: preserve latest tool result batch during compaction
2026-08-16 17:46:28 +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
Yang Haoran 2b5fc57e70 Merge pull request #525 from wxj006007/fix/issue-524-s15-background-results
[Bug] Atomically deliver S15 background results
2026-08-16 00:51:43 +08:00
Haoran 078eca78ac fix(s15): harden background task lifecycle 2026-08-16 00:26:25 +08:00