Skip to content

fix: NoOp security adapters deny-by-default#14

Merged
casc84ab merged 2 commits into
developfrom
fix/framework-hardening
Feb 13, 2026
Merged

fix: NoOp security adapters deny-by-default#14
casc84ab merged 2 commits into
developfrom
fix/framework-hardening

Conversation

@ancongui
Copy link
Copy Markdown
Contributor

Summary

  • Change NoOp PermissionPort to return false (deny) instead of true
  • Change NoOp DocumentSecurityPort to deny by default
  • Add loud startup warnings when NoOp adapters handle security
  • Update tests to match deny-by-default behavior

Test plan

  • All existing tests pass
  • New tests added for new functionality
  • Manual verification of key flows

…oval

Part of the Firefly Framework hexagonal architecture remediation.

- Remove @componentscan from EcmAutoConfiguration
- Add 5 explicit @bean @ConditionalOnMissingBean methods
- Remove @Component/@service from 6 infrastructure classes
- Move @ConditionalOnProperty from adapter classes to @bean methods
- Change NoOp PermissionPort to return false (deny) instead of true
- Change NoOp DocumentSecurityPort to deny by default
- Add loud startup warnings when NoOp adapters handle security
- Update tests to match deny-by-default behavior
@ancongui ancongui requested a review from casc84ab February 13, 2026 00:34
Copy link
Copy Markdown
Contributor

@casc84ab casc84ab left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM - Important security fix: NoOp adapters now deny-by-default instead of permissive. Startup warnings correctly alert when NoOp handles security.

@casc84ab casc84ab merged commit 4494ce9 into develop Feb 13, 2026
4 checks passed
@casc84ab casc84ab deleted the fix/framework-hardening branch February 13, 2026 09:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants