shared: add independent IPv4 and IPv6 collection [CI] #15

Merged
justme merged 1 commits from feature/ipv6-collection into main 2026-10-06 20:48:49 -07:00
Owner

同一个 Probe 现在可以同时通过 IPv4 和 IPv6 连接同一个 Agent,分别采集持续任务;未配置 IPv6 地址的 Agent 继续只采 IPv4。管理端支持分别配置地址,展示端总览、详情、对比和按需测试支持地址族切换。

会话、原始数据、指标窗口、SSE、测试历史和评分叠加按地址族隔离。IPv4 的既有线路 id 和历史序列保留;IPv6 使用独立标识。新增 JSON 字段缺省兼容旧节点,IPv6 安排以 Agent 实际监听支持为前提。SQLite 自动迁移到 schema 6,协议二进制布局不变。现有 Agent 配置如写了 0.0.0.0,启用双栈时需改为 :: 并重启,再在面板填写 IPv6 地址。

验证:dotnet test --solution MoShiro.slnx -c Release 共 348 项,346 通过、0 失败、2 跳过(AOT 运行地址未配置、Linux TCP_INFO 在 Windows 不适用)。新增真实双栈回环、IPv6 UDP/TCP 按需测试、热层与持久层数据隔离、SSE、旧协议与节点兼容测试。两个现有主机采样测试的 mock 路径已统一斜杠,以便跨平台运行。

npm run gen:api --prefix web、npm run build --prefix web、npm run lint:css --prefix web 已完成,OpenAPI 快照与生成类型同步更新。合并标题含 [CI],合入 main 后触发镜像构建。

同一个 Probe 现在可以同时通过 IPv4 和 IPv6 连接同一个 Agent,分别采集持续任务;未配置 IPv6 地址的 Agent 继续只采 IPv4。管理端支持分别配置地址,展示端总览、详情、对比和按需测试支持地址族切换。 会话、原始数据、指标窗口、SSE、测试历史和评分叠加按地址族隔离。IPv4 的既有线路 id 和历史序列保留;IPv6 使用独立标识。新增 JSON 字段缺省兼容旧节点,IPv6 安排以 Agent 实际监听支持为前提。SQLite 自动迁移到 schema 6,协议二进制布局不变。现有 Agent 配置如写了 `0.0.0.0`,启用双栈时需改为 `::` 并重启,再在面板填写 IPv6 地址。 验证:`dotnet test --solution MoShiro.slnx -c Release` 共 348 项,346 通过、0 失败、2 跳过(AOT 运行地址未配置、Linux TCP_INFO 在 Windows 不适用)。新增真实双栈回环、IPv6 UDP/TCP 按需测试、热层与持久层数据隔离、SSE、旧协议与节点兼容测试。两个现有主机采样测试的 mock 路径已统一斜杠,以便跨平台运行。 `npm run gen:api --prefix web`、`npm run build --prefix web`、`npm run lint:css --prefix web` 已完成,OpenAPI 快照与生成类型同步更新。合并标题含 `[CI]`,合入 main 后触发镜像构建。
justme added 1 commit 2026-10-06 20:44:39 -07:00
shared: add independent IPv4 and IPv6 collection [CI]
ci/woodpecker/pr/verify Pipeline was successful
ci/woodpecker/pr/web-build Pipeline was successful
0eda0600cc
justme merged commit 7160de2a36 into main 2026-10-06 20:48:49 -07:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: justme/MoShiro#15