Skip to content

Conversation

@basvandijk
Copy link
Collaborator

@basvandijk basvandijk commented Jan 9, 2026

Apparently after 70fb598 system-tests that used blocking code in an async context started failing with:

Cannot drop a runtime in a context where blocking is not allowed.
This happens when a runtime is dropped from within an asynchronous context.

To fix this we make the rs/tests/driver/src/driver/farm.rs module and its call-sites async.

@github-actions github-actions bot added the fix label Jan 9, 2026
@basvandijk basvandijk marked this pull request as ready for review January 9, 2026 14:58
@basvandijk basvandijk requested review from a team as code owners January 9, 2026 14:58
Copy link
Contributor

@nmattia nmattia left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly a rubber stamp; approved modulo the unnecessary async { ...await } blocks

Copy link
Contributor

@mraszyk mraszyk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot for the fix!

@basvandijk basvandijk enabled auto-merge January 9, 2026 16:58
@basvandijk basvandijk added this pull request to the merge queue Jan 9, 2026
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Jan 9, 2026
@basvandijk basvandijk added this pull request to the merge queue Jan 9, 2026
Merged via the queue into master with commit f00aac7 Jan 9, 2026
46 checks passed
@basvandijk basvandijk deleted the basvandijk/async-farm branch January 9, 2026 18:33
maksymar pushed a commit that referenced this pull request Jan 13, 2026
What?
===

Add support for Claude Code for developing dfinity/ic.

Why?
====

We should use AI tools more for developing dfinity/ic to increase our
productivity.

I had some initial success: using this PR `claude` was able to produce
#8287 with about 4 prompts and a bit
of manual work.

How?
===

~* Install the `claude` CLI in the dev container. It's important to have
`claude` run in the dev container such that it can easily call `cargo`
and `bazel` without wrapping all those commands in
`ci/container/container-run.sh` and such that the bazel server keeps
running.~ This has been reverted because we'll first split up the CI
from the dev-container and then add `claude` to the dev-container.

* ~Install the Claude Code VS Code extension. For me the extension is
not working correctly yet since I can't login for some reason. I need to
debug this further with IT.~ This has also been reverted and we'll
probably also do this later.

* Add a `.claude/README.md` with some preliminary notes on how to use
`claude`.

* Add a preliminary `.claude/CLAUDE.md` instructing Claude how to build
and test the ic repository.
This document is submitted with every prompt. We expect it to be
continuously tweaked by every team to optimise their prompting.

Future Work
===

Add [hooks](https://code.claude.com/docs/en/hooks-guide)
---

Consider moving some of the instructions from `.claude/CLAUDE.md` to
hooks like `cargo fmt` and `cargo clippy` after modifying .rs files.
This will keep the context as small as possible.

Add dfinity/ic specific [Agent
Skills](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview).
---

Examples:

* How to query Apache Superset (or ideally the PostgreSQL DB directly
via `psql`) for:
  the most flaky tests,
  the slowest tests on PRs,
  previous failed / flaky tests runs of a given test,  
  failure rate of a given test over time,
  run time of a given test over time.

* How to download a bazel test log from BuildBuddy.

* How to debug system-tests.

* How to download the IC node logs of a testnet / mainnet from
ElasticSearch.

* How to query Prometheus in testnets for relevant metrics.

Interesting Reads
=== 

Apart from the [Claude Code Docs](https://code.claude.com/docs) the
following are interesting Reads on how to optimize working with Claude
Code:

*
https://medium.com/@joe.njenga/17-best-claude-code-workflows-that-separate-amateurs-from-pros-instantly-level-up-5075680d4c49

* https://x.com/i/status/2007179832300581177

---------

Co-authored-by: IDX GitHub Automation <>
Co-authored-by: Nicolas Mattia <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants