Skip to content

Conversation

hahn-kev
Copy link
Collaborator

I started working on this with Kiro, but then ditched it as it was going in the wrong direction and creating a bunch of fluff

@hahn-kev hahn-kev marked this pull request as draft July 31, 2025 09:40
@github-actions github-actions bot added the 💻 FW Lite issues related to the fw lite application, not miniLcm or crdt related label Jul 31, 2025
Copy link

coderabbitai bot commented Jul 31, 2025

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch e2e-test-fw-lite

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

github-actions bot commented Jul 31, 2025

UI unit Tests

  1 files  ±  0   42 suites  +39   24s ⏱️ +24s
101 tests + 91   99 ✅ + 89  0 💤 ±0  2 ❌ +2 
135 runs  +125  133 ✅ +123  0 💤 ±0  2 ❌ +2 

For more details on these failures, see this check.

Results for commit e1166d3. ± Comparison against base commit 9b3e191.

This pull request removes 10 and adds 101 tests. Note that renamed tests count towards both.
src/index.test.ts ‑ password hashing > can hash a pw using sha1
src/lib/i18n/i18n.test.ts ‑ buildRegionalLocaleRegex > should find all regional locales for available locales
src/lib/i18n/i18n.test.ts ‑ pickBestLocale > should return en by default
src/lib/i18n/i18n.test.ts ‑ pickBestLocale > should return en if no user locale is provided and acceptLanguageHeader does not have any supported locales
src/lib/i18n/i18n.test.ts ‑ pickBestLocale > should return regional locale from acceptLanguageHeader if it has a higher quality rating than the regionless locale
src/lib/i18n/i18n.test.ts ‑ pickBestLocale > should return supported locale from acceptLanguageHeader with highest quality rating if no user locale is provided
src/lib/i18n/i18n.test.ts ‑ pickBestLocale > should return user locale if acceptLanguageHeader does not provide a regional/more specific locale
src/lib/i18n/i18n.test.ts ‑ pickBestLocale > should return user locale if acceptLanguageHeader does not provide a regional/more specific locale with a higher quality rating
src/lib/i18n/i18n.test.ts ‑ pickBestLocale > should return user locale if acceptLanguageHeader is not provided
src/lib/user.test.ts ‑ jwtToUser > should convert a jwt token to a LexAuthUser
src/fw-lite-launcher.test.ts ‑ FwLiteLauncher > basic functionality > should handle shutdown when not running
src/fw-lite-launcher.test.ts ‑ FwLiteLauncher > basic functionality > should return false when not launched
src/fw-lite-launcher.test.ts ‑ FwLiteLauncher > basic functionality > should throw error if already running
src/fw-lite-launcher.test.ts ‑ FwLiteLauncher > basic functionality > should throw error if binary does not exist
src/fw-lite-launcher.test.ts ‑ FwLiteLauncher > basic functionality > should throw error when getting base URL while not running
src/fw-lite-launcher.test.ts ‑ FwLiteLauncher > configuration validation > should handle optional configuration parameters
src/fw-lite-launcher.test.ts ‑ FwLiteLauncher > configuration validation > should validate launch configuration parameters
src/fw-lite-launcher.test.ts ‑ FwLiteLauncher > launcher state management > should maintain proper state transitions
src/fw-lite-launcher.test.ts ‑ FwLiteLauncher > port finding functionality > should be able to find available ports
src/fw-lite-launcher.test.ts ‑ FwLiteLauncher > real FW Lite server integration > should handle multiple launch attempts gracefully
…

♻️ This comment has been updated with latest results.

Copy link

github-actions bot commented Jul 31, 2025

C# Unit Tests

130 tests  ±0   130 ✅ ±0   19s ⏱️ ±0s
 20 suites ±0     0 💤 ±0 
  1 files   ±0     0 ❌ ±0 

Results for commit e1166d3. ± Comparison against base commit 9b3e191.

♻️ This comment has been updated with latest results.

Copy link

argos-ci bot commented Aug 1, 2025

The latest updates on your projects. Learn more about Argos notifications ↗︎

Build Status Details Updated (UTC)
default (Inspect) ✅ No changes detected - Sep 10, 2025, 3:41 AM

Comment on lines +410 to +471
name: E2E Tests
needs: [publish-linux]
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: true

- uses: actions/download-artifact@v4
id: download-artifact
with:
name: fw-lite-web-linux
path: fw-lite-web-linux
- name: set execute permissions
run: chmod +x ${{ steps.download-artifact.outputs.download-path }}/*/FwLiteWeb
- name: Install Task
uses: arduino/setup-task@b91d5d2c96a56797b48ac1e0e89220bf64044611 #v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
with:
package_json_file: 'frontend/package.json'
- uses: actions/setup-node@v4
with:
node-version-file: './frontend/package.json'
cache: 'pnpm'
cache-dependency-path: './frontend/pnpm-lock.yaml'
- name: Prepare frontend
working-directory: frontend
run: |
pnpm install
- name: Test fw lite launcher
working-directory: frontend/viewer
env:
FW_LITE_BINARY_PATH: ${{ steps.download-artifact.outputs.download-path }}/release_linux-x64/FwLiteWeb
run: task e2e-test-helper-unit-tests

- uses: ./.github/actions/setup-k8s
with:
lexbox-api-tag: develop
ingress-controller-port: '6579' # todo, figure out if we can use https as it's required for the tests
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Playwright dependencies
working-directory: frontend/viewer
run: pnpm exec playwright install --with-deps

- name: Run E2E tests
working-directory: frontend/viewer
env:
FW_LITE_BINARY_PATH: ${{ steps.download-artifact.outputs.download-path }}/release_linux-x64/FwLiteWeb
TEST_SERVER_PORT: 6579
run: task test:e2e

- name: Upload Playwright test results and traces (on failure)
if: failure()
uses: actions/upload-artifact@v4
with:
name: fw-lite-e2e-test-results
if-no-files-found: ignore
path: |
frontend/viewer/tests/e2e/test-results/

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}

Copilot Autofix

AI 8 days ago

To fix the identified problem, add an explicit permissions block to the workflow, to ensure the GITHUB_TOKEN used by the job is limited to the least privileges necessary. For e2e-test, none of the shown steps perform actions that modify repository data, so contents: read is sufficient.
The best way to implement this is to add a permissions block with contents: read to the e2e-test job in .github/workflows/fw-lite.yaml, immediately under the job name or any existing needs, runs-on, or timeout-minutes keys (inside the e2e-test: job definition).


Suggested changeset 1
.github/workflows/fw-lite.yaml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/fw-lite.yaml b/.github/workflows/fw-lite.yaml
--- a/.github/workflows/fw-lite.yaml
+++ b/.github/workflows/fw-lite.yaml
@@ -408,6 +408,8 @@
 
   e2e-test:
     name: E2E Tests
+    permissions:
+      contents: read
     needs: [publish-linux]
     runs-on: ubuntu-latest
     steps:
EOF
@@ -408,6 +408,8 @@

e2e-test:
name: E2E Tests
permissions:
contents: read
needs: [publish-linux]
runs-on: ubuntu-latest
steps:
Copilot is powered by AI and may make mistakes. Always verify output.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
💻 FW Lite issues related to the fw lite application, not miniLcm or crdt related
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant