用途与实际影响
这项功能怎样使用
为什么需要它
搬了一个目录或改了一个端口,软件、计划任务和快捷方式可能还指着旧位置;短时发热也不代表机器配置已经改变。这里先查真正的占用和依赖,再给出能用的目标。
举个实际例子
比如我说“把这个本地服务换到一个固定端口”。系统先查动态端口范围、系统排除段、现有监听和其他项目登记;只有没有冲突,才把候选交回项目自己的配置源真正绑定并验证。若现场读不到或发现占用,就直接说清是哪一层挡住,不拿常见端口碰运气。
最后我会得到什么
我能知道这个端口或目录现在由谁使用、能否改动、会影响哪些程序。电脑现场读不到时就停在无法判断,不拿常用盘符或旧记录冒充当前事实;短时异常只提示另查。
正常时
实际占用和依赖都查清后,给出可用目标,再由所属项目修改并验证。
发现问题时
发现端口被占、目录仍被任务引用或磁盘有问题时,停止这处改动并指出冲突。
入口不可用或证据不足时
现场查不到时保留未知;历史性能异常只建议重查,不直接写成硬件已经变化。
从哪里开始
在已接入 PCConfig 的 AI 对话中说明要找的程序、目录或端口;也可要求“只查现场”。
需要准备什么
- 当前电脑
- 目标程序、路径或端口
- 要查询还是准备迁移
从开始到拿到结果
- 1
找到这件事的机器记录
系统定位目标程序或端口的登记位置和实际所在,先看有没有别的软件依赖它。
- 2
比对登记与现场
AI 核对实际端口占用或路径引用;若要迁移,先列出会受影响的程序和回退办法。
- 3
交回可用位置
给出当前可证的路径或冲突;现场读不到就保持未知,不因旧账本存在而建议直接移动。
技术实现与依据
这里保留实现、关键条件、精确入口、历史记录和验证结果。
机器事实可读,开发存储 5/5 通过,稳定投影为版本 9;TimeAudit 增量消费者已有合同与定向测试,本轮未证明 weekly 现场运行关键规则与设计选择
机器配置值先回到项目、服务或任务的真实配置源,PCConfig 快照只负责导航。
稳定投影回答的是最后一次配置基线,不是此刻负载或今天刚重采的配置;型号、版本和观察时间必须一起读取,真实升级决定再核对对应 live Provider(现场读取器)。
路径迁移必须同时具备 source(源路径)、target(目标路径)、消费者、preimage(变更前像)、rollback(回滚)和 verification(验证)。
固定端口在所有实时门禁通过后仍须立即真实 bind(绑定),预检不是预留。
短生命周期服务直接绑定端口 0,由操作系统分配,不建立无意义的固定登记。
V 是开发层,Z 只放可重建有界缓存;唯一源码、数据库和正式备份不能放进 Z。
PCConfig 只持有 TimeAudit 增量 cursor 与有界 decision receipt(执行回执);原始时序、进程、窗口标题和异常 payload 不进入稳定机器状态。
只有成功 `(after, until]` 窗口才推进游标;unavailable、非法 payload 和相同边界分别保持旧游标或严格 no-op。
TimeAudit 只建议是否重查,`Invoke-StableMachineProjection.ps1` 必须重新读取 PCConfig live 稳定事实后独立决定 no_change 或 published。
需要移动文件、调整配置或排查某个路径的影响时,query_project_impact.mjs 按精确 path/config-key/target-id 返回登记的项目、依赖、验证与恢复入口;先规范化盘符、分隔符及点路径。不扫描私人原件、不执行下游更新;没有命中只表示登记未覆盖,不能当作没有影响。
本模块用到的名词
- Registry(结构化登记表)
- 提供稳定键、Owner、来源和验证入口;它不是现场真相,也不能单独证明消费者已加载。
- Stable projection(稳定投影)
- 只保存长期有意义且公开安全的机器事实,版本化记录真正变化,不做实时监控。
- Mark stale(标记陈旧)
- 保留 last-known value(最后已知值),但明确撤销“这是当前值”的声明。
- Port preflight(端口预检)
- 判断候选端口此刻是否适合尝试绑定;它没有锁定端口,因此检查后必须立即 bind。
- Move gate(迁移门禁)
- 只有源、目标、依赖、风险、回滚和验证全部明确,才允许从复制验证推进到切换引用。
- Dev Drive(开发盘)
- V 盘的开发层;适合可恢复的仓库、worktree(隔离工作树)、包缓存和构建输出,不是独立物理备份。
- TimeAudit anomaly cursor(异常消费游标)
- PCConfig 自己保存的最后成功时间边界;它让每周维护只消费新窗口,失败不越过证据缺口,相同窗口不重复写。
专业定义
说清“这台电脑现在到底怎样、配置在哪、改动会碰到谁”,并在选路径、端口和开发存储前做一次现场防撞检查。
解决什么
机器事实既有长期稳定信息,也有每次都可能变化的现场状态。把两者混在一份静态文档里,会让旧路径、旧端口或旧运行时继续被误用;反过来持续扫描整机又会制造隐私、延迟和第二事实源。
当前怎样实现
- 44 份 Registry(登记清单) 分别保存 machine、drives、folders、path owners、project config keys、dependencies、runtimes 和恢复关系;每类都有明确 schema(数据结构) 和 validator(校验器)。
- 稳定机器 Provider 只采集硬件、系统、固定卷和关键运行时,明确排除序列号、网络标识、负载、温度、进程、秘密和原始时序。
- 稳定投影用规范哈希、previous 链和同目录原子替换;payload(有效数据)不变时返回 no_change,不刷新 mtime(文件修改时间)。
- 本页精确机器配置来自已发布stable_machine_projection v9:observed_at_utc=2026-09-10T22:46:30.9789881Z,generated_at_utc=2026-09-10T22:46:36.5028554Z,canonical_sha256=sha256:3c5b6aef743ce651069a3b365c2eafd88f830d230675cdb2951f4edc8408cc34;这是来源维护的配置基线,本轮网页没有重新采集硬件。
- 主工作站为 x64 Gigabyte X870E AORUS PRO ICE;主板同型号,BIOS 为 American Megatrends F4b、发布日期 2025-02-21。CPU 是 AMD Ryzen 9 9950X3D 16-Core Processor,AM5、16 个物理核、32 个逻辑处理器。
- 内存安装量 68719476736 bytes(64 GiB),两个 Asgard VAM5UH64C32BG-DVALWA 模块,各 34359738368 bytes(32 GiB);额定与配置速率均为 6200 MT/s(每秒百万次传输),分别在 P0 CHANNEL A/B。
- Windows 基线为 Microsoft Windows 11 专业工作站版,25H2、version=10.0.26200、build_number=26200、edition_id=ProfessionalWorkstation、64 位、Client 安装;install_date_utc=2025-08-14T21:47:17Z。该投影没有单列补丁 UBR,不能从另一运行时的版本尾号推造系统补丁号。
- 主独显为 NVIDIA GeForce RTX 5090 D:权威显存来自 nvidia-smi,为 32607 MiB;权威驱动 616.64,Windows 驱动 32.0.16.1664,VBIOS 98.02.31.40.2c。AMD Radeon(TM) Graphics 集显驱动为 32.0.21045.5002,独立显存字段未提供,不能填成 0 或算成第二块 NVIDIA GPU。
- 同一显示适配器清单还记录 LIANLI USB Secondary Display-60hz(16.14.0.914),以及 GameViewer Virtual Display Adapter(15.6.5.199)、OrayIddDriver Device(17.50.19.949)、Virtual Display Driver(11.30.4.434)三项虚拟显示;六条显示记录不等于六块可用于模型计算的显卡。
- 同次稳定基线的十个开发运行时是 Docker CLI(命令行工具) 29.7.2、.NET SDK 10.0.303、Git 2.55.0.windows.3、Go 1.26.5、Node.js 26.4.0、Ollama 0.33.1、PowerShell Core 7.6.4、Python 3.14.7、Windows PowerShell 5.1.26100.9278、WSL(Windows 的 Linux 子系统) 2.6.3.0;这里的精确版本只服务基线复原,不成为永久升级门。
- 项目配置快照当前有164个键、第34代。update请求绑定Registry(登记清单)期望哈希、单一project id、唯一key集和项目Owner验证;投影失败时mark_stale,不保留伪current(当前状态)。
- 目录 Registry(登记清单) 和路径 Owner Registry(施工责任登记表) 各登记 57 项;项目路径依赖 Registry(登记清单) 汇总 15 个项目。普通任务只读取命中的有界条目,不加载整份依赖表。
- generated_publication_pipelines 把 inventory、task scan、项目依赖、任务重建和用途目录限定到各自 allowlist、checkpoint(续作检查点) 与 current(当前状态) pointer;机器生成物不能越界写叙事或替代源 Owner。
- 端口 Provider 同时读取 IPv4/IPv6 动态范围、排除段、listener 和登记冲突,available、blocked、unknown(未验证) 使用不同退出码。
- 开发存储 Provider 单独判断 V 与 Z;Z 降级不会自动阻断健康的 V 项目,当前现场摘要为 pass=5、warn=0、block=0。
- Invoke-TimeAuditAnomalyIncrement.ps1 调用 TimeAudit 的 `timeaudit.pcconfig-anomaly-digest.v1` Provider,只在 `%LOCALAPPDATA%\PCConfig\stable-machine` 保存 `pcconfig.timeaudit-anomaly-cursor.v1` 和有界 consumption receipt(执行回执)。
- weekly `PCConfig Governance Check` 复用现有维护路径:先消费增量,再固定运行一次稳定投影 publisher;若增量同时建议重查,罕见的第二次 publisher 调用严格 no-op,不新增高频任务。
执行流程
- 1
判断当前问题是否真的依赖机器事实
- 2
从 Registry(登记清单) 定位 Owner、真实配置源和只读入口
- 3
运行匹配 Provider 取得本次现场观察
- 4
需要变更时冻结 source、target、消费者、preimage、rollback 和 verification
- 5
先由项目 Owner(项目责任方) 修改并验收真实配置
- 6
再用期望哈希事务更新 PCConfig 快照或稳定投影
- 7
每周维护按上次成功 cursor 向 TimeAudit 请求最长 168 小时的 `(after, until]` 聚合窗口;验证 owner/profile/schema/coverage、异常和重查建议。
- 8
成功窗口写 bounded receipt(执行回执) 并推进 cursor;source unavailable、非法 payload 或同一时间边界不推进、不重写。只有明确 recommendation 才额外 Inspect 一次 live stable provider。
- 9
从项目与现场两端分别回读
边界
- 不递归扫描整个 C 盘,只看会改变当前决定的候选
- 不保存环境变量值、完整依赖 payload、序列号、网络身份或秘密
- project_config_keys 快照不反向修改项目真实配置
- 稳定投影不记录进程、负载、温度、空闲空间或时序数据
- VHD(虚拟磁盘文件)位于 E 盘,不构成独立故障域
- 目录不整齐不是迁移理由,移动和永久删除不能放在同一操作
- TimeAudit digest 不进入 stable_machine_projection.json,也不证明温度、磁盘或硬件配置发生稳定变化。
- 增量消费不新建数据库、控制面或高频任务,不查询 TimeAudit 原始行,也不在来源不可用时重启它。
失败与恢复
- Provider 或 Registry(登记清单) schema(数据结构) 失败
- 对应事实保持 unknown(未验证),阻断依赖该事实的迁移或配置决定;旧报告不能补齐。
- 项目配置源已改变但快照无法安全更新
- 优先把命中键标记为 stale;标记也失败则保留原文件并报告哈希或锁冲突。
- 端口预检通过但真实 bind 失败
- 停止服务启动,重新探测;不自动退回 8000 等常见默认端口。
- 稳定投影 live payload 不完整或含禁入字段
- 在替换 current(当前状态) 前失败,保留最后一个已验证的 v9 current(当前状态);失败采集不能覆盖既有投影。
- 生成投影 staging、manifest(清单) 或 current(当前状态) 不闭合
- 保留旧 current(当前状态) 与 checkpoint(续作检查点),不把 .incoming 或部分 registry(登记清单) 拼进现行配置地图。
- V 或 Z 恢复锚点不可读
- 只阻断依赖该盘的工作;不自动创建同名空盘覆盖恢复线索。
- TimeAudit source unavailable、窗口非法或 digest schema(数据结构) / payload 不合约
- 写有界 unavailable 结果但不推进 cursor、不调用稳定投影 publisher,也不尝试重启 TimeAudit。
- 同一 `(after, until]` 边界被重复调用
- 返回 no_new_window,cursor 与 receipt(执行回执) 不重写;weekly 路径不会因此重复发布。
- 异常建议重查但 live stable provider 返回无变化
- 保留 anomaly receipt(执行回执),稳定投影严格 no_change;摘要不能覆盖 live provider 的裁定。
真实入口
E:\PCConfig\registries\folders.json57 个登记目录及其用途边界
E:\PCConfig\registries\path_owners.json57 个路径 Owner 与依赖事实来源
E:\PCConfig\registries\project_path_dependencies.json15 个项目的路径依赖汇总
E:\PCConfig\registries\project_config_keys.json路径、端口、模型和数据源的非权威快照目录
E:\PCConfig\registries\stable_machine_projection.json版本化稳定机器投影 current(当前状态)
E:\PCConfig\registries\generated_publication_pipelines.json机器生成 Registry(登记清单)/报告的 allowlist、checkpoint(续作检查点) 与 current(当前状态) 边界
E:\PCConfig\docs\contracts\pcconfig.path-project-config.md路径与项目配置事务合同
E:\PCConfig\docs\contracts\pcconfig.stable-machine-projection.md稳定字段、禁入项、版本与发布语义
E:\PCConfig\tools\Invoke-TimeAuditAnomalyIncrement.ps1有界增量窗口、cursor、receipt(执行回执)、recommendation 与 publisher 调用边界
E:\PCConfig\tools\timeaudit_anomaly_increment.test.ps1成功推进、unavailable 不推进、同边界 no-op 与重查建议回归
E:\PCConfig\docs\governance\local_service_port_policy.md固定端口实时门禁
E:\PCConfig\docs\governance\move_gate.md迁移、回滚与删除分离
E:\PCConfig\docs\governance\dev_storage_policy.mdE/V/Z 放置和恢复关系
如何验证
- Get-DevStorageHealth.ps1 -Json 于 2026-08-29 返回 5 项 pass、0 warn、0 block
- Get-RuntimeInventory.ps1 -Json 当前 exit 0 且返回 pcconfig.runtimes.v1
- Invoke-StableMachineProjection.ps1 -Action Read -Json 读取入口对应已发布版本9;本轮只读registry(登记清单)与dbb30ee,投影生成于2026-09-10,是稳定配置基线而非瞬时运行状态
- validate_project_config_keys.mjs 验证键、敏感级别、来源、快照状态和事务字段
- test_local_service_port.test.ps1 覆盖动态范围、排除段、listener、登记冲突和 unknown(未验证)
- stable_machine_projection.test.ps1 覆盖禁入字段、原子回读、变化链和重复 no-op
- d4480abc 的合同与 focused test 已定义 TimeAudit 增量消费者;本网页审计没有把测试存在冒充 weekly 任务本轮已运行或稳定投影发生变化。
与其他模块的关系
这个模块回答“机器配置在哪里、现在是什么”;TimeAudit 增量摘要只提醒它何时值得重新读一次现场,不提供稳定事实本身。运行时与启动模块负责“它怎样启动和运行”,恢复模块负责“故障后怎样重建”,本人验证与设备保护模块负责“什么时候需要本人证明、秘密何时暂停,以及独立磁盘保护怎样恢复”。
