@networkpro/web 1.25.7 → 1.25.9

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.
@@ -0,0 +1,27 @@
1
+ # .github/workflows/prevent-audit-merge.yml
2
+ #
3
+ # Copyright © 2025 Network Pro Strategies (Network Pro™)
4
+ # SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
+ # This file is part of Network Pro
6
+
7
+ name: Prevent audit merges into master
8
+
9
+ on:
10
+ pull_request:
11
+ branches: [master]
12
+
13
+ permissions:
14
+ contents: read
15
+
16
+ jobs:
17
+ check-branch:
18
+ runs-on: ubuntu-24.04
19
+ steps:
20
+ - name: Fail if source is audit-netlify
21
+ run: |
22
+ SOURCE_BRANCH="${{ github.event.pull_request.head.ref }}"
23
+ echo "🔍 Checking source branch: $SOURCE_BRANCH"
24
+ if [[ "$SOURCE_BRANCH" == "audit-netlify" ]]; then
25
+ echo "❌ Merge from 'audit-netlify' to 'master' is prohibited."
26
+ exit 1
27
+ fi
@@ -45,7 +45,7 @@ jobs:
45
45
  echo "📄 Raw API response:"
46
46
  cat "$response_file"
47
47
 
48
- if [ "$http_code" -ne 201 ]; then
48
+ if [ "$http_code" -ne 201 ] && [ "$http_code" -ne 200 ]; then
49
49
  echo "::error ::Unexpected HTTP response from Probely API: $http_code"
50
50
  exit 1
51
51
  fi
@@ -60,7 +60,8 @@ jobs:
60
60
  scan_id=$(jq -r '.id // empty' "$response_file")
61
61
 
62
62
  if [ -z "$scan_id" ]; then
63
- echo "::error ::Scan ID not found in response. Check API key, target ID, or base URL."
63
+ echo "::error ::Scan ID not found in response. Response content:"
64
+ cat "$response_file"
64
65
  exit 1
65
66
  fi
66
67
 
@@ -94,7 +95,7 @@ jobs:
94
95
  exit 1
95
96
  fi
96
97
 
97
- - name: Download Probely HTML Report
98
+ - name: Download Probely CSV Report
98
99
  run: |
99
100
  echo "📥 Downloading report for scan $scan_id ..."
100
101
  curl -s "$API_BASE/targets/$TARGET_ID/scans/$scan_id/endpoints/" \
@@ -4,7 +4,7 @@
4
4
  # has completed successfully.
5
5
  #
6
6
  # Version: v1.0.0
7
- # Maintainer: Scott Lopez <support@neteng.pro>
7
+ # Maintainer: Scott Lopez <support@netwk.pro>
8
8
  # Usage: Copy to `.github/workflows/check-codeql.yml` in your repo or reference directly if shared centrally.
9
9
  #
10
10
  # Copyright © 2025 Network Pro Strategies (Network Pro™)
@@ -4,7 +4,7 @@
4
4
  # GPR.
5
5
  #
6
6
  # Version: v1.1.0
7
- # Maintainer: Scott Lopez <support@neteng.pro>
7
+ # Maintainer: Scott Lopez <support@netwk.pro>
8
8
  # Usage: Copy to `.github/workflows/publish.yml` in your repo or reference
9
9
  # directly if shared centrally.
10
10
  #
package/.stylelintignore CHANGED
@@ -4,6 +4,9 @@
4
4
  # SPDX-License-Identifier: CC-BY-4.0 OR GPL-3.0-or-later
5
5
  # This file is part of Network Pro.
6
6
 
7
+ # Netlify
8
+ .netlify
9
+
7
10
  # Report files and test results
8
11
  playwright-report
9
12
  test-results
package/CHANGELOG.md CHANGED
@@ -22,6 +22,63 @@ This project attempts to follow [Keep a Changelog](https://keepachangelog.com/en
22
22
 
23
23
  ---
24
24
 
25
+ ## [1.25.9] - 2025-11-11
26
+
27
+ ### Changed
28
+
29
+ - Updated the support email address to `support@netwk.pro` in the following files:
30
+ - `README.md`
31
+ - `check-codeql.template.yml`
32
+ - `publish.template.yml`
33
+ - `contact.vcf`
34
+ - Modified `eslint.config.mjs` to include `.cjs` files when linting JavaScript.
35
+ - Bumped project version to `v1.25.9`.
36
+
37
+ ## Fixed
38
+
39
+ - Modified `.github/workflows/probely-scan.yml` to accept either a 200 or 201 response.
40
+ - Workflow was correctly triggering scan, but then failed due to receiving a 200 response rather than the 201 that was expected.
41
+
42
+ ---
43
+
44
+ ## [1.25.8] - 2025-11-11
45
+
46
+ ### Added
47
+
48
+ - 🔐 **Branch protection rules** on `master`:
49
+ - Enforced pull requests for all changes
50
+ - Blocked force pushes
51
+ - Linear history requirement
52
+ - 🚫 **CI workflow to prevent merges from `audit-netlify` to `master`**:
53
+ - PRs originating from `audit-netlify` targeting `master` are automatically rejected
54
+ - Triggered on `pull_request` events
55
+ - Uses `github.event.pull_request.head.ref` for precise branch detection
56
+ - 🚀 **Netlify CI deployment** for audit-only branch:
57
+ - Workflow `.github/workflows/deploy-audit-netlify.yml` added
58
+ - Deploys `audit-netlify` to a separate Netlify site
59
+ - Uses environmental variables to trigger `vite build --mode audit`
60
+ - 🌐 **`hooks.server.js` CSP hardening** for audit deployments:
61
+ - Probely scanner detection based on UA/IP added via `isProbelyScanner()`
62
+ - Audit-specific CSP disables analytics and CSP reporting endpoints
63
+ - Logs detailed CSP info when in `isAudit` or `isDebug` modes
64
+ - 🛡️ Middleware improvements:
65
+ - User-agent/IP fingerprinting for Probely DAST
66
+ - Added logging for audit-mode scanner matches
67
+ - 🧪 Support for per-environment `.env` files (e.g. `.env.audit`)
68
+ - 🔄 Git helper scripts:
69
+ - Added bash script to sync `audit-netlify` with latest `master`
70
+ - Supports merge conflict resolution via VS Code diff viewer
71
+
72
+ ### Changed
73
+
74
+ - Updated `.stylelintignore` to exclude `.netlify` directory
75
+ - Updated `lint:md` script to exclude the `build/` and `.netlify/` directories
76
+ - Refined `svelte.config.js` to support alternate build targets (Vercel → Netlify via adapter switch)
77
+ - Audit builds now use isolated `.env` config and a separate Netlify site token
78
+ - Bumped project version to `v1.25.8`
79
+
80
+ ---
81
+
25
82
  ## [1.25.7] - 2025-11-11
26
83
 
27
84
  ### Added
@@ -1770,7 +1827,9 @@ This enables analytics filtering and CSP hardening for the audit environment.
1770
1827
 
1771
1828
  <!-- Link references -->
1772
1829
 
1773
- [Unreleased]: https://github.com/netwk-pro/netwk-pro.github.io/compare/v1.25.7...HEAD
1830
+ [Unreleased]: https://github.com/netwk-pro/netwk-pro.github.io/compare/v1.25.9...HEAD
1831
+ [1.25.9]: https://github.com/netwk-pro/netwk-pro.github.io/releases/tag/v1.25.9
1832
+ [1.25.8]: https://github.com/netwk-pro/netwk-pro.github.io/releases/tag/v1.25.8
1774
1833
  [1.25.7]: https://github.com/netwk-pro/netwk-pro.github.io/releases/tag/v1.25.7
1775
1834
  [1.25.6]: https://github.com/netwk-pro/netwk-pro.github.io/releases/tag/v1.25.6
1776
1835
  [1.25.5]: https://github.com/netwk-pro/netwk-pro.github.io/releases/tag/v1.25.5
package/LICENSE.md CHANGED
@@ -226,7 +226,7 @@ This legal page may be updated to comply with legal or operational changes. The
226
226
  ## 14. Contact
227
227
 
228
228
  The Company may be contacted via our [Contact Form](https://netwk.pro/contact) or by email at:
229
- 📧 `support (at) neteng.pro`
229
+ 📧 `support (at) netwk.pro`
230
230
 
231
231
  <sub>[Back to top](#top)</sub>
232
232
 
package/README.md CHANGED
@@ -114,7 +114,7 @@ static/
114
114
  ├── pgp/
115
115
  │ ├── contact@s.neteng.pro.asc # Public key for secure email
116
116
  │ ├── security@s.neteng.pro.asc # Public key for security contact
117
- │ ├── support@neteng.pro.asc # Public key for general support
117
+ │ ├── support@netwk.pro.asc # Public key for general support
118
118
  └── ...
119
119
  ```
120
120
 
@@ -533,7 +533,7 @@ Source code, branding, and visual assets are subject to reuse and distribution t
533
533
 
534
534
  ## 🙋‍♂️Questions?
535
535
 
536
- Reach out via our [Contact Form](https://netwk.pro/contact), open an issue on this repo, or email us directly at `support (at) neteng.pro`.
536
+ Reach out via our [Contact Form](https://netwk.pro/contact), open an issue on this repo, or email us directly at `support (at) netwk.pro`.
537
537
 
538
538
  </section>
539
539
 
package/eslint.config.mjs CHANGED
@@ -52,7 +52,7 @@ export default [
52
52
 
53
53
  // General JavaScript/Node.js configuration
54
54
  {
55
- files: ['**/*.mjs', '**/*.js'],
55
+ files: ['**/*.mjs', '**/*.cjs', '**/*.js'],
56
56
  languageOptions: {
57
57
  globals: GLOBALS,
58
58
  ecmaVersion: 'latest',
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@networkpro/web",
3
3
  "private": false,
4
- "version": "1.25.7",
4
+ "version": "1.25.9",
5
5
  "description": "Locking Down Networks, Unlocking Confidence™ | Security, Networking, Privacy — Network Pro Strategies",
6
6
  "keywords": [
7
7
  "advisory",
@@ -70,7 +70,7 @@
70
70
  "lint:fix": "eslint . --ext .js,.cjs,.mjs,.svelte --fix",
71
71
  "lint:jsdoc": "eslint . --ext .js,.cjs,.mjs,.svelte --max-warnings=0",
72
72
  "lint:css": "stylelint \"**/*.{css,svelte}\" --ignore-path .stylelintignore",
73
- "lint:md": "npx markdownlint-cli2 \"**/*.{md,markdown}\" \"#node_modules/**\" \"#playwright-report/**\" \"#test-results/**\"",
73
+ "lint:md": "npx markdownlint-cli2 \"**/*.{md,markdown}\" \"#build/**\" \"#.netlify/**\" \"#node_modules/**\" \"#playwright-report/**\" \"#test-results/**\"",
74
74
  "format": "prettier --check .",
75
75
  "format:fix": "prettier --write .",
76
76
  "lint:all": "npm-run-all --parallel --print-label lint lint:md lint:css --sequential format",
@@ -3,7 +3,7 @@ VERSION:3.0
3
3
  FN:Scott Lopez
4
4
  N:Lopez;Scott
5
5
  TEL;TYPE=WORK,PREF=1:(623) 252-4350
6
- EMAIL;TYPE=WORK:support@neteng.pro
6
+ EMAIL;TYPE=WORK:support@netwk.pro
7
7
  EMAIL;TYPE=Secure:business@s.neteng.pro
8
8
  ADR;TYPE=WORK:;;Peoria\, AZ 85382\nUS
9
9
  ORG:Network Pro Strategies