Skip to content

#112: Expose canonical inventory, Evidence, and cockpit queues - #160

Draft
justsml wants to merge 5 commits into
mainfrom
dan/issue-112-mastra-code-eval
Draft

#112: Expose canonical inventory, Evidence, and cockpit queues#160
justsml wants to merge 5 commits into
mainfrom
dan/issue-112-mastra-code-eval

Conversation

@justsml

@justsml justsml commented Aug 27, 2026

Copy link
Copy Markdown
Owner

Split from the Wayfinder mega PR #137.

Refs #112

Scope

  • Add the project target-inventory service and API as a canonical public seam.
  • Include the durable inventory in project- and thread-scoped cockpit projections.
  • Render a read-only Target inventory panel with stable IDs, locators, kinds, authorization state, network profile, safe scope summaries, and relationships.
  • Add a project-scoped Artifact detail API with checksum, size, custody links, storage mode, and indexing state.
  • Return byte-bounded, redacted text previews while keeping raw and download actions explicitly unavailable.
  • Represent binary, missing, and unavailable-storage evidence without attempting unsafe rendering.
  • Render active blockers, pending approvals, validation plans, recent findings, and tool failures from the canonical cockpit response.
  • Make capped queue totals explicit and preserve full record names through accessible hover text.
  • Keep canonical queues read-only; recorded next actions are labels, not stale client-side mutations.
  • Suppress the dashboard's historical approval controls when the durable cockpit owns approval state.
  • Show compact failure summaries behind an explicit reveal and avoid mislabeling them as full raw tool-run evidence.
  • Share the server cockpit DTO with the client so contract drift fails typechecking.
  • Treat canonical-record-only projects as dashboard content after reload.

Validation

  • pnpm exec vitest run --config vitest.integration.config.ts tests/integration/artifact-preview-api.test.ts tests/integration/artifact-service.test.ts tests/integration/target-inventory-api.test.ts tests/integration/research-cockpit.test.ts (4 files, 16 tests passed before the queue projection)
  • Queue follow-up and review repair: cockpit and target-inventory integration files passed (2/2)
  • pnpm typecheck
  • git diff --check

Review notes

This PR covers the bounded Artifact preview, Target inventory, and distinct canonical cockpit queue slices. It intentionally leaves #112 open: durable blocker storage is #169, full canonical tool-run detail and queue navigation still need their own public routes, and a human UI review remains required.

@justsml justsml mentioned this pull request Aug 27, 2026
19 tasks
@justsml justsml changed the title #112: Expose canonical target inventory #112: Expose canonical inventory and artifact previews Aug 27, 2026
@justsml justsml changed the title #112: Expose canonical inventory and artifact previews #112: Expose canonical inventory, Evidence, and cockpit queues Aug 27, 2026
@justsml

justsml commented Aug 27, 2026

Copy link
Copy Markdown
Owner Author

Council of Dans review: repair/defer. Highest-priority gate: Bound object reads and replace the roughly 18-query cockpit fanout/unbounded authorization-target-blocker reads with paginated aggregate seams and measured query/latency evidence. Feature flags are not a substitute for authority, evidence-integrity, or durability fixes; use typed modes only where they provide a real rollout boundary.

@justsml
justsml marked this pull request as draft August 30, 2026 23:31
@justsml

justsml commented Aug 30, 2026

Copy link
Copy Markdown
Owner Author

Council triage update: this PR is now draft and parked. It is 391 commits behind main, overlaps newer Artifact/runtime work, and does not yet satisfy #112 as a canonical operator workflow.

P1 blockers:

  • object preview reads the full object and does not verify retained bytes; inline writes can silently truncate while reporting full-body integrity;
  • no actual raw/download route or audited reveal action;
  • canonical queue rows are inert summaries with no detail links, approval actions, diagnostics, or continuation;
  • Tool Run failures omit raw input/output, exit state, metadata, ordering, and Artifact links;
  • target UI truncates scope and has no canonical detail;
  • dashboard still mixes canonical records with chat/prop-derived ownership.

Branch gates are red: stale lock/config, TypeScript failures in the stale environment, Biome/accessibility errors, and no rendered reload/action workflow test. This PR should be rebuilt on current main after Evidence custody settles rather than mechanically merged.

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