From 04f41dadc522999f0c138c333b6b27e4d54b179c Mon Sep 17 00:00:00 2001 From: Flavio Wuensche Date: Sat, 18 Apr 2026 13:13:30 +0200 Subject: [PATCH 1/7] Remove page viewers feature from metrics The "Seen by" avatar group on metric pages was rarely used. Drops the View model, polymorphic views table, related controller/routes, and the frontend tracking/display. Co-Authored-By: Claude Opus 4.7 --- app/controllers/user/views_controller.rb | 14 ---- app/javascript/components/Breadcrumb.tsx | 24 ------- app/javascript/components/MetricCard.tsx | 20 ++---- app/javascript/queries/user/views.ts | 26 ------- app/models/metric.rb | 1 - app/models/user.rb | 1 - app/models/view.rb | 6 -- config/routes.rb | 1 - db/migrate/20260417172507_drop_views.rb | 11 +++ db/schema.rb | 13 +--- package-lock.json | 79 ++++++++-------------- test/factories/views.rb | 8 --- test/screenshots/dashboard-with-chart.png | Bin 57816 -> 52052 bytes test/system/metrics_test.rb | 10 --- 14 files changed, 44 insertions(+), 170 deletions(-) delete mode 100644 app/controllers/user/views_controller.rb delete mode 100644 app/javascript/queries/user/views.ts delete mode 100644 app/models/view.rb create mode 100644 db/migrate/20260417172507_drop_views.rb delete mode 100644 test/factories/views.rb diff --git a/app/controllers/user/views_controller.rb b/app/controllers/user/views_controller.rb deleted file mode 100644 index 7f18d99b..00000000 --- a/app/controllers/user/views_controller.rb +++ /dev/null @@ -1,14 +0,0 @@ -# frozen_string_literal: true - -class User::ViewsController < User::ApplicationController - def index - metric = Metric.find(params[:metric_id]) - render json: metric.views - end - - def create - metric = current_user.metrics.find(params[:metric_id]) - current_user.views.create!(viewable: metric) - head :created - end -end diff --git a/app/javascript/components/Breadcrumb.tsx b/app/javascript/components/Breadcrumb.tsx index 140dcab3..c87c387e 100644 --- a/app/javascript/components/Breadcrumb.tsx +++ b/app/javascript/components/Breadcrumb.tsx @@ -2,12 +2,10 @@ import { Avatar, Breadcrumb as BaseBreadcrumb, Button, Dropdown, Tooltip } from import { useNavigate, useSearchParams } from 'react-router-dom' import { useMetricWatchersCreate, useMetricWatchersDestroy } from '../queries/user/metricWatchers' -import _ from 'lodash' import useCurrentUser from '../hooks/useCurrentUser' import { Metric } from '../queries/user/metrics' import { Project } from '../queries/user/projects' import { useUsersIndex } from '../queries/user/users' -import { useViewsIndex } from '../queries/user/views' import MetricActionsMenu from './MetricActionsMenu' import ProjectActionsMenu from './ProjectActionsMenu' @@ -25,10 +23,6 @@ const Breadcrumb = ({ projects, metrics }: { projects: Project[]; metrics: Metri const metricId = parseInt(searchParams.get('metric_id') || '') const currentMetric = metricId ? metrics.find((metric) => metric.id === metricId) : null - const { data: views } = useViewsIndex({ metricId }) - const viewerIds = views ? _.uniq(views.map((view) => view.user_id)) : [] - const { data: viewers } = useUsersIndex({ ids: viewerIds, enabled: !!currentMetric }) - const { data: watchers } = useUsersIndex({ ids: currentMetric?.watcher_ids, enabled: !!currentMetric }) if (!user) return null @@ -95,24 +89,6 @@ const Breadcrumb = ({ projects, metrics }: { projects: Project[]; metrics: Metri {currentProject && (
{!currentMetric && } - {viewers && views && views.length > 0 && ( - <> -

Seen by:

- - {viewers.map((viewer) => ( - - navigate(`/user/users/${viewer.id}`)} - /> - - ))} - - - )} {currentMetric && }
)} diff --git a/app/javascript/components/MetricCard.tsx b/app/javascript/components/MetricCard.tsx index 03b886f0..33b21ce1 100644 --- a/app/javascript/components/MetricCard.tsx +++ b/app/javascript/components/MetricCard.tsx @@ -1,20 +1,10 @@ import { Card } from 'flowbite-react' -import { useEffect } from 'react' import { ChartKind } from '../queries/user/charts' -import { useViewsCreate } from '../queries/user/views' import MetricChart from './MetricChart' -const MetricCard = ({ metricId, owners }: { metricId: number; owners?: string[] }) => { - const { mutate: trackView } = useViewsCreate() - - useEffect(() => { - trackView(metricId) - }, [metricId, trackView]) - - return ( - - - - ) -} +const MetricCard = ({ metricId, owners }: { metricId: number; owners?: string[] }) => ( + + + +) export default MetricCard diff --git a/app/javascript/queries/user/views.ts b/app/javascript/queries/user/views.ts deleted file mode 100644 index 669df985..00000000 --- a/app/javascript/queries/user/views.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { useMutation, useQuery } from '@tanstack/react-query' -import axios from 'axios' - -type View = { - created_at: string - id: number - updated_at: string - user_id: number - viewable_id: number - viewable_type: string -} - -export const useViewsIndex = ({ metricId }: { metricId: number }) => - useQuery( - ['user', 'views', { metricId }], - () => - axios - .get(`/user/views.json`, { params: { metric_id: metricId } }) - .then((response) => response.data), - { - enabled: !!metricId, - } - ) - -export const useViewsCreate = () => - useMutation((metricId: number) => axios.post(`/user/views.json`, { metric_id: metricId })) diff --git a/app/models/metric.rb b/app/models/metric.rb index f438c44c..733eedb1 100644 --- a/app/models/metric.rb +++ b/app/models/metric.rb @@ -7,7 +7,6 @@ class Metric < ApplicationRecord has_many :reports, dependent: :destroy has_many :contributions, dependent: :destroy has_many :chart_metrics, dependent: :destroy - has_many :views, as: :viewable, dependent: :destroy validates :name, presence: true diff --git a/app/models/user.rb b/app/models/user.rb index 47b675b1..3ae15b66 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -12,7 +12,6 @@ class User < ApplicationRecord has_many :metrics, through: :projects has_many :notifications, dependent: :destroy has_many :owned_organizations, class_name: Organization.to_s, dependent: :restrict_with_error - has_many :views, dependent: :destroy before_save :ensure_api_key diff --git a/app/models/view.rb b/app/models/view.rb deleted file mode 100644 index 1f3de03d..00000000 --- a/app/models/view.rb +++ /dev/null @@ -1,6 +0,0 @@ -# frozen_string_literal: true - -class View < ApplicationRecord - belongs_to :user - belongs_to :viewable, polymorphic: true -end diff --git a/config/routes.rb b/config/routes.rb index 76cf67d0..c6c9003d 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -42,7 +42,6 @@ resource :settings, only: %i[update] resources :subscriptions, only: %i[create] resources :users, only: %i[index show] - resources :views, only: %i[index create] end constraints(->(request) { request.format == :html }) do diff --git a/db/migrate/20260417172507_drop_views.rb b/db/migrate/20260417172507_drop_views.rb new file mode 100644 index 00000000..644c792f --- /dev/null +++ b/db/migrate/20260417172507_drop_views.rb @@ -0,0 +1,11 @@ +# frozen_string_literal: true + +class DropViews < ActiveRecord::Migration[7.1] + def change + drop_table :views do |t| + t.references :user, null: false, foreign_key: true + t.references :viewable, polymorphic: true, null: false + t.timestamps + end + end +end diff --git a/db/schema.rb b/db/schema.rb index 6408024a..9e18b8ba 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[7.1].define(version: 2026_04_14_163240) do +ActiveRecord::Schema[7.2].define(version: 2026_04_17_172507) do # These are extensions that must be enabled in order to support this database enable_extension "pg_stat_statements" enable_extension "plpgsql" @@ -222,16 +222,6 @@ t.integer "favorite_dashboard_ids", default: [], array: true end - create_table "views", force: :cascade do |t| - t.bigint "user_id", null: false - t.string "viewable_type", null: false - t.bigint "viewable_id", null: false - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.index ["user_id"], name: "index_views_on_user_id" - t.index ["viewable_type", "viewable_id"], name: "index_views_on_viewable" - end - add_foreign_key "authorization_requests", "organizations" add_foreign_key "authorization_requests", "users" add_foreign_key "authorizations", "organizations" @@ -247,5 +237,4 @@ add_foreign_key "projects", "organizations" add_foreign_key "projects", "users" add_foreign_key "reports", "metrics" - add_foreign_key "views", "users" end diff --git a/package-lock.json b/package-lock.json index 428ef8b5..070f73b9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -60,7 +60,6 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", - "peer": true, "engines": { "node": ">=10" }, @@ -331,6 +330,7 @@ "version": "11.11.1", "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.1.tgz", "integrity": "sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==", + "peer": true, "dependencies": { "@babel/runtime": "^7.18.3", "@emotion/babel-plugin": "^11.11.0", @@ -376,6 +376,7 @@ "version": "11.13.0", "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.13.0.tgz", "integrity": "sha512-tkzkY7nQhW/zC4hztlwucpT8QEZ6eUzpXDRhww/Eej4tFfO0FxQYWRyg/c5CCXa4d/f174kqeXYjuQRnhzf6dA==", + "peer": true, "dependencies": { "@babel/runtime": "^7.18.3", "@emotion/babel-plugin": "^11.12.0", @@ -1060,7 +1061,6 @@ "version": "0.3.3", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "peer": true, "dependencies": { "@jridgewell/set-array": "^1.0.1", "@jridgewell/sourcemap-codec": "^1.4.10", @@ -1074,7 +1074,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "peer": true, "engines": { "node": ">=6.0.0" } @@ -1083,7 +1082,6 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "peer": true, "engines": { "node": ">=6.0.0" } @@ -1091,14 +1089,12 @@ "node_modules/@jridgewell/sourcemap-codec": { "version": "1.4.15", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "peer": true + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { "version": "0.3.20", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", - "peer": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -1164,6 +1160,7 @@ "version": "5.16.7", "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.16.7.tgz", "integrity": "sha512-cwwVQxBhK60OIOqZOVLFt55t01zmarKJiJUWbk0+8s/Ix5IaUzAShqlJchxsIQ4mSrWqgcKCCXKtIlG5H+/Jmg==", + "peer": true, "dependencies": { "@babel/runtime": "^7.23.9", "@mui/core-downloads-tracker": "^5.16.7", @@ -1388,6 +1385,7 @@ "resolved": "https://registry.npmjs.org/@prettier/plugin-ruby/-/plugin-ruby-1.6.1.tgz", "integrity": "sha512-PGDCATgVTQz0s/NB9nStiXVCIr+hG/XnKeAO/kguaHrNf8VwCpP5Ul+/KQao0z0QFBy2PDY8kWptfDQCa7WMXg==", "dev": true, + "peer": true, "dependencies": { "prettier": ">=1.10" } @@ -1824,6 +1822,7 @@ "version": "4.36.1", "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-4.36.1.tgz", "integrity": "sha512-y7ySVHFyyQblPl3J3eQBWpXZkliroki3ARnBKsdJchlgt7yJLRDUcf4B8soufgiYt3pEQIkBWBx1N9/ZPIeUWw==", + "peer": true, "dependencies": { "@tanstack/query-core": "4.36.1", "use-sync-external-store": "^1.2.0" @@ -1959,6 +1958,7 @@ "version": "18.2.42", "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.42.tgz", "integrity": "sha512-c1zEr96MjakLYus/wPnuWDo1/zErfdU9rNsIGmE+NV71nx88FG9Ttgo5dqorXTu/LImX2f63WBP986gJkMPNbA==", + "peer": true, "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -2287,6 +2287,7 @@ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", "dev": true, + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -2347,14 +2348,12 @@ "node_modules/any-promise": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "peer": true + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "peer": true, "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -2367,6 +2366,7 @@ "version": "3.49.1", "resolved": "https://registry.npmjs.org/apexcharts/-/apexcharts-3.49.1.tgz", "integrity": "sha512-MqGtlq/KQuO8j0BBsUJYlRG8VBctKwYdwuBtajHgHTmSgUU3Oai+8oYN/rKCXwXzrUlYA+GiMgotAIbXY2BCGw==", + "peer": true, "dependencies": { "@yr/monotone-cubic-spline": "^1.0.3", "svg.draggable.js": "^2.2.2", @@ -2380,8 +2380,7 @@ "node_modules/arg": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", - "peer": true + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" }, "node_modules/argparse": { "version": "2.0.1", @@ -2584,7 +2583,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "peer": true, "engines": { "node": ">=8" } @@ -2654,7 +2652,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", - "peer": true, "engines": { "node": ">= 6" } @@ -2730,7 +2727,6 @@ "url": "https://paulmillr.com/funding/" } ], - "peer": true, "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -2751,7 +2747,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "peer": true, "dependencies": { "is-glob": "^4.0.1" }, @@ -2820,7 +2815,6 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "peer": true, "engines": { "node": ">= 6" } @@ -2892,7 +2886,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "peer": true, "bin": { "cssesc": "bin/cssesc" }, @@ -2903,7 +2896,8 @@ "node_modules/csstype": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "peer": true }, "node_modules/data-view-buffer": { "version": "1.0.1", @@ -3075,14 +3069,12 @@ "node_modules/didyoumean": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", - "peer": true + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==" }, "node_modules/dlv": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", - "peer": true + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" }, "node_modules/doctrine": { "version": "3.0.0", @@ -3335,6 +3327,7 @@ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "dev": true, + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", @@ -4324,7 +4317,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "peer": true, "dependencies": { "binary-extensions": "^2.0.0" }, @@ -4719,7 +4711,6 @@ "version": "1.21.0", "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", - "peer": true, "bin": { "jiti": "bin/jiti.js" } @@ -4806,7 +4797,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", - "peer": true, "engines": { "node": ">=10" } @@ -5767,7 +5757,6 @@ "version": "2.7.0", "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "peer": true, "dependencies": { "any-promise": "^1.0.0", "object-assign": "^4.0.1", @@ -5811,7 +5800,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -5828,7 +5816,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", - "peer": true, "engines": { "node": ">= 6" } @@ -6089,7 +6076,6 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -6098,7 +6084,6 @@ "version": "4.0.6", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", - "peer": true, "engines": { "node": ">= 6" } @@ -6131,6 +6116,7 @@ } ], "license": "MIT", + "peer": true, "dependencies": { "nanoid": "^3.3.8", "picocolors": "^1.1.1", @@ -6144,7 +6130,6 @@ "version": "15.1.0", "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", - "peer": true, "dependencies": { "postcss-value-parser": "^4.0.0", "read-cache": "^1.0.0", @@ -6161,7 +6146,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", - "peer": true, "dependencies": { "camelcase-css": "^2.0.1" }, @@ -6190,7 +6174,6 @@ "url": "https://github.com/sponsors/ai" } ], - "peer": true, "dependencies": { "lilconfig": "^3.0.0", "yaml": "^2.3.4" @@ -6215,7 +6198,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.0.0.tgz", "integrity": "sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==", - "peer": true, "engines": { "node": ">=14" } @@ -6224,7 +6206,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==", - "peer": true, "dependencies": { "postcss-selector-parser": "^6.0.11" }, @@ -6243,7 +6224,6 @@ "version": "6.0.13", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", - "peer": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -6255,8 +6235,7 @@ "node_modules/postcss-value-parser": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "peer": true + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" }, "node_modules/prelude-ls": { "version": "1.2.1", @@ -6272,6 +6251,7 @@ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", "dev": true, + "peer": true, "bin": { "prettier": "bin-prettier.js" }, @@ -6366,6 +6346,7 @@ "version": "18.3.1", "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "peer": true, "dependencies": { "loose-envify": "^1.1.0" }, @@ -6389,6 +6370,7 @@ "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "peer": true, "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.2" @@ -6501,7 +6483,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "peer": true, "dependencies": { "pify": "^2.3.0" } @@ -6510,7 +6491,6 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "peer": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -6678,6 +6658,7 @@ "integrity": "sha512-2oMpl67a3zCH9H79LeMcbDhXW/UmWG/y2zuqnF2jQq5uq9TbM9TVyXvA4+t+ne2IIkBdrLpAaRQAvo7YI/Yyeg==", "devOptional": true, "license": "MIT", + "peer": true, "dependencies": { "@types/estree": "1.0.8" }, @@ -7030,7 +7011,6 @@ "version": "3.34.0", "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.34.0.tgz", "integrity": "sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==", - "peer": true, "dependencies": { "@jridgewell/gen-mapping": "^0.3.2", "commander": "^4.0.0", @@ -7053,7 +7033,6 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "license": "MIT", - "peer": true, "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -7063,7 +7042,6 @@ "version": "7.1.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "peer": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -7084,7 +7062,6 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "license": "ISC", - "peer": true, "dependencies": { "brace-expansion": "^1.1.7" }, @@ -7273,7 +7250,6 @@ "version": "3.3.1", "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "peer": true, "dependencies": { "any-promise": "^1.0.0" } @@ -7282,7 +7258,6 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", - "peer": true, "dependencies": { "thenify": ">= 3.1.0 < 4" }, @@ -7334,6 +7309,7 @@ "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=12" }, @@ -7394,8 +7370,7 @@ "node_modules/ts-interface-checker": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", - "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", - "peer": true + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==" }, "node_modules/tslib": { "version": "2.6.2", @@ -7504,6 +7479,7 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "license": "Apache-2.0", + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -7628,8 +7604,7 @@ "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "peer": true + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, "node_modules/vfile": { "version": "6.0.3", @@ -7768,6 +7743,7 @@ "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=12" }, @@ -7879,7 +7855,6 @@ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.3.tgz", "integrity": "sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==", "license": "ISC", - "peer": true, "bin": { "yaml": "bin.mjs" }, diff --git a/test/factories/views.rb b/test/factories/views.rb deleted file mode 100644 index 0dceb854..00000000 --- a/test/factories/views.rb +++ /dev/null @@ -1,8 +0,0 @@ -# frozen_string_literal: true - -FactoryBot.define do - factory :view do - account { nil } - viewable { nil } - end -end diff --git a/test/screenshots/dashboard-with-chart.png b/test/screenshots/dashboard-with-chart.png index 6e195eed712de49fba4f4d8b19aeff8475a08f77..5a5d35df4b3bca26e14673ee8ea1d0f06d56419f 100644 GIT binary patch literal 52052 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 literal 57816 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

Jhuxgh(R5s8cTdKfTfzr{wfrkO*+c%GQQF_;>! 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 R--9n}f&xPQAM8DG@m~Y9%3c5f diff --git a/test/system/metrics_test.rb b/test/system/metrics_test.rb index a165f8f9..eb4048e1 100644 --- a/test/system/metrics_test.rb +++ b/test/system/metrics_test.rb @@ -142,14 +142,4 @@ class MetricsTest < ApplicationSystemTestCase assert_text 'Metric deleted' assert_equal 1, Metric.count end - - it 'shows users who have seen a metric' do - sign_in(user, to: user_projects_path) - visit "/user/projects?project_id=#{project.id}&metric_id=#{eslint_metric.id}" - assert_text 'Top Contributors' - assert_no_text 'Seen by' - visit "/user/projects?project_id=#{project.id}&metric_id=#{eslint_metric.id}" - assert_text 'Top Contributors' - assert_text 'Seen by' - end end From 20a1fdd5ad6fe7a55b05ad33414b9588e1f201f9 Mon Sep 17 00:00:00 2001 From: Flavio Wuensche Date: Sat, 18 Apr 2026 13:40:54 +0200 Subject: [PATCH 2/7] Fix hide_toasts to use toast.dismiss() instead of removing the DOM element Removing the toaster container broke React's ability to render future toasts, causing assert_text failures on subsequent toast assertions. Exposing toast.dismiss() on window and calling it instead leaves the container intact while dismissing any currently visible toasts. Co-Authored-By: Claude Sonnet 4.6 --- app/javascript/components/App.tsx | 25 ++++++++++++---------- test/screenshots/metric-contributions.png | Bin 47596 -> 45805 bytes test/support/screenshot_helpers.rb | 2 +- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/app/javascript/components/App.tsx b/app/javascript/components/App.tsx index 83f95fe6..9f1a8db6 100644 --- a/app/javascript/components/App.tsx +++ b/app/javascript/components/App.tsx @@ -28,6 +28,9 @@ axios.defaults.headers.common['Accept'] = 'application/json' const darkTheme = createTheme({ palette: { mode: 'dark' } }) +// eslint-disable-next-line @typescript-eslint/no-explicit-any +;(window as any).__dismissToasts = () => toast.dismiss() + const App = ({ alert, notice }: { alert: string; notice: string }) => { const user = useCurrentUser() @@ -62,18 +65,18 @@ const App = ({ alert, notice }: { alert: string; notice: string }) => {