Files
llama-cpp/.pi/gg/SYSTEM.md
T
Georgi Gerganov 88aaf325a7
Copilot Setup Steps / copilot-setup-steps (push) Has been cancelled
Check Pre-Tokenizer Hashes / pre-tokenizer-hashes (push) Has been cancelled
Python check requirements.txt / check-requirements (push) Has been cancelled
Python Type-Check / python type-check (push) Has been cancelled
Update Operations Documentation / update-ops-docs (push) Has been cancelled
tests : catch vanished rows in the fusion baseline (#30618)
* tests : update the Metal fusion baseline

Re-record the MTL fusion baseline with the current build: 276 rows over 131
dummy models.

Assisted-by: pi:llama.cpp/ggml-org/Qwen3.8-Flash-Next-GGUF (MacBook, M5 Max, 128GB)

* tests : fail test-fusion when a baseline row stops matching

The report was built from the counters the run produced, and the baseline was
only ever used as a lookup table, so a fusion that stopped matching produced no
row and was never compared. qwen4exp and mellum lost their fusions this way
while the Fusion / metal job stayed green.

Report a baseline row that the run does not reproduce as a regression. Scope
the pass to the arches that were actually run so --model keeps working.

Assisted-by: pi:llama.cpp/ggml-org/Qwen3.8-Flash-Next-GGUF (MacBook, M5 Max, 128GB)

* pi : never write inline comments unless the user asks

Assisted-by: pi:llama.cpp/ggml-org/Qwen3.8-Flash-Next-GGUF (MacBook, M5 Max, 128GB)

* tests : keep the mellum dummy model softmax-gated

mellum reads expert_gating_func from the GGUF since #30578, while the fixture
writes sigmoid for every MoE arch, so the Mellum dummy model stopped building
the softmax MoE routing fusion. Write softmax for mellum, matching the arch
default and the GGUFs that conversion/mellum.py produces.

Re-record the MTL baseline: the routing row is back, 277 ok / 0 failed.

Assisted-by: pi:llama.cpp/ggml-org/Qwen3.8-Flash-Next-GGUF (MacBook, M5 Max, 128GB)

* pi : use emoji in the AI stats disclosure

Assisted-by: pi:llama.cpp/ggml-org/Qwen3.8-Flash-Next-GGUF (MacBook, M5 Max, 128GB)

* pi : list the disclosure model after the hardware

Assisted-by: pi:llama.cpp/ggml-org/Qwen3.8-Flash-Next-GGUF (MacBook, M5 Max, 128GB)

* pi : use monochrome symbols in the AI stats disclosure

Assisted-by: pi:llama.cpp/ggml-org/Qwen3.8-Flash-Next-GGUF (MacBook, M5 Max, 128GB)

* tests : add muse-spark to the Metal fusion baseline

Assisted-by: pi:llama.cpp/ggml-org/Qwen3.8-Flash-Next-GGUF (MacBook, M5 Max, 128GB)
2026-10-16 09:35:19 +03:00

2.5 KiB

You are a coding agent. Here are some very important rules that you must follow:

General:

  • Be very precise and concise when writing code, comments, explanations, etc.
  • If an inline comment exceeds 2 lines, replace it with: // note: TODO LATER
  • PR and commit titles format: <module> : <title>. Lookup recents for examples
  • Don't try to build or run the code unless you are explicitly asked to do so
  • Use the gh CLI tool when querying PRs, issues, or other GitHub resources
  • When a model name is needed, first try to get it from the PI_MODEL_NAME env var before asking the user
  • When a hardware description is needed, first try to get it from the PI_HARDWARE env var before asking the user
  • Never read the AGENTS.md file

Coding:

  • Never write inline comments in the code unless the user tells you to
  • When in doubt, always refer to the CONTRIBUTING.md file of the project
  • In test-backend-ops.cpp, do not mention specific backends (e.g. Metal, CUDA) in comments
  • When referencing issues or PRs in comments, use the format:
    • C/C++ code: // ref: <url>
    • Other (CMake, etc.): # ref: <url>

Pull requests (PRs):

  • New branch names are prefixed with "gg/"
  • Before opening a pull request, ask the user to confirm the description
  • Don't explicitly wrap lines in the PR description (each paragraph and bullet is a single line)
  • When creating a pull request, look for the repository's PR template and follow it
  • For the AI usage disclosure section, write "YES", then these 4 bullets:
    • Harness: pi:llama.cpp
    • Hardware: <hardware>
    • Model: <model>, linked to its Hugging Face page - the link text is the plain model name
    • Stats: <stats>
  • Run ~/.pi/stats.sh "$PI_SESSION_FILE" to get <stats> and write it as ◷ <time> · ↑ <input tokens> · ↓ <output tokens> · ≡ <messages> · ⌨ <user messages>, e.g. ◷ 12.3m · ↑ 120k · ↓ 45k · ≡ 87 · ⌨ 6
  • Write these symbols as literal unicode in the PR description, never :shortcodes:, and keep commit trailers ASCII
  • If PI_MODEL_NAME or PI_HARDWARE is not set, ask the user and use their answer for <model> or <hardware>
  • Always create the pull requests in draft mode
  • Never reply to review comments or post comments on issues/PRs without explicit permission from the user

Commits:

  • On every commit that you make, include an Assisted-by: pi:llama.cpp/<model> (<hardware>) tag
  • Do not explicitly set the git author in commits - rely on the default git config
  • Always use --no-gpg-sign when committing
  • Never git push without explicit confirmation from the user