Skip to content

Dev - #7

Merged
Andrew-Waring merged 4 commits into
mainfrom
dev
Aug 16, 2026
Merged

Dev#7
Andrew-Waring merged 4 commits into
mainfrom
dev

Conversation

@Andrew-Waring

Copy link
Copy Markdown
Collaborator

No description provided.

Andrew-Waring and others added 4 commits August 15, 2026 16:37
…ablejs pin

The release regression test compares the schema embedded in the committed
release HTML byte-for-byte against dev/specification/guerrilla-ops-schema.xml.
On a Windows checkout core.autocrlf converts the working copy to CRLF, so a
locally built release embeds CRLF while the repo source is LF, and the test
fails on every Linux runner (red since 2026-08-15, deploy and release skipped).

Small changes close the observed divergence at the source:

- build_release.py canonicalises line endings in both files it embeds by
  exact bytes: the QA schema and the favicon SVG. The embedded content no
  longer depends on how the source was checked out. This also covers an
  existing autocrlf worktree that upgrades to this commit, where git does
  not rewrite unchanged working-tree files and .gitattributes alone would
  not help.
- runtime-regression.js normalises the schema the same way, so the
  byte-equality check passes on any platform while still catching a
  genuinely stale artifact.
- .gitattributes pins the repo to LF as belt-and-braces hygiene.

Verified under the tested toolchain: LF, CRLF-schema, CRLF-SVG-only
(the upgrade path), and all-text-CRLF checkouts each produce byte-identical
airgapped HTML, and all three regression suites pass in each.

Also refreshes the sortablejs 1.15.6 pin. jsDelivr now serves the byte
content of the npm tarball member (verified: registry dist.integrity matches
the tarball, tarball member sha256 6d0a831f... matches the CDN response), so
the previous pin was stale rather than the package compromised.
…gs-reproducible-build

Roosch269 fix/line endings reproducible build
@Andrew-Waring
Andrew-Waring requested a lite review from Copilot August 16, 2026 20:13
@Andrew-Waring Andrew-Waring self-assigned this Aug 16, 2026
@Andrew-Waring
Andrew-Waring merged commit b07ccf2 into main Aug 16, 2026
4 checks passed

Copilot 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.

Pull request overview

This PR enhances the COBie QA UX and theming pipeline by adding schema-driven color metadata, upgrading QA scoring/visualizations (graph + PDF report), and improving modal editing/lookup workflows (including draft-safe association staging).

Changes:

  • Add schema-driven color metadata (ui@colorSheet, column ui@colorToken) and propagate it into the runtime model / QA outputs.
  • Upgrade QA outputs: advisory-aware scoring tallies, interactive QA graph filtering, and a redesigned PDF cover/summary layout.
  • Improve modal workflows: format-aware editors (GUID/date/datetime), inline entity creation for reference-backed lookups, and better handling of unsaved draft entities (including component placement).

Reviewed changes

Copilot reviewed 14 out of 17 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
dev/tests/runtime-regression.js Extends runtime regression coverage for new QA ordering, QA graph filtering, PDF contract, and lookup creation behavior.
dev/specification/guerrilla-ops-schema.xml Adds entity colorSheet and per-column colorToken metadata for theming and QA UI.
dev/packages/manifest.csv Updates the expected hash for the SortableJS CDN asset.
dev/javascript/utils.js Includes colorSheet in the parsed runtime model UI metadata.
dev/javascript/qa.js Adds advisory-aware scoring helpers, propagates column colorToken into results, and updates check filtering to support multi-select.
dev/javascript/qa-graph.js Major QA graph redesign: tone chips, column grouping, multi-check filtering, and score tallies beyond pass/fail.
dev/javascript/model-config.js Adds schema format-to-editor mapping (GUID/date/datetime) for modal field editing.
dev/javascript/modals.js Draft-aware return context, staging associations for unsaved drafts, inline lookup creation (type-aware), and GUID generation actions.
dev/javascript/logo-theme.js Applies schema-driven entity color tokens to pill CSS variables at startup.
dev/javascript/component-placement.js Uses shared SVG identifier matching, supports draft modal refresh, and avoids QA/track mutations for drafts.
dev/css/theme.css Introduces --sheet-NN tokens and COBie field color tokens; updates pill colors to use sheet palette.
dev/css/results.css Updates QA graph layout/styles for new chips, donuts, column cards, and adds styling for modal field actions.
dev/build/build_release.py Canonicalizes line endings for embedded SVG favicon + QA schema for deterministic release hashes.
.gitattributes Enforces LF line endings and marks common binaries appropriately.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +303 to +305
return `<button type="button" class="qa-graph-summary" data-qa-sheet="" title="${title}">
<div class="qa-donut qa-donut-main" style="${_qaGraphFillVars(summary)}" role="img" aria-label="${summary.pass} checks passed, ${summary.advisory} advisory, ${summary.warning} warnings and ${summary.error} errors">
<span>${summary.score}%</span>
Comment on lines 142 to 144
}
});
}
<span class="qa-graph-check-name">${esc(checkLabel)}</span>
<span class="qa-graph-rule-description">${esc(row.description)}</span>
</span>
<span class="qa-graph-cnt"><b>${row.pass}</b> <i>${row.advisory}</i> <u>${row.warning}</u> <strong>${row.error}</strong></span>
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.

3 participants