Skip to content

Feature/gh 36 decision gate and full launch#39

Merged
OmarEhab007 merged 7 commits into
mainfrom
feature/GH-36-decision-gate-and-full-launch
Apr 20, 2026
Merged

Feature/gh 36 decision gate and full launch#39
OmarEhab007 merged 7 commits into
mainfrom
feature/GH-36-decision-gate-and-full-launch

Conversation

@OmarEhab007

@OmarEhab007 OmarEhab007 commented Apr 20, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

Release Notes

  • New Features

    • Restructured primary navigation with dedicated "Overview" and "Investigate" workflow entry points
    • Secondary surfaces (Upload, Trace, AI Assistant) now clearly designated and labeled
    • New informational banner added to AI Assistant page
    • Collapsible advanced compare panel added to Trace page
  • Documentation

    • Added comprehensive architecture decisions and phase execution planning documentation
  • Chores

    • Updated Node.js base image to v22 in Docker builds
    • Enhanced security scanning workflow conditions for CI/CD pipeline

OmarEhab007 and others added 7 commits April 20, 2026 14:36
node:22-alpine ships with npm ≥ 10.9 which contains updated bundled
packages (cross-spawn, glob, minimatch, node-tar) that fix all 11 npm-
bundled CVEs previously suppressed in .trivyignore. Suppressions removed.

Closes #21
npm in node:22-alpine bundles picomatch 4.0.3 which has a ReDoS (HIGH).
Same class as the 11 suppressions removed in the previous commit: lives
in usr/local/lib/node_modules/npm/, not reachable at runtime. Suppressed
until node:22-alpine ships with npm bundling picomatch ≥ 4.0.4.

Refs #21
- semgrep: restrict to pull_request events; CodeQL covers push-to-main SAST
- secrets: use github.event.before/sha for correct TruffleHog diff range on push

Decided by AgDR-0002

Closes #25

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
On a force-push to main, github.event.before may not be reachable in the
commit graph, causing TruffleHog to silently widen to a full-history scan
or fail with the same ref-resolution error. Added github.event.forced != true
to the secrets job condition; also added comment explaining the ternary
base/head expression. Updated AgDR-0002 Consequences section.

Addresses blocking finding from code review.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@OmarEhab007 OmarEhab007 merged commit 916eed5 into main Apr 20, 2026
11 of 12 checks passed
@coderabbitai

coderabbitai Bot commented Apr 20, 2026

Copy link
Copy Markdown

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: e564110a-6ea6-4fb3-95a2-eb6192aee83c

📥 Commits

Reviewing files that changed from the base of the PR and between ac680f1 and 9f2f173.

📒 Files selected for processing (20)
  • .github/workflows/security.yml
  • .trivyignore
  • docs/agdr/AgDR-0002-security-push-trigger-fix.md
  • docs/agdr/AgDR-0003-ui-refactor-scope-strategy.md
  • docs/plans/2026-04-20-phase-0-ui-refactor-execution-pack.md
  • docs/plans/2026-04-20-phase-1-ux-audit-ia-proposal-draft.md
  • docs/plans/2026-04-20-phase-2-high-fidelity-design-spec-pack.md
  • docs/plans/2026-04-20-phase-3-technical-design-kpi-tracking-plan.md
  • docs/plans/2026-04-20-phase-5-qa-uat-controlled-rollout-pack.md
  • docs/plans/2026-04-20-phase-7-decision-gate-full-launch-report.md
  • frontend/Dockerfile
  • frontend/src/app/(dashboard)/ai/page.tsx
  • frontend/src/app/(dashboard)/analysis/[id]/page.tsx
  • frontend/src/app/(dashboard)/analysis/page.tsx
  • frontend/src/app/(dashboard)/explorer/page.tsx
  • frontend/src/app/(dashboard)/trace/page.tsx
  • frontend/src/app/(dashboard)/upload/page.tsx
  • frontend/src/components/layout/sidebar.tsx
  • frontend/src/lib/constants.ts
  • frontend/src/lib/telemetry.ts

📝 Walkthrough

Walkthrough

This PR implements a comprehensive UI refactor execution framework with security workflow corrections, Node.js runtime upgrade, new telemetry instrumentation, and refactored dashboard navigation. It includes CI/CD security scanning fixes, updated Docker configuration, phased delivery planning documentation, and instrumented page/navigation components to emit telemetry events for core vs secondary workflows.

Changes

Cohort / File(s) Summary
CI/CD Security & Infrastructure
.github/workflows/security.yml, .trivyignore, frontend/Dockerfile
Updated security workflow triggers (Semgrep to PR-only, TruffleHog ref selection and skip conditions for initial/forced pushes); upgraded Node.js base image from node:20-alpine to node:22-alpine; updated Trivy CVE suppressions for picomatch ReDoS in node:22 environment.
Architecture Decision Records
docs/agdr/AgDR-0002-security-push-trigger-fix.md, docs/agdr/AgDR-0003-ui-refactor-scope-strategy.md
Added documentation of security scanning fix rationale and phased UI refactor strategy (core-first vs big-bang), including decision context, options considered, consequences, and related artifact links.
Phase 0–7 Execution & Planning Packs
docs/plans/2026-04-20-phase-{0,1,2,3,5,7}-*-pack.md
Added comprehensive phased delivery roadmap: Phase 0 scope lock with KPI baseline/readiness criteria; Phase 1 UX audit and IA proposal; Phase 2 high-fidelity design specs; Phase 3 technical design and KPI tracking plan; Phase 5 QA/UAT/controlled-rollout runbook; Phase 7 decision gate and launch report.
Telemetry Module
frontend/src/lib/telemetry.ts
Added new telemetry system defining WorkflowType (api, sql, escalation, filter) and TelemetryEventName types, plus trackEvent() function that dispatches typed events via window.dispatchEvent('remedyiq:telemetry') with ISO timestamp and payload.
Routes & Constants
frontend/src/lib/constants.ts
Extended ROUTES export with OVERVIEW ('/analysis') and INVESTIGATE ('/explorer') shortcuts.
Dashboard Pages with Telemetry
frontend/src/app/(dashboard)/ai/page.tsx, frontend/src/app/(dashboard)/analysis/page.tsx, frontend/src/app/(dashboard)/analysis/[id]/page.tsx, frontend/src/app/(dashboard)/explorer/page.tsx, frontend/src/app/(dashboard)/trace/page.tsx, frontend/src/app/(dashboard)/upload/page.tsx
Instrumented pages with trackEvent() calls on mount and user interactions; updated page headers and descriptions to reflect core (Overview, Investigate) vs secondary (Upload, Trace, AI) surface classification; added workflow-type query param handling in Explorer; wrapped Trace comparison in collapsible details section.
Navigation & Layout Refactoring
frontend/src/components/layout/sidebar.tsx
Refactored navigation items to support priority (core/secondary), workflowType, and toSurface metadata; updated active-state detection to ignore query strings; replaced generic nav click handler with telemetry-aware handler emitting core_workflow_entered and nav_click events; reorganized rendering into separate core and secondary lists with section headers.

Sequence Diagram(s)

Navigation and telemetry flows are straightforward linear sequences (click → event → navigation) without branching multi-component interactions or complex orchestration, so no sequence diagram is warranted.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related issues

Possibly related PRs

Poem

🐰 A telemetry trail through refactored halls,
Where Overview meets Investigate's calls,
Core workflows glow, secondary trails gleam,
Phase by phase unfolds the design dream—
Nine hops of planning, one leap of code! 🚀

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/GH-36-decision-gate-and-full-launch

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@OmarEhab007 OmarEhab007 deleted the feature/GH-36-decision-gate-and-full-launch branch April 20, 2026 15:26
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