Initial commit — Performance West telecom compliance platform
Includes: API (Express/TypeScript), Astro site, Python workers, document generators, FCC compliance tools, Canada CRTC formation, Ansible infrastructure, and deployment scripts. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
After Width: | Height: | Size: 278 KiB |
|
After Width: | Height: | Size: 209 KiB |
|
After Width: | Height: | Size: 320 KiB |
|
After Width: | Height: | Size: 199 KiB |
|
After Width: | Height: | Size: 269 KiB |
|
After Width: | Height: | Size: 265 KiB |
|
After Width: | Height: | Size: 266 KiB |
|
After Width: | Height: | Size: 266 KiB |
70
scripts/tests/runs/numbered_20260401_140516/results.json
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
[
|
||||
{
|
||||
"step": "01_load_order_page",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/01_load_order_page_20260401_140404_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.68
|
||||
},
|
||||
{
|
||||
"step": "02_company_type",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/02_company_type_20260401_140406_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.84
|
||||
},
|
||||
{
|
||||
"step": "03_director_info",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/03_director_info_20260401_140407_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.83
|
||||
},
|
||||
{
|
||||
"step": "04_telecom_details",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/04_telecom_details_20260401_140409_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 0.97
|
||||
},
|
||||
{
|
||||
"step": "05_identity_verification",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/05_identity_verification_20260401_140409_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.02
|
||||
},
|
||||
{
|
||||
"step": "06_review_and_submit",
|
||||
"success": false,
|
||||
"attempts": 3,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140446_fail_0.png",
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140501_fail_1.png",
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140515_fail_2.png"
|
||||
],
|
||||
"error": "Locator.click: Timeout 10000ms exceeded.\nCall log:\n - waiting for locator(\"#btn-next\")\n - locator resolved to <button disabled type=\"button\" id=\"btn-next\" class=\"ml-auto inline-flex items-center gap-1.5 px-6 py-2.5 rounded-lg bg-pw-700 text-white text-sm font-medium hover:bg-pw-800 focus:outline-none focus:ring-2 focus:ring-pw-500 focus:ring-offset-2 transition-colors disabled:opacity-50 disabled:cursor-not-allowed\">Submitting...</button>\n - attempting click action\n 2 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 20ms\n 2 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 100ms\n 19 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 500ms\n",
|
||||
"duration_s": 65.54
|
||||
}
|
||||
]
|
||||
|
After Width: | Height: | Size: 278 KiB |
|
After Width: | Height: | Size: 209 KiB |
|
After Width: | Height: | Size: 320 KiB |
|
After Width: | Height: | Size: 199 KiB |
|
After Width: | Height: | Size: 269 KiB |
|
After Width: | Height: | Size: 265 KiB |
|
After Width: | Height: | Size: 266 KiB |
|
After Width: | Height: | Size: 266 KiB |
70
scripts/tests/runs/numbered_20260401_140621/results.json
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
[
|
||||
{
|
||||
"step": "01_load_order_page",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/01_load_order_page_20260401_140509_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.56
|
||||
},
|
||||
{
|
||||
"step": "02_company_type",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/02_company_type_20260401_140511_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.85
|
||||
},
|
||||
{
|
||||
"step": "03_director_info",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/03_director_info_20260401_140513_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.81
|
||||
},
|
||||
{
|
||||
"step": "04_telecom_details",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/04_telecom_details_20260401_140514_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 0.99
|
||||
},
|
||||
{
|
||||
"step": "05_identity_verification",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/05_identity_verification_20260401_140515_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.03
|
||||
},
|
||||
{
|
||||
"step": "06_review_and_submit",
|
||||
"success": false,
|
||||
"attempts": 3,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140552_fail_0.png",
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140606_fail_1.png",
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140620_fail_2.png"
|
||||
],
|
||||
"error": "Locator.click: Timeout 10000ms exceeded.\nCall log:\n - waiting for locator(\"#btn-next\")\n - locator resolved to <button disabled type=\"button\" id=\"btn-next\" class=\"ml-auto inline-flex items-center gap-1.5 px-6 py-2.5 rounded-lg bg-pw-700 text-white text-sm font-medium hover:bg-pw-800 focus:outline-none focus:ring-2 focus:ring-pw-500 focus:ring-offset-2 transition-colors disabled:opacity-50 disabled:cursor-not-allowed\">Submitting...</button>\n - attempting click action\n 2 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 20ms\n 2 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 100ms\n 19 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 500ms\n",
|
||||
"duration_s": 65.69
|
||||
}
|
||||
]
|
||||
|
After Width: | Height: | Size: 278 KiB |
|
After Width: | Height: | Size: 209 KiB |
|
After Width: | Height: | Size: 320 KiB |
|
After Width: | Height: | Size: 199 KiB |
|
After Width: | Height: | Size: 269 KiB |
|
After Width: | Height: | Size: 265 KiB |
|
After Width: | Height: | Size: 266 KiB |
|
After Width: | Height: | Size: 266 KiB |
70
scripts/tests/runs/numbered_20260401_140745/results.json
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
[
|
||||
{
|
||||
"step": "01_load_order_page",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/01_load_order_page_20260401_140633_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.61
|
||||
},
|
||||
{
|
||||
"step": "02_company_type",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/02_company_type_20260401_140635_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.79
|
||||
},
|
||||
{
|
||||
"step": "03_director_info",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/03_director_info_20260401_140637_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.82
|
||||
},
|
||||
{
|
||||
"step": "04_telecom_details",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/04_telecom_details_20260401_140638_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.0
|
||||
},
|
||||
{
|
||||
"step": "05_identity_verification",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/05_identity_verification_20260401_140639_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.0
|
||||
},
|
||||
{
|
||||
"step": "06_review_and_submit",
|
||||
"success": false,
|
||||
"attempts": 3,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140715_fail_0.png",
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140730_fail_1.png",
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140744_fail_2.png"
|
||||
],
|
||||
"error": "Locator.click: Timeout 10000ms exceeded.\nCall log:\n - waiting for locator(\"#btn-next\")\n - locator resolved to <button disabled type=\"button\" id=\"btn-next\" class=\"ml-auto inline-flex items-center gap-1.5 px-6 py-2.5 rounded-lg bg-pw-700 text-white text-sm font-medium hover:bg-pw-800 focus:outline-none focus:ring-2 focus:ring-pw-500 focus:ring-offset-2 transition-colors disabled:opacity-50 disabled:cursor-not-allowed\">Submitting...</button>\n - attempting click action\n 2 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 20ms\n 2 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 100ms\n 19 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 500ms\n",
|
||||
"duration_s": 65.02
|
||||
}
|
||||
]
|
||||
|
After Width: | Height: | Size: 5.7 KiB |
|
After Width: | Height: | Size: 278 KiB |
|
After Width: | Height: | Size: 209 KiB |
|
After Width: | Height: | Size: 320 KiB |
|
After Width: | Height: | Size: 199 KiB |
|
After Width: | Height: | Size: 269 KiB |
|
After Width: | Height: | Size: 265 KiB |
|
After Width: | Height: | Size: 265 KiB |
|
After Width: | Height: | Size: 265 KiB |
71
scripts/tests/runs/numbered_20260401_140928/results.json
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
[
|
||||
{
|
||||
"step": "01_load_order_page",
|
||||
"success": true,
|
||||
"attempts": 2,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/01_load_order_page_20260401_140812_fail_0.png",
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/01_load_order_page_20260401_140817_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 34.88
|
||||
},
|
||||
{
|
||||
"step": "02_company_type",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/02_company_type_20260401_140819_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.84
|
||||
},
|
||||
{
|
||||
"step": "03_director_info",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/03_director_info_20260401_140820_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.83
|
||||
},
|
||||
{
|
||||
"step": "04_telecom_details",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/04_telecom_details_20260401_140821_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.01
|
||||
},
|
||||
{
|
||||
"step": "05_identity_verification",
|
||||
"success": true,
|
||||
"attempts": 1,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/05_identity_verification_20260401_140822_pass.png"
|
||||
],
|
||||
"error": "",
|
||||
"duration_s": 1.0
|
||||
},
|
||||
{
|
||||
"step": "06_review_and_submit",
|
||||
"success": false,
|
||||
"attempts": 3,
|
||||
"ai_corrections": [],
|
||||
"screenshots": [
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140859_fail_0.png",
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140913_fail_1.png",
|
||||
"/home/justin/projects/performancewest-new-site/scripts/tests/screenshots/06_review_and_submit_20260401_140927_fail_2.png"
|
||||
],
|
||||
"error": "Locator.click: Timeout 10000ms exceeded.\nCall log:\n - waiting for locator(\"#btn-next\")\n - locator resolved to <button disabled type=\"button\" id=\"btn-next\" class=\"ml-auto inline-flex items-center gap-1.5 px-6 py-2.5 rounded-lg bg-pw-700 text-white text-sm font-medium hover:bg-pw-800 focus:outline-none focus:ring-2 focus:ring-pw-500 focus:ring-offset-2 transition-colors disabled:opacity-50 disabled:cursor-not-allowed\">Submitting...</button>\n - attempting click action\n 2 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 20ms\n 2 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 100ms\n 19 \u00d7 waiting for element to be visible, enabled and stable\n - element is not enabled\n - retrying click action\n - waiting 500ms\n",
|
||||
"duration_s": 64.88
|
||||
}
|
||||
]
|
||||