Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -235,14 +235,18 @@ report it as coverage. New behaviour starts with a real failing test (rule 5).
## 15. Dependencies

- `torch` and `torchnative` are mutually exclusive extras (torchnative replaces `import torch`).
Do not add a version pin to `torch`; the Windows wheels come from the CUDA index configured under
`[tool.uv.sources]`.
Do not add a version pin to `torch`; on Windows and Linux it comes from the PyTorch CPU index
configured under `[tool.uv.sources]` (the engine runs on CPU; CUDA returns in M4 as a `cuda` extra).
- The engine uses only the public `torch` / `transformers` API. Custom kernels cannot be registered
from Gemstone (`torch.library` is a no-op on torchnative); they belong in torchnative.
- Kotlin and library versions live in `gradle/libs.versions.toml`. Bump them there, not inline.

## 16. Line endings and encoding

This repository's git config has `core.fileMode=false`, so `chmod +x` is not recorded: set the
executable bit of a tracked script with `git update-index --chmod=+x <file>` (`gradlew` and
`tools/*.sh` were affected).

Write every file as UTF-8 with LF line endings. Some checkouts of this repository have had files
converted to CRLF by an editor; do not mass-convert files you were not asked to touch, because the
whole-file diff hides real changes. The repository's `.gitattributes` fixes LF (only `.bat`, `.cmd` and `.ps1` are CRLF), so new
Expand Down
8 changes: 5 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -48,15 +48,17 @@ conflicts = [
prerelease = "if-necessary"


# The engine runs on CPU (CUDA is planned for M4 as a `cuda` extra), so Windows and Linux take the
# PyTorch CPU wheels instead of multi-GB CUDA builds; macOS uses the PyPI default (CPU/MPS).
[tool.uv.sources]
torch = [
{ index = "pytorch-windows", marker = "platform_system == 'Windows'" },
{ index = "pytorch-cpu", marker = "platform_system == 'Windows' or platform_system == 'Linux'" },
]


[[tool.uv.index]]
name = "pytorch-windows"
url = "https://download.pytorch.org/whl/cu128"
name = "pytorch-cpu"
url = "https://download.pytorch.org/whl/cpu"
explicit = true


Expand Down
Loading