Commit Graph

  • 35bb23d372 check-ui-kit 跟着改源码路径:缺工具那段报错随发起运行的规则搬到了 engine/launch.py,「新样本的片段在后端源码里都还在」那一项按新位置找 ThearchyHelios 2026-10-05 02:52:28 +08:00
  • 19d7fd7162 合入期 0 核查工具箱:SQL 语义(规范化、方面、差异说明)、只读核查 agent、核查每日花费账、核查设置组、数据源查询工具的强制只读 ThearchyHelios 2026-10-05 02:52:16 +08:00
  • a867bf6852 合入期 0 运行时底座:发起运行的规则抽成 launch_run,运行记下选项快照和定时来源,往停下或已封存的运行里追加事件统一走 append_events,质询用量计进运行用量 ThearchyHelios 2026-10-05 02:52:16 +08:00
  • d5e9ef39ae SQL 语义复核修正(第 2 轮):CTE、子查询起的名字不再进比较,条件里的子查询选出来的列名也不算;派生来源按位置编号,编号错开时再按不写编号的写法配一遍 ThearchyHelios 2026-10-05 02:37:33 +08:00
  • 132d126c6f 核查 agent 复核修正:数值字段的各种写法都换成格子引用、认不出的结构下的数不采信;退回普通调用时把结构写进消息,没交的字段不再算「查不到」;收尾的钱按最贵的样子留、留过的不再被上限拦;永远不抛 ThearchyHelios 2026-10-05 01:46:55 +08:00
  • a427b53874 SQL 语义复核修正:同一个口径不再因为子查询里的别名、HAVING 里的别名被报成不同;取哪几行逐段比,连同 OFFSET 和取前几行时的排序 ThearchyHelios 2026-10-05 01:46:55 +08:00
  • c8363206bd 发起时就定下的事件和运行记录同一个事务写进事件流:受管级别那条日志、目录变化、口径升版处置以前在 run_manager.start 返回之后另外写,这时运行已经建好、执行任务已经起了。其中任何一次写失败(库被锁超过等待时长之类),launch_run 抛出普通异常,运行却在执行;定时任务按「LaunchRefused 以外的异常记未能发起」会把一次正在执行的正式运行记成未能发起,封存范围里也少了受管级别那条日志(governed_formal 找不到它就退回看工作流现在的 status,中途改过画布的会按已发布级别出具)。另外这几条和执行抢先后,运行结束得快时可能落到封存之后。 ThearchyHelios 2026-10-05 01:18:43 +08:00
  • fc57ed0e32 追加事件收紧几处,封存后追加的质询不计进运行用量。复核提出:停在审批时追加只看运行还停着,关于第一张审批卡的质询问完时运行可能已经批过它、停到了第二张上,问答照样写进去;没有终态事件的老封存运行追加之后 verify 由一致变成不一致;返回给调用方的事件 id 和库里的不一样;测试证明不了先落库再广播;封存后追加的质询平时不计用量,继续运行之后又被计进去。 ThearchyHelios 2026-10-05 01:18:03 +08:00
  • f8b2857630 进程重启后接号不再撞上已有的序号:以前恢复、继续运行、放弃、启动时补日志都只按 run.last_seq 接号,而 last_seq 会被写小。按需裁判记判定(api/evidence.py 的 _append_judged)的条件更新不带 last_seq 条件:它取了号还没写,封存后追加(run_append)抢先提交了,它再提交时把 last_seq 写回自己那个更小的号。同一进程里序号计数只增不减,不碍事;重启后计数从 0 起,继续运行写出的 run.resumed 就和封存后追加的事件同号,重新封存时两条同号的事件一起进了清单,而清单按序号排序算哈希。 ThearchyHelios 2026-10-05 01:17:18 +08:00
  • f1c068d6a9 核查工具箱收尾:连接的方面补上另一侧(关联条件里出现的别的表,CROSS JOIN 写它之前的来源),双盲复算对照数据目录里的关系时用得上;只读 agent 收尾前先拿到收尾用的模型再预留金额,模型拿不到时不在每日账上白记一次调用;收尾消息的参数改名 limit_words,说清是哪个上限的说法 ThearchyHelios 2026-10-05 00:42:02 +08:00
  • 1efa5f7b20 核查用的只读 agent:engine/verify_agent.py 的 run_verify_agent 给双盲复算、反方审稿、审批质询共用。工具只建给定数据源的 db_schema / db_query,一律 force_readonly;自己管工具调用循环(不依赖 NodeContext / @task),查询次数、时长、金额(这一次、全局每日)任何一项到顶就停止查询、按已有结果收尾,收尾那次时长到顶另给宽限,金额每一轮都给它留出钱;模型不在价格目录里时金额上限无效,照裁判的说法记一条说明;每次调用记进核查的每日账。成功的查询按本 agent 自己的顺序编 Q1、Q2…,给了 emit 才发 llm / tool 事件(role: verify,查询的 tool.end 带 query_artifact,随运行封存、能下钻),绝不往证据台账写 kind: query,免得进了报告的写作目录。最后按调用方的结构交结果:数值字段换成格子引用 {alias, row, column},由代码从快照取值,模型自己写的数字不采信、取不到是 None;理由里的数字写成 [[v:Qn.rX.列]],用本 agent 自己的台账 build_catalog + compose_doc 组装,裸数字会被标出;结构化输出失败退回普通调用抠 JSON。上传表格按调用方给的数据版本查。永远不抛,模型没配好、调用失败、触顶都落在返回值里 ThearchyHelios 2026-10-05 00:34:17 +08:00
  • e46ff55fd4 数据源查询工具加 force_readonly:核查的 agent 另起一路、没有审批关卡兜底,要查的源却可能可写。开了就不管源可不可写,一律按只读守卫检查:先过一遍和 run_query 相同的检查(多条语句、结构变更照原来的说法拒),再按只读判,写语句交回「这次查询只允许读取数据」、不执行,数据原样;查询照常落查询快照。工具描述跟着写「只读」,审批判定也不再把写语句当危险调用。只靠守卫这一道:连接池按源缓存、不分只读与否,不能为此另起一个只读池(缓存键相同,会把这个源平时用的可写连接换成只读)。build_datasource_tools 透传这个参数,不传时一切照旧 ThearchyHelios 2026-10-05 00:26:04 +08:00
  • 031aae9343 SQL 语义:data/sql_semantics.py 给双盲复算、运行对比、反方审稿共用。normalize_sql 按方言解析、重新生成(去注释、统一关键字和空白、按方言转换不加引号的名字),再把字符串和数字换成占位符:只改了字面量的两条 SQL 规范文本相同(定时运行每期日期不同,不算模板变了),字面量按规范文本里的先后列出;解析不了退回逐词规范化,照样认得出只改了字面量。facets 把查询拆成表、连接(类型 / 关联进来的表 / ON 条件)、WHERE 合取式、时间条件(列 / 运算符 / 取值)、分组、聚合(函数 / 参数 / 去重)、HAVING、LIMIT:别名换成真实表名,比较两边排好顺序,GROUP BY 1 和别名换成表达式,CTE、子查询逐段收集,只透出一张表的 CTE 换回那张表的列,逗号连接写在 WHERE 里的等式算关联条件,相关子查询到外层找别名;解析不了带 parse_error,从不抛。diff_facets 每处不同给一句中文(「A 按支付时间 paid_at 筛时间,B 按下单时间 created_at」「A 排除了 is_deleted = 1 的行,B 没有」「A 对 order_id 去重计数,B 没去重」),两边叫法可以换成「原流程」「盲算」,列的中文名可以用 catalog_labels 从数据目录取;只换了一张表时说一次「查的是哪张表」,其余按不写表名的写法比。复用 sqlcheck 的 dialect_of、_conjuncts、_bare_column、_unparen ThearchyHelios 2026-10-05 00:22:51 +08:00
  • 6b272de6f9 审批质询的用量计进运行用量:质询不在图里执行、不发 llm.end,花的 token 和金额写在 approval.inquiry 事件数据的 usage 里(input_tokens、output_tokens、cost_usd、calls,可带 unpriced_calls),以前运行用量只认图的状态和 llm.end,质询花的钱在运行页上看不见。_usage_of_events 把质询的用量单独加总放在 inquiry 下:llm.end 这本账要和状态那本比大小,质询花的两本里都没有,混进去比会被状态那本盖掉。_finalize 照旧算出图的用量(成功取状态,其余两本取大)后再加上质询的,明细另记在运行用量的 inquiry 下;停在审批时被放弃的运行,放弃时补上这次停下期间的质询。停过两次、两次都问过的,按上次记下的 inquiry 先减后加,每次质询只计一遍。没有质询的运行用量和以前逐字相同 ThearchyHelios 2026-10-05 00:18:22 +08:00
  • 3dbd69b561 往停下的运行里追加事件统一走 engine/run_append.py 的 append_events(run_id, items, *, require, seal=None):审批质询要在运行停在审批时把问答写进运行、随运行结束一起封存,探索运行封存之后还要能追加批注。事件流是封存的依据,清单按 seq 排序、run_events 的 (run_id, seq) 又不唯一,撞号会让封存核对时对时不对,所以照 _append_judged 的做法:同一运行在进程内排队,读 last_seq 后从 bus 接号(另取库里实际的最大序号兜底,last_seq 被别处写小了也不撞号),写事件和条件更新 last_seq 在同一事务里——interrupted 要求运行仍停在审批,sealed 要求仍是终态且封存没变,任一条落空就回滚、返回 None,调用方据此说明未写入运行记录;提交之后才广播。sealed 的事件带 post_seal: true;运行记录上的封存若早于最后一条结束事件(继续运行后又结束、还没重新封存的那一下),不算现在的封存,不追加,免得事件被接下来的封存收进去;调用方可传 seal 固定开始时看到的封存。事件类型加 approval.inquiry。测试用人工审批停住的运行:追加两条后批准、封存,verify 通过且改动追加的事件 verify 就对不上;恢复、继续运行、重新封存、别处写入抢在中间时都不写、last_seq 不动;连续和并发追加序号严格递增、全流无重复;恢复后前面的节点不重复执行,Agent 里批过的工具不重复执行(含升级前写下的断点) ThearchyHelios 2026-10-05 00:14:40 +08:00
  • 0eaaf71346 运行记下选项快照和来源:runs 加 options(JSON,默认 {})和 schedule_id(可空,建索引)两列。后面的核查设置要在发起时定下、整次运行沿用,审批停下期间改了设置,恢复和重放仍按发起时的(同 approval_default 的道理);定时任务要能找回自己发起的运行。RunManager.start 收 options、schedule_id 并落库,选项先深拷一份,调用方之后改自己的 dict 不影响快照;选项非空时写进每一段的 run.started(进封存范围),为空时 run.started 和以前逐字相同;恢复、继续运行照运行记录沿用,节点从 RunContext.extra 的 run_options 读同一份拷贝。RunOut 带 schedule_id,GET /api/runs 可按 schedule_id 筛,launch_run 原样往下交。旧库走 _COLUMN_MIGRATIONS 补列,存量运行回填 {} 和 NULL;create_all 不碰已有的表,新列的索引另由 _INDEX_MIGRATIONS 补建,索引名和新库 create_all 建出来的相同 ThearchyHelios 2026-10-05 00:07:07 +08:00
  • aa828021d7 核查设置:设置里加 verify 一组,双盲复算、反方审稿、审批质询共用。核查模型(接入、模型)空着沿用证据裁判模型的取值链;双盲复算 {启用, 允许的相对误差默认 1e-6, 查询次数, 时长}、反方审稿 {启用, 每份报告最多审几句, 每句查询次数, 时长}、审批质询 {启用, 每次查询次数, 时长},另有核查每日金额上限,上限存 null 表示不限。写法照裁判一组:PUT 先查后写,有一项不对整个请求回 422、说明写设置页上的叫法;库里存坏的项读出来按默认,三项各自那一组逐项补。verify_settings(session) 给节点和质询接口读,verify_model_spec(session, node_config) 按节点 → 设置 → judge_model_spec 取模型,整组取一级、不跨级拼。核查的每日计数不从设置接口进出,另加只读的 GET /api/settings/verify/spend 给设置页看今天花了多少 ThearchyHelios 2026-10-05 00:06:03 +08:00
  • b459c3bb58 核查花费账:engine/spend.py 照结论句裁判的每日计数做一本核查用的每日账(设置表 verify_spend 一行,按本地日期滚动)。调用前按估算预留,加上这笔会超过每日上限就不记、返回 None,上限为 None 表示不限;调用后按实际用量找补,跨了天不找补;价格目录里没有的模型只计次数。和裁判分开记:核查一次要查好几轮库、花得多,记在同一本账上会把当天的裁判挤到判不了、让报告出具无故降档。读改写按事件循环各持一把锁,并发预留不会一起越过上限 ThearchyHelios 2026-10-05 00:06:03 +08:00
  • 7820556ab6 发起运行的规则抽成 engine/launch.py 的 launch_run:以前全写在 api/runs.py 的 start_run 里、只认 HTTP 请求,后面的定时任务要用同一套规则发起正式运行,另抄一份迟早走样。正式运行只能从当前发布版本发起、口径升版未声明策略就拦、绑定的工具不存在就拦、发起后记受管级别那条日志和目录变化、口径升版处置,全部搬进服务;拒绝时抛 LaunchRefused(status_code, message, code),start_run 只剩一层包装,把它换回和以前逐字相同的响应(带机器码的仍回 {detail, code})。正式运行的快照图不成形,以前由 main.py 的 ValueError 兜底回 400,现在在服务里换成同样的 400 拒绝,调度器也拿得到明确的拒绝。node_setting、tool_bindings、missing_tools 跟着搬过去,runs.py 再导出,旧的导入路径照旧可用;runner 固定数据版本取绑定时改从 engine/launch 导入,不再依赖接口层。新测试先把 HTTP 的 17 种拒绝(含工具缺失的数据、工具、混合、超过 8 处四种说法)按原话写死、在旧代码上通过,再逐条比对直接调 launch_run 的结果;另测服务发起的正式运行照样写治理事件 ThearchyHelios 2026-10-05 00:03:24 +08:00
  • 6041073ef2 检查脚本骨架:check-all 另起的后端带 AGENTLAB_SCHEDULER=0,拷来的数据目录不会替原库到点发起运行、发出 webhook。新加 check-schedules、compare、verify、inquiry、bundle、whatif 六个占位检查(只打一行通过,输出格式和别的检查一样),登记进 ORDER 和 ESTIMATE,各工作包换成真检查 ThearchyHelios 2026-10-04 23:40:20 +08:00
  • 90dac0992b 复核套件骨架(前端):节点库加双盲复算、反方审稿(把关类,图标、配色、空配置,说明和卡片写明尚未生效,检查器照常打开)。路由加 /runs/compare(排在 /runs/:runId 前,标签页标题写「运行对比」)和 /schedules、/schedules/:id,都是页头加「功能开发中」的占位页;导航和命令面板在设置前加「定时任务」,快捷键 ⌥8,设置仍是 ⌥7;八个导航项在 480px 高的窗口里放不下,矮窗口的导航项从 40px 收到 36px。请求层从 api/client.ts 拆到 api/http.ts,client.ts 原样转出原有导出并加转请求函数;schedules、compare、bundle、inquiry、whatif 各一个空的命名空间文件,从 http.ts 取请求函数、挂到 api 上,不和 client.ts 互相导入。terms.ts 给各包占好文案块(RUN_COMPARE_TEXT 和配方对照的 COMPARE_TEXT 分开)。审批卡留两个插槽:payload.kind 为 dual_check 时的 DualCheckApproval,报告核对概况后面的 ChallengeSummary,都先返回 null。预览页自动收 dev/fixtures/*.tsx 导出的 cases,?syn= 先查这里再走原有用例。check-shell 跟着改导航项和快捷键的断言,check-copy 的 for_model 检查把 http.ts 和 client.ts 合起来看 ThearchyHelios 2026-10-04 23:40:20 +08:00
  • a3058e7df8 复核套件骨架(后端):先把后续几个工作包要用的位置占好,各包只改自己的文件。节点类型加双盲复算 dual_check、反方审稿 challenge,执行器是占位(记一条 info 日志后跳过,产出 skipped 和原因),校验按普通节点走,叫法进 labels,暂不写进助手的节点说明。出具契约留一个通用口子:成果节点上游任何节点产出里的 issuance_gaps(字符串列表)收进缺口,前面加上「节点类型「节点名」:」,出具随之降档、不会升档;只认这个成果的上游,写坏的条目跳过。路由先登记 schedules、compare、bundle、inquiry、whatif 五个空前缀,挂在 /api/runs 下的四个排在 runs.router 之前,以后加固定路径不会被 /{run_id} 吃掉。定时任务的调度先放空的 start / stop,AGENTLAB_SCHEDULER 默认开、0 / false / off 关,写进设置;启动时开着才 start,测试环境默认关 ThearchyHelios 2026-10-04 23:40:20 +08:00
  • ec7f6a573d 合入运行质量修复:结构化抽取截断重试、写作目录按模型窗口定篇幅并按来源均衡、缺失断言交回重写、审批卡标明运行类别并附报告核对概况、交给审批的报告探索运行也在节点里裁判、裁判小批分波地问、流式用量回传、金额估不出时写「金额无法估算」、证据目录省略警告照实说、日期时间按可读格式显示、助手写 SQL 用中文别名、大库没有数据目录时提示先起草 ThearchyHelios 2026-10-04 19:09:21 +08:00
  • 536c9de116 证据目录的省略警告照实说省略了什么:放不下不一定省略了查询。真实运行里查询全部列出、只是有的只列前几行,警告却写「0 次只列编号和摘要()。写作模型看不到这些查询的明细」。现在分三种写:有查询只列编号和摘要的照旧;查询都列出、有的只列前几行的写「N 次查询都列出了数据,其中 M 次只列前 3 行」并按来源列次数;只省略了表和字段说明的照实说。事件多带 compact、compact_rows,各来源带 compact;时间线按同样三种写标题。另外把测试夹具、注释和 check-decode 里沿用的那次运行的真实查询次数换成虚构的次数或概括说法 ThearchyHelios 2026-10-04 12:28:07 +08:00
  • 46330dfd96 模型不在价格目录里时运行金额写「金额无法估算」,不写 $0:真实运行里 token 记到了上百万,金额却是 $0,看着像没花钱。llm.end 发出时,用了 token、模型却不在价格目录里的标 unpriced(目录里标 0 价的本地模型不算);运行用量按 llm.end 数出 unpriced_calls,成功的运行也补上(状态里的用量分不出 0 是免费还是没价)。运行详情、画布运行面板、航迹的金额:一分都没估出来写「金额无法估算」,估出一部分写「≥ $x」,悬停说几次调用不在价格目录中。check-trace 补断言;流式用量测试和注释里的真实调用次数换成概括说法 ThearchyHelios 2026-10-04 12:27:38 +08:00
  • 720f842b82 结论句裁判小批分波地问:一次调用最多 8 句(原来 40 句),第一批单独问、之后每波最多 4 批同时问,几批共用剩下的时长;超时只丢没回来的那几批,回来的判定照样留下。真实运行里推理模型拿着 40 句的摘录在 30 秒的时长上限内没回来,交给审批的报告一句都没判成,审批卡只能写全部未裁判;同一个模型 5 句一批 3 秒多就回来了。金额上限按已花的加这一波已定下的估算算;第一批调不通(鉴权、网关挂了)时只撞这一次,后面的统一记未裁判 ThearchyHelios 2026-10-04 12:27:38 +08:00
  • fa842a7bec 交给人工审批的报告,探索运行也在节点里裁判结论句:审批人批准前就能看到判了几句、几句证据相矛盾。按需裁判要等运行封存之后才能判,封存前放开会动证据清单的完整性约束,所以这种报告改在节点里当场判,和正式运行同一条路;没有审批的探索运行照旧按需判,不在节点里花钱。审批节点审哪几份报告的认法抽成 reviewed_report_ids,审批卡和报告节点共用,两边说的「要人审」对得上。审批卡上没开裁判的探索报告改写「这份报告没有开启结论句裁判……开启后,交给审批的报告会在批准前判完」;开了裁判却没在节点里判的老运行另给一句。助手指引、出口契约注释、前端类型注释同步;审批暂停时按需裁判仍拒绝,测试改成只看点击不多一次调用 ThearchyHelios 2026-10-04 12:03:14 +08:00
  • ee0700eca6 合入 FA:结构化抽取截断重试、写作清单按模型窗口定预算并按来源均衡、缺失断言交回重写、日期时间按可读格式显示 ThearchyHelios 2026-10-04 11:43:21 +08:00
  • 470f8b6641 报告里单元格的 ISO 日期时间显示成「2026-06-30 08:21:39」,只改显示 ThearchyHelios 2026-10-04 11:33:09 +08:00
  • 4e1adec205 审批卡标明运行类别、附上审的报告的核对概况:真实运行里审批说明写着「批准后才会正式出具」,那却是一次探索运行;报告里一句结论和证据相矛盾,审批人批准时完全不知道。人工审批的卡上加一行运行类别和批了会怎样(探索运行写「批准后输出,这是探索运行,不是正式出具」,正式运行写从已发布版本发起);human 节点挂起时,上游直接连着的、或标题和说明里引用了正文(nodes.<id> 或报告的 assign_to)的报告撰写节点各带一份核对概况(payload.reports:同 report.checked 的 stats、结论句策略、裁判摘要、报告文档工件 id),卡上写「N 个数字都有出处」和结论句的核对状态(节点里判过的写判了几句、几句证据相矛盾;没开裁判或探索运行写「结论句尚未核对」),并给查看逐段证据的入口,点数字打开证据面板。check-stream 补断言 ThearchyHelios 2026-10-04 11:29:04 +08:00
  • 546d0e9326 没有数据目录的大库:助手「参考了 N 张表」那一行提示先起草目录。真实运行里的大库一张目录都没有,挑表和 SQL 检查都用不上目录,用户也不知道该先去起草。服务端 context 操作的每个数据源多带 source_id 和 catalog_tables(去掉驳回项后还有内容的表数);前端 copilotContext 在要挑表的大库 catalog_tables 为 0 时给出下一步「这个数据源还没有数据目录,起草后挑表和 SQL 检查会更准」,入口直达 /data/catalog/:sourceId(几个库时点名,老服务端不给目录表数时不提示)。check-decode、check-stream、check-chat 补断言 ThearchyHelios 2026-10-04 11:28:39 +08:00
  • 799c80b97e 清单有省略时不许断言「没有数据」:写作规则加一条,核对认出缺失断言交回重写一次,仍有的只标注 ThearchyHelios 2026-10-04 11:28:23 +08:00
  • 4e876ff9d8 写作者的出处清单按写作模型的窗口定篇幅,放不下时分优先级、按来源均衡,省略了什么照实说 ThearchyHelios 2026-10-04 11:17:13 +08:00
  • bf98ce16b8 运行复核把 agent_field_truncated 算作缺口(degraded),和 agent_field_unverified 同一档:字段都记空值、答案能用,缺口是输出额度在推理阶段用完了 ThearchyHelios 2026-10-04 11:14:41 +08:00
  • f4a9955cc3 助手写查库 SQL 时给结果列起中文别名:真实运行里报告表格的表头全是英文缩写的原始列名([[table:]] 原样用查询结果的列名)。节点手册里 Agent 查库的说明和写 SQL 的硬性要求都加上一条:结果列用中文别名,按方言加标识符引号(MySQL / MariaDB 用反引号,PostgreSQL、Oracle、SQLite 用双引号,不用单引号),只给最外层 SELECT 起别名;自查的列名核对把带引号的中文标识符抹掉再判,不再因为有带引号的中文别名就整条放弃核对、把猜错的英文列名一起放过去 ThearchyHelios 2026-10-04 11:12:00 +08:00
  • a46bad0592 助手搭多来源汇总的分析报告时默认开结论句裁判:节点手册的 report 一条写明几个 Agent 分头查库、或者几次查询合在一起写成的分析报告默认写 claims: judge,不写 judge 的预算(取设置里的默认),正式运行在节点里自动判、探索运行由读的人按需判,用户明确不要的不加。和受管级别「judge 必须写预算、拿不准就问」的取舍:那条只管要按受管级别发布的模板,普通草稿里默认开的 judge 不为预算问人;发布前修复缺预算要问的规矩不变。问数据路径原本定了不替人打开结论句策略,保留,并写明这条默认在问数里不适用 ThearchyHelios 2026-10-04 11:09:18 +08:00
  • fa5cb1d47b 助手写人工审批的说明不再许诺「正式出具」:真实运行里一次探索运行的审批写着「批准后才会正式出具」,成果节点也没有出具契约。节点手册的 human 一条写明只有成果节点配了出具契约、从已发布版本发起的正式运行才会出具,审批说明写「批准后输出」,运行类别由审批卡标明;自查新增 human_formal_issuance:这一轮写的审批标题、说明里有「正式出具」就交回模型改 ThearchyHelios 2026-10-04 11:07:40 +08:00
  • b45a4966c5 OpenAI 兼容接入开启流式用量回传:ChatOpenAI 只在没填 base_url 时默认请求流尾的用量,兼容接口都填了 base_url,一次运行 上百次模型调用记成 0 token、0 美元。构造时传 stream_usage=True;服务方不认 stream_options(点名它,或只回 400 / 422)时同一次调用去掉它重发、照常流式输出,并记下这个接口之后不再带它;重发也失败就报重发的错、不记。测试用假的 SSE 服务核对请求体、合并后的用量、退回和运行用量里的 token 与金额 ThearchyHelios 2026-10-04 11:05:33 +08:00
  • a43c530fb8 结构化抽取被截断时加大额度重试,仍截断就照实说是额度在推理阶段用完了 ThearchyHelios 2026-10-04 11:02:06 +08:00
  • b76758e371 合入业务数据目录:数据目录与表间关系、助手按任务挑表、数据剖析、基于目录的 SQL 检查、合并查询节点、截断结果不当全量、对话纠正与目录版本提醒,以及完整性检查中发现问题的修复 ThearchyHelios 2026-10-04 09:51:15 +08:00
  • 706f715529 剖析也核实外键关系的基数:外键只保证被指向的键唯一,子表一侧一行还是多行看数据;以前跳过外键,扇出检查对外键来的一对多只能报警告,受管发布挡不住订单关联明细后对订单金额求和。来源、状态、覆盖率不动,只补基数和「用数据核实过」 ThearchyHelios 2026-10-04 03:38:31 +08:00
  • 67136f9798 数据目录 F2b / D4 跟进:窄屏卡片里每项前面的字段名不再对读屏隐藏——表头收起后读屏靠它知道是哪一项;宽屏时它是 display:none,不会重复念 ThearchyHelios 2026-10-04 03:18:38 +08:00
  • 042ae3161f 数据目录 F2b / B3 跟进:发布前检查整理问题时保留 sql_level(canvas/issues.normalizeIssue 原来只留固定的几个字段,把它丢了,界面只能退回按 level 认) ThearchyHelios 2026-10-04 03:18:38 +08:00
  • ab9d45c428 数据目录 F2b:剖析报告和目录页读结构化字段,不再从原话里认——服务端最小改动:码值候选的结论带 pending(还有几个含义待填写),关系的结论带 cardinality_checked;报告里「N 个含义待填写」读 pending,基数写「已用数据核实」或「子表一侧未核实」读 cardinality_checked,挑表时跳过的空表读 empty_tables 列出来;表详情的关联关系标出基数已核实;剖析说明不带日期后,码值弹窗的说明后面按这一项的 updated_at 写时间;补后端测试和检查脚本的断言(假答复的 summary 不再写待填写) ThearchyHelios 2026-10-04 03:06:14 +08:00
  • 5b3839f787 数据目录 F2b:剖析的 409、剖析设置的 422 带机读码,界面不再从原话里认是哪一种——服务端用 api/coded.CodedHTTPException:剖析开始不了的五种情况带 code(profile_disabled、datasource_inactive、schema_missing、profile_busy、snapshot_tampered),保存数据源时剖析设置不合规带 code=profile_settings_invalid 和出错的那一项 field(max_queries……),给人看的那句不变;CodedHTTPException 多一个可选的 field;前端 profileBlockOf、profileFieldOfRejection 只认 code 和 field,没带机读码的旧响应按通用提示处理;补后端测试和检查脚本的断言(伪造的 409、422 都带 code) ThearchyHelios 2026-10-04 03:03:23 +08:00
  • bc615670ef 数据目录 F2b / A2:起草一项都没写进去时,只有「模型给了内容、只是和现有目录一致」才说「没有变化」——有表没起草、模型在某些表上没给出内容(model_error)、勾了用模型却没有一张表拿到可用内容(model_items 都是 0 或模型整体用不了),都说「目录没有更新:模型没有给出可用的内容,原因见下方」;补检查脚本的断言 ThearchyHelios 2026-10-04 02:52:43 +08:00
  • 7cd52a24bf 数据目录 F2b / B3 跟进:合入 F2a 之后一对多关联后重复计算也可能只是提醒级(只凭外键推出的一对多),发布前检查不能再按规则编号认级别——服务端最小改动:门禁里 SQL 检查的问题带上检查本来的级别 sql_level(别的问题不带、序列化时不出现),界面按它写「错误 / 提醒」和拦不拦;老服务端不给时按受管档的 level 认;补后端测试和检查脚本 ThearchyHelios 2026-10-04 02:52:43 +08:00
  • 88c63bfd41 合入集成分支 feat/data-catalog(d897981,含 F2a 的证据面板、时间线和服务端修复):自动合并,没有冲突;catalog_profile._relation_finding 两边的改动(F2b 的 previous_status、F2a 的 cardinality_checked 写在关系上)互不重叠 ThearchyHelios 2026-10-04 02:46:01 +08:00
  • 8d974ef9a0 数据目录 F2b:check-catalog 补几处截图点(只看运行中查询过的表、保存后的影响面提示、填完含义回到报告),CHECK_SHOTS 时存下供人眼复核 ThearchyHelios 2026-10-04 02:46:01 +08:00
  • 5590fa9cd7 数据目录 F2b / D4:390 宽时目录页不再挤着横向滚动——列表格和关联关系在框宽不到 40rem 时排成卡片(容器查询):表头收起,每项一行「字段名 值 状态」,没填的项不占行,关系的状态放在第一行,状态标识始终在框里;页头在窄屏只留标题,不再被挤出说明的残字;宽屏照旧是表格;补检查脚本的断言 ThearchyHelios 2026-10-04 02:42:46 +08:00
  • ac4ea030a8 数据目录 F2b / B3:发布前检查里 SQL 检查的问题带上和证据面板同一个级别标识(错误 / 提醒),并说清两个发布级别拦不拦:错误级在已发布级别只提醒、不拦,受管级别会拦下;结论那句话里点出其中几处是 SQL 检查的错误级问题,不再和「没指定模型」这类提示一个样;检查脚本的伪造门禁补上没有口径卡的图;补检查脚本的断言 ThearchyHelios 2026-10-04 02:36:26 +08:00
  • d897981865 证据接口查询步骤的 schema_artifact、catalog 只在这条查询对照过数据目录时才加:没有目录的源、老快照的查询步骤和以前一字不差(期 4 的金样逐字比对) ThearchyHelios 2026-10-04 02:35:33 +08:00
  • 6263725c2a 降档时报告页顶部写明出具档位和原因(B5):出具声明和 issuance 事件另带结构化的 sql_checks(哪次查询、问题、受影响的引用、对应的缺口),证据页签在报告上方放出具横幅,SQL 检查导致的降档单列一块写在显眼处、不在其余缺口里重复;不是完整出具时「N 个数字都有出处」不再画成绿色 ThearchyHelios 2026-10-04 02:33:15 +08:00
  • ec818d5b69 数据目录 F2b / B12:合并查询连好上游就自动带出输入——查询节点连到合并查询时加成一行,和连线同一步撤销;别名按查询的主表起(visits、orders,去掉库名、引号和注释),取不到再按标题里的英文,都没有用 q1、q2,不再用节点 id;重名加序号、避开 SQL 关键字;连线时还没选工具的,选上后检查器给「带出连着的 N 个查询节点」一次补齐;手动「添加输入」也按主表起;补检查脚本的断言 ThearchyHelios 2026-10-04 02:30:36 +08:00
  • fa052a0052 数据目录 F2b / C2:版本历史的「发布时的目录版本」按运行横幅的写法列每张表:「数据源」中文名(表名),没改过的表也写中文名(按数据源的目录清单补,取不到时只写表名);补检查脚本的断言 ThearchyHelios 2026-10-04 02:25:12 +08:00
  • fedd363f6a 数据目录 F2b / A5:版本历史开着时换工作流,选中的版本跟着工作流走——上一张选的 v2 不再拿去请求新的那一张(没有这一版就 404、控制台报错),换过去之后没有展开的版本;补检查脚本的断言 ThearchyHelios 2026-10-04 02:24:52 +08:00
  • 31531925a9 写作指引说清 [[see:]] 只放句末、码值写含义(A4、B4):写作规则后面加两条,依据标记渲染后不显示,写进句子中间会留下「以 为依据」这样的断句;涉及码值时写含义(「作废记录」),不写码值本身,数字核对不放宽。组装报告时认出拿得准的句中写法(「以 [[see:…]] 为」「根据、按照、基于、参见、详见 [[see:…]]」)记 inline_see,交回写作者重写,重写不好也不判失败;助手写报告节点的指引同样写明这两条 ThearchyHelios 2026-10-04 02:24:49 +08:00
  • a5a68488f0 数据目录 F2b:助手「建议更新数据目录」卡片补上服务端对一项的说明(新增的关联关系没写基数、又推算不出来时 PatchChange 带的 note),写在那一项下面;解析时保留 note;补检查脚本的断言 ThearchyHelios 2026-10-04 02:19:38 +08:00
  • 99ca98a87d B1 服务端自动挑剖析表不再挑中一批空表:候选里还有待核实(推断)关系的表排在前面,再按使用次数、表结构顺序;挑表时先估行数,确知是空表的跳过并记进 empty_tables(最多估 30 张、最多用掉查询次数上限的一半),估行数的查询算进这张表的查询数;候选全是空表时说明写明是空表 ThearchyHelios 2026-10-04 02:03:36 +08:00
  • 661f6a38d7 A7 剖析写进目录的说明不再写日期:以前写的是 UTC 日期(at[:10]),和界面上按本地时间显示的修改时间对不上;改为「数据剖析:…」,时间以这一项的 updated_at 为准。is_profile_note 同时认升级前带日期的「数据剖析(日期):」;same_profile_note 继续兼容旧数据:只差日期、或一段带日期一段不带的同一结论都算相同,升级后重新剖析不会给每张表升版本 ThearchyHelios 2026-10-04 01:59:10 +08:00
  • 46c3fd3093 A6 扇出检查只在一对多确有其事时报错误:关系人工确认过,或数据剖析在数据上核实过子表一侧的键不唯一(关系上记 cardinality_checked,子表太大没核对的不算)才给 error;只凭外键结构推出的一对多降为 warning,说法改成「可能重复计算」,下一步写确认关联表里每个键只有一行、或先汇总再关联;人工编辑提交里带的 cardinality_checked 不作数;级别说明「结果必然有误」改为不夸大的说法;2B、F1 的测试按新规则更新:外键 + verified → warning,剖析核实过 → error,人工确认 → error ThearchyHelios 2026-10-04 01:57:01 +08:00
  • 0df5e7d4af A2 模型起草一项都没写进去时不再算成功:认出没有 tables 外壳的单个表对象;结构化输出是空壳(只有表名、没有可用字段)时改走纯文本再问一次;某张表最终没有可用内容记 model_error「模型没有给出这张表的可用内容」;起草结果每张表多一个 model_items(模型给了几项可用内容),界面据此区分「和现有目录一致」与「模型没给内容」;「没有变化」改为只说起草出的内容与现有目录一致,另加「目录没有更新」一句;假模型能模拟空壳、单个对象、某条路不可用三种实测回复 ThearchyHelios 2026-10-04 01:48:07 +08:00
  • 15d5caf19f 运行时间线:查询那一行用 SQL 检查清单列出 tool.end 带来的检查结果,副标题数一下错误和提醒;并行的两个查询节点用同一个工具时按「节点 + 工具名」配对,结果不再配错节点(A1);指标所依据的查询没通过检查那一行读结构化字段(受影响的指标、问题、检查结果),「打开设置」改为「打开「取数」的 SQL」,落到来源查询节点的 SQL 那一栏而不是口径卡(B2);口径卡不完整、合并查询的警告也改读字段,不再按中文原话解析;助手自查的 SQL 检查问题和证据面板共用 lib/sqlcheck 的读法,关系编号不再丢失 ThearchyHelios 2026-10-04 02:18:45 +08:00
  • adcde155e1 合并查询的预览不再被标成「查询已达行数上限」:合并结果没有截断、只是预览存了前几行时记为「此处仅为预览」,表格脚注写「显示前 5 / 6 行」;只有合并结果本身超过上限才说截断 ThearchyHelios 2026-10-04 02:18:32 +08:00
  • 0c65b4bea6 助手「参考了哪些表」展开后,按需求挑过表的数据源排在最前面(请求里点名的库不再压在一串小库后面);带字段的表和只提供了表名的表分开数:标题写「参考了 26 张表的字段」,副标题写「另有 206 张表只提供了表名」 ThearchyHelios 2026-10-04 02:18:14 +08:00
  • 9c8bed2f1b 合并查询的警告带上结构化字段:键类型不一致带 keys、detail,行数放大带 rows、input、input_rows、duplicates,结果截断带 rows、max_rows,随运行日志一起发出,界面读字段,不再从中文原话里解析 ThearchyHelios 2026-10-04 02:17:32 +08:00
  • 2c160f0ac9 运行时间线看得到单条查询的 SQL 检查:调用工具节点、Agent 和协作团队里的查库调用,tool.end 事件单独带上这次查询的检查结果(只留给人看的字段);preview 只有结果的前一截,检查结果以前通常被截掉 ThearchyHelios 2026-10-04 02:17:32 +08:00
  • 737c7454d5 数据目录 F2b / D6:影响面里「直接引用」的标签改用强调色,不再用琥珀色——它说的是引用关系的强弱,不是警示;「可能涉及」仍用次要文字色;补检查脚本的断言 ThearchyHelios 2026-10-04 02:15:58 +08:00
  • b328341a86 数据目录 F2b / B9:在目录页改过目录(编辑保存、确认、驳回、填码值)之后,表头也说「已保存。N 个已发布模板引用这张表,下次正式运行时会提示数据目录有变化」,和助手卡片保存后同一句;带「查看模板」跳到影响面一栏,可收起,没有模板引用时不说;补检查脚本的断言 ThearchyHelios 2026-10-04 02:15:23 +08:00
  • 1483af474c 数据目录 F2b / B8:确认含义还空着的码值时先说清楚——「确认本列推断」原本一键确认,「确认本表全部推断」和单项「确认」也一样,码值里有含义待填写时问一句「有 N 个码值的含义待填写,确认的是取值清单」,确认后这些码值仍显示「含义待填写」、还能填写;补检查脚本的断言 ThearchyHelios 2026-10-04 02:11:31 +08:00
  • 434d825926 数据目录 F2b / C3:剖析报告里关系的结论(升为已验证、仍为已验证、保持推断……)不再是像链接的蓝色正文,改成状态标签的样子:带框的小标签,图标着状态色,文字用次要文字色;补检查脚本的断言 ThearchyHelios 2026-10-04 02:09:54 +08:00
  • 163f3b96b3 数据目录 F2b / B7:剖析报告里关系的结论按实际变化说——原本就是已验证、这次照样核实的写「仍为已验证,覆盖率 x」,从推断升上来的才写「升为已验证」,已验证降回推断的写「降为推断」;服务端最小改动:关系结论多带 previous_status(剖析前的状态),summary 同步写「仍为有确证」;补后端测试和检查脚本的断言 ThearchyHelios 2026-10-04 02:09:47 +08:00
  • 31305a352d 数据目录 F2b / B6:剖析报告里点「填写含义」,填完(保存或取消)回到报告,不用重新剖析:刚填的一列改写成「含义已填写」、按钮换成「修改含义」,焦点落在下一列还有待填写的「填写含义」上,一列接一列地填;正在编辑这张表时说一声再回报告;补检查脚本的断言 ThearchyHelios 2026-10-04 02:06:47 +08:00
  • 09fed6a414 数据目录 F2b:目录页的修改时间、单项弹层的更新时间改用全站统一的短格式(formatTime:今天「10:05」、今年「9/28 10:00」),完整的带秒带时区的时间放进悬停;补检查脚本的断言 ThearchyHelios 2026-10-04 02:03:35 +08:00
  • a0f2e9a557 数据目录 F2b / C10:清单里没填中文名的表,标题直接写表名(正文颜色、加粗),「未填写中文名」降为下一行的淡色提示,不再一屏几十行同一句话认不出是哪张表;补检查脚本的断言 ThearchyHelios 2026-10-04 02:02:27 +08:00
  • 8299d0825d 数据目录 F2b / C9:概览的进度条色段改成和上方文字同一个先后(有待确认项、没有待确认项、没有目录),下面加图例说明每种颜色;色条和图例只给眼睛看,数字由那句话念;补检查脚本的断言 ThearchyHelios 2026-10-04 02:01:38 +08:00
  • b9ce058848 数据目录 F2b / C1:清单筛选「全部已确认」改为「没有待确认项」,「有未确认项」改为「有待确认项」,概览、顶部摘要、排序同步改写——「已确认」专指人工确认,只有已验证项的表不再说全部已确认;悬停写明已验证的项由外键约束或数据剖析核实、不需要逐项确认;补检查脚本的断言 ThearchyHelios 2026-10-04 02:00:48 +08:00
  • c133967bf9 冻结的数据目录有了读取方:证据接口的查询步骤带上表结构快照 id 和这条查询用到的表当时的目录版本,证据面板写「数据目录:订单 第 3 版」;冻结时保留被驳回关系的编号和状态(不放内容),新增按冻结的那份重建 SQL 检查器的 frozen_checker,驳回过的外键关系不会被推回来 ThearchyHelios 2026-10-04 02:00:17 +08:00
  • bba57972c2 合并查询的列追不到逐格来历时,证据面板也看得到输入查询的 SQL 检查:合并步骤的每个输入带上它自己的检查结果(不带给模型的那句),界面在输入下面列出级别、规则名和说明;集中加上证据面板和运行时间线要用的文案 ThearchyHelios 2026-10-04 01:59:26 +08:00
  • fe4f551d71 数据目录 F2b / B13:清单的搜索词、筛选、排序和「只看运行中查询过的表」写进地址的查询参数(q / filter / sort / used),刷新、前进后退都不丢,打开表和回到清单时带着走;点了立刻生效,搜索词停手 200ms 再写地址;补检查脚本的断言 ThearchyHelios 2026-10-04 01:59:25 +08:00
  • 48ac7dbc92 数据目录 F2b / B10:顶部摘要点进来只列运行中查询过的表,和摘要同一个口径——摘要说「4 张还没有目录」,清单就是那 4 张;清单上挂「只看运行中查询过的表」标签,可取消;筛选按钮的数字按同一口径算;补检查脚本的断言 ThearchyHelios 2026-10-04 01:54:14 +08:00
  • f1d4582d4f 报告直接引用没通过 SQL 检查的查询时出具降档:报告里引用的查询格子、表格和依据(含合并查询的输入)有错误级检查就记缺口;按出问题的那条查询归并,同一条查询算出几个指标、又被引用时只记一句并列出受影响的引用;运行日志也按查询归并成一行,带上受影响的指标、问题、检查结果、来源节点和要改的栏;写作目录里给这些查询标「存疑」 ThearchyHelios 2026-10-04 01:52:24 +08:00
  • fbc48b4e61 README 补上数据目录:核心能力加数据目录、SQL 检查、跨库合并,节点类型加合并查询,新增一节说明数据目录的读法、来源与状态、剖析的约束、版本与提醒,开发与验证更新测试数和检查项 ThearchyHelios 2026-10-04 01:33:42 +08:00
  • 0f537a9cad 只探查了部分表时,查结构工具不再对没探查到的表说「没有」:说明不在已探查范围、无法判断,并给出查数据字典的办法 ThearchyHelios 2026-10-04 01:31:16 +08:00
  • 37d2f1d1d4 合入完整性修复 F3:Agent 查库的模板也记目录版本并提醒「可能涉及」,只探查了部分表时清单、目录页和助手上下文都说明,升级入口接上 SQL 检查,截断判定和工具节点遍历各收成一处 ThearchyHelios 2026-10-04 01:28:59 +08:00
  • 9c02833544 数据目录 F3 / B4 界面:目录页顶部说明「这个数据源共有 N 张表,只探查了前 200 张」,写明为什么只取了这些、其余的助手也看不到,下一步回到数据源卡片换 schema 或缩小范围后重新探查;助手「参考了哪些表」那一行截断了的库写「共 N 张,只探查了 200 张」;补检查脚本的断言 ThearchyHelios 2026-10-04 01:25:19 +08:00
  • 3ece89872b 数据目录 F3 / B1 界面:运行横幅、时间线和版本历史把 Agent 可能查询的表和直接引用分开说——直接引用写「有变化」,可能涉及写「Agent 可能查询的表有变化」并另起一组;版本历史按新的发布记录两组列出,发布之后才建目录的表也列;补发布记录两种写法的单测和三个检查脚本的断言 ThearchyHelios 2026-10-04 01:24:50 +08:00
  • e5b8ef4751 数据目录 F1-A4 补:编辑时清空码值,「已列出全部取值」跟着失效,不再另算一处修改 ThearchyHelios 2026-10-04 01:24:34 +08:00
  • d805f64195 数据目录 F1 一致性:日期列的判定抽成 catalog.is_date_column,数据剖析(唯一日期列提议业务日期)和 SQL 检查(按业务日期以外的时间列统计)共用,只有时刻的 TIME、整数存的时间戳两边都不算;表名匹配统一按 name_key(只把 ASCII 字母转小写),resolve_table_name 和 SQL 检查里认表名不再按 Unicode 转小写,和使用次数、影响面同一个口径;切词合并成 catalog.name_words,剖析不再另写一份;更新过时的说明(错误级检查已经上线、剖析预算的叫法跟设置界面);码值比较不分大小写保留,注释写明是照顾 MySQL 默认排序规则、宁可漏报 ThearchyHelios 2026-10-04 01:17:29 +08:00
  • f5e8a436f1 数据目录 F1-B3:计算公式在人工整份提交和模型起草两条路径上也拦下——人工提交里改动过的文字项像公式就整份不收(422,说明公式写进口径卡),模型起草出的公式项丢掉;和对话提案同一套判断。只查改动过的项、不进结构校验:库里已有的含公式的项不会挡住这张表的写入 ThearchyHelios 2026-10-04 01:15:05 +08:00
  • bf5bee9246 数据目录 F1-B2:剖析写的备注只是开头的日期变了、其余都没变时,保留旧的项、不升版本(人工确认过的关系也一样)。以前隔天重新剖析、数据没变,目录版本也加 1,发布时记下的目录版本就对不上,之后每次正式运行都误报目录有变化 ThearchyHelios 2026-10-04 01:14:08 +08:00
  • b078d08ffe 数据目录 F1-A4:码值项加「已列全」标记(complete: true),只有人工明确勾选、或剖析整表统计(没有只看前若干行)得到的码值才有;码值不在码值表中的检查只认标了它的码值表,给模型的话改为提示核对取值,不再叫它照目录里的码值改。以前经对话只补了 status=9 表示作废,之后 status = 1 就被报提醒,模型还可能把对的 SQL 改错。提案补充码值时沿用原有的标记、自己不能标;目录页的码值编辑和填写含义弹窗加「已列出全部取值」勾选,表格里标「已列全」,检查脚本跟上 ThearchyHelios 2026-10-04 01:13:13 +08:00
  • 52aaaaf945 数据目录 F3 / B4 服务端:没探查到的表说出来——目录清单返回 schema_truncated、schema_total;助手上下文的 total 用表结构缓存里的真实总数,截断时 context 操作带 explored,提示词写明还有几张没探查到、不认识的表名先查结构,挑表请求也写明只列了探查到的 ThearchyHelios 2026-10-04 01:11:03 +08:00
  • 6c30becd94 数据目录 F3 / B8:一键升级的语义层(assist_upgrade)自查、修正轮和最终判断都带上基于数据目录的 SQL 检查器,和发布门禁一个口径——助手改出一对多关联后求和这类 SQL 会交回去改,改不好就作废 ThearchyHelios 2026-10-04 01:09:12 +08:00
  • 4c7cfa62b2 数据目录 F3 一致性:查询结果的截断判定抽成 data/engine.py 的 RowCollector,查询层和合并查询都调它,不再各写一遍 ThearchyHelios 2026-10-04 01:08:42 +08:00
  • c12f0f2852 数据目录 F3 一致性:助手上下文里「现有工作流用到的表」改用 tool_queries 认节点(以 sqlcheck.tool_query 为准,换了类型的节点残留的查询不再算);正式运行的目录变化事件改用 EventType.CATALOG_DRIFT;写明关系编号区分方向、有意不改 ThearchyHelios 2026-10-04 01:07:41 +08:00
  • fd3ec43662 数据目录 F1-A2:在目录页去掉外键约束、命名推断、数据剖析、模型起草得出的关联关系改为驳回、保留编号,只有人工添加的才真正删除;改了两端的旧关系同样驳回。以前删掉的推断关系下次起草又加回来,关系图按表结构现推也会带回来,照样驱动 SQL 检查和助手挑表。表结构推得出的人工关系(人工改过基数的外键关系)去掉时也只驳回。编辑界面上这类关系不给「删除」只给「驳回」(保存时等同单项驳回,可撤销),检查脚本跟上 ThearchyHelios 2026-10-04 01:07:35 +08:00
  • 327c551bdb 数据目录 F3 / B1 服务端:SQL 只写在 Agent 里的模板也提醒目录变化——发布记录分直接引用和可能涉及两组,Agent 和协作成员绑定了查询工具的源记下所有有目录的表,正式运行两组都比、每张表标明属于哪一组;只记了直接引用的旧记录照旧按直接引用比;哪些节点算写死的查询统一交给 tool_queries ThearchyHelios 2026-10-04 01:07:15 +08:00
  • 0fa498ac18 数据目录 F1-A1:对话提案确认关联关系时不再抹掉基数和覆盖率——覆盖率是剖析测得的,一律沿用;基数没写时沿用已有的,新增的按目标表的主键或唯一约束推算,推算不了留空并在提案这一项上说明(PatchChange.note)。以前剖析测得多对一的关系经提案确认后基数变空,一对多关联后重复计算的检查静默失效 ThearchyHelios 2026-10-04 01:03:32 +08:00
  • cece781b5a 合入集成分支(阶段 2A 数据剖析、4B 剖析与 SQL 检查界面及修正)到 4A:两边功能都保留 ThearchyHelios 2026-10-03 12:35:47 +08:00