Skip to content

Releases: NoctilumeDev/DarkRoomLibrary

DarkRoomLibrary v1.2.5

Choose a tag to compare

@github-actions github-actions released this 08 Aug 11:49
718c1f3

DarkRoomLibrary v1.2.5

This security patch updates the HTML sanitizer dependency without changing product behavior.

Changes

  • Updated org.jsoup:jsoup from 1.22.2 to 1.23.1.
  • Resolved GHSA-pmhh-3w7g-xqp8, which affects Cleaner configurations that permit custom raw-text elements.
  • Made no business logic, database schema, API, or frontend changes.

Verification boundary

  • Dependabot PR #9 passed the complete CI and Security workflows before merge.
  • The merge commit passed CI, Security, and GitHub Pages, and GitHub marked the alert as fixed.
  • The release workflow reruns complete CI on the tag commit and requires a successful Security workflow for the same commit.
  • Existing single-instance, browser, concurrency, middleware-degradation, and historical three-instance evidence remains explicitly dated; this dependency-only patch does not claim to have rerun those real chains.

DarkRoomLibrary v1.2.4

Choose a tag to compare

@github-actions github-actions released this 08 Aug 08:02
75425ff

DarkRoomLibrary v1.2.4

This patch release freezes the verified v1.2.x backend and database boundary while strengthening public delivery evidence.

Changes

  • Updated the locked nanoid transitive dependency to address GHSA-2v37-7h3g-55p8.
  • Fixed the local browser workflow by routing development API requests through the Vite same-origin proxy instead of weakening CSP.
  • Added independent CodeQL, dependency review, and npm audit security gates.
  • Added repository architecture and release-version checks to CI.
  • Added a tag-gated release workflow that reruns CI, requires a successful Security run on the same commit, and verifies main ancestry.
  • Added reproducible ZIP, SHA-256, manifest, and SPDX SBOM release assets.
  • Increased the Pages deployment wait boundary after GitHub timed out while the deployment remained in progress.

Verification boundary

  • Backend: 282 tests, no failures, errors, or skips; 70% line-coverage gate passed.
  • Frontend: 68 critical-logic tests, ESLint, production build, demo build, and high-severity npm audit passed.
  • Six fixed identities completed 70 real page API responses across borrowing, permissions, procurement, logistics, and warehouse intake.
  • Redis and RabbitMQ each passed available and unavailable/degraded checks without blocking database-backed core operations.
  • The 20-scenario concurrency suite passed 393 requests; browser diagnostics passed 116 routes, 456 API responses, and 6,114 network responses with no reported runtime, network, or layout errors.
  • The three-instance 8-scenario/176-request result remains explicitly dated 2026-08-02; it was not rerun on the 16 GB host during this patch acceptance.

DarkRoomLibrary v1.2.3

Choose a tag to compare

@NoctilumeDev NoctilumeDev released this 02 Aug 16:10

边界加固

  • 增加 X-Request-ID 响应头、日志 MDC 与跨域预检支持,非法调用方 ID 自动替换为 UUID。
  • 为生产 Nginx 和静态入口增加 CSP、Referrer、Permissions、nosniff 与禁止嵌入策略。
  • 收紧生产/Compose 限流默认值,生产 Profile 拒绝弱 RabbitMQ 密码和缺失告警 Webhook。
  • 增加 RabbitMQ 两个死信队列监控、Redis 跨实例告警抑制与本地故障回退。
  • 抽离并测试 Vue 路由守卫,补充登录与个人资料组件测试。

验证结果

  • 后端 282/282,行覆盖率 72.23%
  • 前端 68/68,关键逻辑范围行覆盖率 71.47%;ESLint、生产构建、演示构建和 npm 官方审计通过。
  • 三实例、六身份、并发一致性和浏览器/F12 基线继续通过;最终浏览器记录为 116 个路由、456 次 API、6,206 次网络响应。
  • 最终真实容器复核确认 CORS 请求 ID、毒消息转死信、三实例单次告警、四队列归零和数据库不变量正常。

本版本没有数据库结构变更。首次安装仍只需执行 sql/init-dark-room-library.sql

DarkRoomLibrary v1.2.2

Choose a tag to compare

@NoctilumeDev NoctilumeDev released this 02 Aug 12:34

v1.2.2

安全、可靠性与可观测性冻结修订。

  • 增加受信代理 CIDR 与统一客户端 IP 解析。
  • 增加 Redis Lua 敏感端点令牌桶。
  • 增加 RabbitMQ 毒消息队列与通知终态 Webhook。
  • 生产环境默认密钥 fail-fast。
  • 临时公开文件仅允许图片匿名预览。
  • 修复鉴权网络失败、采购消息分页和已读锁边界。
  • GitHub Actions 增加后端与前端覆盖率门禁和公开报告。

验证:后端 272/272,前端 58/58;三实例、六身份、并发一致性和 116 路由浏览器诊断全部通过。

DarkRoomLibrary v1.2.1

Choose a tag to compare

@NoctilumeDev NoctilumeDev released this 02 Aug 10:09

DarkRoomLibrary v1.2.1

面向单机与小团队部署的最终验收冻结版本。本次只收口安全边界、跨实例一致性、采购物流状态机和交付证据,不再扩展大型业务模块。

主要修复

  • JWT 增加 auth_version,密码、角色、协调员能力和账号状态变化后,三个实例立即共同拒绝旧令牌。
  • 登录失败统一 BCrypt 校验成本、通用错误和“账号 + 来源 IP”计数,并增加 JWT 前置 IP 接入限流。
  • 采购员与管理员只能推进到“已下单”;发货、到货和入库必须由物流状态流转产生。
  • 采购协作消息改为游标分页,只确认当前真实展示的消息 ID;采购图书选择改为后端远程搜索。
  • Demo、README、部署指南、系统设计、架构审查、模块图和最终验收报告统一到 v1.2.1。

最终验收证据

  • 后端测试:245/245
  • 前端测试:41/41,ESLint、生产构建、Demo 构建通过,官方 npm 审计 0 vulnerabilities
  • 三实例一致性:8 个场景、262 次请求
  • 跨实例边界:4 个场景、76 次请求
  • 六个固定权限身份真实业务闭环通过
  • 浏览器/F12:116 个路由、456 次 API、5,988 次网络响应,运行时错误与横向溢出为 0
  • MySQL:24 张表、34 条外键,库存、借阅、预约、推荐事件、采购入库和邮箱配额不变量违规为 0
  • Redis AOF 正常;RabbitMQ 两个队列无待消费或未确认消息

交付附件

  • release.zip:仅包含提交 1d77f08 的 Git 跟踪文件
  • release.zip.sha256:SHA-256 校验文件

公开部署前请修改六个演示账号密码,并设置独立的 JWT、数据库、邮件和 CORS 配置。

DarkRoomLibrary v1.2.0

Choose a tag to compare

@NoctilumeDev NoctilumeDev released this 01 Aug 13:08

DarkRoomLibrary v1.2.0

本版本完成可解释荐书闭环和最终交付收口。

主要更新

  • 内容召回与真实协同信号组合的 CONTENT / HYBRID 推荐
  • “不感兴趣”入口、30 天候选过滤和数据库原生幂等事件写入
  • Redis 全局/读者版本令牌,Redis 不可用时回退 MySQL 聚合指纹
  • ECharts 按核心、折线、柱状和饼图拆分,普通页面首屏不加载统计依赖
  • GitHub Pages 六身份在线演示、README、HTML、PPT 与三份 PDF 同步更新
  • 修复推荐连续关闭的前端响应乱序,并压缩 PDF 重复字体资源

验证结果

  • 后端测试:241/241
  • 前端单测:37/37
  • 六个固定身份真实全链路通过
  • 三个后端实例推荐首次生成只产生一个批次,真实 HYBRID 结果一致
  • 浏览器诊断:116 个路由、352 次 API、6,102 次网络响应,运行时错误为 0
  • npm audit:0 vulnerabilities
  • 数据库:24 张物理表、34 个外键,推荐孤儿、跨用户事件和重复事件均为 0

SHA-256 校验值见附件 release.zip.sha256

DarkRoomLibrary v1.1.1

Choose a tag to compare

@NoctilumeDev NoctilumeDev released this 29 Jul 22:50
6336c22

DarkRoomLibrary v1.1.1

修复多实例并发注册时的邮箱账号配额一致性与隐私边界。

修复

  • 同一规范化邮箱最多关联 3 个账号
  • 注册在邮箱验证前不泄露账号、署名或配额状态
  • 联系邮箱换绑必须验证新邮箱
  • 物理删除用户后释放邮箱名额
  • 配额行从首条语句取得排他锁,消除 MySQL 共享锁升级死锁
  • 修复全链路脚本对固定第一页数据的隐含依赖

验证

  • 后端测试:229/229
  • 前端单测:36/36
  • 三实例 100 请求:3 成功、97 明确配额拒绝、0 其他失败
  • 注册隐私、换绑和删除释放名额真实链路通过
  • 六个固定身份完整业务链路通过
  • 浏览器诊断:116 个路由,Console、Network、布局均无异常
  • npm audit:0 vulnerabilities

SHA-256 校验值见附件 release.zip.sha256

DarkRoomLibrary v1.1.0

Choose a tag to compare

@NoctilumeDev NoctilumeDev released this 27 Jul 22:27

DarkRoomLibrary v1.1.0

2026-07-27 公开交付基线新增零成本在线演示,并用真实 Issue → PR → CI → 合并流程完成验证。

主要变化

  • GitHub Pages 浏览器演示,支持六个固定身份直接进入与会话重置
  • 借还库存、预约收藏、书评留言、采购物流与幂等入库等关键状态流转
  • 上传下载、邮件、注册、注销和导出能力边界明确,未知写操作不会伪造成功
  • GitHub Pages Actions、Bug/Feature Issue 模板和同步部署文档
  • 后端、前端与文档版本统一到 1.1.0

验证结果

  • 后端测试:226/226
  • 前端单元测试:36/36
  • ESLint、生产构建、演示构建、Compose 配置:通过
  • npm 官方 registry 审计:0 vulnerabilities
  • 本地浏览器:六身份、23 个演示页面、借还与采购入库流程通过
  • Pages:128 个静态文件逐个返回 200,JavaScript MIME 正确,Console warning/error 为 0

在线演示仅使用浏览器会话数据,不替代 Spring Boot、MySQL、Redis、RabbitMQ 或真实并发验证。ECharts 图表块仍约 548 KB(gzip 186.62 KB),但登录首屏不加载,仅在图表页面按需下载。

SHA-256 校验值见附件 release.zip.sha256

DarkRoomLibrary v1.0.0

Choose a tag to compare

@NoctilumeDev NoctilumeDev released this 27 Jul 20:28

DarkRoomLibrary v1.0.0

首个正式开源版本,完成从课程项目到可重复交付版本的整理。

主要内容

  • 完整的读者借阅、预约续借、书评互动、后台治理、采购物流与库存入库闭环
  • Spring Boot 3.5.16、Vue 3.5.40、Vite 8.1.5
  • 可选 Docker Compose 完整环境
  • MySQL、Redis、RabbitMQ 和受保护健康检查
  • GitHub Actions 持续集成
  • README 真实截图与完整部署文档
  • 单份 SQL 初始化入口

验证结果

  • 后端测试:226/226
  • 前端单测:31/31
  • 六个固定身份全链路通过
  • 三实例并发一致性验证通过
  • 浏览器诊断:116 个路由、414 次 API、5,678 次网络响应
  • npm audit:0 vulnerabilities

SHA-256 校验值见附件 release.zip.sha256