← TableauCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Tableau
Snapshot Sep 30, 2026 · 23:07 UTC · version 2.0.4
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"name": "tableau-viz-critique",
"description": "Review and score Tableau dashboards or views from a render plus available Tableau metadata, using an evidence-based seven-domain rubric and prioritized recommendations. Use for critique or scoring; do not use to edit workbooks, validate underlying data accuracy, or assess business performance.",
"included_files": [
{
"relative_path": "agents/openai.yaml",
"size_in_bytes": 245
},
{
"relative_path": "references/assessment-schema.md",
"size_in_bytes": 2249
},
{
"relative_path": "references/report-guide.md",
"size_in_bytes": 2475
},
{
"relative_path": "references/rubric.md",
"size_in_bytes": 6695
},
{
"relative_path": "scripts/score_viz.py",
"size_in_bytes": 9019
},
{
"relative_path": "scripts/tests/test_score_viz.py",
"size_in_bytes": 5016
}
],
"skill_md_contents": "---\nname: tableau-viz-critique\ndescription: Review and score Tableau dashboards or views from a render plus available Tableau metadata, using an evidence-based seven-domain rubric and prioritized recommendations. Use for critique or scoring; do not use to edit workbooks, validate underlying data accuracy, or assess business performance.\n---\n\n# Tableau Viz Critique\n\nEvaluate the visualization first and advise second. Ground every score in visible evidence, distinguish observation from inference, and keep review work read-only.\n\n## Resolve the target\n\nAccept any of these inputs:\n\n- an attached screenshot or render;\n- a Tableau view or workbook URL;\n- a Tableau content name or canonical identifier;\n- a workbook with a user-specified view to review.\n\nWhen a Tableau MCP server is available, discover its actual search/list, metadata, and view-image capabilities before calling them. Resolve names and URLs to the canonical identifier returned by the server; do not assume a numeric route segment is an API identifier. Use only read operations.\n\nFor a workbook with several relevant views, use the view the user named. If none was named and the choice would change the review, ask which view to score; otherwise state the selected view and why it is representative. Review every view only when the user requests workbook-wide coverage.\n\nFetch the largest practical render without distorting its intended aspect ratio. Metadata may establish owner, project, device layout, view names, or intended audience, but it is not evidence for a visual quality that is absent from the render.\n\nTableau image tools may return the render as an inline image block or as a `resource_link` containing a short-lived presigned URL.\n\n- If an inline image is returned, inspect it directly.\n- If a `resource_link` is returned, immediately download it with a direct HTTP client to a temporary or workspace file before the URL expires, then inspect the local file with the available image-viewing tool.\n- Treat this read-only download as the normal completion of the Tableau image request. Do not open the presigned URL in a browser unless the user explicitly asked to view it there.\n- Verify that the downloaded file is non-empty and is actually an image before scoring.\n- If the URL expires, request a fresh render and retry the download once.\n- Only ask the user for a screenshot after both inline inspection and direct download are unavailable or fail.\n\nDo not conclude that a render is inaccessible merely because a browser blocks the image-host domain. Browser access and direct retrieval of an MCP-returned resource are separate paths; exhaust the connector's supported resource-delivery path first.\n\nIf the render is too small, clipped, blank, or stale enough to make scoring unreliable, request a better image instead of guessing. A screenshot supplied directly by the user does not require Tableau access.\n\n## Establish context\n\nBefore scoring, identify:\n\n- the dominant genre: business dashboard, analytical/exploratory, narrative, editorial, expressive/data art, or scientific/technical;\n- the likely audience and time budget when supported by the request or artifact;\n- the primary question the visualization appears to answer.\n\nState the primary question in the review. Mark it **unclear** when the evidence does not support one. Do not penalize a narrative, analytical, or expressive visualization for lacking dashboard conventions that do not serve its genre.\n\n## Score from evidence\n\nRead [rubric.md](references/rubric.md) before assigning scores. Catalog meaningful strengths before gaps, but do not use a predetermined passing floor. Score each domain from 0–10 against its anchor descriptions and cite observable evidence for both high scores and material deductions.\n\nAssess visible interactivity cues—filters, controls, navigation, selection state, and disclosure model—inside Audience Adaptation and Layout. Do not claim tooltip quality, action responsiveness, keyboard support, screen-reader structure, or parameter behavior from a static render.\n\nRecord the seven base scores, documented adjustments, and applicable caps in a JSON assessment. Read [assessment-schema.md](references/assessment-schema.md) for the required shape and adjustment identifiers.\n\nThe assessment JSON and the scoring helper's raw JSON output are internal scratch data, not user deliverables. Store scratch files only in an OS-managed temporary directory, never in the workspace or current directory. Do not create them with an artifact-producing file-edit tool. Do not attach, open, link, render, mention, or otherwise surface them to the user. Remove temporary files after scoring. Return only the formatted review unless the user explicitly requests JSON.\n\nResolve `skill_dir` as the absolute directory containing this `SKILL.md`; do not assume the skill is the current working directory. Then use the bundled helper for deterministic weighting, validation, half-even rounding, safety status, and tier assignment:\n\n```bash\npython3 \"$skill_dir/scripts/score_viz.py\" \"/absolute/os-temp/path/assessment.json\"\n```\n\nThe helper is the arithmetic authority, not the visual evaluator. Never manufacture an adjustment merely to reach a tier. When it returns `safety_status: blocked`, display `Safety remediation required` instead of a quality tier and lead with the blocking issue.\n\nIf any domain genuinely cannot be assessed, do not invent a value or calculate an overall score. Deliver the supported qualitative findings, mark the missing domain, and request the evidence needed for a complete score.\n\n## Deliver the review\n\nDefault to a complete but compact inline review unless the user requested a brief answer or a file. Do not delay useful findings behind a mandatory format question.\n\nInclude:\n\n1. final score, tier, genre, and primary question;\n2. a short verdict;\n3. the seven-domain scorecard with concrete evidence;\n4. the main score drivers and any cap;\n5. two to four prioritized recommendations.\n\nFor each recommendation, describe the current issue, the proposed change, the affected domain, and a coarse effort level such as Low, Medium, or High. Give numeric uplift or time estimates only when the evidence supports them; otherwise avoid false precision.\n\nRead [report-guide.md](references/report-guide.md) when the user requests a detailed review, multiple views, or a document artifact. If a `.docx`, Google Doc, or another format is requested, use the appropriate available document capability and preserve the same evidence and score.\n\nKeep humor light and never use it when discussing misleading presentation, accessibility barriers, or exposed sensitive data.\n\n## Boundaries\n\n- Review-only requests do not authorize workbook edits, publishing, comments, subscriptions, or other Tableau mutations.\n- Route an authorized workbook repair to a workbook-authoring skill when available; do not silently change scope.\n- Visual design review does not validate source data, calculation correctness, business conclusions, or performance unless the user supplies separate evidence and requests that analysis.\n- Treat visible personal or sensitive data as evidence to minimize in the report, not content to reproduce.\n- When only a static image is available, label interaction and accessibility limitations explicitly.\n\nFor implementation changes, run `python -m unittest discover -s scripts/tests -v` and the active skill validator.\n"
}SHA-256: 930e936da8097c8fe1919e578eeb5cc1d9e630672c16c9c1aff60f45457e1175