m17hr1l b0a2014dd7 Add NFP_TARGET_DB override + verify end-to-end round trip
bootstrap-db.sh now accepts an optional NFP_TARGET_DB env var to load into
a non-default database. Useful for testing the bootstrap against a sandbox
DB without wiping the platform's live data:

  NFP_TARGET_DB=nfp_sandbox ./bootstrap-db.sh

Verified the full round trip:
  1. Create fresh nfp_roundtrip_test DB as root, grant access to neuronetz
  2. Run bootstrap-db.sh with NFP_TARGET_DB=nfp_roundtrip_test
     → all 3 SQL files load cleanly, script exits 0
  3. Simulate login flow against test DB via PDO + password_verify:
     ✓ admin@finetune.ai/admin123    → authenticated, role=superuser
     ✓ testuser@example.com/test123  → authenticated, role=user
     ✗ admin@finetune.ai/wrongpass   → password verify rejects (correct)
     ✗ nobody@example.com/whatever   → user not found (correct)
  4. Drop test DB cleanly

The auth simulation runs the same query a fresh login would, including the
user_to_acl JOIN — confirms ACL role is reachable via the bootstrap data.

Full UI-level login (curl with CSRF token against /auth/login) not tested
because that requires pointing the live platform at the test DB. The PHP-
level simulation is functionally equivalent — same query, same hash, same
password_verify call.
2026-05-14 13:07:53 +02:00

Neuronetz Finetuning Platform — Setup Delta

Drop-in setup for new developers joining the platform.

Start with MANUAL.md — full developer manual with quick-start at the top.

Quick orientation

MANUAL.md              ← full software manual, setup at front
bootstrap-db.sh        ← one-command DB initialization
db/01-schema.sql       ← MariaDB schema (no data)
db/02-seed.sql         ← reference data: ACL, email templates, API registry
db/03-default-users.sql ← admin@finetune.ai / admin123 and testuser@example.com / test123

TL;DR (10 min for experienced devs)

# /etc/hosts (one line)
sudo sh -c 'echo "127.0.0.1 local.finetune.neuronetz.ai local.websocket.finetune.neuronetz.ai local.redis-commander.neuronetz.ai local.graylog.finetune.neuronetz.ai local.kibana.finetune.neuronetz.ai" >> /etc/hosts'

# clone both repos as siblings
mkdir -p ~/PhpstormProjects && cd ~/PhpstormProjects
git clone ssh://git@gitea.neuronetz.ai:222/Neuronetz/finetuning-plattform.git
git clone ssh://git@gitea.neuronetz.ai:222/m17hr1l/finetuning-plattform-setup-delta.git

# start the stack
cd finetuning-plattform && git checkout develop
cd local && docker compose up -d
cd ../..

# bootstrap the DB
cd finetuning-plattform-setup-delta
./bootstrap-db.sh

# done — open http://local.finetune.neuronetz.ai/auth/login
# admin@finetune.ai / admin123

Anything else: see MANUAL.md §4 (Troubleshooting Setup) and §21 (Common Gotchas).

Description
No description provided
Readme 85 KiB
Languages
Shell 100%