Skip to content

Plugin/rtl2 spec - #139

Open
wutianze wants to merge 6 commits into
mainfrom
plugin/RTL2Spec
Open

wutianze wants to merge 6 commits into
mainfrom
plugin/RTL2Spec

Conversation

@wutianze

Copy link
Copy Markdown
Contributor

Remove unnecessary files, update the LICENSE and spec template.

@wutianze
wutianze requested a review from yaozhicheng October 10, 2026 02:30
@wutianze
wutianze added this pull request to stack #143 October 10, 2026 02:47
Return exit code 0 with empty output when an agent has terminated or is
waiting for human review and no stop message is configured. Preserve a
nonzero exit code and an actionable error for missing active-run messages.

Update the batch-run guide and tmux example to ignore empty messages and
quote message contents. Add source-tree CLI regression tests for terminal
and active states.

Validation: both hook CLI regressions passed as part of the combined
RTL2Spec/hook test run (304 passed, 1 optional OpenCode test skipped).
git diff --check passed.
Extend RTL2Spec from XiangShan-only documentation to two parallel workflows
sharing document generation, source review and final acceptance:

- Rename design-document to xiangshan-design-document and add
  generic-design-document for user-supplied Verilog/SystemVerilog sources.
  Scope XiangShan toolchain requirements to its workflow.
- Capture hashed generic input/configuration evidence, related sources,
  exact ANSI/non-ANSI ports, preprocessed RTL and original source maps.
  Support explicit file order, includes, object macros and integer parameter
  overrides; reject ambiguous or unsupported inputs with diagnostics.
- Place documents, quality reports, evidence, review/acceptance records and
  action/stage timing logs under the configured UCAgent output directory.
  Require an empty output directory before startup and enforce path/write
  boundaries throughout tool actions.
- Generate exact port-table scaffolds and update metadata idempotently,
  preserving per-source hashes and unrelated document content.
- Add per-behavior source review with seven review aspects, real source
  ranges and CK/COV references. Bind review baselines and final acceptance
  to current artifacts with signed records; reject stale or altered data.
- Automate final report updates and acceptance publication without claiming
  that documentation review proves RTL correctness or that unrun simulation,
  synthesis, formal verification or coverage activities have passed.

Add shared deterministic checks for eight document contract areas:
1. Required behavior fields and evidence references.
2. Unresolved authoring placeholders.
3. Canonical table headers, cells and field values.
4. Unique identifier definitions and valid references.
5. Consistent Testplan, FC/CK traces, scenarios and coverage references.
6. Authentic source paths/ranges and actual RTL port declarations.
7. Defined logical interfaces and complete exact port mappings.
8. Consistent document/report signoff states and supported execution claims.

Keep justified inapplicability, optional content and many-to-many mappings
valid; return bounded artifact/line diagnostics for objective violations.

Reorganize README around shared instructions and parallel tutorials using
Codex by default. Synchronize workflow prompts, stage guides, complete
examples, localized artifact resources and regression fixtures. Bump the
plugin to 0.7.0 and the document template to 6.0.0; package JSON resources
in both wheels and source distributions.

Validation:
- pytest -q plugins/RTL2Spec/tests tests/test_cli_hook_message.py:
  304 passed, 1 optional OpenCode integration test skipped; one upstream
  LangGraph deprecation warning.
- make repo-lint template-check plugin-check: passed.
- git diff --check: passed.

Regression coverage includes both workflows with skills enabled/disabled,
custom outputs, input/preprocessor errors, exact port and source evidence,
metadata idempotence, stale review/acceptance records and document contract
failure boundaries. These checks do not constitute RTL simulation or formal
verification.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant