Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
b92fa8c
fix(security): add same-origin check to handleRedirectIfPresent
nicdavidson Apr 3, 2026
a2ee3dd
Security: update npm dependencies to eliminate critical CVEs
nicdavidson Apr 10, 2026
dfcf638
add UI elements needed for lookup picker in custom mcp tools, add err…
codyllord Apr 10, 2026
569506c
Merge pull request #482 from dreamfactorysoftware/feature/custom-tool…
codyllord Apr 13, 2026
ba223a3
add guard to interrupt saving mcp service if custom mcp tools are not…
codyllord Apr 13, 2026
faa460b
Merge pull request #483 from dreamfactorysoftware/feature/custom-tool…
codyllord Apr 13, 2026
6fbb988
fix: permit top-level await in ace JS lint worker under module:true
codyllord Apr 15, 2026
0056184
fix custom mcp tools json/js linting errors in line
codyllord Apr 15, 2026
c8f3c25
add ui elements for github integration for df-mcp
codyllord Apr 16, 2026
6a6c6b8
Merge pull request #484 from dreamfactorysoftware/feature/add-github-…
codyllord Apr 16, 2026
ebcbd62
perf: fetch event-script services on open, events on service select
nicdavidson Apr 20, 2026
7d5461c
update dist
nicdavidson Apr 20, 2026
592631f
fix(loading-spinner): stuck spinner after rapid concurrent requests
nicdavidson Apr 21, 2026
b9b828c
fix(event-scripts): Script Type dropdown empty for services with unde…
nicdavidson Apr 22, 2026
7f0747b
fix(case-interceptor): exempt /system/event responses from snake→camel
nicdavidson Apr 22, 2026
84cad42
fix(event-scripts): wire scriptMethod selection + fallback on empty name
nicdavidson Apr 22, 2026
cc7feb4
test(ci): wire jest into CI with regression specs for 2026-04-22 fixes
nicdavidson Apr 22, 2026
3b99c1a
test(e2e): scaffold Playwright with smoke specs + CI workflow
nicdavidson Apr 22, 2026
be00ec4
ci: drop pre-existing lint gate + scope E2E to manual/nightly only
nicdavidson Apr 22, 2026
3f8c62a
test(e2e): add discovery spec — reports nav automation limits
nicdavidson Apr 22, 2026
ce33e8e
test(ui): add automation affordances + rerun discovery against them
nicdavidson Apr 22, 2026
3bd9cf4
Merge pull request #481 from dreamfactorysoftware/2026-04-security-scan
thekevinm Apr 22, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: E2E (Playwright)

# Runs only on-demand for now. Spinning a full DreamFactory stack in GH
# Actions requires a shared df-docker image + secrets wiring that doesn't
# exist yet; wiring it up is tracked as a follow-up. Until then this job
# is driven by manual dispatch (pass a target URL) or a nightly cron
# against a long-running instance (URL in the E2E_NIGHTLY_URL secret).
on:
schedule:
- cron: '0 7 * * *'
workflow_dispatch:
inputs:
target_url:
description: 'Base URL to run E2E against (e.g. http://crucible.example:8080)'
required: true

jobs:
smoke:
runs-on: ubuntu-latest
timeout-minutes: 20

steps:
- uses: actions/checkout@v4

- uses: actions/setup-node@v4
with:
node-version: 22.x
cache: 'npm'

- run: npm ci

- name: Install Playwright Browsers
run: npx playwright install chromium --with-deps

- name: Resolve target URL
id: target
run: |
if [ -n "${{ github.event.inputs.target_url }}" ]; then
echo "url=${{ github.event.inputs.target_url }}" >> "$GITHUB_OUTPUT"
else
echo "url=${{ secrets.E2E_NIGHTLY_URL }}" >> "$GITHUB_OUTPUT"
fi

- name: Run Playwright tests
env:
PLAYWRIGHT_BASE_URL: ${{ steps.target.outputs.url }}
DF_ADMIN_EMAIL: ${{ secrets.E2E_ADMIN_EMAIL || 'admin@dreamfactory.com' }}
DF_ADMIN_PASSWORD: ${{ secrets.E2E_ADMIN_PASSWORD || 'passwordpassword' }}
run: npm run e2e

- uses: actions/upload-artifact@v4
if: always()
with:
name: playwright-report
path: playwright-report/
retention-days: 7
4 changes: 4 additions & 0 deletions .github/workflows/node.js.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,8 @@ jobs:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- run: npm ci
# `test:ci` runs only the specs that currently pass. The rest are
# quarantined by jest.config.ci.js until the @ngneat/transloco ESM
# migration is completed. New tests should be added to that config.
- run: npm run test:ci
- run: npm run build --if-present
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,9 @@ testem.log
Thumbs.db

.config/

# Playwright
/test-results/
/playwright-report/
/blob-report/
/playwright/.cache/
1 change: 1 addition & 0 deletions dist/1064.51f76a90b9f6bf10.js

Large diffs are not rendered by default.

1 change: 0 additions & 1 deletion dist/1155.526a96d6c4d9e3fe.js

This file was deleted.

1 change: 1 addition & 0 deletions dist/1253.a8dc4836a9b9d99d.js

Large diffs are not rendered by default.

1 change: 0 additions & 1 deletion dist/1269.3d94950afc54efb1.js

This file was deleted.

1 change: 0 additions & 1 deletion dist/1326.fcc2c4ff0c25032f.js

This file was deleted.

1 change: 0 additions & 1 deletion dist/1361.478caeb5e427cd4a.js

This file was deleted.

Loading
Loading