Commit graph

5563 commits

Author SHA1 Message Date
Sipke Schoorstra 6979ab4506
Merge pull request #7513 from elsa-workflows/codex/security-health-checks
Add Elsa runtime readiness health checks
2026-05-21 22:43:48 +02:00
Sipke Schoorstra 5179f225c3
Merge pull request #7511 from elsa-workflows/codex/security-identity-secret-hashing
Use cryptographic randomness and adaptive identity secret hashing
2026-05-21 02:49:46 +02:00
Sipke Schoorstra 6533c87245
Merge pull request #7506 from elsa-workflows/codex/security-timestamp-filter-columns
[codex] Whitelist workflow timestamp filter columns
2026-05-21 02:49:42 +02:00
Sipke Schoorstra f7830f7063
Optimize workflow definition sync lookups (#7521)
* Optimize workflow definition sync lookups

Replace repeated linear scans in workflow definition synchronization with a single hash set lookup. This keeps the existing replacement behavior while avoiding quadratic work as the number of workflow definitions grows.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Stabilize bulk dispatch component test

Wait for child workflow completion through the workflow instance store instead of relying on in-memory event delivery, and avoid using the scheduled Delay activity for the fire-and-forget child workflow timing check.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Stabilize dispatch component test

Use persisted workflow instance state when waiting for fire-and-forget child workflow completion, and avoid scheduled Delay for the timing check.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add missing using for merge conflict resolution

Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>

* Remove unused bulk dispatch using

Drop an unnecessary using from the component test file so the PR branch has a new maintainer-authored head commit for CI.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
2026-05-21 02:42:51 +02:00
Sipke Schoorstra b7076fd0cf
Address health check review feedback 2026-05-21 02:13:19 +02:00
Sipke Schoorstra 4a9840b3cd
Address identity review feedback 2026-05-21 02:03:06 +02:00
Sipke Schoorstra 25b1ee11ef
Refine timestamp filter validation feedback 2026-05-21 01:49:44 +02:00
Sipke Schoorstra b546864b4a
Address health check review feedback 2026-05-21 01:47:46 +02:00
Sipke Schoorstra 04429e81c6
Refine identity secret hashing review fixes 2026-05-21 01:45:17 +02:00
copilot-swe-agent[bot] 12408cca37
Address validation feedback
Agent-Logs-Url: https://github.com/elsa-workflows/elsa-core/sessions/6a652ca4-f0c8-4284-938d-6de0eb7a2bea

Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
2026-05-20 23:43:25 +00:00
copilot-swe-agent[bot] 8c1618b5d4
Address latest health check review feedback
Agent-Logs-Url: https://github.com/elsa-workflows/elsa-core/sessions/6a652ca4-f0c8-4284-938d-6de0eb7a2bea

Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
2026-05-20 23:39:21 +00:00
Sipke Schoorstra 09641c1fab
Keep root health check as liveness probe 2026-05-21 01:32:03 +02:00
Sipke Schoorstra b4e6f0f57e
Clear decoded secret hash buffers 2026-05-21 01:27:12 +02:00
Sipke Schoorstra 4b824d65b8
Isolate timestamp filter integration tests 2026-05-21 01:22:22 +02:00
Sipke Schoorstra a0d6f6b24b
Address health check review feedback 2026-05-21 01:18:07 +02:00
Sipke Schoorstra df12667af2
Clear temporary secret hashing buffers 2026-05-21 01:16:12 +02:00
copilot-swe-agent[bot] bcccb80ad5
Use unique distributed lock health probes
Agent-Logs-Url: https://github.com/elsa-workflows/elsa-core/sessions/71c9cf76-ccac-4020-87f4-1e4122d34645

Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
2026-05-20 23:02:49 +00:00
Sipke Schoorstra 3a45938dea
Address timestamp filter review comments 2026-05-21 00:58:24 +02:00
copilot-swe-agent[bot] 2ade23bc82
Address health check review feedback
Agent-Logs-Url: https://github.com/elsa-workflows/elsa-core/sessions/71c9cf76-ccac-4020-87f4-1e4122d34645

Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
2026-05-20 22:57:57 +00:00
Sipke Schoorstra 32ff56d1ac
Address identity secret hasher review feedback 2026-05-21 00:57:33 +02:00
Sipke Schoorstra d2c2e5c429
Refine readiness health check probe data 2026-05-21 00:56:37 +02:00
Sipke Schoorstra 2fa1a9ef8e
[codex] Harden C# expression host-code execution (#7519)
* Harden C# expression host-code execution

* Address script authorization review feedback

* Harden script authorization failure responses

* Address code quality review feedback

* Use explicit failure filter in script authorization

* Centralize script activity type names

* Address script authorization review feedback
2026-05-21 00:50:25 +02:00
Sipke Schoorstra 8b9f005f1d
Merge remote-tracking branch 'origin/main' into codex/security-identity-secret-hashing
# Conflicts:
#	src/modules/Elsa.Identity/README.md
2026-05-21 00:49:15 +02:00
Sipke Schoorstra 45d8a4cfae
Remove unused health check usings 2026-05-21 00:47:34 +02:00
Sipke Schoorstra e362fc057d
Merge remote-tracking branch 'origin/main' into codex/security-health-checks 2026-05-21 00:43:23 +02:00
Sipke Schoorstra d23e61e9be
[codex] Require opt-in for localhost authorization grants (#7498)
* Require opt-in for localhost auth grant

* Preserve custom authorization configuration

* Address localhost auth review feedback

* Address localhost bootstrap review comments
2026-05-21 00:40:57 +02:00
Sipke Schoorstra 1edaae257b
Merge remote-tracking branch 'origin/main' into codex/security-timestamp-filter-columns 2026-05-21 00:40:47 +02:00
Sipke Schoorstra d0c75a9fde
Merge remote-tracking branch 'origin/main' into codex/security-identity-secret-hashing 2026-05-21 00:40:47 +02:00
Sipke Schoorstra b5c457c202
Preserve health check cancellation semantics 2026-05-21 00:24:16 +02:00
Sipke Schoorstra f149c27ab0
Address health check review feedback 2026-05-21 00:09:46 +02:00
Sipke Schoorstra 6a7ff8d48a
Address identity secret hashing review feedback 2026-05-21 00:04:21 +02:00
Sipke Schoorstra 65caa73d6f
Restore best-effort application hash upgrade saves 2026-05-20 23:51:38 +02:00
Sipke Schoorstra 182f524d83
Harden readiness health check reporting 2026-05-20 23:43:25 +02:00
Sipke Schoorstra 65ec6f4029
Narrow user hash upgrade save catch 2026-05-20 23:43:25 +02:00
Sipke Schoorstra 9cdff8c318
Handle missing distributed lock provider in readiness check 2026-05-20 23:39:35 +02:00
Sipke Schoorstra 505334bc9d
Address identity hashing review feedback 2026-05-20 23:34:22 +02:00
Sipke Schoorstra 37c02c74ff
[codex] Authorize workflow imports before persistence (#7510)
* Authorize workflow imports before persistence

* Address import authorization review feedback

* Fix import authorization test fixture data
2026-05-20 23:29:35 +02:00
Sipke Schoorstra e7dc936c67
Merge remote-tracking branch 'origin/main' into codex/security-identity-secret-hashing
# Conflicts:
#	doc/changelogs/3.6.0.md
#	src/modules/Elsa.Identity/README.md
2026-05-20 23:04:02 +02:00
Sipke Schoorstra f72ed4edab
Harden timestamp filter validation null handling 2026-05-20 22:50:13 +02:00
Sipke Schoorstra 125ab7fbd8
Merge origin/main into codex/security-health-checks 2026-05-20 22:33:42 +02:00
Sipke Schoorstra a77c1af817
Merge origin/main into codex/security-timestamp-filter-columns 2026-05-20 22:33:42 +02:00
Sipke Schoorstra e9d59bc5b1
[codex] Fail fast on default JWT signing keys (#7496)
* Fail fast on default JWT signing keys

* Address JWT signing key review feedback

* Refine JWT signing key validation feedback

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>

* Reject JWT signing keys with surrounding whitespace

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
2026-05-20 22:30:49 +02:00
Sipke Schoorstra 8d76db9e96
Merge branch 'codex/elsa-release-skill'
# Conflicts:
#	Elsa.sln
2026-05-20 22:05:06 +02:00
Sipke Schoorstra 3523804efd
docs: add security & quality assessments
Add comprehensive security and software-quality artifacts (architecture patterns, ISO‑25010 profile, technology profile, software quality scan, and findings) and publish an updated roadmap. Also integrate Elsa.Diagnostics.ConsoleLogs into the solution and ModularServer app, and apply small config/whitespace fixes to support the addition.

These documents are intended for review and human validation; no runtime behavior changes are introduced beyond the project wiring and minor appsettings/formatting fixes.
2026-05-20 22:00:30 +02:00
Sipke Schoorstra 746ba96a1f
[codex] Remove production-usable default admin credentials (#7500)
* Remove default admin credentials

* Fix shell admin API key configuration
2026-05-20 20:58:03 +02:00
Sipke Schoorstra a860846b50
[codex] Enforce HTTP workflow request body limits while reading (#7497)
* Enforce HTTP request body size while reading

* Address HTTP body limit review feedback

* Avoid request size limit overflow
2026-05-20 20:57:57 +02:00
Sipke Schoorstra 0856d79093
Harden Python expression execution (#7507)
* Secure Python workflow expressions

* Preflight Python authorization for bulk publish

* Preflight Python auth for import files

* Name Python expression descriptor type
2026-05-20 14:19:47 +02:00
Sipke Schoorstra e2587f74b5
Address identity validator compatibility feedback 2026-05-20 14:11:19 +02:00
Sipke Schoorstra 1da8709e2c
Distinguish refresh tokens from API access tokens (#7509)
* Separate access and refresh token use

* Address Greptile identity token feedback
2026-05-20 14:04:28 +02:00
Sipke Schoorstra 435c25793b
Scope HTTP bookmark lookup to tenant (#7508)
* Scope HTTP bookmarks to current tenant

* Improve HTTP bookmark tenant test
2026-05-20 14:04:24 +02:00