product:drift

Show which SPLENT-owned product files have drifted from the current templates.


Usage

splent product:drift [<product_name>] [--verbose]
Argument / Option Description
<product_name> Optional. Product to inspect. Defaults to the active product (SPLENT_APP).
--verbose / -v Show the full unified diff for every changed file.

Examples

Check drift for the active product:

splent product:drift

Check a specific product:

splent product:drift myapp

Show the full diff of changed files:

splent product:drift myapp --verbose

Example output

  Drift report for myapp   (generated with CLI v1.0.0, current CLI v1.2.1)
  ────────────────────────────────────────────────────────────────────────────

  scripts/  [SPLENT-owned — safe to update]
    00_core_requirements_dev.sh                        ✔  up to date
    00_install_features.sh                             ⚠  4 line(s) changed
    01_compile_assets.sh                               ✔  up to date
    02_0_db_wait_connection.sh                         ✔  up to date
    02_1_db_create_db_test.sh                          ✔  up to date
    02_2_db_create_splent_migrations.sh                ✔  up to date
    03_initialize_migrations.sh                        ✔  up to date
    04_handle_migrations.sh                            ⚠  1 line(s) changed
    05_0_start_app_dev.sh                              ✔  up to date
    05_1_start_app_prod.sh                             ✔  up to date

  entrypoints/  [SPLENT-owned — safe to update]
    entrypoint.dev.sh                                  ✔  up to date
    entrypoint.prod.sh                                 ✔  up to date

  docker/  [SPLENT-owned — safe to update]
    Dockerfile.myapp.dev                               ⚠  2 line(s) changed
    Dockerfile.myapp.prod                              ✔  up to date
    .env.dev.example                                   ✔  up to date
    .env.prod.example                                  ✔  up to date

  Run 'splent product:sync-template' to apply changes.

Description

Re-renders the current templates with the product’s original variables (re-derived deterministically from the product name) and compares the result against what is on disk.

SPLENT-owned files checked:

Group Files
scripts/ 10 numbered setup/startup scripts
entrypoints/ entrypoint.dev.sh, entrypoint.prod.sh
docker/ Dockerfile.{name}.dev, Dockerfile.{name}.prod, .env.dev.example, .env.prod.example

Never inspected (developer-owned):

  • src/{name}/config.py, errors.py, logging.py
  • src/{name}/templates/, src/{name}/static/
  • pyproject.toml user sections, docker-compose.*.yml

Notes

  • Products generated before cli_version tracking was introduced show (generated with unknown CLI version).
  • This command is read-only. To apply changes, use product:sync-template.
  • Port numbers (web_port, db_port, redis_port) are always re-derived from CRC32(product_name) % 1000, the same algorithm used at creation time.

Back to top

splent. Distributed by an LGPL license v3. Contact us: drorganvidez@us.es