Skip to content
Closed
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
12 changes: 10 additions & 2 deletions .agents/codex-setup
Original file line number Diff line number Diff line change
@@ -1,7 +1,15 @@
#!/usr/bin/env bash
set -euo pipefail

# Install the tooling required to build and test the CodeTracer project.
# The list of packages is derived from `Justfile` and `flake.nix`.

AGENTS_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
cd $AGENTS_DIR
cd "$AGENTS_DIR"

apt-get update
apt-get install -y --no-install-recommends just
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
python3 python3-pip python3-venv python3-dev \
cargo rustc just pkg-config capnproto

pip3 install --no-cache-dir --break-system-packages maturin uv
15 changes: 14 additions & 1 deletion .agents/tasks/2025/08/15-1323-initial-test-suite
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,17 @@ If the module turns out to be missing functions or types required for the test,
If a test can be written both in Python and in Rust prefer writing it in Python.
If a code modification needs to be done in the module and it is possible to do it both in Python and in Rust, prefer writing it in Python.

If there is any item in the test suite which doesn't contain enough
If there is any item in the test suite which doesn't contain enough
--- FOLLOW UP TASK ---
Create a script Hit:2 https://mise.jdx.dev/deb stable InRelease
Hit:1 https://apt.llvm.org/noble llvm-toolchain-noble-20 InRelease
Hit:3 http://archive.ubuntu.com/ubuntu noble InRelease
Hit:4 http://security.ubuntu.com/ubuntu noble-security InRelease
Hit:5 http://archive.ubuntu.com/ubuntu noble-updates InRelease
Hit:6 http://archive.ubuntu.com/ubuntu noble-backports InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
just is already the newest version (1.21.0-1).
0 upgraded, 0 newly installed, 0 to remove and 25 not upgraded. which will be used in future to set-up the Codex environment for development and testing of this project. Base this on what you see in Justfile and flake.nix. Note that not all packages described in flake.nix will be needed in the Codex environment, but we do care about building the project and running the tests.
18 changes: 7 additions & 11 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,16 @@ This repository contains two related projects:
- codetracer-pure-python-recorder — the original pure-Python tracer.
- codetracer-python-recorder — a Rust-backed Python module built with PyO3 and maturin.

To run the Python test suite for the pure-Python tracer, execute:
To build the modules in development mode run:

```
just test
```
```sh
just venv 3.13 dev #You can use any other Python version >=3.12
``

The tester executes a number of sample programs in `tests/programs` and compares their outputs to the fixtures in `tests/fixtures`.
Then to run the tests do

To build and locally develop-install the Rust-backed module:

```
just build-rust
# or:
maturin develop -m crates/codetracer-python-recorder/Cargo.toml
```sh
just test
```

# Code quality guidelines
Expand Down