Skip to content

Add versioned vector retrieval and guarded multi-agent workflows - #4

Open
ada-cl25 wants to merge 2 commits into
RuyiAI-Stack:mainfrom
ada-cl25:triton-riscv-vector-multi-agent
Open

ada-cl25 wants to merge 2 commits into
RuyiAI-Stack:mainfrom
ada-cl25:triton-riscv-vector-multi-agent

Conversation

@ada-cl25

@ada-cl25 ada-cl25 commented Oct 11, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Build on the backend infrastructure merged in #3, within packages/dsh-triton-riscv:

  • Add versioned parent/child memory records and asynchronous embedding indexing through the existing MySQL Outbox and RabbitMQ workers. Support Qdrant backfill, activation, retirement and cleanup.
  • Add opt-in Qdrant retrieval with workspace/version/checksum validation. Expand matching evidence with required background, stage-specific evidence and bounded adjacent fragments within the existing context budget.
  • Add an experimental main/semantic/implementation/review workflow. Roles produce validated proposals in isolated Harness sessions without executable tools; the host retains approval, write and validation authority.
  • Add workbench workflow controls, revision-bound approvals, asynchronous validation collection and bounded repair continuation. Repairs preserve their frozen acceptance tests.
  • Fix numerical-failure diagnosis when sandbox metadata happens to contain compiler paths, and distinguish original source from proposed source during independent review.

Related Issue

Follow-up to #3. No issue is closed by this PR.

Validation

Vitest is the single automated test entry point. Existing backend assertions remain behind the established Vitest-to-pytest bridge; direct Vitest coverage checks proposal-role tool denial, SDK credential forwarding, and includes the frontend suite in repository CI. The former Python YAML/JavaScript configuration check is migrated to Vitest with an explicit JS parser dependency, removing the undeclared PyYAML dependency found in the first CI run. This PR does not add a second CI test runner.

With disposable MySQL, Redis, RabbitMQ and Qdrant services configured as described in the plugin README:

pre-commit run --all-files
pnpm test:all --reporter=verbose
cd packages/dsh-triton-riscv
npm test
npm run test:frontend
npm run build
npm run check:package

Local results:

  • Repository Vitest: 212 passed across 22 test files.
  • Plugin Vitest: 166 passed, including the backend and frontend integration wrappers.
  • Backend regressions driven by Vitest: 804 passed; frontend Vitest: 16 passed. One former Python check now runs directly in Vitest. These are nested results, not additional top-level Vitest tests.
  • Build, package audit and repository pre-commit checks passed. Package audit excludes runtime state and private artifacts.
  • Separately authorized live smoke testing on RISC-V/Triton 3.4.0: a new operator passed 9 tests; a controlled faulty operator went from 8 failures to 8 passes without changing its tests. Five intermediate proposal-stage blocks were retained during development. This is not a first-attempt success-rate or load-test claim.

CI adds a disposable Qdrant service. Automated CI tests require neither model credentials nor access to the private RISC-V server.

Latest GitHub CI run for 5b8754d: both pre-commit and vitest passed.

Compatibility and Limits

  • Apply additive schema migrations 0003 through 0005 after backing up the database.
  • Vector indexing/retrieval and proposal workflows are opt-in. Normal chat and legacy retrieval defaults remain unchanged. Backfill and generation activation are explicit operations.
  • Live role calls require configured model credentials and queue.proposalWorkflows; proposals never bypass write or validation approvals.
  • Vector reads currently bypass Redis. The evidence budget is measured in Unicode characters, not model tokens. Live smoke tests do not establish retrieval-quality gains or production concurrency guarantees.
  • No credentials, private reports, model weights, runtime databases or generated operator experiments are included.

Checklist

  • Changes are limited to the plugin and its CI service configuration.
  • Followed the repository's Vitest-based testing convention.
  • Preserved backend regression coverage and added direct Vitest checks.
  • Updated user-facing setup and configuration instructions.
  • Ran formatting, build, packaging and relevant test checks locally.
  • Documented migration requirements, opt-in behavior and known limitations.

@shirohasuki

Copy link
Copy Markdown
Collaborator

Sorry for the late review, and thank you so much for the quick update!

That said, I would suggest separating vector retrieval and the multi-agent framework into different plugins, rather than integrating both into triton-riscv.

Decoupling application logic from the framework is, after all, the whole point of a plugin-based architecture.

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.

2 participants