Skip to content

fix(histogram): reject unsupported time-only types - #1542

Merged
kentwelcome merged 2 commits into
mainfrom
feature/drc-4262-legacy-histogram-reject-parameterized-and-spelled-time
Sep 4, 2026
Merged

kentwelcome merged 2 commits into
mainfrom
feature/drc-4262-legacy-histogram-reject-parameterized-and-spelled-time

Conversation

@gcko

@gcko gcko commented Sep 4, 2026 •

Copy link
Copy Markdown
Contributor

PR checklist

  • Ensure you have added or ran the appropriate tests for your PR.
  • DCO signed

What type of PR is this?

Bugfix

What this PR does / why we need it:

  • Defines one shared backend/frontend policy matrix for histogram column types.
  • Rejects parameterized, spelled-zone, mixed-case, and whitespace TIME/TIMETZ aliases before SQL, persistence, or submission.
  • Applies the same validation to direct runs, saved checks, REST, MCP, and the histogram picker.
  • Keeps DATE and timestamp families supported and preserves unknown adapter-reported numeric fallbacks.

Which issue(s) this PR fixes:

Closes DRC-4262

Special notes for your reviewer:

  • Stack position: 1 of 3 in the histogram stack.
  • Base: main
  • Child: fix(histogram): restore temporal execution and rendering #1543
  • GitHub stack: https://github.com/DataRecce/recce/stacks/1545
  • Focused backend/API/MCP suite: 366 passed.
  • Full Python suite: 1,890 passed, 5 skipped.
  • Full frontend suite: 4,365 passed, 5 skipped.
  • Frontend lint/type checks, production build, repository flake8, targeted formatting, diff checks, and hooks passed.
  • Repository-wide make check still reports four untouched baseline Black-format files; all touched-file formatting and repository flake8 checks are green.

Does this PR introduce a user-facing change?:

Yes.

Histogram analysis now rejects unsupported TIME-only columns consistently across direct runs, saved checks, REST, MCP, and the column picker.

@gcko gcko changed the title feature/drc 4262 legacy histogram reject parameterized and spelled time fix(histogram): reject unsupported time-only types Sep 4, 2026
@gcko gcko self-assigned this Sep 4, 2026
@gcko
gcko requested a review from kentwelcome September 4, 2026 08:30
@codecov

codecov Bot commented Sep 4, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 98.81657% with 2 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
recce/apis/check_api.py 92.30% 1 Missing ⚠️
tests/tasks/test_histogram.py 97.05% 1 Missing ⚠️
Files with missing lines Coverage Δ
recce/apis/check_func.py 34.44% <100.00%> (+5.37%) ⬆️
recce/apis/run_api.py 40.19% <100.00%> (+2.39%) ⬆️
recce/mcp_server.py 90.91% <100.00%> (+0.01%) ⬆️
recce/tasks/histogram.py 75.73% <100.00%> (+1.42%) ⬆️
tests/apis/test_histogram_validation.py 100.00% <100.00%> (ø)
tests/test_mcp_server.py 99.89% <100.00%> (+<0.01%) ⬆️
recce/apis/check_api.py 80.10% <92.30%> (+4.54%) ⬆️
tests/tasks/test_histogram.py 99.56% <97.05%> (-0.44%) ⬇️

... and 4 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

gcko and others added 2 commits September 4, 2026 17:14
Validate histogram column types consistently across task, saved-check, REST, MCP, and picker entry points.

DRC-4262

Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Jared Scott <jared.scott@datarecce.io>
Route supported DATE and timestamp variants through datetime histogram execution and validate MCP creates before idempotent updates.

DRC-4262

Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Jared Scott <jared.scott@datarecce.io>
@kentwelcome
kentwelcome force-pushed the feature/drc-4262-legacy-histogram-reject-parameterized-and-spelled-time branch from 6d8ba77 to 3a78d86 Compare September 4, 2026 09:15

@kentwelcome kentwelcome left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM

@kentwelcome
kentwelcome merged commit 31e2d9e into main Sep 4, 2026
23 of 25 checks passed
@kentwelcome
kentwelcome deleted the feature/drc-4262-legacy-histogram-reject-parameterized-and-spelled-time branch September 4, 2026 09:21
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