Skip to content

Releases: cnlarry/EOS

EOS v0.4.0

Choose a tag to compare

@cnlarry cnlarry released this 07 Oct 17:36

EOS v0.4.0

[0.4.0] - 2026-10-08

数据库:本版含迁移 330–338(共 9 个),部署时由 EOS.API 启动自动执行。

BREAKING

数据归属三列 CI / OWNER / OWNER_G 全库物理下线(迁移 334 / 335)——本版放弃「按执行范围看数据」能力:

  • 旧系统沿用的行归属语义退役:EXEC_TAG 的 B/C/D/E(按建单人 / 按组的数据范围过滤)统一收敛为 Z,
    即保持可浏览、不再有范围语义。升级后,原先受范围限制的模块上,账号会看到全部行
    (以前因范围过滤看不到的行会显现出来)。
  • 影响面已实测很小:全库仅 5 条组权限记录在用(D 4 条 / C 1 条),其中 4 条挂在没有主表的模块上,
    实际生效的只有组 CN 的 2 个账号 @ 模块 1204(BOM_STRU_M),而这两条规则下的人本来就一行都看不到。
  • 外部程序注意:若有程序直接读这三列,或读 SYSDD / SYSDH 自身的 CI(旧系统的公司级授权标记),
    需要跟着改。这三列在库内无视图 / 存储过程 / 函数依赖、无索引、无外键,删除后库内自洽;
    「谁建的单」仍可在生命周期列 CREATE_PERSON 上查到。
  • 保留未动:DEPT.CI / SYSDN.CI(部门 / 员工所属公司,是公司主档现成的锚点)、
    WF_APPROVE.OWNER(同名列,语义是审批待办人)、COMPANY 表整体(含哨兵行 DEFAULT)。
  • 无需人工干预:DbUp 启动时自动执行(334 / 335 为非幂等脚本,按迁移台账判重)。

Added

  • 上下游守卫:批核时检查上游(引用来源)是否已批核、解批时检查下游是否仍处批核状态——
    「引用了没批核的基础资料」的单据不再能被批核,「下游还批核着」的单据不再能被解批,
    命中时给出可读拒绝(指明是哪张上游 / 下游表、哪个键值)。判定依据是库内按业务动作派生的
    单据关系登记边,按复合键精确匹配,覆盖引擎接管与无副作用两条批核路径。
  • 税率随税别主档带出(迁移 330):维护税别时一并回填税率,录单不再手工重复填。
  • 两张系统清单报表(模块清单 / 数据表清单)改按汇总数据源登记,脱离长期 404,
    从报表中心可以正常打开。

Changed

  • 月结单:关闭自动批核,并挂上批核期快照闸(迁移 331)——批核前必须先取快照,
    避免批核后数据被继续改动。
  • 月结单明细字段改为只读(迁移 332 / 333):恢复既有口径,明细不再允许就地编辑,只保留「取消必填」。
  • 主档编号建立后不可修改:编辑态只读,写路径也拒收改编号的请求。
  • 无副作用批核能力不再绑定「自动批核」开关,且与常规批核一样要过批核阶段校验闸。

Fixed

  • 空主表模块的报表定义解析不再 500。
  • 库内空串列不再被误判成并发修改(此前会把空串当成"有人改过")。
  • 明细为空时不提交 details,空白新行不进提交体(此前会写出无意义的空行)。
  • 报表取数条件去重,并收敛到用户实际填写项(迁移 337)。
  • SYSDD_REPORT 改名的调用面补齐,并修掉 SORT_IDX 空值崩溃
    (真库遇到 NULL 时整条读取会失败)。
  • 深浅色主题切换失效(Tabler 1.6 的配色改由 color-scheme 决定)。

Removed

  • 三张长期打不开的报表退役(迁移 338):SFC_Process / SFC_Daily / CUS_ProIn。
    它们的归属模块(28 托外管理 / 1804 计件工资 / 3003 关封及报关单)都是没有承载页的目录模块,
    报表本身既无主表也无汇总数据源,按可达性判据必然 404——经业务确认后直接退役;
    排序 / 收件箱 / 订阅 / 用户状态 / 取数条件五张引用表按同一套清单级联清理,不留孤儿行。

EOS v0.3.0

Choose a tag to compare

@cnlarry cnlarry released this 06 Oct 16:33

EOS v0.3.0

[0.3.0] - 2026-10-07

数据库:本版含迁移 311–329(共 19 个),部署时由 EOS.API 启动自动执行。

BREAKING

模块的「呈现配置」与「能不能写」换了真源,已在运行的实例需要重新发布工作台定义才能与库内一致
(本版发布前用 scripts/republish-all-whitelist.ps1 完成一轮重发布)。

  • 呈现配置只在表单设计器里配:模块管理不再有「统一表单」页签,也不再读写那几个字段。
    打开方式(本页签 / 新页签 / 弹窗)与弹窗宽高在页签行右端配置;「每行几列」改为页签级声明
    ——同一个表单的不同页签可以各自几列,随版式保存即时生效(无需走「保存 → 发布」)。
  • 「能不能新增 / 修改」改由写名单与只读名单决定:MODULES 的 NEW_URL / MODI_URL /
    HELP_URL 三个路由列删除,M_URL 只表示承载页(空 = 目录节点或未声明,单据模块默认落统一工作台)。
    外部若有程序按旧列判权限,需跟着改;已发布的工作台定义快照若仍是旧判据算出来的,需重发布。
  • 六个已下线的管理页整模块退役(模块行与其连通数据、报表定义、权限行、版式挂件一并删除;
    不影响业务单据):2205 报表过滤条件设置、1399 仓库综合报表、2308 工作任务记录、
    2202 页头设置、2203 页尾设置、2204 表尾设置。主表 SYSQR_DA(旧报表条件定义)、
    SYS_WORK_TASK 随之删表;旧操作日志表 SYSDF(11134 行)导出 CSV 备查后删表,
    归档留在部署机本地、不入版本库。报表条件的真源仍是 SYSQR_DEFAULT(未动)。
  • MODULES 卸下旧系统遗留列:批核状态 / 批核人 / 批核日期 / 所有者 / 所有者组 / 公司别 /
    建立人 / 建立日期共 8 列,以及内置动作「受控注册码」白名单列。这些列在库内要么恒为占位值
    (批核日期全是 1900-01-01、公司别全是 DEFAULT、批核人全空),要么没有任何消费方;
    模块批核是单据主表的事实,不在模块行上。表由 52 列收敛到 44 列。

Added

  • 模块备注(MODULES.REMARK):模块管理「基础」页签可直接写「这个模块是干什么的、有什么口径约定」,
    随保存落库——给接手的人看,不参与运行期契约。
  • 表单设计器:画板按声明的弹窗尺寸所见即所得;页签行右端配置呈现,页签右键设「布局列数」;
    设计态与运行态同源(同一路由 + ?design=1)。
  • 基础资料随建库生成:公司与部门、员工等基线数据随建库种子落地,新库不再需要人工补。
  • 元数据与物理结构对账(系统管理 › 数据表维护):给出判定、清理与选取式登记。
  • 菜单搜索支持回车打开第一项。

Changed

  • 单据「明细录入」不再逐字失焦(列身份不稳导致输入被抢焦点)。
  • 14997「应收未收(明细)」移入只读表单名单:它的过滤条件是批核状态,新增入口本不该开。

Fixed

  • 删除仓库时改为清理自动库位或给出可读拒绝(不再撞库约束报 500)。
  • 新增态默认值展开日期哨兵,避免客户端回传占位值被服务端拒绝。
  • 工作助手:指标取数按能否算出挑来源模块;相对时间问法注入当前日期作基准;
    工具调用写进正文时不再被当成回答;用户消息不再被长回答淹没;全屏顶部条不再被会话选择拉长。

Removed

  • MODULES 的路由三列(NEW_URL / MODI_URL / HELP_URL)、模块级栅格列数、内置动作白名单列;
    六个下线模块与其随行表;19 条指向不存在表的元数据登记(字段维护页的坏条目)。

EOS v0.2.0

Choose a tag to compare

@cnlarry cnlarry released this 04 Oct 07:25

EOS v0.2.0

[0.2.0] - 2026-10-03

数据库:本版含迁移 294–310(共 17 个),部署时由 EOS.API 启动自动执行。

BREAKING

工作助手的设置改为统一参数框架(107 项参数)。升级前请确认以下几项:

  • 旧表 dbo.ASSISTANT_SETTING 退役,取值并入统一参数表 dbo.SYSSS(OWNER_MODULE = 3105)。
    迁移会搬运原有 9 行,但键名一律改成全大写 + 下划线(SystemPrompt → SYSTEM_PROMPT);
    若有外部程序直接读这张表或按旧键名取值,需要跟着改。
  • 旧的四份配置节不再被读取;其中 AssistantActionLimits 节里残留任何键都会导致启动失败,
    升级前请把该节清空。
  • /admin/assistant/settings 的响应结构改为按域分组(groups + items),调用方需适配。
  • POST /api/v1/assistant/kb/search 的 TopK 被夹到合法区间(上限由参数控制),响应新增 topK 字段。
  • 「恢复默认」的语义由「删掉覆盖行」变为「把值清空」——界面操作不变,接口调用方需注意。

Added

  • 业务流程图(系统管理 › 数据表维护):以「字段取值来源」与「已登记单据关系」两张表反推表间关系,
    两级下钻(业务域总览 → 域内表间关系);支持上游视角(本域的表被谁引用)、连线细节面板与搜索定位。
  • 表单设计器支持明细字段管理,以及设计态的间距、行高调整与页签删除。
  • 统一表单新增来源菜单,并在正则校验失败时定位到出错的字段。
  • 日期字段的类型与显示格式收口(迁移 309):原 datetime 家族中语义「只到天」的字段改为 date,
    录入控件与显示格式随之统一。
  • 工作助手:
    • 参数框架落地(107 项):参数由「代码目录 → SYSSS → 运行期装配」驱动,改完即生效、无需重启。
    • 能力面开关:27 个工具的开关双向生效——关掉后模型看不到该工具,幻觉调用被明确拒绝并说明「已被管理员关闭」。
    • 动作族开关可按模块配置(工作助手管理 › 助手设置)。
    • 模型面按用途分区(对话 / 嵌入),型号清单改为向厂商拉取并归档核实结论;模型「从目录里选」,
      行内「参数」承接逐条调参。
    • 云端嵌入接线落地:知识库的向量检索可用;kb_search 只注入相关性达标的片段,
      检索不可用时如实告知并继续回答。
    • 可观测性:对话进度、失败分类、反馈与处境信息可见化。
    • 新增三个只读工具:报表、单据历史、附件清单。
    • 作用域覆盖清单显示对象名称(模块名 / 员工姓名)。

Changed

  • 「模型与用量」改为一页两页签(模型页签为上下主子表),按钮统一为图标 + 文字,四张表按电子表口径开齐能力。
  • 模型页签改为主表 60% / 子表 40%;按天日期显示为 yyyy-MM-dd。
  • 首页与工作台高度改为整页自适应;长弹窗改为弹窗内滚动 + 页脚钉底。

Fixed

  • 选择器过滤 JOIN 与虚拟列 JOIN 不再重复同名别名(此前一查就 500)。
  • 助手「用途」下发改用 KindCode——枚举的默认序列化曾让模型列表在前端被整体过滤掉。
  • 助手最大输出上限三处走散(服务端校验仍卡在 20 万),导致预设值存不进去。
  • 字段保存增加无操作短路,并正确刷新快照。
  • 自建浮层统一按视口定位。
  • 「模型与用量」在矮视口下不再裁内容,告警压缩为每个用途一行,并去掉顶部黄色横幅。

Removed

  • 旧的工作助手设置表 dbo.ASSISTANT_SETTING 及其读写实现(取值并入 SYSSS)。

EOS v0.1.0 首个版本

Choose a tag to compare

@cnlarry cnlarry released this 01 Oct 13:18

EOS v0.1.0 首个版本

[0.1.0] - 2026-10-01

首个版本(2026-10-01 在提交 0ba49ed 上打 v0.1.0 标签)。本版是版本治理的起点,
不是一个功能交付的节点:它标记的是「这套系统当前的可用状态」,而不是「这一版新增了什么」。
其后的每个版本按提交类型递增,另行追加版本节。

本版快照的构成:

  • 技术形态:EOS.API(ASP.NET Core / .NET 10,唯一权限边界)+ EOS.Web
    (React + TypeScript + Vite 工作台),单一业务库 EOS.ERP,一切库对象经 Data/Migrations/
    的 DbUp 脚本版本化落地;
  • 数据域:采购、销售、库存、生产、质量、人力、财务与基础主档;
  • 表现层:界面形态由库内元数据(模块 / 表 / 字段)驱动;列表统一走 ErpTable 电子表格
    (表头排序、列宽拖拽、键盘导航、复制、吸顶表头),单据走统一表单工具栏(动作顺序固定,
    不随配置顺序漂移),选主档一律走 UnifiedChooser;报表以「归属模块」为唯一锚点并走版式资产打印;
  • 治理面:结构化日志与脱敏(ADR-025 / ADR-027)、全局异常捕获与报障编号(ADR-028)、
    用户问题反馈与一键日志打包(ADR-029)、版本与发布流程(ADR-026)、权限与操作审计。

关于版本号与数据库迁移的关系

产品版本(本文件与 version.json)与数据库迁移编号互不参与:迁移按 Data/Migrations/
的文件名字典序执行、以台账 ERP_SCHEMA_JOURNAL 判重,编号只是排序键;产品版本按提交类型递增
(新功能 → MINOR,缺陷与性能 → PATCH)。因此版本号不表达数据库结构差异,
每次发布说明与本文件负责如实标注本版是否含迁移及其编号区间。

Added

  • 产品版本真源 version.json(后端程序集、前端产物、发布标签、本文件同源派生)。

Changed

  • 文件日志改为按「大小 + 天数」双门保留(默认 14 天),默认目录改为程序自身目录下的 logs。
  • 排障关联键(correlationId)收敛为单一真源:异常出口与业务拒绝日志不再使用 TraceIdentifier。
  • 文件日志写入前统一脱敏(LogRedactor 正式接入 JSONL 落盘管道)。
  • 贡献指南补充架构决策记录(ADR)流程,并订正两处与现状不符的表述(提交信息规范、发布节奏)。

Security

  • 日志脱敏接入后,凭据形态内容不再原样落盘,为「一键日志打包」提供隐私前提。