Skip to content

Website updates, RLS spec/plan, build tooling, and reporting cleanup#31

Merged
MelbourneDeveloper merged 4 commits intomainfrom
stuff
May 1, 2026
Merged

Website updates, RLS spec/plan, build tooling, and reporting cleanup#31
MelbourneDeveloper merged 4 commits intomainfrom
stuff

Conversation

@MelbourneDeveloper
Copy link
Copy Markdown
Collaborator

TLDR

Adds Row-Level Security spec and implementation plan, a make vsix target for the VS Code extension, website/CSS improvements, and removes committed build artefacts from the Reporting project.

What Was Added?

  • RLS Spec (docs/specs/rls-spec.md): 397-line spec covering [RLS-*] sections for PostgreSQL, SQL Server, and SQLite trigger-based emulation, with LQL-transpiled predicates.
  • RLS Plan (docs/plans/RLS-PLAN.md): 98-line implementation plan mapping spec sections to Migration framework types (RlsPolicySetDefinition, RlsPolicyDefinition, RlsOperation).
  • make vsix target (Makefile): Builds the Rust LSP in release mode, compiles and packages the VS Code extension .vsix, and installs it — wraps Lql/lql-lsp-rust/build-vsix.sh.
  • Demo video CSS (Website/src/assets/css/styles.css): Added .demo-video class with responsive width and border-radius.
  • LQL screenshot (README.md): Added lql.png image to the Quick Example section.

What Was Changed or Deleted?

  • CodeAnalysis.ruleset: Moved EXHAUSTION001 rule to correct position; no functional change.
  • Directory.Build.props: Added FS3261 to performance-critical warnings-as-errors list.
  • DdlGenerator.csMigrationRunner.cs: Removed the now-redundant DdlGenerator static helper class (its thin Generate/GenerateAll wrappers were dead weight); the MigrationRunner type that shared the file remains.
  • F# type provider tests (TypeProviderE2ETests.fs): Added explicit type annotations on row and used Unchecked.nonNull to satisfy FS3261 nullable warnings.
  • Website/package.json: Removed the build:site composite script alias.
  • Website/src/docs/samples.md: Significantly trimmed (221 → 42 lines) — condensed description of the Clinical Coding reference implementation, removed redundant detail.
  • Reporting wwwroot/js/ artefacts: Deleted committed build outputs (Nimblesite.Reporting.React.js, .meta.js, Reporting.React.js, h5.js, vendor bundles, index.html, reporting.js) and added them to .gitignore so they are no longer tracked.

How Do The Automated Tests Prove It Works?

CI was skipped per author request. The F# changes fix compiler warnings (FS3261) that were already errors under WarningsAsErrors; the TypeProvider E2E tests (TypeProviderE2ETests.fs) would fail to compile without the fix.

Spec / Doc Changes

  • Added docs/specs/rls-spec.md — new RLS specification with [RLS-*] spec IDs.
  • Added docs/plans/RLS-PLAN.md — implementation plan referencing those spec IDs.
  • Updated README.md quick-example section with LQL screenshot.
  • Trimmed Website/src/docs/samples.md.

Breaking Changes

  • None

The reporting.js hand-written vanilla JS React renderer was accidentally
deleted in d5f61e1 along with H5-generated build artefacts. The wwwroot/js/
gitignore rule also silently suppressed it. All 13 Playwright browser tests
fail because index.html loads js/reporting.js which no longer existed.

Switch gitignore from directory-level ignore to explicit per-file ignores
so reporting.js (source file) is tracked while H5 build outputs are not.
@MelbourneDeveloper MelbourneDeveloper merged commit 84f5b2a into main May 1, 2026
3 checks passed
@MelbourneDeveloper MelbourneDeveloper deleted the stuff branch May 1, 2026 06:03
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