Commit Graph

  • 1f8510a47f feat(hub): add org project explorer admin APIs hongjr03 2026-07-10 00:55:26 +08:00
  • c4f052efa2 feat(hub): add Feishu OAuth session for org admin hongjr03 2026-07-10 00:55:19 +08:00
  • 87e3d3f990 feat: let Feishu onboarding create projects in folders hongjr03 2026-07-10 00:35:18 +08:00
  • 519ea8144f feat: add Feishu project onboarding card hongjr03 2026-07-10 00:32:09 +08:00
  • 34e07e229f feat: add org admin project onboarding foundation hongjr03 2026-07-10 00:25:00 +08:00
  • 2b7aa3294f feat: add organization tenant model org-tenant-model hongjr03 2026-07-09 23:37:20 +08:00
  • 5d315fff21 fix: enforce role tool whitelist hongjr03 2026-07-09 20:48:03 +08:00
  • 716101eed0 feat: add agent cost reporting hongjr03 2026-07-09 20:29:56 +08:00
  • fc5a5365d8 fix: reply to Feishu trigger messages hongjr03 2026-07-09 20:04:13 +08:00
  • fc0df7b823 fix: label Feishu trigger senders in agent prompts hongjr03 2026-07-09 19:56:47 +08:00
  • f1d29176d3 feat: add slash command help hongjr03 2026-07-09 19:43:13 +08:00
  • f260195439 fix: ack Feishu card actions before interrupt work hongjr03 2026-07-09 19:26:57 +08:00
  • d01ea0e1cb feat: interrupt running agent via card button with confirm dialog hongjr03 2026-07-09 18:59:31 +08:00
  • d6724e5a83 feat: streaming agent card with tool-use trace, reasoning panel, and tool results hongjr03 2026-07-09 17:18:40 +08:00
  • 346aee5a68 fix: bind agent sessions to role hongjr03 2026-07-09 16:06:06 +08:00
  • 491fd13ca8 fix: resolve Feishu sender names via basic profile API hongjr03 2026-07-08 23:59:17 +08:00
  • 79505e6d44 fix: use startedAt instead of createdAt in trigger integration test hongjr03 2026-07-08 23:30:28 +08:00
  • a0df8b6bcf fix: repair streaming output broken by markdown rendering changes hongjr03 2026-07-08 17:48:55 +08:00
  • 36c0801e6f feat: add per-project message trigger wait queue hongjr03 2026-07-08 17:31:43 +08:00
  • 4479f88f4f feat: add sender profile cache with LRU eviction hongjr03 2026-07-08 17:22:23 +08:00
  • 2736006262 feat: add retry with exponential backoff for file send/download hongjr03 2026-07-08 17:15:30 +08:00
  • 294d51dbfe feat: parse inbound post (rich text) messages hongjr03 2026-07-08 17:05:51 +08:00
  • bef10149a9 feat: improve outbound message chunking with code-block-aware splitting hongjr03 2026-07-08 16:57:53 +08:00
  • 4736610cf3 feat: add interactive approval/confirmation cards hongjr03 2026-07-08 16:47:31 +08:00
  • ad65d93b2e feat: add message burst debouncing (MessageBatcher) hongjr03 2026-07-08 16:40:39 +08:00
  • 6227e1931b feat: improve Feishu markdown rendering and processing status feedback hongjr03 2026-07-08 16:31:07 +08:00
  • a00e4f9871 fix(hub): 保留飞书回复上下文 hongjr03 2026-07-08 16:03:52 +08:00
  • a025d23af8 fix(hub): 启动前应用 Prisma 迁移 hongjr03 2026-07-08 15:45:12 +08:00
  • dfcc2d70f8 feat(hub): 支持教师团队权限 hongjr03 2026-07-08 15:42:53 +08:00
  • 3f486232a8 feat(hub): 抽出运行时配置 hongjr03 2026-07-08 15:25:49 +08:00
  • a766d99573 fix(hub): 修复 Hub 部署脚本失败处理 hongjr03 2026-07-08 15:14:23 +08:00
  • 1cfda3ccd2 ci(hub): 补齐 Hub 检查和健康 smoke hongjr03 2026-07-08 15:14:06 +08:00
  • ead5cf04d6 fix(hub): 稳定 Feishu trigger 集成测试 hongjr03 2026-07-08 15:13:50 +08:00
  • ecbc2c8666 fix(hub): 对齐 ADR-0018 agent 执行面边界 hongjr03 2026-07-08 13:11:14 +08:00
  • 5b7fd70124 spec: 钉死 agent 执行面边界(ADR-0018) hongjr03 2026-07-08 12:37:37 +08:00
  • 6178664696 fix(hub): send Feishu files explicitly hongjr03 2026-07-08 11:48:25 +08:00
  • c73b41e1da fix(hub): resume Claude SDK sessions hongjr03 2026-07-08 11:48:20 +08:00
  • 012c8a7d89 fix(hub): default to OpenRouter Sonnet model hongjr03 2026-07-08 11:48:16 +08:00
  • 250f918346 chore: delete dead code hongjr03 2026-07-08 02:37:44 +08:00
  • 30d20421b3 fix(hub): busy 表情从 Hourglass 改为 OnIt(飞书支持的 emoji_type) hongjr03 2026-07-08 02:22:05 +08:00
  • 20bf7e271f fix(hub): 启动重置状态 + lazy-init 修复空白消息 + busy 改表情 hongjr03 2026-07-08 02:20:49 +08:00
  • eaa7fd4fd8 feat(hub): 文件收发 + 卡片回调 + 更好的流式 hongjr03 2026-07-08 02:13:51 +08:00
  • 1ad78dbcce test(hub): 适配 Claude Code SDK 的 mock 修复 hongjr03 2026-07-08 01:52:21 +08:00
  • 085f7c7186 fix(hub): 去掉冗余 OPENROUTER_API_KEY,直接用 ANTHROPIC_AUTH_TOKEN hongjr03 2026-07-08 01:48:01 +08:00
  • b9f50407be fix(hub): Claude Code SDK 经 OpenRouter Anthropic Skin,保留 provider-agnostic hongjr03 2026-07-08 01:46:09 +08:00
  • 082562ca08 docs(adr): ADR-0017 重写——从 provider-agnostic 改为 Claude Code SDK hongjr03 2026-07-08 01:40:28 +08:00
  • 4bd5b03bb1 refactor(hub): Vercel AI SDK → Claude Code SDK hongjr03 2026-07-08 01:36:59 +08:00
  • 1abcc495f4 test(hub): 真实 model 集成测试 + Gitea CI workflow hongjr03 2026-07-07 23:45:59 +08:00
  • e7924f78d5 feat(hub): 结构化运行历史(A-3) + lock 心跳(A-5) hongjr03 2026-07-07 22:20:30 +08:00
  • f8c3e16a52 feat(hub): 事件去重(A-4) + 审计写入路径(A-8) hub/dedup-audit hongjr03 2026-07-07 21:34:15 +08:00
  • a2c8fa8eaf refactor(hub): 手搓 agent loop 换成 Vercel AI SDK hub/ai-sdk-agent-loop hongjr03 2026-07-07 20:07:02 +08:00
  • afaf5bee09 feat(hub): RoleEntry 完整 bundle + per-run tool 白名单 + per-role 触发权限 hongjr03 2026-07-07 18:47:51 +08:00
  • 0fe6cabc68 feat(hub): session transcript 连续性 + slash commands (/new /resume /reset) hongjr03 2026-07-07 17:50:05 +08:00
  • e60aa43731 test(hub): integration 测试套件(13 tests,真 prisma+真 cph) hongjr03 2026-07-07 15:40:28 +08:00
  • 09cadd0148 test(hub): Vitest suite + 三组 unit 测试(22 tests) hongjr03 2026-07-07 15:26:53 +08:00
  • ce767e9cab feat(hub): 真实飞书读取 + 状态卡片 + 权限 gate + 部署脚本 hongjr03 2026-07-06 23:44:07 +08:00
  • a4d52e1850 feat(hub): workspace 文件工具 + cph 子进程工具(hub↔courseware 耦合点) hongjr03 2026-07-06 23:19:28 +08:00
  • 313e890b6c feat(hub): 飞书 @bot 触发链路 + ProjectAgentLock 不变式(ADR-0001/0002) hongjr03 2026-07-06 23:11:35 +08:00
  • b4dd8f09e1 feat(hub): Prisma schema + DB singleton,对齐 spec/System 契约 hongjr03 2026-07-06 22:48:28 +08:00
  • a08c33205b refactor(hub): role 改为数据条目,不再是写死的闭集枚举 hongjr03 2026-07-06 22:41:39 +08:00
  • 3bca137b48 feat(hub): provider-agnostic agent seam 骨架(ADR-0001/0003/0017) hongjr03 2026-07-06 22:38:04 +08:00
  • 18aac1ff16 feat(spec): System 层补 ADR-0001/0003/0004 缺口 + ADR-0017 provider-bound session hongjr03 2026-07-06 22:30:05 +08:00
  • 73e9d258d6 docs(spec): 重写 spec/ 与根 README 的语言与取舍 doc-rewrite sjfhsjfh 2026-06-25 03:22:59 +08:00
  • 4c697904e6 chore: release 0.0.2 v0.0.2 sjfhsjfh 2026-06-23 16:05:47 +08:00
  • 3c1eb846a9 chore: Merge feat/cph-version-gate into main (0.0.2) sjfhsjfh 2026-06-23 16:04:22 +08:00
  • ebcb3a7589 feat(model+spec): .cph-version 契约文件 + CphVersionMismatch 诊断(ADR-0016);bump 0.0.2 sjfhsjfh 2026-06-23 16:03:54 +08:00
  • 57f7773987 chore: Merge feat/shell-completion into main sjfhsjfh 2026-06-23 15:35:59 +08:00
  • 4a9eb59aa9 feat(cli): cph completions <shell> 子命令(clap_complete) sjfhsjfh 2026-06-23 15:21:46 +08:00
  • e3370cad15 chore: release 0.0.1 v0.0.1 sjfhsjfh 2026-06-23 15:14:34 +08:00
  • b3148175fe chore: Merge spec-driven into main sjfhsjfh 2026-06-23 14:56:37 +08:00
  • 144e2d8c80 feat(spec+checker): slides/逐字稿 markdown 内容面 + assembleMarkdown step(ADR-0015) sjfhsjfh 2026-06-23 14:55:55 +08:00
  • 9590e15236 feat(checker+typst): 嵌入 render 使 cph 可 cargo install;实现 shell step 执行器(ADR-0013) sjfhsjfh 2026-06-23 12:09:49 +08:00
  • c6b4d439ac docs(spec): 修正误译 "授权 surface" → "撰写态"(authoring surface) sjfhsjfh 2026-06-23 00:15:48 +08:00
  • 5dc29fe558 feat(model): author 是有序列表;Info(canonical) vs RawInfo(授权 surface) 入契约 sjfhsjfh 2026-06-23 00:11:03 +08:00
  • c684d25d50 chore(spec+checker): cleanup pass — trim docs, reorg Courseware, covers-as-data, fold DanglingReference (ADR-0012) sjfhsjfh 2026-06-22 23:59:32 +08:00
  • cadf8ad0d3 test(examples): TH-141 to template model — exports/*.typ + manifest v2 (WU-E') sjfhsjfh 2026-06-22 10:06:31 +08:00
  • d76f9f9a54 feat(checker): compile template as main, augmented manifest closes optional-content (WU-D', ADR-0011) sjfhsjfh 2026-06-22 10:05:03 +08:00
  • 7e15cf34f6 feat(render): export templates + render-lesson entry; template owns include loop (WU-C', ADR-0011) sjfhsjfh 2026-06-22 09:57:51 +08:00
  • d5bce1bede feat(checker): cph-model manifest v2 — Artifact-with-fields + typed steps (WU-B', ADR-0011) sjfhsjfh 2026-06-22 09:57:50 +08:00
  • de87cddaf1 feat(spec): Artifact gets fields, target = artifact + typed steps, drop RenderRule (ADR-0011) sjfhsjfh 2026-06-22 09:46:34 +08:00
  • 9b37914bfb docs(adr): add ADR-0011 (export builds = typed steps over templates), correct ADR-0008 sjfhsjfh 2026-06-22 09:44:32 +08:00
  • c93503de50 test(examples): TH-141 declares structured target build config (WU-E) sjfhsjfh 2026-06-22 08:49:21 +08:00
  • bd1699a4c0 feat(checker): align cph-typst + cph-check to export-as-build model (WU-D) sjfhsjfh 2026-06-22 08:47:13 +08:00
  • 6f46aa708a fix(render): per-level heading numbering via numbly; config-driven, offline (WU-C) sjfhsjfh 2026-06-22 08:42:15 +08:00
  • b5bf9d60d1 feat(checker): cph-model — structured export-target build config (WU-B, ADR-0009) sjfhsjfh 2026-06-22 08:42:15 +08:00
  • 09b026f598 feat(spec): backfill Export terminology + diagnostics/legality/pipeline (ADR-0009/0010) sjfhsjfh 2026-06-22 08:36:29 +08:00
  • 81cf762a0c docs(adr): add ADR-0009 (export target = build) + ADR-0010 (diagnostics/legality/pipeline) sjfhsjfh 2026-06-22 08:33:11 +08:00
  • 9309a175c0 docs(readme): reflect the checker workspace, render package, and examples sjfhsjfh 2026-06-22 01:58:11 +08:00
  • b86ee24a26 feat(checker): cph-check orchestrator + cph-cli cph binary (WU-5) sjfhsjfh 2026-06-22 01:57:34 +08:00
  • 7e76482a31 feat(checker): cph-typst — embed typst 0.15, driver-gen, compile, PDF (WU-4) sjfhsjfh 2026-06-22 01:49:15 +08:00
  • c73a2c903f feat(examples): migrate TH-141 sample to declarative layout (WU-6) sjfhsjfh 2026-06-22 01:33:40 +08:00
  • 752a5c661d feat(checker): cph-schema — 4 kind JSON Schemas + validation (WU-3) sjfhsjfh 2026-06-22 01:33:40 +08:00
  • c17af60bb0 feat(render): rebuild typst render package cph-render (WU-2) sjfhsjfh 2026-06-22 01:33:40 +08:00
  • c151963967 ci: add Rust checker workflow (fmt + clippy -D warnings + test) sjfhsjfh 2026-06-22 01:28:12 +08:00
  • c810ea6137 feat(checker): scaffold repo-root cargo workspace + cph-diag + cph-model (WU-1) sjfhsjfh 2026-06-22 01:27:32 +08:00
  • 8599f472c0 docs(adr): add ADR-0008 — declarative manifest + on-disk layout conventions sjfhsjfh 2026-06-22 01:18:48 +08:00
  • f1dce07789 feat(spec): build out System layer and element schema model sjfhsjfh 2026-06-22 00:31:14 +08:00
  • 4a828e07b9 feat(spec): add lesson model contract (ADR-0005) sjfhsjfh 2026-06-21 23:11:47 +08:00
  • 3a22669f0a chore: scaffold monorepo with spec/ Lean project and governance docs sjfhsjfh 2026-06-21 22:00:18 +08:00
  • ca9f1242f8 chore: add c4 spec hongjr03 2026-06-06 19:22:58 +08:00