Skip to content

Codex/pr 05#95

Closed
staylor-v1 wants to merge 242 commits intosandialabs:mainfrom
staylor-v1:codex/PR-05
Closed

Codex/pr 05#95
staylor-v1 wants to merge 242 commits intosandialabs:mainfrom
staylor-v1:codex/PR-05

Conversation

@staylor-v1
Copy link
Copy Markdown

Motivation

  • PT2/PT3 MPR workbench needed overlay-layer toggles, a shared contrast baseline, and a cursor/probe tooltip so inspectors can compare base pixel values with overlay-derived metrics inline.
  • The change is scoped to the frontend workbench presentation layer and must be backward-compatible for projects without overlay metadata.

Description

  • Added metadata-driven overlay support and defaults via DEFAULT_OVERLAY_LAYERS and getOverlayLayers and introduced computed tooltip values (tooltipValues) in InspectionWorkbenchPanel.
  • Added state and controls for contrastPercent, activeOverlayIds, and cursorProbe, plus the UI block (contrast slider, overlay toggles, probe sliders and tooltip readout) in frontend/src/components/InspectionWorkbenchPanel.js.
  • Added styling for the new controls in frontend/src/App.css.
  • Extended component test fixtures and assertions to cover three progressive synthetic users across PT1/PT2/PT3, updated Playwright fixtures/specs, and marked PR-05 in the incremental artifact doc; changed files: frontend/src/components/__tests__/InspectionWorkbenchPanel.test.js, frontend/e2e/fixtures/inspectionWorkbenchMocks.js, frontend/e2e/specs/inspection-workbench.spec.js, and docs/planning/inspection-workbench-pr-artifact.md.

Testing

  • Ran unit/component tests with CI=true npm test -- --runInBand src/components/__tests__/InspectionWorkbenchPanel.test.js and the React Testing Library suite passed (3/3 tests).
  • Installed frontend deps with npm ci and installed Playwright Chromium with npx playwright install chromium successfully to enable E2E.
  • Attempted Playwright E2E npm run test:e2e:pr03, but E2E failed to launch Chromium in this environment due to a missing system shared library (libatk-1.0.so.0), so browser-driven tests could not complete here; the Playwright fixture and assertions were added and validated where possible.

garland3 and others added 30 commits December 6, 2025 17:19
This commit addresses multiple CI/CD pipeline failures:

1. CodeQL Configuration: Remove invalid 'name' field from config file
   - The 'name' field is not a valid top-level configuration option
   - Resolves "1 configuration not found" warning

2. CI/CD Pipeline Tests: Fix virtualenv activation in test job
   - Change from 'source' command to PATH export for better compatibility
   - Ensures Python environment is properly activated for test runner

3. Container Security Scan: Update Trivy action and configuration
   - Pin Trivy action to specific version (0.28.0) instead of @master
   - Add 'ignore-unfixed' option to reduce false positives
   - Add 'category' to SARIF upload for better organization

4. CodeQL JavaScript/TypeScript: Skip autobuild for JS analysis
   - JavaScript/TypeScript analysis doesn't require autobuild step
   - Only run autobuild for Python language matrix
   - Add explicit 'upload: true' parameter to analysis step

All changes maintain the no-emoji policy and follow existing code style.

Generated with feature

Co-Authored-By: feature Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: garland3 <1162675+garland3@users.noreply.github.com>
Add script to launch PostgreSQL and MinIO using Podman or Docker
Co-authored-by: garland3 <1162675+garland3@users.noreply.github.com>
Co-authored-by: garland3 <1162675+garland3@users.noreply.github.com>
Co-authored-by: garland3 <1162675+garland3@users.noreply.github.com>
Co-authored-by: garland3 <1162675+garland3@users.noreply.github.com>
Co-authored-by: garland3 <1162675+garland3@users.noreply.github.com>
Co-authored-by: garland3 <1162675+garland3@users.noreply.github.com>
Co-authored-by: garland3 <1162675+garland3@users.noreply.github.com>
Fix GraphQL scan artifact upload failure for projects without GraphQL
…r-mcp

Copilot/add backend support for mcp
Copilot AI and others added 27 commits March 20, 2026 18:37
- CalibrationManager: add matchedRule state, check calibration_rules in
  project metadata between image override and project default; add
  handleSaveMetadataRule handler; show rule info in purple label
- CalibrationEditForm: add imageMetadataKeys/onSaveMetadataRule props and
  Save for Matching Metadata section with key selector dropdown
- CalibrationManager.test.js: add 6 tests for metadata rule matching,
  priority, fallback, and saving

Co-authored-by: travisdock <36681963+travisdock@users.noreply.github.com>
Agent-Logs-Url: https://github.com/sandialabs/VISTA/sessions/17329e5f-6c33-4832-93b4-1875e80c00ea
  The metadata field fallback (image.metadata vs image.metadata_) was
  duplicated in loadCalibration and the imageMetadataKeys prop. Extract
  it into a shared imageMetadata useMemo at the component level so the
  resolution logic lives in one place.
  Reset isImageOverride when a metadata rule matches to prevent the
  UI from showing "Using image-specific calibration" after an override
  is cleared. Simplify validation guard to check truthiness instead of
  matching a specific error message prefix.
  After deleting calibration_override via API, the local image metadata
  still contained the old value, causing loadCalibration to short-circuit
  back to the override state. Now removes the key from the local object
  before reloading. Also renamed the button from "Revert to Project
  Default" to "Clear Image Override" since the fallback may be a metadata
  rule rather than the project default.
  handleClearOverride was directly deleting calibration_override from
  the image prop object, which violates React's immutability assumptions
  and can cause subtle bugs if the parent re-renders or references the
  same object. Use an overrideCleared ref instead to signal loadCalibration
  to skip the stale override check. The ref resets when the image changes
  or a new override is saved.
  validateCalibration now returns a structured result ({ error } or
  { warning }) instead of a plain string. Save handlers block only on
  actual errors (non-positive numbers), while unrealistic-but-valid
  values show a transient warning message and proceed with the save.
  The previous if (validation) check was treating both cases as hard
  errors.
  Add validation for rule.calibration shape (pixels_per_mm, pixels_per_inch)
  before using a matched metadata rule, preventing runtime errors from
  malformed rules. Fix useMemo dependency to track the metadata reference
  instead of the entire image object, avoiding unnecessary recalculations.
  Move the read-only calibration view (formatted values, status label,
  action buttons, empty state) into CalibrationDisplay.js. Extract shared
  validation and calibration data construction into top-level helpers,
  replacing the duplicated preamble across all three save handlers.
  Brings CalibrationManager.js from 558 lines down to 397.
…-per-metadata-again

Add metadata-based calibration rules as mid-priority calibration tier
…ests-into-groups

Add AGENTS workflow and planning docs (repo orchestration, triage, handoff)
Added adversarial functional testing and improvement to QA/Tester Role.
…inspection-workbench

Add Inspection Workbench: inspection_batches/inspection_parts models, APIs, migration and tests
…inspection-workbench-ije30h

Add inspection workbench: review-state API, workbench UI, and tests
…-with-tests

Add PT2/PT3 MPR workbench shell with synchronized slice and viewport controls (PR-04)
@staylor-v1 staylor-v1 closed this Apr 9, 2026
@staylor-v1 staylor-v1 deleted the codex/PR-05 branch April 9, 2026 20:49
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.

4 participants