Skip to content

v1.2.3 - Hotfix release. Fixes a critical JavaScript syntax error in the web dashboard

Choose a tag to compare

@greenarmor greenarmor released this 14 Jun 13:23
· 18 commits to master since this release

GESF v1.2.3 Release Notes

Overview

Hotfix release. Fixes a critical JavaScript syntax error in the web dashboard that made all navbar navigation buttons (Overview, Policy Packs, Fixes Detail, Findings, Traceability) completely unresponsive after clicking.


Bug Fix

Dashboard Navbar Unresponsive

Affected versions: v1.2.2
Severity: Critical (dashboard unusable — no page switching)

Root Cause

The renderPackDetail() client-side function in packages/web-dashboard/src/template.ts used \\'pass\\' for string comparisons inside Array.filter() callbacks. When rendered to the browser, this produced \'pass\' — which is invalid JavaScript syntax outside of a string literal.

This syntax error crashed the entire IIFE (Immediately Invoked Function Expression) before any window.* functions were registered. As a result:

  • window.showPage was never defined → clicking any navbar button did nothing
  • window.showFindingsTab, window.showFixesTab, window.showTraceTab were never defined → sub-tabs didn't work
  • window.loadPackDetail, window.showControlDetail were never defined → pack/control drill-downs didn't work
  • window.toggleFix was never defined → fix detail expand/collapse didn't work

The Fix

Changed \\'pass\\' and \\'not-applicable\\' to "pass" and "not-applicable" (double quotes) in the two Array.filter() callbacks at lines 708 and 716.

The onclick attribute quotes (\\'all\\', \\'failing\\') were correct and left untouched — those are inside HTML attribute strings where escaped single quotes are valid.

Verification

  • JavaScript syntax validated — IIFE executes without errors
  • All 10 window.* functions confirmed defined: showPage, showFindingsTab, showFixesTab, showTraceTab, loadPackDetail, showControlDetail, navigateToPage, showPackTab, backToPacks, toggleFix
  • All 5 dashboard pages render with content and are navigable
  • All 9 HTTP API endpoints return HTTP 200
  • 371 tests passing across all 16 packages

Files Changed

 packages/web-dashboard/src/template.ts | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Package Summary

All 13 packages bumped to v1.2.3:

Package Version
@greenarmor/ges-core 1.2.3
@greenarmor/ges-compliance-engine 1.2.3
@greenarmor/ges-audit-engine 1.2.3
@greenarmor/ges-policy-engine 1.2.3
@greenarmor/ges-rules-engine 1.2.3
@greenarmor/ges-scoring-engine 1.2.3
@greenarmor/ges-scanner-integration 1.2.3
@greenarmor/ges-doc-generator 1.2.3
@greenarmor/ges-cicd-generator 1.2.3
@greenarmor/ges-report-generator 1.2.3
@greenarmor/ges-web-dashboard 1.2.3
@greenarmor/ges-mcp-server 1.2.3
@greenarmor/ges (CLI) 1.2.3

Upgrade Guide

# Update global CLI
npm update -g @greenarmor/ges

# Or with pnpm
pnpm update -g @greenarmor/ges

# Re-run audit to refresh data
ges audit

# Dashboard will now work — all pages navigable
ges dashboard