The database/ package (SqliteMyBatis session factory + ChestShopDatabases close-holder) and the schema DDL living as String[] constants in DatabaseModule were both misplaced. Fold: move the CREATE TABLE/ALTER/INDEX DDL onto the AccountMapper/ItemCodeMapper as @Update methods (the mapper owns its table's schema), inline SqliteMyBatis's session-open logic into DatabaseModule as private helpers, simplify ChestShopDatabases to a PooledDataSource close-holder co-located in guice/, and delete the database/ package. ChestShop uses two SQLite files so it can't use the siblings' single-DataSource MyBatisModule, but the wiring now lives in one module like they do.