Commit Graph

  • 55986a1965 Add OpenAPI fixture validation and fix fixtures to match API spec main 依瑪貓 2026-03-22 23:58:17 +08:00
  • 56bee336db Remove Cypress and update scripts to use Playwright for E2E testing 依瑪貓 2026-03-22 16:44:58 +08:00
  • aa2661b556 Add Playwright E2E tests replacing Cypress with MSW integration 依瑪貓 2026-03-22 16:43:32 +08:00
  • 67a723207f Remove old Cypress fixture files now served by MSW handlers 依瑪貓 2026-03-22 09:30:38 +08:00
  • 3d1de913f8 Migrate Cypress E2E from cy.intercept to MSW service worker 依瑪貓 2026-03-22 09:30:22 +08:00
  • b978071f94 Add conditional MSW browser worker startup for E2E testing 依瑪貓 2026-03-22 08:24:33 +08:00
  • 3918755b7c Migrate Vitest store tests from vi.mock to MSW request handlers 依瑪貓 2026-03-22 07:48:53 +08:00
  • 7e052f0d36 Add MSW infrastructure: handlers, fixtures, request-log, and Vitest setup 依瑪貓 2026-03-22 07:38:02 +08:00
  • 0ff03ec0ef Suppress expected console.error output in error-path tests 依瑪貓 2026-03-10 20:05:04 +08:00
  • 0af0ff39d4 Remove unused cytoscape-spread and split build into manual chunks 依瑪貓 2026-03-10 10:39:05 +08:00
  • aeb6d207c5 Export store interfaces and fix dotenv code block to resolve TypeDoc warnings 依瑪貓 2026-03-10 10:26:29 +08:00
  • 97748bea60 Fix JSDoc errors: remove unsupported @constant tags and correct @param names 依瑪貓 2026-03-10 10:20:05 +08:00
  • 093eabaea3 Add TypeDoc for API documentation generation 依瑪貓 2026-03-10 10:18:07 +08:00
  • 5020d91277 Rewrite README with project overview, tech stack, and usage guide 依瑪貓 2026-03-10 10:10:28 +08:00
  • fe8a1e8a00 Replace hard-coded test passwords with crypto.randomUUID() (S2068) 依瑪貓 2026-03-10 09:51:34 +08:00
  • 30ea7711ce Remove outdated doc directory with stale project structure snapshot 依瑪貓 2026-03-10 09:40:28 +08:00
  • ced1ff617a Replace void with expect().toBeDefined() for getter side-effect access (S3735) 依瑪貓 2026-03-10 09:30:45 +08:00
  • af69b6695c Use defineOptions for beforeRouteEnter, eliminating dual script block (S3863) 依瑪貓 2026-03-10 09:25:00 +08:00
  • dcb497d64b Use void operator for getter side-effect access in tests (S1481) 依瑪貓 2026-03-10 09:11:19 +08:00
  • 289d4213e2 Refactor MainContainer to use onBeforeRouteUpdate Composition API, eliminating dual script block (S3863) 依瑪貓 2026-03-10 09:10:27 +08:00
  • bbca475bbe Replace async IIFE with onMounted for page initialization (S7785) 依瑪貓 2026-03-10 08:47:34 +08:00
  • e9e588385b Replace JSON.parse(JSON.stringify()) with lodash-es cloneDeep for deep cloning Vue reactive data (S7784) 依瑪貓 2026-03-10 08:23:44 +08:00
  • 2374363484 Refactor mapPathStore: extract helpers, use for-of, remove unnecessary await, collapse else-if (S3776, S4138, S4123, S6660) 依瑪貓 2026-03-10 07:38:11 +08:00
  • 67a26ae726 Remove TODO comment from conformanceInput store (S1135) 依瑪貓 2026-03-10 07:38:06 +08:00
  • fad0b6f50e Assign getter access to variable to avoid bare expression statements (S905) 依瑪貓 2026-03-10 07:38:02 +08:00
  • cb22ce72c1 Collapse if-only-in-else to else-if (S6660) 依瑪貓 2026-03-10 07:37:57 +08:00
  • 4cd61aed0d Use childNode.remove() instead of parentNode.removeChild() (S7762) 依瑪貓 2026-03-10 07:37:50 +08:00
  • 75adbd9c6b Use Math.min to simplify ternary clamping expressions (S7766) 依瑪貓 2026-03-10 07:37:46 +08:00
  • 731649ed0a Use throw instead of return Promise.reject in async error handlers (S7746) 依瑪貓 2026-03-10 07:37:42 +08:00
  • a54b4cc7bb Use globalThis instead of window for global object access (S7764) 依瑪貓 2026-03-10 07:37:37 +08:00
  • 81df955845 Reduce cognitive complexity by extracting helper functions (S3776) 依瑪貓 2026-03-10 01:03:44 +08:00
  • 201f94e133 Use String.raw for backslash-escaped CSS selectors in Cypress tests (S7780) 依瑪貓 2026-03-10 01:02:33 +08:00
  • e522bd0796 Move functions to outer scope for clarity (S7721) 依瑪貓 2026-03-10 01:01:29 +08:00
  • 5942c9ff51 Handle caught exceptions properly in catch blocks (S2486) 依瑪貓 2026-03-10 01:00:32 +08:00
  • 804d78837b Flip negated conditions to positive for readability (S7735) 依瑪貓 2026-03-10 00:59:37 +08:00
  • 5a936cad97 Use nullish coalescing operator (S6606) and fix duplicate id (S7930) 依瑪貓 2026-03-10 00:55:19 +08:00
  • ad53494f26 Use optional chaining instead of repeated access (S6582) 依瑪貓 2026-03-10 00:53:48 +08:00
  • d4429571d5 Revert "Use structuredClone instead of JSON.parse(JSON.stringify()) (S7784)" 依瑪貓 2026-03-10 00:50:31 +08:00
  • f0065db295 Remove conditional that returns the same value on both branches (S3923) 依瑪貓 2026-03-10 00:32:50 +08:00
  • 4e5129ca13 Use Set with .has() instead of Array with .includes() (S7776) 依瑪貓 2026-03-10 00:32:30 +08:00
  • 1df984c567 Use default parameter instead of reassignment (S7760) 依瑪貓 2026-03-10 00:31:57 +08:00
  • 468fa63201 Remove zero fractions from number literals (S7748) 依瑪貓 2026-03-10 00:31:40 +08:00
  • 94e200bded Use codePointAt/fromCodePoint instead of charCodeAt/fromCharCode (S7758) 依瑪貓 2026-03-10 00:31:21 +08:00
  • 1c8ac09184 Compare with undefined directly instead of using typeof (S7741) 依瑪貓 2026-03-10 00:30:58 +08:00
  • 5d143d4cc3 Use globalThis instead of window (S7764) 依瑪貓 2026-03-10 00:30:33 +08:00
  • ebd198e28d Use String.replaceAll() instead of String.replace() with /g flag (S7781) 依瑪貓 2026-03-10 00:29:28 +08:00
  • 2b0dadedd4 Use structuredClone instead of JSON.parse(JSON.stringify()) (S7784) 依瑪貓 2026-03-10 00:28:30 +08:00
  • 3768c6e5ec Use Number.parseInt/parseFloat/isNaN/isFinite instead of globals (S7773) 依瑪貓 2026-03-10 00:26:59 +08:00
  • 12068281e9 Remove unused imports and variables (S1128, S1481, S1854) 依瑪貓 2026-03-10 00:18:03 +08:00
  • 6d13bc9eb8 Replace deprecated PrimeVue components with their successors (S1874) 依瑪貓 2026-03-10 00:14:01 +08:00
  • 716edb33b7 Initialize result to null and remove redundant await in MoreModal switchCaseData 依瑪貓 2026-03-09 23:38:13 +08:00
  • 1258829c01 Add null guard for infiniteData.length in MoreModal handleScroll 依瑪貓 2026-03-09 23:37:34 +08:00
  • a9a4b89111 Lower z-index from 2^31 overflow to reasonable 1100 依瑪貓 2026-03-09 23:23:54 +08:00
  • 2b1d60b3d1 Add null guard before spreading fetchData result in MoreModal 依瑪貓 2026-03-09 23:23:25 +08:00
  • 2f0728280c Reset loading and scroll state in fetchData catch blocks to prevent stuck UI 依瑪貓 2026-03-09 23:23:05 +08:00
  • dd5096b10b Add radix parameter to parseInt calls in DurationInput 依瑪貓 2026-03-09 21:46:20 +08:00
  • 2b5938738e Fix isSafeTagId regex to allow hyphens, matching PerformancePage 依瑪貓 2026-03-09 21:45:53 +08:00
  • bbcbdf542a Add try-catch-finally to switchCaseData to prevent loading stuck on error 依瑪貓 2026-03-09 21:45:30 +08:00
  • e155c0114f Add explicit return values in store catch blocks to prevent undefined crashes 依瑪貓 2026-03-09 21:45:02 +08:00
  • e5b40605ec Add null guards for ref(null) stat data in SidebarStates template and show handler 依瑪貓 2026-03-09 21:23:09 +08:00
  • 1f3a198a6d Add null guard before spreading error.response.data.detail in uploadLog 依瑪貓 2026-03-09 21:22:31 +08:00
  • 533b78a37f Use col.field instead of array index as v-for key on Column components 依瑪貓 2026-03-09 21:06:50 +08:00
  • 242c96f978 Add null checks for DOM queries in resizeLeftMask/resizeRightMask 依瑪貓 2026-03-09 21:06:17 +08:00
  • 68806aa29e Add early return guard for undefined uploadFile before accessing .size 依瑪貓 2026-03-09 21:05:53 +08:00
  • d47d03c3be Fix timeLabel regex to match decimal values like "45.5 sec" 依瑪貓 2026-03-09 21:05:27 +08:00
  • d0da9e875e Remove orphaned emitter.emit calls with no matching listener 依瑪貓 2026-03-09 20:54:10 +08:00
  • f04da6e278 Fix memory leaks from Cytoscape instances not returned/destroyed 依瑪貓 2026-03-09 20:53:25 +08:00
  • 9aa60414e7 Remove unnecessary async from 9 functions that have no await 依瑪貓 2026-03-09 20:44:37 +08:00
  • a5e0e59e0b Add division by zero guards in setLoopData and setIssueData 依瑪貓 2026-03-09 20:43:52 +08:00
  • ddec851276 Add consistent en-US locale to toLocaleString() calls 依瑪貓 2026-03-09 20:22:49 +08:00
  • 333685fb99 Initialize maxTotal/minTotal from props via watchers in DurationInput 依瑪貓 2026-03-09 20:22:02 +08:00
  • a669c8e98e Return empty array instead of undefined in mapTimestampToAxisTicksByFormat 依瑪貓 2026-03-09 19:39:43 +08:00
  • 35d5b07b07 Remove unnecessary await on non-Promise values in FunnelFilter 依瑪貓 2026-03-09 19:38:58 +08:00
  • 542b941efb Add missing padStart when clamping to min value in DurationInput 依瑪貓 2026-03-09 18:48:45 +08:00
  • 674afd769c Replace loose equality (==) with strict equality (===) for ID comparisons 依瑪貓 2026-03-09 18:48:28 +08:00
  • e5e7b8b7b6 Add division by zero guards in TraceFilter traceList and caseTotalPercent 依瑪貓 2026-03-09 18:47:47 +08:00
  • 1f603af1a9 Add division by zero guard in SidebarTraces traceList computed 依瑪貓 2026-03-09 18:47:20 +08:00
  • e52a53615f Remove unnecessary async from closeModal() 依瑪貓 2026-03-09 18:41:46 +08:00
  • 0728c9b6b5 Remove unnecessary await on toast.success() and modalStore.closeModal() 依瑪貓 2026-03-09 18:41:30 +08:00
  • 1c70c9b3af Return false instead of undefined in depthFirstSearchMatchTwoPaths bounds checks 依瑪貓 2026-03-09 18:40:54 +08:00
  • 7a1b996877 Await fetchAllFiles() in FilesPage onMounted to fix premature loading reset 依瑪貓 2026-03-09 18:40:27 +08:00
  • 07dd30dc50 Add optional chaining for uploadDetail.value.columns in submit() 依瑪貓 2026-03-09 18:33:34 +08:00
  • ba360120de Return null instead of undefined on 404 in conformance trace detail methods 依瑪貓 2026-03-09 18:33:17 +08:00
  • f69eb6ac15 Remove no-op circular watch on isSubmittedData in ConformanceSidebar 依瑪貓 2026-03-09 18:32:56 +08:00
  • 9641fd1e0e Add null/bounds guards for curButton and curPath in mapPathStore 依瑪貓 2026-03-09 18:25:49 +08:00
  • 52dab387dc Add missing return [] in filterAttrs getter when allFilterAttrs is null 依瑪貓 2026-03-09 18:25:21 +08:00
  • e6651f27ba Add null guard for valueData in AttributesFilter computed properties 依瑪貓 2026-03-09 18:12:46 +08:00
  • 75b3a9c782 Remove unused myPiniaPlugin.ts with debug console.log calls 依瑪貓 2026-03-09 18:05:08 +08:00
  • 86e08b7146 Fix .toFixed() string-to-number comparison by wrapping with Number() 依瑪貓 2026-03-09 18:05:01 +08:00
  • b6499020c6 Add division by zero guards in traceList computed and conformance rate 依瑪貓 2026-03-09 18:04:51 +08:00
  • d3bba9d1a2 Add emitter.off cleanup in onBeforeUnmount for 10 components 依瑪貓 2026-03-09 18:04:43 +08:00
  • b023d28b74 Add array bounds check in compareSubmit before accessing drag data 依瑪貓 2026-03-09 18:04:33 +08:00
  • 8747421901 Replace toLocaleLowerCase with toLowerCase for ASCII comparisons 依瑪貓 2026-03-09 17:51:46 +08:00
  • 7e09b21f2e Add fallback for undefined ratio in TraceFilter chart config 依瑪貓 2026-03-09 17:51:45 +08:00
  • 2349554a26 Track and clear setTimeout in ConformanceSidebar watch on unmount 依瑪貓 2026-03-09 17:51:44 +08:00
  • 957f875377 Destroy Chart.js instance on unmount in TimeframesFilter 依瑪貓 2026-03-09 17:51:43 +08:00
  • 0f09a723a2 Clean up emitter listeners and destroy Cytoscape instance on unmount 依瑪貓 2026-03-09 17:51:41 +08:00
  • e5ddd8c0bd Remove unnecessary try-catch re-throw in refreshToken 依瑪貓 2026-03-09 17:23:34 +08:00
  • 904749d1fa Remove duplicate sidebarState assignments in sidebar watchers 依瑪貓 2026-03-09 17:23:33 +08:00
  • 2e914aa853 Fix setTimeout losing this context by using arrow function 依瑪貓 2026-03-09 17:23:32 +08:00