Remote AC Controller v1.2.0
⚠️ Superseded by v1.2.1 / 本版本已由 v1.2.1 取代
Superseded by v1.2.1.
The PCB manufacturing files contained in the automatically generated v1.2.0
source archives predate the layout correction. Do not manufacture a PCB from
those source archives. Use v1.2.1 instead.
本版本已由 v1.2.1 取代。
GitHub 自动生成的 v1.2.0 源码归档中包含布局修正前的 PCB 文件。
请勿使用这些源码归档中的 PCB 文件进行制板,请改用 v1.2.1。
Remote AC Controller v1.2.0 — 唯一正式 Monorepo
本版本确立 nobodycareme/remote-ac-controller 为唯一公开、活跃、可发布的正式仓库。一次 clone 包含完整项目:Firmware(PlatformIO + Arduino IDE)、Cloud Backend(Fastify)、Cloud Frontend(Vue 3)、硬件 PCB(Gerber)、红外学习工具、完整中英文文档与统一 CI。
主要内容
- 西电校园网自动认证(正式实现):authEpoch 认证周期模型(每 Portal 周期一次初次认证;Wi-Fi 掉线 / DHCP 变化 / Portal 重现均可自动恢复);30/60/120s 退避阶梯 + 小时配额 + 硬阻断闩锁;编译期 feature-gate 依赖约束(AUTO→LIVE_AUTH→CAMPUS_AUTH→WIFI);日志脱敏。
- MQTT 自动恢复(真机验证):冷启动后 <1 分钟自动完成联网→认证→MQTT 恢复,遥测持续上报。
- 完整中英文双路径:根 README.md ↔ README.en.md;docs/doc-map.json 24 对一一映射;doc-parity / doc-links / doc-language-links 三套校验。
- 统一 CI(11 job):firmware-platformio-public、firmware-arduino-public(5 组矩阵)、firmware-host-tests、cloud-backend-build-test、cloud-frontend-build-test、repository-secret-scan、real-ir-exclusion、doc-parity、doc-links、version-consistency、repo-hygiene。
- 统一版本 1.2.0:根 VERSION / 固件常量 / backend / frontend 一致。
安全边界
- 公共构建:无真实凭据、无真实 IR 帧、自动认证关闭(ENABLE_AUTO_CAMPUS_AUTH=0)。
- 私有凭据仅存在于 git-ignored 的 campus_secrets.h / cloud_secrets.h / profiles/xidian.h,绝不进入公开仓库。
- 不含真实 IR 帧数据(ac_states.ts 仅含公开元数据);不含生产 Secrets;未做任何二次凭据轮换。
- 全量安全扫描:当前树 / 全历史 秘密命中 0、私钥 0、真实 IR 0、数据库 0。
从误拆仓库回迁
- remote-ac-firmware(HEAD 02e0c6f0,tag v1.1.0)与 remote-ac-cloud(HEAD d8a62223,tag v1.1.0)已停止维护,仅保留为私有归档记录。本次发布未导入其任何 Git 历史(无 merge --allow-unrelated-histories、无 subtree add、无 mirror push)。
- 唯一迁移项:cloud/tools/backend_verify.js 安全模式(env-var 凭据)合并入 Monorepo;拆分仓库含真实 IR 默认值的 config.ts 未迁入。
资产
- 源码归档(GitHub 自动生成 zip/tar.gz)
- remote-ac-controller-pcb-v1.2.0.zip — PCB 制造文件(Gerber + Drill + README)
- remote-ac-controller-ir-simple-learner-src-v1.2.0.zip — 红外学习工具源码
- SHA256SUMS.txt