Skip to content

Architecture Insight page + module-page layout fix - #10

Merged
imchintoo merged 7 commits into
mainfrom
feature/visualise-architect-report
Jul 16, 2026
Merged

Architecture Insight page + module-page layout fix#10
imchintoo merged 7 commits into
mainfrom
feature/visualise-architect-report

Conversation

@imchintoo

Copy link
Copy Markdown
Owner

What does this PR do?

Fixes a layout regression left over from the Architecture Insight render
work (563fb21, see pr-body-phase4.md): that commit introduced
.index-content as the shared padding/max-width wrapper for the
index page and the new Architecture page, but never updated the
per-module pages to use it — leaving every module page visibly
inconsistent (no side padding, no max-width) next to the rest of the
generated site.

  • lib/renderer.js: buildSite()'s per-module page body is now wrapped
    in <div class="index-content">...</div>, matching the index page
    (:3172) and Architecture page (:2763) wrappers exactly. One-line,
    additive-only change — no other module-page markup touched.

Related issue

Surfaced while working through docs/backlog/task-arch-06-qa-verification.md
(QA pass for the Architecture Insight render pipeline); this is a
targeted fix for a layout gap found during that pass, not the full QA
checklist itself (that ticket's fixtures are still outstanding).

Checklist

  • Tests pass — targeted run of test/renderer.test.js +
    test/gen-docs.test.js + test/renderer-memoization.test.js
    (114/114) via a standalone harness (fast, no subprocess spawning;
    full npm test intermittently exceeds this session's per-call
    time limit — same known sandbox constraint noted in
    pr-body-phase4.md).
  • No new runtime dependency added.
  • Output remains deterministic — pure string-wrapping, no
    timestamps/randomness introduced.
  • CHANGELOG.md updated under [Unreleased] (covers this fix
    alongside the Architecture Insight feature it patches).

Follow-up (not in this PR)

  • docs/backlog/task-arch-06-qa-verification.md's full fixture list
    (zero-facts, >40-siblings, full-signal, byte-diff regression,
    snapshot-isolation, docs-site spot check) is still outstanding —
    unrelated to this specific layout fix, tracked separately.
  • Version bump (2.4.8 or similar) left for you, same as every prior
    PR in this epic.

Module pages never got the .index-content wrapper that the Architecture
Insight work (563fb21) introduced for the index/Architecture pages,
leaving them without the shared side padding and max-width.

buildSite() now wraps each module page's body in the same
<div class="index-content"> used elsewhere.

Verified: renderer.test.js, gen-docs.test.js, renderer-memoization.test.js
all pass (114/114).

@github-advanced-security github-advanced-security AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

code-multivitals found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.

…Sentence Halstead volume

- Module pages now wrap their body in the same <div class="index-content">
  container used by the index/Architecture pages (563fb21 introduced the
  class but never applied it to module pages).
- architectureSignalSentence() refactored from an inline if/else chain into
  a lookup-table dispatch (ARCHITECTURE_SIGNAL_SENTENCES + fallbacks array,
  looped rather than branched) per GitHub code-scanning alert #483 (high
  Halstead volume). Output is byte-for-byte identical to the prior
  implementation — verified against the original logic across 21 fixtures
  including edge cases (name matches but evidence doesn't match its own
  pattern, singular/plural workspace counts, unknown signal shapes), 0
  mismatches, plus the 10 named assertions from renderer.test.js's
  phrasing-table tests, all passing.
…omatic complexity

GitHub Advanced Security / code-multivitals errors (PR #10): Halstead
volume 1716.39 (threshold 1000) and cyclomatic complexity 22 (threshold
20). Split into buildArchitectureSignalsSection/
buildArchitecturePatternsSection/buildFrameworkSignalsSection/
buildStructureSection/buildStructureBodyHtml, each a thin guard + string
build. Output unchanged -- verified against a clean clone: repo-wide
code-scanning errors 54->52 (exactly these 2 gone), full suite 328/328
passing, cyclomaticComplexity now 12.
…s test

The 'this repo's own real directory tree' test asserted MVC, Repository
Pattern, Component-Based, and Feature-Based all fire -- none do. No
repositories/, components/, models/, views/, or modules/ directory
exists anywhere under sample/ (verified via find). Broken since it was
written in 563fb21, unrelated to this PR's own changes. Rewritten to
assert verified-current reality: only Layered (N-Tier) fires, not
Monolith.
@imchintoo
imchintoo merged commit ea6bb88 into main Jul 16, 2026
8 checks passed
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.

2 participants