feat(web): Rogue web UI - #175
Open
drorIvry wants to merge 18 commits into
Open
Conversation
# Conflicts: # rogue/server/websocket/manager.py
CI installs (test, codestyle, rogue, import-time workflows) ran `uv pip install -e .` without first building the web SPA, which caused hatchling to abort with `FileNotFoundError: Forced include not found: packages/web/dist`. The static `[tool.hatch.build.targets.*.force-include]` tables ran independently of the build hook's pnpm-missing fallback, so the graceful warning never had a chance to take effect. Move the force-include into `hatch_build.py` so it's only set when the dist actually exists. The Build workflow still gets the bundled UI (it runs the web build first); the lighter workflows install successfully without pnpm. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
After the build-hook fix unblocked the install step, three real failures
surfaced on the PR:
- ruff format: examples/tshirt_store_agent/test_client.py used double-quoted
f-string with double-quoted inner string; reformat to inner single-quotes.
- ruff lint:
- I001 in two examples/tshirt_store_langgraph_agent/* files (auto-fixed
import order).
- S104 in rogue/__main__.py: bandit-style `# nosec B104` is invisible to
ruff; switch to ruff-native `# noqa: S104`.
- pytest: test_deckard_service.test_payload_includes_conversations_array
expected `metadata == {"expected_outcome": ...}` but the deckard payload
now also carries `attempt_index` / `attempts_total` (added so the platform
can render "attempt N of M"). Update the assertion to match the current
payload shape.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Lockfile is generated by pnpm and should never be reformatted; CI's `prettier --check .` was flagging it, breaking the Web codestyle job. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
`packages/web/src/routeTree.gen.ts` is produced by `tsr generate` and is gitignored, so a fresh CI checkout doesn't have it. The codestyle action ran `tsc --noEmit` directly, which fails to resolve `./routeTree.gen` and collapses every `createFileRoute(...)` into a `(arg: undefined)` signature — hence the avalanche of TS2345 errors on the route files. The web-build action sidesteps this because `pnpm build` is `pnpm routes && tsc --noEmit && vite build`. Use `pnpm typecheck` (which is `pnpm routes && tsc --noEmit`) here for the same effect, matching what a developer would run locally. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The rogue_security_base_url field holds the reporting host (app.rogue.security), but attack generation runs against the Deckard API host. Sending the reporting URL caused a 307 on the attack-gen endpoint, so omit it and let the server use its default.
Contributor
|
Important Review skippedToo many files! This PR contains 189 files, which is 39 over the limit of 150. To get a review, reduce the PR to 150 files or fewer by splitting it into smaller PRs or changing its base branch. Upgrade to Pro+ to raise the limit. This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry. ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (20)
📒 Files selected for processing (189)
You can disable this status message by setting the Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
packages/web): Vite + TanStack Router/Query, shadcn/radix components, served alongside the Rogue serverTest plan
uv run python -m rogue server+pnpm devinpackages/web, exercise red-team configure/run flows