• - create 载荷 sFormId 改写模块 id(与 ERP 原生同构;表单 id 无
      SysBillNoSettings 编号规则,执行期重生成单号必撞已用号)
    - ai_op_queue 停写 sUserId(ERP 执行器已切读 sMakePerson;列暂
      不可删——ERP myTodos 仍 COALESCE 引用)
    - saaslocal 开启 erp.dry-run.enabled(ERP /business/checkBusinessData
      已上线,保存前真实校验链 validate-only)
    
    联合 e2e 实测:建报价 BJD202607091(sFormId=模块id、主从落库)→
    审核 success+200 → 重复审核 fail+409 → 改字段 success+200 →
    取消 fail+450 → 幂等 success+201;dry-run 保存时真实调用(ERP 日志
    时刻对齐)且零落库。
    zichun authored
     
    Browse Code »
  • …ently bind first — 31 same-name groups in eleproduct alone); deterministic candidate order (sId tiebreak); LIKE wildcard escaping; quote non-FK branch phantom gate; cold-read warm lock vs concurrent double-fill; resolveNameField(+ByFormId) phantom name-column cross-check (55/108 fk tables)
    zichun authored
     
    Browse Code »
  • …r + shown=resolved record name (WYSIWYG); phantom-column cross-check vs information_schema (resolveColumn/businessFields/skeleton/normalize hard gate); ledger cold-read always warms full window (partial-window rebuild permanently truncated history); CORS origin allowlist (configurable, default localhost) replacing wildcard+credentials; stale 'confirmed' docs
    zichun authored
     
    Browse Code »
  • …e shared kernel + PreviewService (previewId Redis binding, save-side re-validation, state legality checks) + queue-only OpService (sMakePerson dual-write, status=confirmed); retire ProposeWriteTool/OpController/AuditService/ErpClient writes; preview card frontend; skills/prompt/bench sync; D: checkBusinessData stub behind erp.dry-run.enabled
    zichun authored
     
    Browse Code »