bootstrap_asset.go 的 gameStackAssets 只 embed 了 deploy/limbo 和 deploy/lobby(外加 plugins/*),没有 deploy/paper/Dockerfile 和 deploy/paper/entrypoint.sh。而 5d4f306 起 build_game_stack 无条件构建第三个镜像:docker build -f "${GAME_STACK_DIR}/deploy/paper/Dockerfile"。
bootstrap_asset.go
gameStackAssets
deploy/limbo
deploy/lobby
deploy/paper/Dockerfile
deploy/paper/entrypoint.sh
5d4f306
build_game_stack
docker build -f "${GAME_STACK_DIR}/deploy/paper/Dockerfile"
在 HAVE_PREBUILT_BINARY 的两条路径上(TUI hand-off / release 下载,都没有 source checkout),game_stack_source 用 felis bootstrap-assets game-stack 解 embedded tar 当 build context,里面没有 deploy/paper,那一步 docker build 直接失败、安装 die 在 game-stack 中段。source-checkout 路径(GAME_STACK_DIR="$SRC_DIR")不受影响——这也是它没被现有安装撞出来的原因。
HAVE_PREBUILT_BINARY
game_stack_source
felis bootstrap-assets game-stack
GAME_STACK_DIR="$SRC_DIR"
修法:bootstrap_asset.go 补一行 //go:embed deploy/paper/Dockerfile deploy/paper/entrypoint.sh(该文件注释明确要求 file-explicit,别用父目录),并把 bootstrap_asset_test.go 的契约测试延伸到 paper 的 Dockerfile。
//go:embed deploy/paper/Dockerfile deploy/paper/entrypoint.sh
bootstrap_asset_test.go
在 #20 施工的复核中发现;main 上同样存在,与 #20 的改动无关——#20 只是给这个收不到文件的 Dockerfile 加了必填 ARG,未加重也未修复。
已修(3f2b28d):bootstrap_asset.go 的 gameStackAssets 补齐 deploy/paper/Dockerfile + deploy/paper/entrypoint.sh(保持 file-explicit 的 embed 纪律);embedded tar 现在携带第三个镜像的全部构建输入,无 checkout 的安装路径可完整构建 felis-paper,bootstrap 契约测试同步延伸。
3f2b28d
No dependencies set.
The note is not visible to the blocked user.
bootstrap_asset.go的gameStackAssets只 embed 了deploy/limbo和deploy/lobby(外加 plugins/*),没有deploy/paper/Dockerfile和deploy/paper/entrypoint.sh。而5d4f306起build_game_stack无条件构建第三个镜像:docker build -f "${GAME_STACK_DIR}/deploy/paper/Dockerfile"。在
HAVE_PREBUILT_BINARY的两条路径上(TUI hand-off / release 下载,都没有 source checkout),game_stack_source用felis bootstrap-assets game-stack解 embedded tar 当 build context,里面没有 deploy/paper,那一步 docker build 直接失败、安装 die 在 game-stack 中段。source-checkout 路径(GAME_STACK_DIR="$SRC_DIR")不受影响——这也是它没被现有安装撞出来的原因。修法:
bootstrap_asset.go补一行//go:embed deploy/paper/Dockerfile deploy/paper/entrypoint.sh(该文件注释明确要求 file-explicit,别用父目录),并把bootstrap_asset_test.go的契约测试延伸到 paper 的 Dockerfile。在 #20 施工的复核中发现;main 上同样存在,与 #20 的改动无关——#20 只是给这个收不到文件的 Dockerfile 加了必填 ARG,未加重也未修复。
已修(
3f2b28d):bootstrap_asset.go的gameStackAssets补齐deploy/paper/Dockerfile+deploy/paper/entrypoint.sh(保持 file-explicit 的 embed 纪律);embedded tar 现在携带第三个镜像的全部构建输入,无 checkout 的安装路径可完整构建 felis-paper,bootstrap 契约测试同步延伸。