Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,8 @@ release/
settings.json
SHA256SUMS.txt
context-summary.md
.env
.env.*
sk-*
!site/assets/*.png
!site/assets/*.jpg
12 changes: 8 additions & 4 deletions DESIGN.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,9 @@ Use `Segoe UI`, `Microsoft YaHei`, then system sans-serif. Numeric log paths and

## Layout

- Desktop application: fixed top operation bar, left module navigation, sticky filter row, one active analysis module in the main work area.
- Desktop application: fixed top operation bar, source-context switch, contextual left navigation, sticky filter row, and one active analysis module in the main work area. The source switch offers only the detected modes in the order 综合, 监控log, 工控log. Combined and work-control contexts each expose two modules; segmentation remains an internal calculation rather than a navigation destination.
- The primary desktop viewport is 1440×900 with a 960×640 minimum. Below 900px, module navigation becomes horizontal.
- Public site: generous editorial sections with a split hero, a synthetic workbench illustration, and a full-width five-module interactive capability guide. On desktop the guide uses a client view beside its explanation panel; at ≤1050px the explanation moves below and focuses/reveals after a hotspot is selected. Privacy and installation sections follow.
- Public site: generous editorial sections with a split hero, an interactive three-scope explanation, and a full-width five-module monitor-log guide. On desktop the guide uses a client view beside its explanation panel; at ≤1050px the explanation moves below and focuses/reveals after a hotspot is selected. Privacy and installation sections follow.
- Use spacing in a 4px-derived rhythm. Dense controls may use 8–12px gaps; sections use 24–40px; public-site sections use 64px or more.

## Components
Expand All @@ -43,11 +43,15 @@ Primary actions use the primary blue fill, white text, a minimum 44px hit target

### Navigation and filters

The active module is unmistakable through label, foreground and surface treatment. Material and monitoring-method filters behave as segmented switches. Switching modules preserves filters, selected layer and chosen metrics.
The active source context and module are unmistakable through label, foreground and surface treatment. Material and monitoring-method filters behave as segmented switches. Switching contexts preserves each context's filters, selected layer, activity session and chosen metrics.

### Charts

Every chart has a complete Chinese title, X/Y axis names, reliable units, legend and formatted hover content. H/L series are named “H 材料” and “L 材料”. Device trends use restrained spline lines with visible data points. Each chart offers viewport focus; `Esc` exits and focus returns to the triggering control.
Every chart has a complete Chinese title, X/Y axis names, reliable units, legend and formatted hover content. Regular chart panels use one shared title position, legend row and plot margins. Device pages align the metric rail and chart to one enlarged, equal-height row; any H/L comparison table sits below them and spans their combined width. H/L series are always ordered as “H 材料” then “L 材料”. Device layer trends use restrained spline lines with visible data points. Combined device comparison supports layer and time axes. Work-control trends and combined time trends use an internal 8,000-point budget, preserving real boundaries and extrema without presenting sampling diagnostics in the chart. Viewport gestures never reload data. A single-material filter hides every interval in which that material is inactive. Do not connect lines across coating layers, filtered intervals or axis breaks.

Work-control and monitor device charts share one ordered blue-orange-purple-green palette. Material colors remain stable after filtering, gas channels use the same palette order, and unified hover details place each trace marker and name before its values. Work-control gas metrics use separate O₂ and Ar entries in the same metric rail pattern as monitor logs.

Time charts use a Plotly top secondary x-axis for coating layers. It overlays and matches the bottom time axis, sits below the first-row legend and above the plotting area, has no axis title, and uses the compact `X层` form while table cells remain numeric. Tick density recalculates after zoom, resize and viewport focus without requesting or redrawing data. The two horizontal axes pan and zoom together; vertical boundary lines may remain inside the plot, but layer text must not overlap curves, titles, legends or the mode bar. Each chart offers viewport focus; `Esc` exits and focus returns to the triggering control.

### Tables and status

Expand Down
18 changes: 12 additions & 6 deletions PRODUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,27 +8,33 @@ web

## Users

主要用户是 Windows 桌面端的镀膜工艺工程师。他们在本地选择单个炉次日志文件夹,核验数据质量,查看逐层理论、光学、设备、异常与关联信息,并导出复核清单。
主要用户是 Windows 桌面端的镀膜工艺工程师。他们在本地选择日志文件夹,分别或综合核验连续工控数据与逐层监控数据,并导出复核清单。

## Product Purpose

Log Analysis 将分散的镀膜日志只读汇总为可筛选、可视化、可导出的工程工作台。成功意味着用户无需手工拼接 CSV 即可定位值得复核的层,同时原始日志保持不变。
Log Analysis 将连续工控log与逐层监控log只读汇总为可筛选、可视化、可导出的工程工作台。成功意味着用户无需手工拼接 CSV 即可定位值得复核的时间段和层,同时原始日志保持不变。

## Positioning

分析在用户电脑本地完成,自动关联逐层理论、实测光学与设备数据;统计异常只提供复核线索,不替代工艺规格或成品判定。
分析在用户电脑本地完成,自动识别并关联工控log与监控log;统计异常只提供复核线索,不替代工艺规格或成品判定。

## Operating Context

应用运行在 Windows 10/11 x64,使用原生文件夹选择器导入炉次目录。桌面应用以独立窗口运行;公开网站只用于产品介绍、隐私说明和 GitHub 下载,不接收日志。

## Capabilities and Constraints

- 单炉次、离线、只读分析;忽略根目录 `YYYY-MM-DD.csv`。
- 保留总览、理论趋势、光学、设备、异常关联五个模块和 CSV 导出。
- 离线、只读分析;日期命名的连续日志识别为工控log,逐层文件族识别为监控log。
- 支持综合、工控log、监控log三种模式;只显示当前文件夹实际存在的数据源。
- 监控log提供总览、理论趋势、光学、设备和异常复核;综合与工控log模式均提供总览和设备。
- 综合设备支持层数和时间横坐标。时间图使用真实采样点,并在顶部以同步副轴标注镀膜层。
- 单选 H/L 材料时只显示该材料参与工作的时间,隐藏另一材料和空闲时段;双源关联成功时显示镀膜层。
- 工控log设备趋势采用自适应采样,优先保留真实边界与极值;不强制加载全部采样点。
- 层范围、材料、监控方式和区段筛选统一作用于可计算的图表、表格和汇总;来源完整性、完成状态、数据质量及关联诊断保持整炉口径。
- 综合模式下 `Motor Speed` 以工控log为准,并保留监控log参考值用于审计。
- 中文界面为主,核心入口保持 `analyze_folder(path) -> AnalysisResult`。
- 第一版只支持 Windows x64,不提供在线分析、数据库、账号或自动更新。
- 当前二进制版本是未签名测试版 `v0.1.0-beta.3`。
- 当前二进制版本是未签名测试版 `v0.1.0-beta.5`。

## Brand Commitments

Expand Down
24 changes: 17 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,28 @@
# Log Analysis

面向镀膜工艺工程师的 Windows 本地日志分析工作台。选择一个炉次文件夹后,应用会只读校验日志、生成逐层汇总,并提供理论、光学、设备、异常与关联图表。
面向镀膜工艺工程师的 Windows 本地日志分析工作台。选择一个日志文件夹后,应用会只读识别工控log与监控log,并提供双源关联、逐层汇总、理论、光学、设备和异常复核图表。

> English: Log Analysis is a local, read-only Windows workbench for single-run coating log validation, layer summaries, optical/device trends, anomaly hints, and CSV exports.
> English: Log Analysis is a local, read-only Windows workbench for control-system and per-layer coating log validation, alignment, optical/device trends, anomaly hints, and CSV exports.

## 数据边界

- 原始日志只读,不修改内容或时间戳。
- 分析只在当前电脑完成,不提供上传接口、账号或云端数据库。
- 根目录名称符合 `YYYY-MM-DD.csv` 的文件自动排除。
- 异常与相关性是统计复核线索,不代表工艺或产品合格判定。
- 根目录名称符合 `YYYY-MM-DD.csv` 且表头匹配的文件识别为工控log;逐层文件族识别为监控log。
- 支持综合、工控log和监控log三种分析范围,并按实际存在的数据源显示入口。
- 异常复核是统计线索,不代表工艺或产品合格判定。

真实炉次日志不属于本仓库。测试和公开页面只能使用合成或脱敏数据。

## 核心功能

- **综合分析**:自动关联工控log与监控log,校正时间偏移,并按层数或时间对照双源设备数据。
- **监控log分析**:提供总览、理论趋势、光学、设备和异常复核五个模块,支持单层曲线、理论曲线、原始截图及前后切层。
- **工控log分析**:连续查看功率、电流、电压、真空、温度、转速和气体数据,并按镀膜区段及材料筛选工作时间。
- **统一筛选**:层范围、材料、监控方式和区段同步作用于可计算的汇总、图表和表格。
- **设备趋势**:综合时间图在整张图内最多保留 8,000 个真实边界点和极值点;缩放与平移不重新请求数据。
- **数据来源**:综合模式下转速以工控log为准,同时保留监控log参考值用于核验。

## 安装

### 系统要求
Expand All @@ -23,19 +33,19 @@
### 下载与校验

1. 升级前先关闭所有正在运行的 Log Analysis 窗口。
2. 下载 [Log Analysis v0.1.0-beta.4 安装程序](https://github.com/Reyppp/log-analysis/releases/download/v0.1.0-beta.4/Log-Analysis-Setup-v0.1.0-beta.4-x64.exe) 和同一版本的 [SHA256SUMS.txt](https://github.com/Reyppp/log-analysis/releases/download/v0.1.0-beta.4/SHA256SUMS.txt)。也可以先查看[完整版本说明](https://github.com/Reyppp/log-analysis/releases/tag/v0.1.0-beta.4)。
2. 下载 [Log Analysis v0.1.0-beta.5 安装程序](https://github.com/Reyppp/log-analysis/releases/download/v0.1.0-beta.5/Log-Analysis-Setup-v0.1.0-beta.5-x64.exe) 和同一版本的 [SHA256SUMS.txt](https://github.com/Reyppp/log-analysis/releases/download/v0.1.0-beta.5/SHA256SUMS.txt)。也可以先查看[完整版本说明](https://github.com/Reyppp/log-analysis/releases/tag/v0.1.0-beta.5)。
3. 在下载目录打开 PowerShell,运行:

```powershell
Get-FileHash -Algorithm SHA256 .\Log-Analysis-Setup-v0.1.0-beta.4-x64.exe
Get-FileHash -Algorithm SHA256 .\Log-Analysis-Setup-v0.1.0-beta.5-x64.exe
Get-Content .\SHA256SUMS.txt
```

4. 确认两处显示的 64 位 SHA-256 完全一致;不一致时不要运行安装程序,请重新下载。

### 安装与首次使用

1. 双击 `Log-Analysis-Setup-v0.1.0-beta.4-x64.exe`。
1. 双击 `Log-Analysis-Setup-v0.1.0-beta.5-x64.exe`。
2. 按安装向导继续;程序默认安装到当前用户目录,不需要管理员权限,桌面快捷方式可选。
3. 当前版本是未签名测试版。若 SmartScreen 显示“Windows 已保护你的电脑”,请先确认 SHA-256 已匹配,再选择“更多信息”,核对文件名后选择“仍要运行”。如果组织安全策略禁止运行,请联系管理员,不要关闭系统安全功能。
4. 安装完成后,从开始菜单打开 **Log Analysis**。
Expand Down
42 changes: 25 additions & 17 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,32 @@
# Log Analysis v0.1.0-beta.4
# Log Analysis v0.1.0-beta.5

桌面启动稳定性修复版。
双日志分析与设备工作台更新。

## 主要功能
## 主要更新

- 本地只读导入单炉次日志文件夹。
- 总览、理论趋势、光学、设备、异常关联五个分析模块。
- 单层曲线、理论曲线、原始截图和前后切层。
- UTF-8 BOM 逐层汇总与异常清单导出。
- 新炉次选择后自动清空旧分析结果。
- 安装版使用 Windows 原生资源管理器式文件夹选择窗口,并自动定位上次目录。
- 文件未变化时复用会话内结果,异常阈值调整不再重读全部 CSV。
- 自动识别日期命名的工控log和逐层监控log,并根据文件夹内容提供综合、监控log、工控log三种分析范围。
- 综合模式自动匹配镀膜层顺序并校正两类日志的时间偏移;关联失败时保留两类日志的独立分析,不强制合并。
- 综合设备支持层数和时间两种横坐标。时间图以监控log时间为基准,工控log与监控log共享每张图最多 8,000 个真实采样点。
- 时间图顶部增加同步镀膜层副坐标。层号保持水平,并根据图表宽度自动控制密度。
- 工控log提供独立总览和连续设备趋势,覆盖电气、真空、温度、转速及 O₂/Ar 气体通道。
- 层范围、材料、监控方式和区段筛选同步作用于可计算的汇总、图表与表格。
- 综合模式下 Motor Speed 以工控log为准,并保留监控log参考值用于核验。

## 本版改进
## 交互与界面

- 修复关闭软件后首次重新启动可能无响应的问题。
- 桌面窗口改为显式注册本地 API,避免扫描 WebView2 原生对象。
- 保留单实例、原生文件夹选择、会话缓存和分析进度。
- 25 项测试通过;黄金样本继续识别 243 层,20 次连续启停无残留主进程。
- 综合模式精简为总览和设备,工控log精简为总览和设备,监控log保留五个分析模块。
- 设备页统一图表尺寸、指标选择栏、H/L 配色、图例顺序和数据详情格式。
- 缩放、平移和坐标轴拖动只改变本地视口,不重新请求设备数据,也不重置 Pan 状态。
- 工控log趋势使用圆点显示;综合时间图使用高密度圆点,避免跨层或断轴连接出不存在的趋势。
- 单选 H 或 L 时只显示该材料参与工作的采样,未工作时间不占横轴。
- 监控log“异常关联”更名为“异常复核”,移除 Spearman 相关表格;综合和工控log不再展示独立异常页面。

## 数据与性能

- 工控log连续数据在服务端会话中缓存,指标与筛选切换不重复读取原始文件。
- 高密度采样保留真实边界点和桶内极值,不计算均值、不插值。
- 关联算法允许跳过夹在完整镀膜序列之间的非镀膜工作段,避免额外工控序列导致整炉关联失败。
- 36 项自动测试覆盖单源、双源、时间对齐、8,000 点预算、筛选、桌面接口和公开网站。

## 系统要求

Expand All @@ -26,8 +35,7 @@

## 安装与校验

下载 `Log-Analysis-Setup-*.exe` 和 `SHA256SUMS.txt`,使用 PowerShell 的
`Get-FileHash` 核对 SHA-256 后运行安装程序。
同时下载 `Log-Analysis-Setup-v0.1.0-beta.5-x64.exe` 和 `SHA256SUMS.txt`。使用 PowerShell 的 `Get-FileHash` 核对 SHA-256 后运行安装程序。

## 已知限制

Expand Down
Loading