feat(agent): subagent tool paralel + auto-load AGENTS.md + verify cek setelah edit

Lanjutan audit alur AI agent (round 2), mengisi celah yang tersisa dari
perpbaikan paralel tool di loop utama (74b1ad4) agar lebih mirip Claude Code.

- feat(subagent): eksekusi batch tool read-only paralel di subagent engine
  (engine.rs). Tool::run sinkron, jadi pakai scoped OS thread (bounded
  window 8); hasil dipertahankan dalam urutan panggilan asli. Batch dengan
  tool mutating jatuh balik ke jalur sequential aman.
- feat(agent): auto-load AGENTS.md/CLAUDE.md/.cursorrules ke system prompt
  tiap turn (seperti Claude Code load AGENTS.md saat startup). Fungsi
  main_agent_prompt_with_project_context menempel blok PROJECT CONTEXT;
  dibaca dari workspace root pertama & dibatasi 12k char.
- feat(prompt): arahan VERIFY AFTER EDIT — setelah edit/write, agent wajib
  jalankan cargo check/clippy/test (atau lint/test sesuai stack) via bash
  sebelum mengakhiri turn; perbaiki error yang terlihat, jangan klaim
  'compiles/works' tanpa hasil nyata.
- feat(infra): build_rich_context kini membaca AGENTS.md & CLAUDE.md juga
  (untuk explore_codebase/scout).
- test: +3 subagent engine (order paralel, kecepatan konkuren, fallback
  mutating), +2 domain prompt (konteks proyek & fallback kosong).
This commit is contained in:
asepharyana
2026-08-28 09:50:21 +07:00
parent 992e60980c
commit 21e3ccc891
6 changed files with 332 additions and 36 deletions
Generated
+11 -11
View File
@@ -4862,7 +4862,7 @@ dependencies = [
[[package]]
name = "zesdex-api"
version = "1.19.4"
version = "1.19.5"
dependencies = [
"anyhow",
"argon2",
@@ -4885,7 +4885,7 @@ dependencies = [
[[package]]
name = "zesdex-application"
version = "1.19.4"
version = "1.19.5"
dependencies = [
"anyhow",
"base64",
@@ -4903,7 +4903,7 @@ dependencies = [
[[package]]
name = "zesdex-bootstrap"
version = "1.19.4"
version = "1.19.5"
dependencies = [
"anyhow",
"chrono",
@@ -4920,7 +4920,7 @@ dependencies = [
[[package]]
name = "zesdex-daemon"
version = "1.19.4"
version = "1.19.5"
dependencies = [
"anyhow",
"base64",
@@ -4944,7 +4944,7 @@ dependencies = [
[[package]]
name = "zesdex-domain"
version = "1.19.4"
version = "1.19.5"
dependencies = [
"anyhow",
"base64",
@@ -4960,7 +4960,7 @@ dependencies = [
[[package]]
name = "zesdex-gateway"
version = "1.19.4"
version = "1.19.5"
dependencies = [
"anyhow",
"axum",
@@ -4987,7 +4987,7 @@ dependencies = [
[[package]]
name = "zesdex-grpc"
version = "1.19.4"
version = "1.19.5"
dependencies = [
"anyhow",
"axum",
@@ -5004,7 +5004,7 @@ dependencies = [
[[package]]
name = "zesdex-infrastructure"
version = "1.19.4"
version = "1.19.5"
dependencies = [
"anyhow",
"argon2",
@@ -5052,7 +5052,7 @@ dependencies = [
[[package]]
name = "zesdex-tui"
version = "1.19.4"
version = "1.19.5"
dependencies = [
"anyhow",
"base64",
@@ -5078,7 +5078,7 @@ dependencies = [
[[package]]
name = "zesdex-web"
version = "1.19.4"
version = "1.19.5"
dependencies = [
"anyhow",
"axum",
@@ -5098,7 +5098,7 @@ dependencies = [
[[package]]
name = "zesdex-ws"
version = "1.19.4"
version = "1.19.5"
dependencies = [
"anyhow",
"axum",