Repository navigation
Releases: cnlarry/EOS
Releases · cnlarry/EOS
Release list
EOS v0.4.0
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 条组权限记录在用(
D4 条 /C1 条),其中 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
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
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只注入相关性达标的片段,
检索不可用时如实告知并继续回答。 - 可观测性:对话进度、失败分类、反馈与处境信息可见化。
- 新增三个只读工具:报表、单据历史、附件清单。
- 作用域覆盖清单显示对象名称(模块名 / 员工姓名)。
- 参数框架落地(107 项):参数由「代码目录 →
Changed
- 「模型与用量」改为一页两页签(模型页签为上下主子表),按钮统一为图标 + 文字,四张表按电子表口径开齐能力。
- 模型页签改为主表 60% / 子表 40%;按天日期显示为
yyyy-MM-dd。 - 首页与工作台高度改为整页自适应;长弹窗改为弹窗内滚动 + 页脚钉底。
Fixed
- 选择器过滤 JOIN 与虚拟列 JOIN 不再重复同名别名(此前一查就 500)。
- 助手「用途」下发改用 KindCode——枚举的默认序列化曾让模型列表在前端被整体过滤掉。
- 助手最大输出上限三处走散(服务端校验仍卡在 20 万),导致预设值存不进去。
- 字段保存增加无操作短路,并正确刷新快照。
- 自建浮层统一按视口定位。
- 「模型与用量」在矮视口下不再裁内容,告警压缩为每个用途一行,并去掉顶部黄色横幅。
Removed
- 旧的工作助手设置表
dbo.ASSISTANT_SETTING及其读写实现(取值并入SYSSS)。
EOS v0.1.0 首个版本
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
- 日志脱敏接入后,凭据形态内容不再原样落盘,为「一键日志打包」提供隐私前提。