Skip to content

๐Ÿค– Developer Setup โ€‹

Prerequisites โ€‹

Before you begin, ensure you have the following tools installed:

Install slangroom-exec โ€‹

Download the appropriate slangroom-exec binary for your OS from the releases page.

Add slangroom-exec to PATH and make it executable:

bash
wget https://github.com/dyne/slangroom-exec/releases/latest/download/slangroom-exec-Linux-x86_64 -O slangroom-exec
chmod +x slangroom-exec
sudo cp slangroom-exec /usr/local/bin/

Install Pre-commit โ€‹

For most Linux distrubution, just do:

bash
sudo apt install pre-commit

Install slangroom-exec โ€‹

Setup Workspace โ€‹

Clone the repository โ€‹

bash
git clone https://github.com/ForkbombEu/credimi

Install dependencies โ€‹

bash
cd credimi
mise trust
make credimi

Edit your .env file โ€‹

Copy .env.example to .env

bash
cp ./webapp/.env.example ./webapp/.env

Then edit the .env file, particularly:

  1. set the absolute path in ROOT_DIR
  2. Get a token from https://www.certification.openid.net and add it in TOKEN

Copy ./webapp/env.example to

Start Development Server โ€‹

bash
make dev

TIP

Use make help to see all the commands available.

Mobile Runner Semaphore Ops (Internal) โ€‹

Defaults and knobs โ€‹

  • Default acquire wait timeout: 45m.
  • Override timeout: MOBILE_RUNNER_SEMAPHORE_WAIT_TIMEOUT=30m (or any valid time.ParseDuration value).
  • Disable semaphore (no-op acquire/release): MOBILE_RUNNER_SEMAPHORE_DISABLED=1.

Emergency procedures โ€‹

  • Semaphore workflows live in the Temporal default namespace with IDs: mobile-runner-semaphore/<runner_id>.
  • Query current state via Temporal UI (GetState) or GET /api/mobile-runner/semaphore?runner_identifier=....
  • To unstick a runner, terminate the semaphore workflow in Temporal; it will be recreated on the next acquire.