test: record remote template and compatibility release acceptance

This commit is contained in:
2026-09-24 15:06:48 +08:00
parent 6e3f025aad
commit bca2ef92cc
4 changed files with 107 additions and 1 deletions

View File

@@ -24,4 +24,15 @@
镜像、时间及资源限制见 [Redis 记录](errorParamsRedis.json)。临时容器已删除。未进行 Linux soak、代理长测或完整业务迁移验收。
远程固定版本消费者验收在发布后追加;已发布标签保持不可变。
## 远程固定版本验收
三条独立远程验收均通过,各自从全新 module cache 安装固定版本 CLI。生成消费者固定依赖远程版本,没有本地 replace。
- 发布标签:`v0.11.0-preview`;源码:`6e3f025aad4e498217ef4e7346725fc7d892940c`。
- module 校验和:`h1:arCeNRbzXsP3/Ocic2zTmm6Cr2nUWR1AcdzlOtoCBfo=`,三条验收一致。
- 提示模板消费者:参数顺序和类型、企业名称/100 与备注/500、生成函数/运行时一致、并发隔离、缺参/类型错误兜底、内部 cause 隔离、HTTP 200/data:null、403 覆盖、raw 输出、OpenAPI 具体示例和参数定义通过。耗时 16.91 秒,见 [模板远程记录](errorParamsRemote.json)。
- 旧固定错误目录消费者:无参数调用、同码不同提示、HTTP 状态、未知错误兜底、中间件提前返回和重生成保护通过。耗时 16.30 秒,见 [目录兼容记录](errorParamsCatalogRemote.json)。
- 迁移消费者:自定义标量、动态 JSON、上传、下载、原始请求体验签、请求体限制及重生成保护通过。耗时 16.61 秒,见 [迁移兼容记录](errorParamsCompatibilityRemote.json)。
- 三条消费者的 race 测试通过,fixture 哈希与当前文件一致;临时项目和 module cache 已清理。
验收记录在 main 单独追加,已发布标签保持不可变。

View File

@@ -0,0 +1,29 @@
{
"passed": true,
"frameworkVersion": "v0.11.0-preview",
"frameworkSum": "h1:arCeNRbzXsP3/Ocic2zTmm6Cr2nUWR1AcdzlOtoCBfo=",
"freshModuleCache": true,
"noLocalReplace": true,
"durationSeconds": 16.3,
"checks": [
"remoteCLIInstall",
"errorCatalogValidation",
"generatedErrorConstructors",
"http200BusinessFailure",
"duplicatePublicCodeDistinctMessages",
"perErrorHTTPStatus",
"unknownErrorFallback",
"causeNotExposed",
"rawSuccessAndWrappedFailure",
"earlyMiddlewareCatalog",
"handwrittenFilesPreserved",
"generatedConsumerRaceTests",
"fixedRemoteModuleChecksum"
],
"sourceHashes": {
"scripts/verifyErrorCatalogRelease.py": "53b00d6069296903ba8392c68dfd6d9ae6d8c83e9b82555e55e8be0ec0f2b828",
"cmd/go-omni/apigen/errorCatalog_test.go": "0ee4365dc46dfb4ac4a3fafd2f2f0196a1e10db777ff9d931ea8f9fae4dda384",
"examples/contracts/errors.api": "bfbe0e81c6d0f87981f511f21d4d3e138cdf9287c5f6615856ac04a825b14435",
"cmd/go-omni/apigen/testdata/errorCatalog/consumer_test.go": "804cee8cdbca5fe05e6340b8ac21e5bbb7d2a5c38fa6b06b121fc745aaea62ac"
}
}

View File

@@ -0,0 +1,31 @@
{
"passed": true,
"frameworkVersion": "v0.11.0-preview",
"frameworkSum": "h1:arCeNRbzXsP3/Ocic2zTmm6Cr2nUWR1AcdzlOtoCBfo=",
"freshModuleCache": true,
"noLocalReplace": true,
"durationSeconds": 16.61,
"checks": [
"remoteCLIInstall",
"scalarContractValidation",
"manualProjectGeneration",
"int64MaxValueOnWire",
"dynamicJSON",
"rawBodySignature",
"routeBodyLimits",
"multipartTempCleanup",
"unwrappedDownloads",
"handwrittenFilesPreserved",
"generatedConsumerRaceTests",
"fixedRemoteModuleChecksum"
],
"sourceHashes": {
"scripts/verifyCompatibilityRelease.py": "90e487d3203ed4eb4bc721da8086356413345b3e05193e473250a834aeb8d293",
"cmd/go-omni/apigen/compatibility_test.go": "98cf5fbe6cb6413c12f709806d385726f3dec1468575f76967786de4707667ba",
"examples/contracts/compatibility.api": "3ede909e7f60386012e55c916a8e4887dd08562e7f023665f663288c809873d4",
"cmd/go-omni/apigen/testdata/compatibility/consumer_test.go": "0a99ffd6a5cc16d47ae8208d9140c8d6afd9c19106fac8e5e61096cb90d8c463",
"cmd/go-omni/apigen/testdata/compatibility/hooks.go": "435baf37c7f8adffd18d4be0353a791124e0bc5dcb79abdcc345276b6f9867f4",
"cmd/go-omni/apigen/testdata/compatibility/echo.go": "9e13cb18a0951974e723a1fd915c0f4610d823c95eadb752c3d1cd75c44fa293",
"cmd/go-omni/apigen/testdata/compatibility/download.go": "e7f4bcdb34c90ec63fdab1f3c4e524964ac153944352d8a9053a9f19b74030fd"
}
}

View File

@@ -0,0 +1,35 @@
{
"passed": true,
"frameworkVersion": "v0.11.0-preview",
"frameworkSum": "h1:arCeNRbzXsP3/Ocic2zTmm6Cr2nUWR1AcdzlOtoCBfo=",
"freshModuleCache": true,
"noLocalReplace": true,
"durationSeconds": 16.91,
"checks": [
"remoteCLIInstall",
"errorCatalogValidation",
"generatedErrorConstructors",
"http200BusinessFailure",
"openAPIConcreteExampleAndParameters",
"typedParameterOrder",
"companyAndRemarkMessages",
"runtimeAndGeneratedAgreement",
"missingAndWrongParameterFallback",
"concurrentIsolation",
"fixedErrorCompatibility",
"perErrorHTTPStatus",
"causeNotExposed",
"rawSuccessAndWrappedFailure",
"earlyMiddlewareCatalog",
"handwrittenFilesPreserved",
"generatedConsumerRaceTests",
"fixedRemoteModuleChecksum"
],
"sourceHashes": {
"scripts/verifyErrorParamsRelease.py": "4e9ed06a1e86a701da4eaed813ef5a2456ccfb6e8bdf88f657cb7abfede9d3c3",
"cmd/go-omni/apigen/errorParams_test.go": "0e6f79d3dec842c07cdac9d1e247f5593f189a0984ed25be7b0f9b6da6cba47d",
"cmd/go-omni/apigen/errorCatalog_test.go": "0ee4365dc46dfb4ac4a3fafd2f2f0196a1e10db777ff9d931ea8f9fae4dda384",
"examples/contracts/errorParams.api": "d6d09d60eb8079283e6622983e62a8a8c2ad2e070843e99bae6f8c8da491a44c",
"cmd/go-omni/apigen/testdata/errorParams/consumer_test.go": "01d0826cbf85126ad3c6d25e45d881655385931c6f97f242818f4d49c3416f4a"
}
}