迭代批量安排酒店
This commit is contained in:
1 parent
4cfbefffe8
commit
c2c71d35af
48 files changed
+5670
-57
No files matched your search
@@ -0,0 +1,5 @@
|
||||
# 2026-09-24 验证证据
|
||||
|
||||
以下为历史验证记录,不代表当前业务规则。
|
||||
|
||||
- [同团批量酒店本地验证](hotel-batch-01a0858b/README.md)
|
||||
@@ -0,0 +1,23 @@
|
||||
# 同团批量酒店本地验证
|
||||
|
||||
本目录保存 2026-09-24 此次版本验证,不作为当前规则来源;当前契约以活动源码和发布清单为准。本次未部署、重启、扩展重载、真实 ERP 写入或外部发消息。
|
||||
|
||||
## 结果
|
||||
|
||||
- 控制面测试:299/299 通过,见 [输出](control-plane-tests.txt)。
|
||||
- 插件及兼容回归:447/447 通过,见 [输出](legacy-tests.txt)。覆盖普通单条、五段输入、整批拒绝非法输入、串行执行、成功前缀持久化、失败/不确定停止、超时保存证据、只读收敛不续写、执行中父结果不误报未写入。
|
||||
- `node --run check`、`node --run build`:退出码 0;未手改编译输出。
|
||||
- `check:repo`:干净源码副本 10/10 通过,含版本/哈希、ZIP 与源码逐文件比对、DOCX 单一源和活动链接,见 [输出](repository-clean-tests.txt)。
|
||||
- 原工作目录保留既有 `.idea/`、`.DS_Store` 和 2026-09-14 历史 `.log`,因此其仓库卫生检查有两个既有失败,见 [原目录结果](repository-local-residue.txt)。副本来自当前受控源码和本次新文件,仅排除这些原有杂项、秘密配置及可重建输出;不修改检查断言来放行杂项。
|
||||
- 按 Docker runtime COPY 布局隔离加载编译产物与共享模块,程序解析两条酒店成功;没有 DB/ERP 连接。见 [运行布局验证](runtime-layout-smoke.txt)。没有执行完整 Docker 镜像构建。
|
||||
|
||||
## DOCX 全页视觉检查
|
||||
|
||||
- 由现有 Markdown 和生成器重建指令表 0.5.137,使用 bundled LibreOffice/Poppler 与中文字体配置。
|
||||
- 18 页 PNG 全部逐页打开检查,中文正常,无方框字、截断或重叠;酒店新增示例位于第 8—9 页,参见 [第 8 页](docx-page-8.png)、[第 9 页](docx-page-9.png)。沿用原文档布局和样式。
|
||||
- 已验证 DOCX SHA-256:`64846b40722d5c3c3807868f990c5781e77c746fc7f9f115ccfca1a74beb786e`。
|
||||
- 运营文档批量示例由测试直接读取并解析,验证三条安排及跨多晚日期没有被拆分。
|
||||
|
||||
## 验证边界
|
||||
|
||||
浏览器执行编排测试使用本地 VM 与合成 ERP 成功/失败回执;页面原生单条行为依赖既有适配器回归。真实团队多酒店保存、资源候选和页面速度需更新服务端/平台/插件后在授权环境验收。数据库 schema 未变,无新增迁移。
|
||||
File diff suppressed because it is too large.
Load diff
Binary file not shown.
|
After Width: | Height: | Size: 148 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 246 KiB |
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,70 @@
|
||||
TAP version 13
|
||||
# Subtest: root contains only governed long-lived entries
|
||||
ok 1 - root contains only governed long-lived entries
|
||||
---
|
||||
duration_ms: 56.801042
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: project docs are the sole active project memory
|
||||
ok 2 - project docs are the sole active project memory
|
||||
---
|
||||
duration_ms: 18.133583
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: temporary residue and report outputs do not pollute the repository
|
||||
ok 3 - temporary residue and report outputs do not pollute the repository
|
||||
---
|
||||
duration_ms: 286.1865
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: dist is an exact versioned release set with valid hashes
|
||||
ok 4 - dist is an exact versioned release set with valid hashes
|
||||
---
|
||||
duration_ms: 17.027209
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: extension and release baselines agree
|
||||
ok 5 - extension and release baselines agree
|
||||
---
|
||||
duration_ms: 217.44
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: packaged Skills and extension runtime match their project sources
|
||||
ok 6 - packaged Skills and extension runtime match their project sources
|
||||
---
|
||||
duration_ms: 1279.993542
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: active Markdown links resolve and current docs do not depend on rolling history
|
||||
ok 7 - active Markdown links resolve and current docs do not depend on rolling history
|
||||
---
|
||||
duration_ms: 465.839542
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: archive README indexes remain navigable
|
||||
ok 8 - archive README indexes remain navigable
|
||||
---
|
||||
duration_ms: 375.876166
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: single-source and generated-output boundaries remain explicit
|
||||
ok 9 - single-source and generated-output boundaries remain explicit
|
||||
---
|
||||
duration_ms: 12.060458
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: runtime image includes both LibreOffice document converters
|
||||
ok 10 - runtime image includes both LibreOffice document converters
|
||||
---
|
||||
duration_ms: 0.917292
|
||||
type: 'test'
|
||||
...
|
||||
1..10
|
||||
# tests 10
|
||||
# suites 0
|
||||
# pass 10
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 3102.947542
|
||||
@@ -0,0 +1,132 @@
|
||||
TAP version 13
|
||||
# Subtest: root contains only governed long-lived entries
|
||||
not ok 1 - root contains only governed long-lived entries
|
||||
---
|
||||
duration_ms: 5.167042
|
||||
type: 'test'
|
||||
location: '/Users/andy/IdeaProjects/LWLT-AIBOT/tools/repository-hygiene.test.mjs:111:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
Expected values to be strictly deep-equal:
|
||||
+ actual - expected
|
||||
|
||||
+ [
|
||||
+ '.DS_Store',
|
||||
+ '.idea'
|
||||
+ ]
|
||||
- []
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual:
|
||||
0: '.DS_Store'
|
||||
1: '.idea'
|
||||
operator: 'deepStrictEqual'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///Users/andy/IdeaProjects/LWLT-AIBOT/tools/repository-hygiene.test.mjs:114:10)
|
||||
async Test.run (node:internal/test_runner/test:1054:7)
|
||||
async startSubtestAfterBootstrap (node:internal/test_runner/harness:296:3)
|
||||
...
|
||||
# Subtest: project docs are the sole active project memory
|
||||
ok 2 - project docs are the sole active project memory
|
||||
---
|
||||
duration_ms: 4.306292
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: temporary residue and report outputs do not pollute the repository
|
||||
not ok 3 - temporary residue and report outputs do not pollute the repository
|
||||
---
|
||||
duration_ms: 346.891167
|
||||
type: 'test'
|
||||
location: '/Users/andy/IdeaProjects/LWLT-AIBOT/tools/repository-hygiene.test.mjs:149:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
Expected values to be strictly deep-equal:
|
||||
+ actual - expected
|
||||
|
||||
+ [
|
||||
+ '.DS_Store',
|
||||
+ 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/build.log',
|
||||
+ 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/control-plane-tests.log',
|
||||
+ 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/focused-tests.log',
|
||||
+ 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/legacy-tests.log',
|
||||
+ 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/repository-clean.log',
|
||||
+ 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/repository-local-metadata.log',
|
||||
+ 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/runtime-layout-smoke.log',
|
||||
+ 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/typecheck.log',
|
||||
+ 'chrome-extension/.DS_Store'
|
||||
+ ]
|
||||
- []
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual:
|
||||
0: '.DS_Store'
|
||||
1: 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/build.log'
|
||||
2: 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/control-plane-tests.log'
|
||||
3: 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/focused-tests.log'
|
||||
4: 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/legacy-tests.log'
|
||||
5: 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/repository-clean.log'
|
||||
6: 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/repository-local-metadata.log'
|
||||
7: 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/runtime-layout-smoke.log'
|
||||
8: 'archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/typecheck.log'
|
||||
9: 'chrome-extension/.DS_Store'
|
||||
operator: 'deepStrictEqual'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///Users/andy/IdeaProjects/LWLT-AIBOT/tools/repository-hygiene.test.mjs:153:10)
|
||||
async Test.run (node:internal/test_runner/test:1054:7)
|
||||
async Test.processPendingSubtests (node:internal/test_runner/test:744:7)
|
||||
...
|
||||
# Subtest: dist is an exact versioned release set with valid hashes
|
||||
ok 4 - dist is an exact versioned release set with valid hashes
|
||||
---
|
||||
duration_ms: 113.312
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: extension and release baselines agree
|
||||
ok 5 - extension and release baselines agree
|
||||
---
|
||||
duration_ms: 17.245958
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: packaged Skills and extension runtime match their project sources
|
||||
ok 6 - packaged Skills and extension runtime match their project sources
|
||||
---
|
||||
duration_ms: 910.900667
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: active Markdown links resolve and current docs do not depend on rolling history
|
||||
ok 7 - active Markdown links resolve and current docs do not depend on rolling history
|
||||
---
|
||||
duration_ms: 725.7125
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: archive README indexes remain navigable
|
||||
ok 8 - archive README indexes remain navigable
|
||||
---
|
||||
duration_ms: 174.902458
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: single-source and generated-output boundaries remain explicit
|
||||
ok 9 - single-source and generated-output boundaries remain explicit
|
||||
---
|
||||
duration_ms: 5.070916
|
||||
type: 'test'
|
||||
...
|
||||
# Subtest: runtime image includes both LibreOffice document converters
|
||||
ok 10 - runtime image includes both LibreOffice document converters
|
||||
---
|
||||
duration_ms: 0.831625
|
||||
type: 'test'
|
||||
...
|
||||
1..10
|
||||
# tests 10
|
||||
# suites 0
|
||||
# pass 8
|
||||
# fail 2
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 2544.066833
|
||||
@@ -0,0 +1 @@
|
||||
PASS: compiled control plane imports and batch parser work with only Docker runtime COPY dependencies; no DB or ERP connection.
|
||||
@@ -0,0 +1,5 @@
|
||||
# 2026-09-24 发布归档
|
||||
|
||||
本目录只供历史追溯,不代表当前规则。
|
||||
|
||||
- [同团批量酒店发布前交付物](hotel-batch-01a0858b/README.md)
|
||||
@@ -0,0 +1,6 @@
|
||||
# 批量酒店发布前交付物归档
|
||||
|
||||
这些文件仅供历史追溯,不代表当前业务规则或发布版本。当前交付物以 [release-manifest.json](../../../../dist/release-manifest.json) 为准。
|
||||
|
||||
- [Chrome 插件 0.5.189](ltjt-order-assistant-0.5.189.zip):归档前逐字节核对原发布清单 SHA-256,无源码重建或覆盖。
|
||||
- [运营指令表 0.5.136](老挝联泰AI指令表-0.5.136.docx):保留新批量示例加入前的完整文档。
|
||||
Binary file not shown.
Binary file not shown.
Reference in new issue
Block a user