477 lines
24 KiB
Markdown
477 lines
24 KiB
Markdown
## 1.5.51 (2026-09-30)
|
||
|
||
- CLI 每次启动记录最后使用时间;按本机日期,每个使用日首次启动自动抓取 `origin/main`,仅快进安装更新并重新启动当前命令,同日不重复检测。
|
||
- 使用独立本机状态文件和并发锁,保留本机配置;源码修改、暂存修改、分支分叉或配置冲突时暂停安装,抓取失败和超时继续业务命令,更新提示不污染 JSON 输出。
|
||
- 本次新增 Skill 本地更新逻辑,不修改 Agent、transit-server、HTTP 接口、登录配置格式或审计 action、字段及保存策略;CLI 命令数保持 32。使用状态仅本机保存,不写入中转审计库。
|
||
|
||
## 1.5.50 (2026-09-30)
|
||
|
||
- 明确取单号函数 `Get_SequenceNo('<CODE>', AD_CLIENT_ID)`,默认 `CODE` 来自该单据 `DOCNO` 字段对应的 `AD_COLUMN.SEQUENCENAME`;客户 ID 使用单据实际值,不固定为 `37`。
|
||
- 补充取号 CODE 的定义在 `AD_SEQUENCE` 表,分析编号规则时沿单据字段配置核实对应定义。
|
||
- 同步 Skill、业务规则和 README;配置为空时不猜测生成器,特殊业务按实际配置和过程逻辑核实,取号仅生成 SQL 示例,不通过查询通道执行。
|
||
- 本次仅更新 Skill 文档,不修改 Agent、transit-server、CLI/HTTP 接口、配置格式或审计 action、字段及保存策略;命令数保持 32。
|
||
|
||
## 1.5.49 (2026-09-14)
|
||
|
||
- 补充品小二环境中文条件的字符集兼容规则:中文 `LIKE` 或等值条件优先使用 Oracle `UNISTR` Unicode 转义;直接中文字面量返回 0 行时先按该形式重试。
|
||
- 同步更新 BOS 元数据查询说明、README 和操作示例,避免继续使用可能失效的中文字面量示例;其他 client 可将 `UNISTR` 作为跨环境复用和避免传输编码转换的通用兜底。
|
||
- 本次仅更新 Skill 文档,不修改 Agent、transit-server、CLI/HTTP 接口、配置格式或审计 action、字段及保存策略;命令数保持 32。
|
||
|
||
## 1.5.48 (2026-09-03)
|
||
|
||
- 补充 BOS 新建表的八个基础字段、字段类型、可空性、`ISACTIVE` 默认值和 `ID` 主键模板。
|
||
- 区分建表默认值与新增业务记录赋值规则;DDL 仅生成供人工确认执行,不通过 Skill 查询通道建表或修改 BOS 元数据。
|
||
- 本次仅更新 Skill 业务知识,不修改 Agent、transit-server、CLI/HTTP 接口、配置格式或审计 action、字段及保存策略;命令数保持 32。
|
||
|
||
## 1.5.47 (2026-09-02)
|
||
|
||
- 补充用户提供表名称时的 BOS 表解析规则:默认先从 `AD_TABLE` 确认英文名称 `NAME`、中文显示名称 `DESCRIPTION` 和 `REALTABLE_ID`。
|
||
- `REALTABLE_ID` 非空时按其指向的 `AD_TABLE` 记录定位实际数据库表,并明确原名称可能只是 BOS 虚拟表、在 Oracle 中不存在。
|
||
- BOS 元数据未注册时,依次查询数据库表、视图和物化视图;本次仅更新 Skill 业务知识,不修改 Agent、transit-server、CLI/HTTP 接口、配置格式或审计 action,命令数保持 32。
|
||
|
||
## 1.5.46 (2026-08-29)
|
||
|
||
- 明确 `PUSH_LOG.HEAD_DATA` 在 BOS 标准通用接口中由后台 API 按推送记录合并,Oracle 数据库侧过程可能看不到该动作。
|
||
- 排查请求头时不再因 `H_INTERFACE_DATA_TASK` 未读取 `HEAD_DATA` 就判定请求头缺失,也不为此修改全局封装任务;应继续核对后台实现或最终 HTTP 请求。
|
||
- 本次仅更新 Skill 业务知识,不修改 Agent、transit-server、CLI/HTTP 接口、配置格式或审计 action;命令数保持 32。
|
||
|
||
## 1.5.45 (2026-08-29)
|
||
|
||
- 以客户环境只读元数据、字段值域和过程源码核验通用接口模型,补充 `AD_PROCESS` 三段任务、F/D/J 调度、出站封装、后台推送、两级回执处理和入站路由知识。
|
||
- 明确 `DOCNO`、`HEAD_DATA`、`TBSTATUS`、`DOSTATUS` 的常见表归属,区分传输成功与业务处理成功,并将请求头合并、即时触发和运行时方向校验列为逐环境核验项。
|
||
- 本次仅更新 Skill 业务知识,不修改 Agent、transit-server、CLI/HTTP 接口、配置格式或审计 action;命令数保持 32。
|
||
|
||
## 1.5.44 (2026-08-27)
|
||
|
||
- Skill 每次推送私有 Git 后,必须同步更新公共镜像,不再另行等待公开确认。
|
||
- 公共库继续使用无私有历史快照;同步前必须完成敏感文件检查、测试和发布记录。
|
||
|
||
## 1.5.43 (2026-08-27)
|
||
|
||
- 统一 Git 提交与发布记录规范:使用简洁、准确的中文,通常按小功能节点分别提交。
|
||
- Bug 修复通常只描述修复的功能点和结果,不展开代码缺陷细节。
|
||
|
||
## 1.5.42 (2026-08-27)
|
||
|
||
- Added authenticated `log_info`, `log_tail`, `log_search`, `log_enable`, and `log_disable` commands and capability definitions.
|
||
- Added dedicated transit endpoint calls, paths containing spaces, keyword/regex context search, recent/full scan selection, and structured error handling.
|
||
- Log excerpts remain read-only and are analyzed by the Skill/model; the Skill does not execute server commands or write customer files.
|
||
|
||
## 1.5.37 (2026-08-14)
|
||
|
||
### Public mirror documentation
|
||
- Updated Skill and README maintenance URLs to the private Gitea repository and the public mirror.
|
||
- Clarified that the public repository is a manually approved, no-history snapshot for downloads; development and Skill synchronization use the private repository.
|
||
|
||
## 1.5.36 (2026-08-14)
|
||
|
||
### Public mirror safety
|
||
- Removed the hard-coded `"123"` fallback for the Agent update administrator token.
|
||
- `agent_update` now fails locally with a clear configuration error when neither `ORACLE_JUMP_UPGRADE_ADMIN_TOKEN` nor `upgrade_admin_token` is configured; it does not issue an update request without a token.
|
||
|
||
## 1.5.35 (2026-08-14)
|
||
|
||
### HTTPS transit endpoint
|
||
- Changed the default Skill transit endpoint from `http://bos.henlo.net:6357` to `https://ts.henlo.net`.
|
||
- Updated runtime defaults, configuration templates, examples, direct HTTP examples, and capability metadata to use the HTTPS domain.
|
||
- Existing runtime tokens and selected clients are preserved when only `transit_url` is migrated.
|
||
|
||
## 1.5.34 (2026-07-21)
|
||
|
||
### AWR export function recovery
|
||
- Updated archived `SYS.HENLO_AWR_EXPORT` to v1.1: ignore null report rows before `DBMS_LOB.WRITEAPPEND` and preserve row boundaries with an explicit newline.
|
||
- Fixes production `ORA-06502` raised by the v1.0 function when Oracle's AWR report stream contains an empty row.
|
||
- The Skill continues to return the SQL for manual DBA execution only and never runs DDL.
|
||
|
||
## 1.5.33 (2026-07-21)
|
||
|
||
### AWR DBA preparation
|
||
- When `awr_status` reports `permission_required`, the Skill now resolves the target Agent's actual Oracle schema and returns the archived `HENLO_AWR_EXPORT` deployment/grant SQL for manual DBA execution.
|
||
- The SQL is never executed by the Skill and is only shown after reminding the operator to confirm Diagnostics Pack authorization.
|
||
- Added the explicit `DBA_HIST_SNAPSHOT` read grant required by Agent readiness checks; unresolved schemas never produce SQL containing the `<AGENT_SCHEMA>` placeholder.
|
||
|
||
## 1.5.32 (2026-07-21)
|
||
|
||
### AWR report delivery
|
||
- Added `awr_status`, `awr_list`, and `awr_download` commands using authenticated transit-server APIs.
|
||
- AWR HTML is downloaded byte-for-byte from the Agent and is never rendered locally; downloads are limited to 50 MB and use strict `yyyyMMdd` validation.
|
||
- Documented the mandatory Diagnostics Pack confirmation and Agent `awr.enabled` / `awr.license_confirmed` gates.
|
||
|
||
## 1.5.31 (2026-07-21)
|
||
|
||
### Client authorization refresh
|
||
- `clients` now replaces the local client cache with the transit server's current authorization snapshot, so newly authorized clients appear and revoked clients disappear without re-entering `secretKey`.
|
||
- Client refresh continues to use only the existing transit-server access token.
|
||
|
||
## 1.5.29 (2026-07-15)
|
||
|
||
### Inspection SYS deployment
|
||
- When inspection preflight fails, the Skill reads the target Agent's configured Oracle schema through the `version` action.
|
||
- SYS function SQL replaces `<AGENT_SCHEMA>` with the actual customer schema before it is shown to the user.
|
||
- If the schema cannot be determined or is invalid, the Skill stops with a configuration error and never emits placeholder authorization SQL.
|
||
- Updated `HENLO_ORA_MONITOR` to the complete v3.0 CLOB JSON contract used by Agent inspection actions.
|
||
|
||
## 1.5.28 (2026-07-13)
|
||
|
||
### Inspection preflight
|
||
- Restored mandatory `sys_function_check` before `inspection_report` creates a new report.
|
||
- Missing SYS/current-schema monitor functions now stop collection and return the complete deployment and grant SQL bundle.
|
||
- Reading an existing latest report no longer requires SYS preflight; `inspection_latest --refresh` still does.
|
||
|
||
## 1.5.26 (2026-07-13)
|
||
|
||
### Documentation
|
||
- Documented the Skill OSS release path and planned `skill_update` check/download/confirm workflow.
|
||
- Documented preservation of local `config.json`, `outputs/` and logs during updates.
|
||
- Marked the runtime `skill_update` command as not implemented yet.
|
||
|
||
---
|
||
|
||
## 1.5.25 (2026-07-13)
|
||
|
||
### HTML archive delivery
|
||
- Retry short-lived 404 responses while transit-server asynchronously commits the report archive.
|
||
- Return a readable error after retries instead of a traceback.
|
||
|
||
---
|
||
|
||
## 1.5.24 (2026-07-13)
|
||
|
||
### HTML download
|
||
- Fixed HTML URL construction when the local config does not contain a duplicate `transit_url` field.
|
||
- Network download failures now return a readable Skill error instead of a Python traceback.
|
||
|
||
---
|
||
|
||
## 1.5.23 (2026-07-13)
|
||
|
||
### Inspection preflight
|
||
- Fixed the missing `check_inspection_sys_functions` implementation.
|
||
- Inspection generation now stops before Agent collection when the SYS monitor function is unavailable and returns the complete grant SQL bundle.
|
||
- Protected HTML URLs must be downloaded through Skill authentication.
|
||
|
||
---
|
||
|
||
## 1.5.22 (2026-07-13)
|
||
|
||
### 发布规范
|
||
- 完善 Skill 版本号、CHANGELOG、项目 AGENTS.md 发布记录和实际提交的一致性要求。
|
||
|
||
---
|
||
|
||
## 1.5.21 (2026-07-13)
|
||
|
||
### SYS function deployment
|
||
- Added `sys_functions <schema> [--json]` to generate the complete SYS function deployment bundle for Agent installation.
|
||
- The command automatically includes every `.sql` file under `references/sys-functions/` and substitutes `<AGENT_SCHEMA>` with the customer Agent schema.
|
||
- Documented the rule that every future SYS function must be archived in that directory.
|
||
|
||
---
|
||
|
||
## 1.5.20 (2026-07-10)
|
||
|
||
### 功能
|
||
- 文档补充 Agent 版本查询命令:ersion agent <clientCode...>、--all、--json。
|
||
- 明确在线 Agent 直接确认版本,离线客户返回最后心跳版本和离线状态。
|
||
- 补充自然语言触发示例:查询所有客户的 Agent 版本号、查询指定客户版本号。
|
||
|
||
---
|
||
|
||
## 1.5.20 (2026-07-10)
|
||
|
||
### 功能
|
||
- 巡检 HTML/Markdown 支持服务器 IP、操作系统版本、启动时间、运行时长、关键进程和 TCP 连接统计。
|
||
- 巡检报告支持 Oracle ACTIVE/总会话数、Buffer Cache 与 Library Cache 命中率,并区分真实零值和采集失败。
|
||
- 修正慢 SQL 列映射、表空间容量/自动扩展上限映射和高内存事件误标为 OOM 的报告问题。
|
||
- AWR 明确列入未来开发计划,当前版本不采集、不生成 AWR 报告。
|
||
|
||
---
|
||
|
||
## 1.5.19 (2026-07-10)
|
||
|
||
### 功能
|
||
- 新版服务器巡检命令成功返回后默认生成固定格式 HTML 文件,无需再显式传入 `--html`。
|
||
- `inspection_report`、`inspection_latest`、`inspection_get` 增加 `--markdown [path]`(别名 `--md`),可在生成 HTML 的同时导出固定格式 Markdown 文件。
|
||
- `--json` 输出增加 `artifacts` 字段,返回已生成的 HTML/Markdown 文件路径,同时保持标准 JSON 输出。
|
||
|
||
---
|
||
|
||
## 1.5.18 (2026-07-10)
|
||
|
||
### 功能
|
||
- 移除旧版 `checkup` 对外命令能力,服务器体检统一走新版 `inspection_report` / `inspection_latest` / `inspection_get`。
|
||
- `inspection_report`、`inspection_latest`、`inspection_get` 增加 `--html [path]`,按固定 HTML 模板导出巡检报告;不传路径时写入 `outputs/`。
|
||
- `config.json` 读取兼容 UTF-8 BOM。
|
||
|
||
---
|
||
|
||
## 1.5.17 (2026-07-09)
|
||
|
||
### 功能
|
||
- 增加 `inspection_report [clientCode] [--json]` 命令,通过 transit-server 生成服务器巡检报告并归档。
|
||
- 增加 `inspection_latest [clientCode] [--refresh] [--json]` 命令,读取最近归档巡检报告;加 `--refresh` 时重新生成后返回。
|
||
- 增加 `inspection_get <id> [--json]` 命令,按 `TS_INSPECTION_REPORT.ID` 读取历史巡检报告。
|
||
|
||
---
|
||
|
||
## 1.5.16 (2026-07-08)
|
||
|
||
### 文档
|
||
- 记录 skill Git 源地址:`http://124.220.155.147:3000/qiangayi/oracle-jump-query`。
|
||
- 明确后续更新 skill 时以该 Git 地址为准,已安装目录只作为运行和验证目录。
|
||
|
||
---
|
||
|
||
## 1.5.15 (2026-07-08)
|
||
|
||
### 文档
|
||
- 补充 BOS 提交流程规则:生成提交 SQL 或说明提交流程时,如果已知 `userId`,调用 `AD_TABLE.PROC_SUBMIT` 前需要先更新主单据修改人和修改时间,再调用提交存储过程。
|
||
- 强调修改人、修改时间字段名必须先通过 `AD_COLUMN` 或表结构确认,不要凭经验硬写字段名。
|
||
|
||
---
|
||
|
||
## 1.5.14 (2026-07-08)
|
||
|
||
### 文档
|
||
- 补充 `AD_TABLE` 表单事件过程规则:`HAS_TRIG_BD='Y'` 时 `TRIG_BD` 为删除前触发过程(bd),`HAS_TRIG_AC='Y'` 时 `TRIG_AC` 为新增后触发过程(ac),`HAS_TRIG_AM='Y'` 时 `TRIG_AM` 为修改后触发过程(am)。
|
||
- 更新 BOS 元数据查询模板,分析业务表时同时查看 `PROC_SUBMIT` 和 `TRIG_BD/TRIG_AC/TRIG_AM`。
|
||
|
||
---
|
||
|
||
## 1.5.13 (2026-07-06)
|
||
|
||
### 功能
|
||
- 在 `SKILL.md`/README/命令说明中补充 `agent_update [clientCode] [timeout]` 能力,便于其他 Agent 通过 `capabilities` 发现并触发客户 Agent 更新。
|
||
- skill 默认中转机统一为 `http://bos.henlo.net:6357`,不再使用旧 IP 或 `zjhenlo.henlo.net`。
|
||
|
||
---
|
||
|
||
## 1.5.12 (2026-07-06)
|
||
|
||
### 功能
|
||
- 增加 `agent_update [clientCode] [timeout]` 命令,通过中转机触发 Agent 自动更新;升级包下载地址由中转机返回,按 OSS `latest.json` 方案下载。
|
||
- 默认中转机地址调整为 `http://bos.henlo.net:6357`。
|
||
|
||
---
|
||
|
||
## 1.5.11 (2026-07-02)
|
||
|
||
### 文档
|
||
- 增加商品明细常见字段说明:`M_PRODUCT_ID` 对应款号,`M_PRODUCTALIAS_ID` 对应条码,`M_ATTRIBUTESETINSTANCE_ID` 对应色码属性 ASI。
|
||
- 增加 ASI 色码属性规则:`M_ATTRIBUTESETINSTANCE.VALUE1/VALUE1_CODE/VALUE1_ID` 对应颜色,关联 `M_COLOR.ID`;`VALUE2/VALUE2_CODE/VALUE2_ID` 对应尺码,关联 `M_SIZE.ID`。
|
||
|
||
---
|
||
|
||
## 1.5.10 (2026-07-01)
|
||
|
||
### 功能
|
||
- `clients` 和 `status` 成功获取服务端 client 列表后,会同步刷新本地 `client_list` 缓存。
|
||
- `switch` 支持按 client code 或 client title/name 切换;找不到时自动刷新 client 列表后再匹配。
|
||
- client 名称模糊匹配到多个结果时,不自动切换,只列出候选项并要求用户指定更准确的 client code。
|
||
|
||
---
|
||
|
||
## 1.5.9 (2026-07-01)
|
||
|
||
### 文档
|
||
- 整理 `SKILL.md` 为执行入口和索引页,将详细说明拆分到 `references/`。
|
||
- 新增完整原文备份 `references/legacy-skill-v1.5.8.md`,确保整理过程不遗漏既有内容。
|
||
- 记录文档维护规则:精简主文档时只能移动内容到 references,删除内容必须先经过用户同意。
|
||
|
||
---
|
||
|
||
## 1.5.8 (2026-07-01)
|
||
|
||
### 文档
|
||
- 记录 `AD_TABLE_TEXT` 分析结论:可通过 BOS 元数据表反推出系统菜单、模块目录、业务表、字段、主子表、动作、权限目录和报表模板结构。
|
||
- 增加 BOS 系统地图分析链路:`AD_SUBSYSTEM -> AD_TABLECATEGORY -> AD_ACCORDION -> AD_TABLE -> AD_COLUMN / AD_REFBYTABLE / AD_ACTION`。
|
||
|
||
---
|
||
|
||
## 1.5.7 (2026-06-17)
|
||
|
||
### 文档
|
||
- 增加条码/SKU 查询优先字段:查询条码时首查 `M_PRODUCT_ALIAS.NO`,再根据条码关联商品和库存。
|
||
|
||
---
|
||
|
||
## 1.5.6 (2026-06-17)
|
||
|
||
### 文档
|
||
- 增加常用业务对象说明:商品/款号默认对应 `M_PRODUCT`,条码/SKU 默认对应 `M_PRODUCT_ALIAS`,款号与条码是一对多关系。
|
||
- 增加库存查询约束:库存通常查询 `V_FA_STORAGE`,该视图数据量大,必须通过店仓 + 款号/条码条件查询,并配合行数限制。
|
||
|
||
---
|
||
|
||
## 1.5.5 (2026-06-17)
|
||
|
||
### 文档
|
||
- 增加生产查询限制说明:直接查询业务表时必须带明确过滤条件和行数限制,不要执行无条件整表查询。
|
||
- 更新 `query` 示例,强调使用日期、状态、单号、门店、主键等业务条件,并配合 `ROWNUM` 或分页限制。
|
||
|
||
---
|
||
|
||
## 1.5.4 (2026-06-16)
|
||
|
||
### 文档
|
||
- 记录新增业务表单时的提交状态字段默认规则:如果表存在 `STATUS`、`STATUSERID`、`STATUSTIME`,新增草稿表单通常只设置 `STATUS='1'`,不对 `STATUSERID`、`STATUSTIME` 赋值。
|
||
- 记录“提交”语义:如果用户提到提交,通常指执行 `AD_TABLE.PROC_SUBMIT` 对应的提交存储过程,提交人和提交时间等字段由提交逻辑处理。
|
||
|
||
---
|
||
|
||
## 1.5.3 (2026-06-16)
|
||
|
||
### 文档
|
||
- 记录 `AD_COLUMN.OBTAINMANNER = 'select'` 的字段值域查询规则:通过 `AD_LIMITVALUE_GROUP_ID` 查询子表 `AD_LIMITVALUE`。
|
||
- 当用户使用显示值描述业务含义时,生成查询或新增记录 SQL 前必须先映射为数据库实际值。例如 `XH_ORDER_FTP.BILLTYPE` 显示值“券核销”对应实际入库值 `VOU_USED`。
|
||
|
||
---
|
||
|
||
## 1.5.2 (2026-06-15)
|
||
|
||
### 文档
|
||
- 记录新增业务表记录时的 SQL 生成规则:主键 `ID` 使用 `get_sequences('<表名称>')`。
|
||
- 如果表存在 `DOCNO` 字段,先查询 `AD_COLUMN` 中该字段的 `SEQUENCENAME` 单据编号生成器;有值时使用 `Get_SequenceNo('<SEQUENCENAME>', 37)` 生成单据编号。
|
||
- 如果表存在 `AD_CLIENT_ID` 字段,默认值为 `37`;如果存在 `AD_ORG_ID` 字段,默认值为 `27`。
|
||
- 子表的 `AD_CLIENT_ID` 和 `AD_ORG_ID` 默认继承父表对应字段值。
|
||
|
||
---
|
||
|
||
# 更新日志
|
||
|
||
## 1.5.1 (2026-06-15)
|
||
|
||
### 调整
|
||
- Oracle 运维监控函数调用增加当前账号兜底:优先调用 `SYS.HENLO_ORA_MONITOR`,失败后自动尝试 `HENLO_ORA_MONITOR`。
|
||
- 函数缺失提示增加双安装方案:可安装到 SYS 并授权,也可在当前 Agent 登录账号已有系统视图权限时安装到当前账号。
|
||
|
||
---
|
||
|
||
## 1.5.0 (2026-06-15)
|
||
|
||
### 新增
|
||
- 新增 `ops <item> [clientCode]`,用于单项 Oracle 日常运维监控。
|
||
- 新增 `ops_report [clientCode]`,用于生成 Oracle 运维日报。
|
||
- 支持通过中转机 `/api/oracle_ops` 和 `/api/oracle_ops_report` 调用 Agent 受控运维监控 action。
|
||
- 支持 `SYS.HENLO_ORA_MONITOR` 定义者权限函数方案,缺失时输出 SYS 函数源码和授权 SQL。
|
||
|
||
### 调整
|
||
- Oracle 运维监控不再由 skill 直接拼 SQL,而是由中转机鉴权、Agent 白名单 action、SYS 函数共同控制。
|
||
- 报告中单项失败不影响整体输出,失败项会在报告末尾汇总。
|
||
|
||
### 文档
|
||
- 更新 README、SKILL.md、agent.md,记录 Oracle 运维报告、单项命令和 SYS 权限函数方案。
|
||
|
||
---
|
||
|
||
## 1.4.0 (2026-06-11)
|
||
|
||
### 新增
|
||
- 新增低调入口 `checkup [clientCode]`,用于查询客户服务器体检报告。
|
||
- 服务器体检报告通过中转机 `/api/server_status` 获取,返回 Markdown 表格。
|
||
- 体检报告字段包括 `clientCode`、`info_cpu_rate`、`info_memory_rate`、`info_memory`、`bak_path`、`bak_lastdate`、`computer`。
|
||
- 支持用户自然语言询问“服务器体检报告 / 服务器状态 / 备份情况”时调用 `checkup`。
|
||
|
||
### 调整
|
||
- `login <secretKey> [clientCode]` 改为登录中转机,由中转机调用 BOS `ts_login` 并签发 `access_token`。
|
||
- `clientCode` 为客户服务器编号,改为非必填;不传时默认使用 BOS 返回的第一个可用 client。
|
||
- 本地配置不再保存 `secretKey`,只保存中转机 token、过期时间、当前 client 和可访问 client 列表。
|
||
- 同一个 `secretKey` 同时只允许一个设备在线;新设备登录后旧 token 立即失效。
|
||
|
||
### 文档
|
||
- 更新 `README.md` 和 `SKILL.md`,补充 `checkup` 服务器体检报告说明。
|
||
- 记录 `clientCode` 非必填,以及 token 失效后需要重新 login 的行为。
|
||
|
||
---
|
||
## 1.3.0 (2026-06-10)
|
||
|
||
### ✨ 新增
|
||
- 表空间查询 5 层自动降级策略
|
||
- 第 1 层:`DBA_DATA_FILES` + `DBA_FREE_SPACE` 直接查询(需 `SELECT_CATALOG_ROLE`)
|
||
- 第 2 层:`sys.get_tablespace_usage()` 专用函数(返回 `SYS_REFCURSOR`)
|
||
- 第 3 层:`HENLO_TS_USAGE` 授权 VIEW
|
||
- 第 4 层:`SYS.HENLO_TS_USAGE` 授权 VIEW(带 schema 前缀)
|
||
- 第 5 层:`USER_FREE_SPACE` 回退查询(始终可用)
|
||
- 自动输出 DBA 授权 SQL(无权限时自动打印 CREATE VIEW + GRANT 语句)
|
||
- 函数 `SYS_REFCURSOR` 返回值的正则解析,支持从 Go 结构体 dump 中提取表格数据
|
||
- `version` 命令:查看当前版本号
|
||
|
||
### 🔧 修复
|
||
- 视图创建在 `SYS` schema 下时,自动尝试 `sys.` 前缀查询
|
||
- 交互模式和 CLI 模式显示统一:区分 DBA 查询 / 函数查询 / VIEW 查询 / 降级回退
|
||
|
||
### 📝 文档
|
||
- `SKILL.md`:新增表空间查询文档(5 层降级 + 授权 SQL + schema 前缀说明)
|
||
- `docs/操作示例.md`:新增完整操作示例(含实际 HENLO 环境输出)
|
||
- 新增 `CHANGELOG.md`、`VERSION` 文件
|
||
|
||
---
|
||
|
||
## 1.2.0 (2026-06-09)
|
||
|
||
### ✨ 新增
|
||
- 表空间查询基础功能
|
||
- 支持 `DBA_DATA_FILES` + `DBA_FREE_SPACE` 查询
|
||
- 交互模式支持 `tablespace` / `tablespaces` 命令
|
||
- CLI 模式支持 `tablespace` / `tablespaces` 命令
|
||
|
||
### 🔧 修复
|
||
- 权限不足时自动降级到 `USER_FREE_SPACE` 查询
|
||
|
||
---
|
||
|
||
## 1.1.0 (2026-XX-XX)
|
||
|
||
### ✨ 新增
|
||
- 数据字典查询(AD_TABLE / AD_COLUMN / AD_REFBYTABLE)
|
||
- `get_tables` 命令:通过存储过程依赖发现表结构
|
||
- `describe_table` 命令:查询表结构(列、索引、行数、注释)
|
||
- `get_userspermsql` 命令:生成用户权限 SQL
|
||
- `perm` 命令:查询用户权限
|
||
- `permq` 命令:带权限过滤的查询
|
||
- 交互式模式
|
||
|
||
### 🔧 修复
|
||
- 各项命令的异常处理优化
|
||
|
||
---
|
||
|
||
## 1.0.0 (2026-XX-XX)
|
||
|
||
### ✨ 初始版本
|
||
- Oracle 跳板查询基础架构
|
||
- 通过中转服务 + Agent 查询远程 Oracle
|
||
- 支持存储过程源码分析、依赖查询、触发器查询
|
||
- 多租户授权验证(BOS ts_login / ts_client_check)
|
||
- 支持 `analyze`、`source`、`list`、`deps`、`trigger` 等命令
|
||
- 支持 `query` 命令直接执行 SELECT(只读)
|
||
|
||
## 1.5.30 (2026-07-21)
|
||
|
||
### Documentation
|
||
- Documented `AD_TABLE.MASK` as the table's declared business-action codes: `A` add, `M` modify, `D` delete, `Q` query, `U` cancel submission, `V` void, and `S` submit.
|
||
- Restored Git/Gitea as the only Skill update source; removed the OSS and `skill_update` release/update instructions.
|
||
## 1.5.38 (2026-08-14)
|
||
|
||
### Trusted device login
|
||
- Added local Ed25519 key generation and `device-key.json` protection.
|
||
- Added `device_register` and `device_login` commands for the normal pending/approved trusted-device flow.
|
||
- Raw MAC values are never sent or stored; only a SHA-256 hash and masked hint are submitted.
|
||
- Authorization testing passed; included in the private repository release.
|
||
## 1.5.39 (2026-08-14)
|
||
|
||
### Trusted-device token renewal
|
||
- `ensure_logged_in()` now automatically obtains a new transit token with the approved local device when the token is missing or expired.
|
||
- Falls back to the normal secret-key login prompt when trusted-device renewal is unavailable.
|
||
- Authorization testing passed; included in the private repository release.
|
||
## 1.5.40 (2026-08-17)
|
||
|
||
### Trusted-device key location
|
||
- Store the trusted-device key at `~/.oracle-jump-query/device-key.json`, shared by all installations of the Skill for the same Windows user.
|
||
- Never migrate or overwrite another key; the private key is created once and never committed or uploaded.
|
||
## 1.5.41 (2026-08-17)
|
||
|
||
### Trusted-device detection
|
||
- `login` may now be run without a secret key; the Skill first detects an approved local trusted device and obtains a token automatically.
|
||
- A secret-key login is requested only when no approved device is available.
|