Commit Graph

379 Commits

Author SHA1 Message Date
Hugh Brown
c7f8578f38 security: run Docker containers as non-root user
Both backend and frontend Dockerfiles ran all processes as root.
Add a dedicated appuser in each runtime stage so container processes
run with minimal privileges, limiting blast radius of any container
escape.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 23:35:10 +05:30
Abhimanyu Saharan
04d80c53ac Merge branch 'master' into test/e2e-critical-flows 2026-03-04 22:30:36 +05:30
Abhimanyu Saharan
b6aff9c796 test(e2e): align critical-flow specs with local auth CI 2026-03-04 22:29:47 +05:30
Abhimanyu Saharan
39f314cd8c test(e2e): extract shared page test setup hooks 2026-03-04 22:26:40 +05:30
Abhimanyu Saharan
d1b08b4777 chore(e2e): remove gap analysis markdown doc 2026-03-04 22:26:15 +05:30
Abhimanyu Saharan
c26dddbce8 test(e2e): fix approvals action label assertion for CI 2026-03-04 22:26:15 +05:30
Abhimanyu Saharan
ba918d4231 docs(e2e): add gap analysis + CI determinism notes 2026-03-04 22:26:15 +05:30
Abhimanyu Saharan
f69af0a6c9 test(e2e): add critical flows for boards, approvals, packs 2026-03-04 22:26:15 +05:30
Abhimanyu Saharan
3a21c4c204 test(frontend): auto-restore location stub in UserMenu tests 2026-03-04 22:19:01 +05:30
Abhimanyu Saharan
b3b8285a64 test(frontend): harden UserMenu RTL mocks and local sign-out assertions 2026-03-04 22:18:09 +05:30
Abhimanyu Saharan
3dca0fa813 test(frontend): fix lint typing in UserMenu test link mock 2026-03-04 22:09:52 +05:30
Abhimanyu Saharan
d739e31196 test(frontend): add UserMenu RTL coverage for local-mode menu actions 2026-03-04 22:09:52 +05:30
Abhimanyu Saharan
81b9a586ed fix(activity): use API route metadata for feed links 2026-03-04 16:25:16 +05:30
Abhimanyu Saharan
bdc9fc3f01 redesigned dashboard page 2026-03-04 16:01:56 +05:30
Abhimanyu Saharan
91ee668b54 test(frontend): address PR feedback for TaskBoard test robustness 2026-03-03 04:51:30 +05:30
Abhimanyu Saharan
27e94197d0 test(frontend): fix TaskBoard test typings for CI tsc 2026-03-03 04:05:36 +05:30
Abhimanyu Saharan
6c897d7faf test(frontend): add TaskBoard + TaskCard coverage and full coverage config 2026-03-03 04:05:15 +05:30
Abhimanyu Saharan
0fe61e3e08 refactor(env): update NEXT_PUBLIC_API_URL to use 'auto' for better flexibility 2026-03-03 02:40:28 +05:30
Abhimanyu Saharan
94ae59d6aa refactor(gateway): update gateway parameters to use None as default #169 2026-03-03 01:51:52 +05:30
Abhimanyu Saharan
fe93832bdd refactor(frontend): centralize agent emoji constants 2026-03-03 00:45:14 +05:30
dependabot[bot]
13340d1898 chore(deps-dev): bump minimatch
Bumps the npm_and_yarn group with 1 update in the /frontend directory: [minimatch](https://github.com/isaacs/minimatch).


Updates `minimatch` from 3.1.2 to 3.1.5
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v3.1.2...v3.1.5)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-version: 3.1.5
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-01 07:11:31 +00:00
dependabot[bot]
0b9745754f chore(deps): bump rollup
Bumps the npm_and_yarn group with 1 update in the /frontend directory: [rollup](https://github.com/rollup/rollup).


Updates `rollup` from 4.57.1 to 4.59.0
- [Release notes](https://github.com/rollup/rollup/releases)
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rollup/rollup/compare/v4.57.1...v4.59.0)

---
updated-dependencies:
- dependency-name: rollup
  dependency-version: 4.59.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-01 03:54:16 +00:00
Abhimanyu Saharan
bc71d5ba38 refactor(page): improve code formatting for better readability in event handlers 2026-02-26 00:36:33 +05:30
Abhimanyu Saharan
6b21ea6f99 feat(boards): add 'comment_required_for_review' rule and update related logic 2026-02-26 00:31:47 +05:30
Abhimanyu Saharan
5b0ddcc7cd refactor(tests): format code for better readability in test files 2026-02-25 03:41:03 +05:30
Abhimanyu Saharan
9e4be7192e test(e2e): ensure delete task button is visible and scrolls into view 2026-02-25 03:14:56 +05:30
Abhimanyu Saharan
8b7c728f32 test(e2e): replace forced clicks with actionability checks 2026-02-25 03:01:15 +05:30
Abhimanyu Saharan
33b705a935 test(e2e): remove force click for edit-task actionability 2026-02-25 02:59:15 +05:30
Abhimanyu Saharan
aa2ceba576 test(e2e): scope board task SSE stubs to known endpoints 2026-02-25 02:50:57 +05:30
Abhimanyu Saharan
c03affe3e0 test(e2e): switch boards list spec to local auth 2026-02-25 02:50:11 +05:30
Abhimanyu Saharan
b35980618d test(e2e): switch board task spec to local auth 2026-02-25 02:40:54 +05:30
Abhimanyu Saharan
08341d26ac test(frontend): stabilize onboarding polling assertion 2026-02-25 02:39:53 +05:30
Abhimanyu Saharan
42b361ddd9 test(frontend): stabilize auth boundary tests for local auth mode 2026-02-25 02:32:42 +05:30
Abhimanyu Saharan
be18072d52 Merge origin/master into hana/e2e-boards-gap-analysis 2026-02-25 02:26:46 +05:30
Abhimanyu Saharan
e3404d8590 feat: implement local authentication flow and update related tests 2026-02-25 02:24:51 +05:30
Abhimanyu Saharan
1045267d4c feat: add groupSnapshot alias and handle hydration mismatch in E2E tests 2026-02-25 01:39:04 +05:30
Abhimanyu Saharan
c6dedc93b3 feat: enhance task editing and loading states in board tasks and boards list tests 2026-02-25 01:29:04 +05:30
Abhimanyu Saharan
49a13a5c01 Merge branch 'master' into hana/e2e-boards-gap-analysis 2026-02-25 00:59:34 +05:30
Abhimanyu Saharan
2e36630df4 fix: address PR #149 review comments 2026-02-23 02:00:07 +05:30
DevBot
c13915bbdf fix: detect explicit port from URL string; add Vitest tests
The previous fix fell back to the scheme's default port (443/80) when
url.port was empty, but url.port is empty for *both* 'wss://host:443'
and 'wss://host' — causing the validation to wrongly accept a URL with
no port at all.

Fix: inspect the raw authority segment of the URL string to check
whether a ':port' component is actually present, regardless of whether
that port is the scheme default.

Add gateway-form.test.ts covering:
- explicit non-default ports (accepted)
- explicit default ports :443 / :80 (accepted — regression case)
- missing port (rejected)
- wrong scheme (rejected)
- invalid URL (rejected)
- whitespace trimming

Closes #148
2026-02-23 01:58:29 +05:30
DevBot
fae681747d fix: handle default ports in gateway URL validation
JavaScript's URL API omits .port for standard ports (443 for wss:,
80 for ws:) even when explicitly specified. This caused valid URLs
like wss://host.ts.net:443 to fail validation with 'Gateway URL
must include an explicit port.'

Fix by checking default ports when url.port is empty.

Closes #148
2026-02-23 01:56:23 +05:30
Abhimanyu Saharan
56f4964332 feat: add support for allowing self-signed TLS certificates in gateway configuration 2026-02-22 20:20:19 +05:30
Abhimanyu Saharan
374d5a0c37 Merge branch 'master' into copilot/feature-allow-self-signed-tls
# Conflicts:
#	backend/app/api/gateways.py
#	backend/app/schemas/gateways.py
#	backend/app/services/openclaw/admin_service.py
#	backend/app/services/openclaw/gateway_resolver.py
#	backend/app/services/openclaw/gateway_rpc.py
#	backend/app/services/openclaw/provisioning.py
#	backend/app/services/openclaw/provisioning_db.py
#	frontend/src/api/generated/model/gatewayCreate.ts
#	frontend/src/api/generated/model/gatewayRead.ts
#	frontend/src/api/generated/model/gatewayUpdate.ts
2026-02-22 19:51:27 +05:30
Abhimanyu Saharan
cdced8e07c refactor: improve code formatting and readability in tests and components 2026-02-22 19:45:18 +05:30
Abhimanyu Saharan
3dfb70cd90 feat: add disable_device_pairing option to gateway configuration 2026-02-22 19:19:26 +05:30
copilot-swe-agent[bot]
c072749b35 fix: Update generated TypeScript API models for allow_insecure_tls field
Co-authored-by: abhi1693 <5083532+abhi1693@users.noreply.github.com>
2026-02-22 07:37:25 +00:00
copilot-swe-agent[bot]
520e128777 feat: Add allow_insecure_tls field to gateway model and UI
- Added allow_insecure_tls boolean field to Gateway model and schemas
- Created database migration for the new field
- Updated GatewayConfig to include allow_insecure_tls parameter
- Modified openclaw_call to create SSL context that disables verification when allow_insecure_tls is true
- Updated all GatewayConfig instantiations throughout the backend
- Added checkbox to frontend gateway form (create and edit pages)
- Updated API endpoints to handle the new field

Co-authored-by: abhi1693 <5083532+abhi1693@users.noreply.github.com>
2026-02-22 05:28:37 +00:00
Abhimanyu Saharan
522761bc26 feat: improve session polling logic in BoardOnboardingChat component 2026-02-16 01:46:12 +05:30
Abhimanyu Saharan
1996e21695 refactor: add overwrite option to various services and update documentation 2026-02-15 13:55:47 +05:30
Abhimanyu Saharan
2b96504712 refactor: update terminology for clarity in agent-templates.ts 2026-02-15 13:48:19 +05:30