@arcadialdev/arcality 2.4.29 → 2.4.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/package.json +3 -4
  2. package/src/arcalityClient.mjs +2 -1
  3. package/.agents/skills/e2e-testing-expert/SKILL.md +0 -28
  4. package/.agents/skills/frontend-design/LICENSE.txt +0 -177
  5. package/.agents/skills/frontend-design/SKILL.md +0 -42
  6. package/.agents/skills/nodejs-backend-patterns/SKILL.md +0 -639
  7. package/.agents/skills/nodejs-backend-patterns/references/advanced-patterns.md +0 -430
  8. package/.agents/skills/playwright-best-practices/LICENSE.md +0 -7
  9. package/.agents/skills/playwright-best-practices/README.md +0 -147
  10. package/.agents/skills/playwright-best-practices/SKILL.md +0 -303
  11. package/.agents/skills/playwright-best-practices/advanced/authentication-flows.md +0 -360
  12. package/.agents/skills/playwright-best-practices/advanced/authentication.md +0 -871
  13. package/.agents/skills/playwright-best-practices/advanced/clock-mocking.md +0 -364
  14. package/.agents/skills/playwright-best-practices/advanced/mobile-testing.md +0 -409
  15. package/.agents/skills/playwright-best-practices/advanced/multi-context.md +0 -288
  16. package/.agents/skills/playwright-best-practices/advanced/multi-user.md +0 -393
  17. package/.agents/skills/playwright-best-practices/advanced/network-advanced.md +0 -452
  18. package/.agents/skills/playwright-best-practices/advanced/third-party.md +0 -464
  19. package/.agents/skills/playwright-best-practices/architecture/pom-vs-fixtures.md +0 -363
  20. package/.agents/skills/playwright-best-practices/architecture/test-architecture.md +0 -369
  21. package/.agents/skills/playwright-best-practices/architecture/when-to-mock.md +0 -383
  22. package/.agents/skills/playwright-best-practices/browser-apis/browser-apis.md +0 -391
  23. package/.agents/skills/playwright-best-practices/browser-apis/iframes.md +0 -403
  24. package/.agents/skills/playwright-best-practices/browser-apis/service-workers.md +0 -504
  25. package/.agents/skills/playwright-best-practices/browser-apis/websockets.md +0 -403
  26. package/.agents/skills/playwright-best-practices/core/annotations.md +0 -424
  27. package/.agents/skills/playwright-best-practices/core/assertions-waiting.md +0 -361
  28. package/.agents/skills/playwright-best-practices/core/configuration.md +0 -452
  29. package/.agents/skills/playwright-best-practices/core/fixtures-hooks.md +0 -417
  30. package/.agents/skills/playwright-best-practices/core/global-setup.md +0 -434
  31. package/.agents/skills/playwright-best-practices/core/locators.md +0 -242
  32. package/.agents/skills/playwright-best-practices/core/page-object-model.md +0 -315
  33. package/.agents/skills/playwright-best-practices/core/projects-dependencies.md +0 -453
  34. package/.agents/skills/playwright-best-practices/core/test-data.md +0 -492
  35. package/.agents/skills/playwright-best-practices/core/test-suite-structure.md +0 -361
  36. package/.agents/skills/playwright-best-practices/core/test-tags.md +0 -298
  37. package/.agents/skills/playwright-best-practices/debugging/console-errors.md +0 -420
  38. package/.agents/skills/playwright-best-practices/debugging/debugging.md +0 -504
  39. package/.agents/skills/playwright-best-practices/debugging/error-testing.md +0 -360
  40. package/.agents/skills/playwright-best-practices/debugging/flaky-tests.md +0 -496
  41. package/.agents/skills/playwright-best-practices/frameworks/angular.md +0 -530
  42. package/.agents/skills/playwright-best-practices/frameworks/nextjs.md +0 -469
  43. package/.agents/skills/playwright-best-practices/frameworks/react.md +0 -531
  44. package/.agents/skills/playwright-best-practices/frameworks/vue.md +0 -574
  45. package/.agents/skills/playwright-best-practices/infrastructure-ci-cd/ci-cd.md +0 -468
  46. package/.agents/skills/playwright-best-practices/infrastructure-ci-cd/docker.md +0 -283
  47. package/.agents/skills/playwright-best-practices/infrastructure-ci-cd/github-actions.md +0 -546
  48. package/.agents/skills/playwright-best-practices/infrastructure-ci-cd/gitlab.md +0 -397
  49. package/.agents/skills/playwright-best-practices/infrastructure-ci-cd/other-providers.md +0 -521
  50. package/.agents/skills/playwright-best-practices/infrastructure-ci-cd/parallel-sharding.md +0 -371
  51. package/.agents/skills/playwright-best-practices/infrastructure-ci-cd/performance.md +0 -453
  52. package/.agents/skills/playwright-best-practices/infrastructure-ci-cd/reporting.md +0 -424
  53. package/.agents/skills/playwright-best-practices/infrastructure-ci-cd/test-coverage.md +0 -497
  54. package/.agents/skills/playwright-best-practices/testing-patterns/accessibility.md +0 -359
  55. package/.agents/skills/playwright-best-practices/testing-patterns/api-testing.md +0 -719
  56. package/.agents/skills/playwright-best-practices/testing-patterns/browser-extensions.md +0 -506
  57. package/.agents/skills/playwright-best-practices/testing-patterns/canvas-webgl.md +0 -493
  58. package/.agents/skills/playwright-best-practices/testing-patterns/component-testing.md +0 -500
  59. package/.agents/skills/playwright-best-practices/testing-patterns/drag-drop.md +0 -576
  60. package/.agents/skills/playwright-best-practices/testing-patterns/electron.md +0 -509
  61. package/.agents/skills/playwright-best-practices/testing-patterns/file-operations.md +0 -377
  62. package/.agents/skills/playwright-best-practices/testing-patterns/file-upload-download.md +0 -562
  63. package/.agents/skills/playwright-best-practices/testing-patterns/forms-validation.md +0 -561
  64. package/.agents/skills/playwright-best-practices/testing-patterns/graphql-testing.md +0 -331
  65. package/.agents/skills/playwright-best-practices/testing-patterns/i18n.md +0 -508
  66. package/.agents/skills/playwright-best-practices/testing-patterns/performance-testing.md +0 -476
  67. package/.agents/skills/playwright-best-practices/testing-patterns/security-testing.md +0 -430
  68. package/.agents/skills/playwright-best-practices/testing-patterns/visual-regression.md +0 -634
  69. package/.agents/skills/security-qa/SKILL.md +0 -254
  70. package/public/ArcalityImagen.png +0 -0
  71. package/public/logo-arcadial-blanco.png +0 -0
  72. package/public/logo.png +0 -0
  73. package/tests/_helpers/ArcalityReporter.ts +0 -733
  74. package/tests/_helpers/agentic-runner.spec.ts +0 -783
  75. package/tests/_helpers/ai-agent-helper.ts +0 -1660
  76. package/tests/_helpers/discover-view.spec.ts +0 -238
  77. package/tests/_helpers/extract-view.spec.ts +0 -118
  78. package/tests/_helpers/qa-security-tools.ts +0 -265
  79. package/tests/_helpers/qa-tools.ts +0 -333
  80. package/tests/_helpers/smart-action.spec.ts +0 -1458
@@ -1,283 +0,0 @@
1
- # Container-Based Testing
2
-
3
- ## Table of Contents
4
-
5
- 1. [Patterns](#patterns)
6
- 2. [Decision Guide](#decision-guide)
7
- 3. [Anti-Patterns](#anti-patterns)
8
- 4. [Troubleshooting](#troubleshooting)
9
-
10
- > **When to use**: Running tests in containers for reproducible environments, CI pipelines, or consistent browser versions across team machines.
11
-
12
- ## Patterns
13
-
14
- ### Official Image Usage
15
-
16
- Run tests without building a custom image:
17
-
18
- ```bash
19
- docker run --rm \
20
- -v $(pwd):/app \
21
- -w /app \
22
- -e CI=true \
23
- -e BASE_URL=http://host.docker.internal:3000 \
24
- mcr.microsoft.com/playwright:v1.48.0-noble \
25
- bash -c "npm ci && npx playwright test"
26
- ```
27
-
28
- Extract reports with bind mounts:
29
-
30
- ```bash
31
- docker run --rm \
32
- -v $(pwd):/app \
33
- -v $(pwd)/playwright-report:/app/playwright-report \
34
- -v $(pwd)/test-results:/app/test-results \
35
- -w /app \
36
- mcr.microsoft.com/playwright:v1.48.0-noble \
37
- bash -c "npm ci && npx playwright test"
38
- ```
39
-
40
- ### Custom Dockerfile
41
-
42
- Build a custom image when you need additional dependencies or pre-installed packages:
43
-
44
- ```dockerfile
45
- FROM mcr.microsoft.com/playwright:v1.48.0-noble
46
-
47
- WORKDIR /app
48
-
49
- COPY package.json package-lock.json ./
50
- RUN npm ci
51
-
52
- COPY . .
53
-
54
- CMD ["npx", "playwright", "test"]
55
- ```
56
-
57
- Chromium-only slim image:
58
-
59
- ```dockerfile
60
- FROM node:latest-slim
61
-
62
- RUN npx playwright install --with-deps chromium
63
-
64
- WORKDIR /app
65
- COPY package.json package-lock.json ./
66
- RUN npm ci
67
- COPY . .
68
-
69
- CMD ["npx", "playwright", "test", "--project=chromium"]
70
- ```
71
-
72
- ### Docker Compose Stack
73
-
74
- Full application stack with database, cache, and test runner:
75
-
76
- ```yaml
77
- services:
78
- app:
79
- build: .
80
- ports:
81
- - "3000:3000"
82
- environment:
83
- - NODE_ENV=test
84
- - DATABASE_URL=postgresql://postgres:postgres@db:5432/test
85
- depends_on:
86
- db:
87
- condition: service_healthy
88
-
89
- db:
90
- image: postgres:latest-alpine
91
- environment:
92
- POSTGRES_USER: postgres
93
- POSTGRES_PASSWORD: postgres
94
- POSTGRES_DB: test
95
- healthcheck:
96
- test: ["CMD-SHELL", "pg_isready -U postgres"]
97
- interval: 5s
98
- timeout: 5s
99
- retries: 5
100
- tmpfs:
101
- - /var/lib/postgresql/data
102
-
103
- e2e:
104
- image: mcr.microsoft.com/playwright:v1.48.0-noble
105
- working_dir: /app
106
- volumes:
107
- - .:/app
108
- - /app/node_modules
109
- environment:
110
- - CI=true
111
- - BASE_URL=http://app:3000
112
- depends_on:
113
- - app
114
- command: bash -c "npm ci && npx playwright test"
115
- profiles:
116
- - test
117
- ```
118
-
119
- Run commands:
120
-
121
- ```bash
122
- docker compose --profile test up --abort-on-container-exit --exit-code-from e2e
123
-
124
- docker compose --profile test down -v
125
- ```
126
-
127
- ### CI Container Jobs
128
-
129
- **GitHub Actions:**
130
-
131
- ```yaml
132
- jobs:
133
- test:
134
- runs-on: ubuntu-latest
135
- container:
136
- image: mcr.microsoft.com/playwright:v1.48.0-noble
137
- steps:
138
- - uses: actions/checkout@v4
139
- - run: npm ci
140
- - run: npx playwright test
141
- env:
142
- HOME: /root
143
- ```
144
-
145
- **GitLab CI:**
146
-
147
- ```yaml
148
- test:
149
- image: mcr.microsoft.com/playwright:v1.48.0-noble
150
- script:
151
- - npm ci
152
- - npx playwright test
153
- ```
154
-
155
- **Jenkins:**
156
-
157
- ```groovy
158
- pipeline {
159
- agent {
160
- docker {
161
- image 'mcr.microsoft.com/playwright:v1.48.0-noble'
162
- args '-u root'
163
- }
164
- }
165
- stages {
166
- stage('Test') {
167
- steps {
168
- sh 'npm ci'
169
- sh 'npx playwright test'
170
- }
171
- }
172
- }
173
- }
174
- ```
175
-
176
- ### Dev Container Setup
177
-
178
- VS Code Dev Container or GitHub Codespaces configuration:
179
-
180
- ```json
181
- {
182
- "name": "Playwright Dev",
183
- "image": "mcr.microsoft.com/playwright:v1.48.0-noble",
184
- "features": {
185
- "ghcr.io/devcontainers/features/node:latest": {
186
- "version": "20"
187
- }
188
- },
189
- "postCreateCommand": "npm ci",
190
- "customizations": {
191
- "vscode": {
192
- "extensions": ["ms-playwright.playwright"]
193
- }
194
- },
195
- "forwardPorts": [3000, 9323],
196
- "remoteUser": "root"
197
- }
198
- ```
199
-
200
- ## Decision Guide
201
-
202
- | Scenario | Approach |
203
- |---|---|
204
- | Simple CI pipeline | Official image as CI container |
205
- | Tests need database + cache | Docker Compose with app, db, e2e services |
206
- | Team needs identical environments | Dev Container or custom Dockerfile |
207
- | Only testing Chromium | Slim image with `install --with-deps chromium` |
208
- | Cross-browser testing | Official image (all browsers pre-installed) |
209
- | Local development | Run directly on host for faster iteration |
210
-
211
- ## Anti-Patterns
212
-
213
- | Anti-Pattern | Problem | Solution |
214
- |---|---|---|
215
- | Installing browsers at runtime | Wastes 60-90 seconds per run | Use official image or bake browsers into custom image |
216
- | Running as non-root without sandbox config | Chromium sandbox permission errors | Run as root or disable sandbox |
217
- | Bind-mounting `node_modules` from host | Platform-specific binary crashes | Use anonymous volume: `-v /app/node_modules` |
218
- | No health checks on dependent services | Tests start before database ready | Add `healthcheck` with `depends_on: condition: service_healthy` |
219
- | Building application inside Playwright container | Large image, slow builds | Separate app and e2e containers |
220
-
221
- ## Troubleshooting
222
-
223
- ### "browserType.launch: Executable doesn't exist"
224
-
225
- Playwright version mismatch with Docker image. Ensure `@playwright/test` version matches image tag:
226
-
227
- ```bash
228
- npm ls @playwright/test
229
- docker pull mcr.microsoft.com/playwright:v<matching-version>-noble
230
- ```
231
-
232
- ### "net::ERR_CONNECTION_REFUSED" in docker-compose
233
-
234
- Tests trying to reach `localhost` instead of service name. Configure `baseURL`:
235
-
236
- ```typescript
237
- import { defineConfig } from '@playwright/test';
238
-
239
- export default defineConfig({
240
- use: {
241
- baseURL: process.env.BASE_URL || 'http://localhost:3000',
242
- },
243
- });
244
- ```
245
-
246
- ```yaml
247
- e2e:
248
- environment:
249
- - BASE_URL=http://app:3000
250
- ```
251
-
252
- ### Permission denied on mounted volumes
253
-
254
- Match user IDs or run as root:
255
-
256
- ```bash
257
- docker run --rm -u $(id -u):$(id -g) \
258
- -v $(pwd):/app -w /app \
259
- mcr.microsoft.com/playwright:v1.48.0-noble \
260
- npx playwright test
261
- ```
262
-
263
- ### Slow container tests on macOS/Windows
264
-
265
- Docker Desktop I/O overhead. Copy files instead of mounting:
266
-
267
- ```dockerfile
268
- FROM mcr.microsoft.com/playwright:v1.48.0-noble
269
- WORKDIR /app
270
- COPY . .
271
- RUN npm ci
272
- CMD ["npx", "playwright", "test"]
273
- ```
274
-
275
- Or use delegated mount:
276
-
277
- ```bash
278
- docker run --rm \
279
- -v $(pwd):/app:delegated \
280
- -w /app \
281
- mcr.microsoft.com/playwright:v1.48.0-noble \
282
- bash -c "npm ci && npx playwright test"
283
- ```