Commit Graph

149 Commits

Author SHA1 Message Date
lanrtop
dbc1b068ab fix(delivery): avoid false deployed timestamp
All checks were successful
Push & PR Check / check (push) Successful in 59s
Push & PR Check / check (pull_request) Successful in 1m0s
Rules-Applied: R07,R13
2026-09-23 12:09:38 +09:00
lanrtop
8bc33aaab9 fix(delivery): distinguish skipped production deploy
All checks were successful
Push & PR Check / check (push) Successful in 1m18s
Push & PR Check / check (pull_request) Successful in 58s
2026-09-23 11:08:10 +09:00
lanrtop
2b577f6902 fix(delivery): reject private DNS probe targets
Filter resolved connection addresses and bypass environment proxies so project-declared probes cannot reach local services through public hostnames.
2026-09-23 10:44:05 +09:00
lanrtop
02b9f1ec36 feat(delivery): observe production revision with dual evidence
Read project-owned production profile, verify Gitea deploy context and public version probe, and surface explicit degraded states.

Feature-Confirmed: true
2026-09-23 10:37:07 +09:00
lanrtop
7c62a1c148 test(agent/access): 固化自启动幂等边界
All checks were successful
Push & PR Check / check (push) Successful in 57s
Push & PR Check / check (pull_request) Successful in 56s
Rules-Applied: R01,R06,R07,R08,R10,R12,R13
2026-09-23 03:38:12 +09:00
lanrtop
327f3d78ab feat(agent/access): 强化项目级运行态接入
MCP 改为 loopback 并绑定项目 scope,补齐越界拒绝、风险元数据和结构化状态。

新增分层 readiness、配置迁移与设置页投影;正式安装版可选择登录自启动,debug 与非安装路径明确拒绝。

Feature-Confirmed: true

Rules-Applied: R01,R06,R07,R08,R10,R12,R13
2026-09-23 03:21:38 +09:00
lanrtop
806205b8b0 feat(cicd): add safe agent workflow projection
All checks were successful
Push & PR Check / check (push) Successful in 1m0s
Push & PR Check / check (pull_request) Successful in 58s
Add preview-and-apply workflow commands with digest confirmation, project boundary checks, and MCP/Tauri projections. Sync onboarding capability packs and Codex skill guidance.

Feature-Confirmed: true

Rules-Applied: R01,R02,R06,R07,R12,R13
2026-09-22 23:27:34 +09:00
lanrtop
9bf2d579ea feat(cicd): align templates with project toolchain
All checks were successful
Push & PR Check / check (push) Successful in 57s
Push & PR Check / check (pull_request) Successful in 56s
Reuse the canonical Node/pnpm contract when generating workflows, preserve per-tool legacy fallbacks, and reject conflicting declarations with evidence.

Feature-Confirmed: true

Rules-Applied: R02,R12
2026-09-22 22:38:06 +09:00
lanrtop
28e65b3d1c feat(gitea): 增加 Agent PR 安全合并门禁
合并前重新校验 PR、head SHA、CI 与 review,并用 Gitea head_commit_id 在服务端绑定用户确认的提交。同步 MCP schema、接入模板与 Codex skill 契约。

Feature-Confirmed: true

Rules-Applied: R06,R07,R10,R12
2026-09-22 21:07:55 +09:00
lanrtop
0141b8b09a feat(delivery/gitea): 归一化 Gitea 部署状态信号
All checks were successful
Push & PR Check / check (push) Successful in 1m4s
Push & PR Check / check (pull_request) Successful in 59s
保留目标 SHA、context、时间与跳转证据,按精确 context 提取部署结果,并修正 Gitea 1.22 skipped job 被编码为 success 的误判。同步落账 production 只读双证据方案与 P3-A 完成状态。

Rules-Applied: R07,R10,R13

Feature-Confirmed: true
2026-09-22 19:54:43 +09:00
lanrtop
8376bcbfd2 fix(toolchain): 修复 Windows wrapper 版本探测
优先选择 .exe/.cmd/.bat 路径并直接执行版本命令,补充含空格路径测试;运行态 MCP 已确认 Enterprise 的 Node 与 pnpm 版本可正确识别。

Rules-Applied: R07,R08,R10,R13
2026-09-22 01:23:34 +09:00
lanrtop
ead35ad12a feat(toolchain): 增加项目级运行时能力包
以 .nvmrc 与 packageManager 作为 Node/pnpm 版本事实,新增 Windows-only 的状态诊断、受控 mise 准备、MCP/Tauri/UI 双投影及 onboarding 自检。

Feature-Confirmed: true

Rules-Applied: R01,R04,R06,R07,R08,R10,R12
2026-09-22 01:08:31 +09:00
lanrtop
057c2b3a10 fix(onboarding): recognize custom lefthook checks
All checks were successful
Push & PR Check / check (pull_request) Successful in 1m1s
2026-09-21 22:42:03 +09:00
lanrtop
c9f19e2916 fix(onboarding): enforce canonical skill context
All checks were successful
Push & PR Check / check (pull_request) Successful in 58s
2026-09-21 22:02:58 +09:00
lanrtop
f04b80f201 fix(onboarding): preserve identity mismatch signal
All checks were successful
Push & PR Check / check (push) Successful in 1m34s
Push & PR Check / check (pull_request) Successful in 1m13s
2026-09-21 19:28:27 +09:00
lanrtop
f5b66aba4a feat(onboarding): version capability packs
Feature-Confirmed: true
2026-09-21 19:23:54 +09:00
lanrtop
122864f340 feat(onboarding): add capability pack status
Feature-Confirmed: true
2026-09-21 18:33:12 +09:00
lanrtop
167fcf9880 feat(agent-context): add canonical project context
Feature-Confirmed: true
2026-09-21 18:16:32 +09:00
e1e7ffb3b4 Merge branch 'master' into feat/project-capability-control-plane
All checks were successful
Push & PR Check / check (push) Successful in 1m0s
Push & PR Check / check (pull_request) Successful in 1m1s
2026-09-21 16:48:26 +08:00
b8f12425ab Merge branch 'master' into feat/codex-onboarding
All checks were successful
Push & PR Check / check (push) Successful in 59s
Push & PR Check / check (pull_request) Successful in 1m38s
2026-09-21 16:45:05 +08:00
lanrtop
383b5b35d7 feat(delivery): add project delivery status
All checks were successful
Push & PR Check / check (push) Successful in 1m0s
Push & PR Check / check (pull_request) Successful in 58s
Feature-Confirmed: true
2026-09-21 15:16:40 +09:00
lanrtop
6e5d3d89bc chore(rust): format backend sources 2026-09-21 12:52:37 +09:00
lanrtop
ed83f2874a feat(onboarding): add Codex MCP project integration
All checks were successful
Push & PR Check / check (pull_request) Successful in 57s
Push & PR Check / check (push) Successful in 1m3s
Feature-Confirmed: true
2026-09-21 12:35:10 +09:00
lanrtop
01c9433a08 fix(mcp): backfill 按落盘路径归并——同路径重复登记互相覆盖丢笔记(真机实锤丢 20 条)
All checks were successful
Push & PR Check / check (push) Successful in 1m4s
回填改为先解析路径再归并写入(按 note id 排序),同路径多登记合并为一个文件;
新增回归:两登记同路径 → 4 条全归档不覆盖。cargo test notes_ 全绿。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-09-11 22:30:57 +09:00
lanrtop
6d02b12e9f feat(mcp): notes 档案分片双写 + backfill_notes_archive 自愈工具
project_notes 是全系统唯一不在 git 的原创资产(可拆除性唯一硬违规)。
append_project_note 现双写到项目 .blueprint/notes-archive.jsonl(JSONL 可重放
重建 DB=重生配方);双写失败不回滚仅记日志,backfill_notes_archive 全量重建自愈。
归宿按项目分片(辩证翻转集中式设计,理由见蓝图卡留痕)。
死登记路径复用 validate_registered_path 防护;project_root 重构出 DI 版。
cargo test 110 全绿(新增 3:双写匹配/回填幂等+死登记跳过/并发不交错)。

Feature-Confirmed: true
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-09-11 22:22:59 +09:00
lanrtop
0d4c2adc54 feat(onboarding): 同源同边界补收束语与需求对称两时间尺度(v1.7.0 内补遗)
「人在意的点 agent 读得懂」补机制脚注使其自洽,不做空头承诺:
- 当下会话:同源路径即时对称(结构直接保证,无需额外机制)
- 跨会话:否决理由落账→复盘笔记→梦核蒸馏,反复在意的维度迁移进可断言规则
- 人裁决区是飞轮推进的前线,不是墙上的洞
- 1.7.0 尚未分发,内容补遗不再升号

Feature-Confirmed: true
2026-08-23 16:41:14 +09:00
lanrtop
9f468a13a1 feat(onboarding): AGENTS 模板注入「同源同边界 + 操作复刻」设计原则(v1.7.0)
多角度辩证收敛后的 v3.1 外科手术版(真实增量三个半,不重复已有六条):
- 节首总纲:任何功能 = 一个本体 + 两个投影,同源同边界;先定本体后盖投影(原型探索豁免)
- 边界单点实现追加同源推论:人的操作序列 agent 皆可复刻,人报障即复现路径(操作+状态)
- 三分定位启发式(本体→投影→环境),从"定律"降级——crypto.randomUUID 环境层实锤
- human_verify 否决理由值得记录(飞轮原料;采集机制挂 governance-feedback-loop,不空头承诺)
- 炼境自身 AGENTS.md 块内同步 + agents-meta-rules.md 设计草案同步

Feature-Confirmed: true
Rules-Applied: R13
2026-08-23 16:31:30 +09:00
lanrtop
0a8a9e60bc feat(mcp): 飞轮派生数据工具输出 staleness 标注
世界模型自洽:模型可以过期,不能不知道自己过期。
- 新增 sync_state 表(domain 单行 upsert)+ touch/read 依赖注入函数
- 三个写入点:轮询成功(polled>0)、webhook PR 落库、webhook push 落库
- get_pr_events / get_commit_metrics 输出首行标注最近同步时间与距今分钟数
- get_ci_status 为实时 Gitea API 调用,不在范围
- 实锤依据:get_pr_events 延迟致 /ship 误判无 open PR(enterprise-system 2026-07-28 回传)

Feature-Confirmed: true
Rules-Applied: R05, R06, R07
2026-08-23 15:46:03 +09:00
lanrtop
16473e7260 fix(envoy): 补炼境定位讨论触发标准和 MCP 降级说明
- Step 2 加炼境定位/缺口/演进方向讨论不得漏判警示(enterprise-system 实锤)
- Step 4 加 MCP 不可用时的降级路径(整理文本输出让用户手动转发)
2026-08-23 14:34:17 +09:00
lanrtop
ca67e188c0 fix(ci-status): get_ci_status 结论区分三态——pending 不再误输出 ❌
add has_failure flag,使结论由两态(pass/fail)扩展为三态:
✅ 全部通过 / ⏳ 检查进行中 / ❌ 存在失败检查。
修复前 pending 和 failure 均输出 ❌,/ship 轮询无法区分排队与真实失败。

Feature-Confirmed: true
2026-07-31 07:25:48 +09:00
lanrtop
c12e8df0ae feat(templates): 知识库模板 AGENTS.md 增补 Commit 层级信号协定
All checks were successful
Push & PR Check / check (push) Successful in 53s
docs(dialogue|concept|core|case) scope 约定:外部观测者(炼境飞轮)凭
commit 流即可读出知识库晋升频率与环的健康度,无需理解库内部结构。

Feature-Confirmed: true
2026-07-18 10:48:55 +09:00
lanrtop
3d9336d908 feat(templates): 三端体系内置模板 + 技术栈分类标签渲染
上一会话遗留的完整功能补提交:
- 新增 4 个三端体系内置模板:React Web / React + Capacitor /
  React + Tauri (Antd) / React Tri-Platform(同一架构按需起步)
- tech_stack 升级为分类 JSON 格式(客户端/语言/框架),
  新增 techStackUtils.renderTechStack 兼容旧逗号格式,
  ManagePage / NewProjectModal 接线,TemplateEditor 占位符同步

Feature-Confirmed: true
2026-07-18 10:48:27 +09:00
lanrtop
55ee5a483c feat(templates): 新增内置模板「知识库(择升环)」
三层晋升结构的知识沉淀文档库初始化:dialogues 对话原料 → concepts 概念卡
→ CORE.md 稳定核心(上限 300 行强制过滤),cases/ 为检验层。
晋升/降级规则与写作纪律内置于模板 AGENTS.md,agent 进库即按择升环工作流运转;
init_commands 为 git init,建库即版本化。

Feature-Confirmed: true
2026-07-18 10:25:01 +09:00
lanrtop
cbc1d46c4e fix(mcp-inject): inject 链路空路径单点防护——补齐 07-15 空路径事故第二入口
All checks were successful
Push & PR Check / check (push) Successful in 52s
辩证收缩实战产出:清理污染文件时追问「删文件是不是正确动作层」,
发现 473cf7e 只拦了 apply 链路,inject 链路 project_root() 对空串
win_path 穿透(ok_or_else 拦 NULL 不拦空串),settings.json/
liangjing.json 正是经此写进 src-tauri/。

- validate_registered_path 单点校验:拒空串/空白/相对路径(顺带堵
  相对路径解析到 cwd 的边角),WSL 分支拒空 wsl_path
- 2 条回归测试驻军(纯函数无 DB,cargo test 105 全绿)
- 台账同步:污染文件已移出、两条空路径僵尸登记已注销

Rules-Applied: R06,R07
2026-07-18 10:24:03 +09:00
lanrtop
f0e5b70025 fix(onboarding/envoy): 使者分类加「非显而易见」前置硬门槛
常识性设计知识与触发条件过窄的 corner case 一律留本项目,
堵住 enterprise-system 2 例误回传的根因(07-18 使者回传 confirmed)。
顺带补 skill 描述行便于命令发现。
2026-07-18 09:43:41 +09:00
lanrtop
b01f1d1d81 fix(agent-infra): 修复框架扫描漏报 Tauri+React 项目的两个 bug
Bug 1:Tauri 检测条件过严
- 原条件要求 src-tauri/src/commands/ 目录存在才能识别 Tauri
- 新项目初始化时只有 lib.rs + main.rs,commands/ 未创建,导致整个 Tauri 检测跳过
- 修复:只检查 Cargo.toml 含 tauri 依赖,commands/ 用 confidence 反映是否已建

Bug 2:detect_contracts() 无前端框架检测
- Node.js 框架段只覆盖后端(Drizzle/Prisma/Hono/Express/Fastify/tRPC)
- 新增 React / Vite / Zustand 三个检测分支
2026-07-17 16:50:51 +09:00
lanrtop
5b0b068148 fix(onboarding/tmpl): 托管块首加「勿在块内定制」警示——AGENTS v1.6.1 / git-workflow v1.5.1
All checks were successful
Push & PR Check / check (push) Successful in 49s
使者回传兑现(confirmed·all_projects):炼境自身因块内写定制被
升级抹掉 5 段内容,模板块首此前无任何警示。警示行放块内随版本
升级触达全部存量项目。

Rules-Applied: R07
2026-07-15 23:18:16 +09:00
lanrtop
473cf7e92b fix(onboarding/dispatch): 空路径登记防护——拒绝分发而非写进进程 cwd
批量实调实锤:两条空路径登记(银龙集团应用/agent编排界面)使
Path::new("") 变相对路径,接入包整套写进了 dev 进程的 src-tauri/。
apply_onboarding_pack 入口拦截空/不存在路径(单点防护),批量 SQL
同步过滤空串,回归测试驻军。

Rules-Applied: R06,R07
2026-07-15 19:53:47 +09:00
lanrtop
1672b071e4 feat(onboarding/upgrade-channel): 全托管文件升级通道 + 批量重分发(U1)
All checks were successful
Push & PR Check / check (push) Successful in 51s
Push & PR Check / check (pull_request) Successful in 51s
三档升级语义落地:envoy.md/blueprint-gate.cjs 切全托管
(内容不一致即覆盖,CRLF 归一化防抖动),文件头加托管声明;
verify_onboarding 第 7 项「lefthook 检查段齐全」从内嵌模板自省
键集合,零硬编码;MCP apply_onboarding_pack 缺省 project_id
时批量分发全部已登记项目,替代 batch_apply.py 手摇脚本。

Rules-Applied: R06,R07

Feature-Confirmed: true
2026-07-15 14:20:22 +09:00
lanrtop
2fe576b75a feat(mcp/diagnostics): get_diagnostics 新增使者回传覆盖率「沉默项目」信号(B4)
All checks were successful
Push & PR Check / check (push) Successful in 49s
近 30 天有 commit 采集但零使者回传的已登记项目浮出水面,
提示去该项目跑 /envoy——回流触发不自动化(辩证决策 2026-07-15),
用可观测性让遗忘可见,人留在过滤环里。

Rules-Applied: R06,R07
2026-07-15 14:10:28 +09:00
lanrtop
aaf3343133 feat(flywheel/rules-validation): Rules-Applied 规则 ID ingest 层真实性校验(U3)
All checks were successful
Push & PR Check / check (push) Successful in 1m17s
校验单点放统计消费端(R12 边界单点):extract_rule_ids 从项目
CONVENTIONS.md 提取合法 ID 集合,filter_valid_rules 在入库前剔除
幻觉/typo ID(无 CONVENTIONS.md 时 fail-open 不校验)。接入全部
4 条写入链路(buff 增量/webhook/gitea 轮询/全量导入);
sanitize_rules_applied 提供回溯清洗,重跑全量导入即可清历史污染。

Rules-Applied: R01,R06,R07
2026-07-15 14:05:13 +09:00
lanrtop
f04eb6e766 feat(onboarding): 接入包 v1.6.0——蓝图机器门控双层实现
A: feat: 提交须含 Feature-Confirmed: true trailer
  - lefthook.yml.tmpl commit-msg 新增 feature-confirmed 命令
  - AGENTS.md.tmpl 需求对齐协议补 trailer 说明

B: pre-commit 检查未关闭 🔵 任务卡(warn only)
  - 新增 .claude/hooks/blueprint-gate.cjs(CommonJS,兼容 ESM 项目)
  - lefthook.yml.tmpl pre-commit 新增 blueprint-gate 命令
  - onboarding.rs dispatch 新增 blueprint-gate.cjs

Feature-Confirmed: true
2026-07-15 13:38:32 +09:00
lanrtop
be2f69578a docs(conventions): v1.11.0——同步使者回传的四项治理修复
- Session 结束汇总加限定语,不得作为跳过确认卡的通道
- acceptance 格式补 agent_verify/human_verify 分层说明
- 阶段2末尾引用 AGENTS.md 需求对齐协议(Bug Fix/Feature 分类)
- Rust/Tauri 专属章节顶部加 scope 前置提示,避免污染 web 项目
- lefthook.yml.tmpl:API typecheck 注释由警告升级为 REQUIRED 措辞
2026-07-15 12:16:31 +09:00
lanrtop
8c746cf8d5 fix(onboarding): git-workflow v1.5.0——修正 CONVENTIONS.md 死链引用,改为通用路径表述
All checks were successful
Push & PR Check / check (push) Successful in 1m35s
2026-07-09 16:14:55 +09:00
lanrtop
67bdacbf2e feat(onboarding): AGENTS.md v1.5.0——新增需求对齐协议(Bug Fix/Feature 分类 + S 级轻量卡 + 汇总补录限定语) 2026-07-09 16:12:47 +09:00
lanrtop
ce3ef6e14e feat(onboarding): 接入包模板 AGENTS.md v1.4.0——acceptance 分层/Playwright 版本锁定/API typecheck 提示/envoy 命令纳入分发 2026-07-09 16:09:55 +09:00
lanrtop
92da0fda0d fix(mcp): list_envoy_returns SQL 修复——pw.name 改为 JOIN project_profiles pp 取 pp.name 2026-07-09 16:09:38 +09:00
lanrtop
1c44bfe30a test(onboarding): 版本号从模板动态取,消除硬编码
All checks were successful
Push & PR Check / check (push) Successful in 1m0s
模板升版(1.2.0→1.3.0)暴露测试硬编码版本号——每次升版测试必断。
改为 extract_managed_block + block_version 动态取,升版不再碰测试。
2026-07-06 22:59:24 +09:00
lanrtop
46640783f9 chore(onboarding): 模板版本升级 AGENTS 1.3.0 / git-workflow 1.4.0
All checks were successful
Push & PR Check / check (push) Successful in 51s
内容已在前两次提交中更新(自验报告纪律第 6 条 / 单一 lian-jing 寻址),
但 ONBOARDING_MANAGED 块版本号未动导致批量分发全部 skipped——
版本判断是分发引擎的唯一升级信号,改模板必须同步升版本。
2026-07-06 22:58:02 +09:00
lanrtop
86995f7472 docs(conventions): 自验报告纪律三条——负面披露/改断言报备/两把尺子
All checks were successful
Push & PR Check / check (push) Successful in 51s
用户确立 agent 协作协议执行版(多角度辩证后选最小成本版落地):
1. 交人终验前反馈必含「没验什么」一节(负面披露收窄已知盲区)
2. 自修中改断言/验收标准需显式声明(封 Goodhart 最短路径,diff 可审计)
3. agent 自验对 acceptance、人终验对意图(acceptance 可能继承需求
   理解偏差,两把尺子不可合一)

三处同步:AGENTS.md(单一来源)+ 接入包模板(分发子项目)+
agents-meta-rules(设计草案)。完整辩证(五张力/四调节器/三缝隙)
存档于 governance-feedback-loop 模块设计档案节。
实证案例:mcp-single-server 自验全绿但 git-bash 层全挂,端到端终验抓住。
2026-07-06 22:46:04 +09:00