Add Triton-RISCV operator lifecycle plugin - #1
Conversation
|
Thank you for your contribution. I'm sorry; this is currently blocked on my end. I'll review this PR tonight after I've finished organizing the repository. |
bf45229 to
b2a2653
Compare
shirohasuki
left a comment
There was a problem hiding this comment.
Thanks for your time! I have leave some comments.
| You have guarded Triton-RISCV operator tools. | ||
|
|
||
| Use the typed tools instead of arbitrary shell commands for operator lifecycle work. | ||
|
|
||
| For an existing operator: | ||
| 1. Call `mcp__triton_riscv__discover_operator`. | ||
| 2. Call `mcp__triton_riscv__check_validation_environment` before live validation. |
There was a problem hiding this comment.
I suggest that the management of prompts be made more structured; you may wish to refer to this. We need to split skills, hints, failure experience, success experience, and verification.
| For an existing operator: | ||
| 1. Call `mcp__triton_riscv__discover_operator`. | ||
| 2. Call `mcp__triton_riscv__check_validation_environment` before live validation. | ||
| 3. Call `mcp__triton_riscv__validate_operator` with `execute=false` to create a reviewable plan. |
There was a problem hiding this comment.
Will these MCPs be installed in the ‘harness’ repository or in each working directory?
| export TRITON_RISCV_CHECKOUT=/absolute/path/to/triton-riscv | ||
| export TRITON_RISCV_MCP_PYTHON="$TRITON_RISCV_CHECKOUT/.harness-venv/bin/python" | ||
| export TRITON_RISCV_WORKBENCH_PORT=8765 | ||
| dsh plugin --profile web add ./plugins/dsh-triton-riscv | ||
| dsh --profile web --dump-config |
There was a problem hiding this comment.
Most of them can be installed using the repository’s scripts and configuration in the config.yaml. These environment variables are hard to manage when they're scattered everywhere.
| throw new Error('TRITON_RISCV_CHECKOUT must be an absolute path') | ||
| } | ||
|
|
||
| const portText = (env.TRITON_RISCV_WORKBENCH_PORT ?? '8765').trim() |
There was a problem hiding this comment.
You can do this by passing parameters rather than using environment variables
| @@ -0,0 +1,153 @@ | |||
| import assert from 'node:assert/strict' | |||
| import { readFile } from 'node:fs/promises' | |||
| import test from 'node:test' | |||
There was a problem hiding this comment.
We use vitest as the test framework.
The checklist could be clearer. We can broadly categorise unit tests into three areas:
The inputs to a plugin (such as hooks and the web), the outputs (such as tools and the front-end UI), and the state (context within the service).
Summary
Add an installable DeepSeek Harness bundle for guarded Triton-RISCV operator development and validation.
This plugin:
TRITON_RISCV_CHECKOUT;The Harness model and Agent loop remain unchanged. The plugin only contributes domain policy and connects the existing Triton-RISCV tools.
Related issue
Related to RuyiAI-Stack/triton-riscv#24.
Validation
Plugin tests: