Add AGENTS.md with cloud-specific development instructions#35
Draft
dominicletz wants to merge 24 commits intomainfrom
Draft
Add AGENTS.md with cloud-specific development instructions#35dominicletz wants to merge 24 commits intomainfrom
dominicletz wants to merge 24 commits intomainfrom
Conversation
Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
|
Important Installation incomplete: to start using Gemini Code Assist, please ask the organization owner(s) to visit the Gemini Code Assist Admin Console and sign the Terms of Services. |
Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Document production asset pipeline vs dev watchers, warn that Credo is not available in prod Mix env, and note Git LFS for Android .a libs. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
- Document SQLite path via config dir and TodoApp.config_dir/0 - Point the run-app table row at the full asdf/DISPLAY dev command - Note rel/android uses its own OTP/Elixir pin per README Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
…OTP Windows build Android APK builds failed because mix release still ran Desktop.Deployment.generate_installer/1 under MIX_TARGET=android. Release steps now assemble-only for :android and :ios. Windows Erlang installer_win32 failed because makensis was missing in WSL when building OTP; install nsis and symlink makensis.exe before otp_build. Bump the OTP executable cache key so CI rebuilds with the fixed toolchain. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Avoid confusion when agents compare local asdf pins to GitHub Actions. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Fresh checkouts may omit rel/android/app/src/main/assets; ensure it exists before zip creates app.zip (fixes Android CI zip I/O error). Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
- Document MIX_ENV=prod for mix assets.deploy so release builds match CI. - Point agents to npm install in assets/ per README before deploying assets. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
OTP's installer_win32 requires NSIS 3.x; Ubuntu 18.04's nsis 2.51 is rejected
("Unsupported NSIS version"). Use Ubuntu-22.04 in setup-wsl and bump the OTP
exe cache key. Increase the Windows job timeout for full OTP rebuilds.
Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Linux makensis parses OTP's `/V2` as a script path (`Can't open script "/V2"`). Install NSIS on Windows and expose makensis.exe to WSL via a wrapper that execs the real Windows binary. Bump otp.exe cache key (v4). Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Transient archive.ubuntu.com failures caused mingw packages to be missing. Retry apt-get update/install up to 5 times with backoff. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
…nied) Chocolatey + NSIS could succeed while moving OpenSSL out of Program Files failed with "Access is denied" on the runner, aborting the job. Copy the tree with xcopy instead, matching the original layout under C:\OpenSSL-Win64. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
The Windows Erlang + mix desktop.installer step can exceed 120 minutes on cold cache; the job was cancelled mid-build. Allow up to 5 hours for the full toolchain + installer pipeline. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
GitHub is retiring the macOS 13 hosted image. Switch the binaries workflow to macos-15 and refresh the asdf cache key so caches are not reused across OS versions. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
wxWidgets' bundled libpng includes legacy Mac headers; building it on macos-15/arm64 fails with missing fp.h. Install libpng via Homebrew and pass --with-libpng=sys to configure. Bump the asdf cache key so Erlang is rebuilt against the updated wx build. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
- Set job timeout to 20 minutes as requested. - Skip Git LFS smudge (GIT_LFS_SKIP_SMUDGE + checkout lfs:false): Android LFS blobs were hanging after fetch on Windows. - Upgrade actions/checkout to v4 with shallow fetch-depth. - Use shallow single-branch clones for wxWidgets, OTP, and Elixir with HTTP stall timeouts to fail fast instead of hanging after "Compressing objects". Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
wxWidgets --with-libpng=sys failed: png.h not found on the default include path. libpng is keg-only under Homebrew; export brew --prefix libpng include and lib paths plus PKG_CONFIG_PATH. Refresh asdf cache key. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
- Install libtiff and pass CPPFLAGS/LDFLAGS so imagtiff.cpp finds tiff.h. - Add --with-libtiff=sys alongside --with-libpng=sys. - Clone wxWidgets shallow with retries and HTTP stall timeouts (fixes transient curl 56 during full clone). - Bump macOS asdf cache key for rebuild. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
asdf master no longer ships asdf.sh after the Go rewrite; git clone + source failed. Use brew install asdf, add the brew prefix bin to PATH, and prepend ~/.asdf/shims per current docs. Write ~/.tool-versions for the cold install step. Bump cache key. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
kerl passed CXX='gcc -std=c++11' as CXX=gcc and a separate -std=c++11 token, which ./configure rejected. Use CXX=clang++ (matches macOS toolchain). Bump asdf cache key for rebuild. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
create_keychain maybe only skips when MACOS_PEM is unset. A repo secret that is set but not a valid Developer ID PEM still runs full keychain setup and fails at security import. Omit the secret from this step so CI builds unsigned artifacts without importing Apple certs. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Cancelled runs showed ~20m elapsed then cancellation during Get dependencies; the 20-minute job cap was terminating the workflow mid-step (not an LFS flake). Allow enough time for mix deps / npm / installer on cache hits. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Cancelled runs hit the 90-minute job cap during Get dependencies (~90m elapsed). Raise the limit so mix/npm/installer can finish on slower runners. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Cancelled runs lasted ~180 minutes during Get dependencies — the job timeout, not a hung resolver. Raise to GitHub-hosted runner maximum so long Windows builds can finish. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
AGENTS.mdwith Cursor Cloud-specific development instructions for future agents working in this codebase.What's included
Follow-up (code review)
The asset build row documents
MIX_ENV=prod mix assets.deploy, the paragraph below matches that command, and the assets bullet mentionsnpm installinassets/before deploying assets when needed.