4 Commits

Author SHA1 Message Date
7972b38820 feat(build): tune GHC for haskelseed (8 CPU / 30 GiB)
Some checks failed
Test / test (push) Has been cancelled
- .ghci: -j1 → -j4 for parallel module compilation
- scripts/compile-check: auto-detect high-RAM hosts (>16GB) and
  set GHCRTS="-A256m -M20g" to reduce GC pressure
- devenv.nix: update comment only (GHCRTS still set at runtime)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-28 01:32:36 +02:00
debc0b7d81 fix(WP-0014/A2): fix devenv shell — IHP_LIB, ghci, ghcid now available
Some checks failed
Test / test (push) Has been cancelled
Root cause: devenv shell reads devenv.nix only; IHP's Haskell setup is in
flake.nix's devenv.shells.default which is only loaded by nix develop.

Fix: create devenv.yaml to register IHP as a devenv input (pinned to the
same rev as flake.lock) with overlays.default applied.  Update devenv.nix
to set IHP_LIB/IHP env vars and enable languages.haskell with pkgs.ghc
(IHP-overlay GHC) + all project packages; add ghcid explicitly.

devenv.lock pins IHP at df3922d (matches flake.lock).

scripts/compile-check: updated header comments and added IHP_LIB echo;
switches from ghcid to ghci one-shot (ghcid not available in all shells).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 13:11:41 +00:00
64a9d4eeb4 feat(WP-0016/C1-C4): Layer 2 isolation and clean-base infrastructure
- Add Web/Controller/Prelude.hs (was missing; 8 controllers failed to import it)
- Add .ghci-core and scripts/compile-check-core to compile Layer 1+2 in
  isolation without loading Main.hs or any controller/view (Layer 3)
- Fix Application/Helper/BottleneckDetector.hs: replace coerce :: Id' -> UUID
  with unpackId (IHP Id' wraps a type family; Data.Coerce cannot cross it)
- Fix devenv.nix: add pkgs.nodePackages.tailwindcss so devenv process scripts
  find the tailwindcss binary (devenv v2 builds scripts with only local packages)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-10 15:38:01 +00:00
3d2e8ec9e1 fix(WP-0014/A1): add devenv.nix required by devenv v2+
devenv v2 requires devenv.nix to exist even when the full shell
configuration lives in flake.nix via IHP's devenv.flakeModule.
Contains project-specific overrides (GHCRTS, tailwind process);
IHP core (postgres, ghcid, RunDevServer) still comes from the flake module.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-10 11:31:00 +00:00