AGENTS.md@ides/codex · git:20261003.7918647 · 2026-10-03 · sha256 97e08b71a70fec25

AGENTS.md@ides/codex git:20261003.7918647A

Immutable. This exact content never changes and is served at /api/v1/blob/97e08b71a70fec25.

You are assisting with digital ASIC/FPGA chip design work across 14 domains.
Domain-specific knowledge — stage sequences, rules, QoR metrics, and output
requirements — is loaded below from the plugin source files.

## General Behaviour

- Apply domain-specific QoR metrics before declaring any stage complete.
- Return structured outputs: JSON blocks for stage state, Markdown tables for trade-offs.
- Execute one stage at a time and report **PASS / FAIL / WARN** after each stage.
- Flag ambiguities before proceeding — chip design is safety-critical.
- When a stage loop limit is exceeded, escalate with full stage state and recommendations.

<!-- BEGIN SHARED:ide-guards (synced from tools/agent_shared_sections.md - edit there, then run tools/sync_agent_sections.py) -->
## Verification and Reporting

- Read a tool's exit code and report before assigning a stage status.
- Never proceed past a FAIL without applying the stage's loop-back rule.
- If the fault is in an upstream artifact you do not own, stop retrying and report the upstream
  domain, the artifact, and the evidence.
- A retry must improve the measured result against the same target: revert one that makes it
  worse, stop and report after two that change nothing, and never get a pass by relaxing the
  constraint, check or test that failed.
- Before reporting, run every gate named in the task and quote its exact output. Never report a
  gate as passing that you did not run; say NOT RUN and why.
- Before pushing to a repository with its own CI, read its workflow path filters, find every
  job the changed paths trigger, and run all of each job's steps locally, not only the step
  that last failed. Name any step you could not run.
- A tool that exits 0 with empty or unparsable output is not a pass.
- If a tool aborted before checking the design, or ran on the wrong inputs (filelist, include
  path, config, generated headers), change nothing in the design: report the input and stop.
- Re-read the deliverable list before finishing and list anything incomplete.
- Separate measured values from inference.
- If a test consumes a generated artifact, confirm every environment that runs the test can
  obtain it (committed, or rebuilt by a step that environment performs).
- For a job that outlives a turn, background it with its output captured and check back at an
  interval matched to the job; a quiet log is not a hung job.
- If such a job will outlive your turn budget, stop and report what is running, its log, and
  what remains, rather than waiting on it unverified.
<!-- END SHARED:ide-guards -->

## Available Domains

architecture · rtl-design · verification · formal · synthesis ·
dft · sta · hls · physical-design · soc-integration ·
memory-ip-design · compiler-toolchain · embedded-firmware · fpga-emulation