Skip to content

Chore/openssf gold prep - #455

Merged
ginccc merged 14 commits into
mainfrom
chore/openssf-gold-prep
Apr 26, 2026
Merged

Chore/openssf gold prep#455
ginccc merged 14 commits into
mainfrom
chore/openssf-gold-prep

Conversation

@ginccc

@ginccc ginccc commented Apr 24, 2026

Copy link
Copy Markdown
Member

This pull request introduces several important improvements to project governance, security, and development workflow, along with new documentation and minor codebase changes. The main highlights are the addition of formal governance and code review standards, stricter enforcement and documentation of safe git practices (especially around force-push), and enhanced build and security documentation.

Key changes include:


Governance and Code Review Policy

  • Added a new GOVERNANCE.md file outlining project leadership roles, decision-making processes, contribution workflow, code review policy, release process, and license details.
  • Introduced docs/code-review-standards.md specifying code review requirements, security-sensitive review areas, merge policy, and AI-assisted code review rules.

Security and Build Documentation

  • Added docs/security-review.md summarizing security reviews, automated tooling, manual audits, threat model, and compliance (EU AI Act, HIPAA, GDPR/CCPA).
  • Added docs/build-reproducibility.md detailing how builds are made reproducible, dependency pinning, CI environment controls, and artifact verification (Cosign, SBOM).

Development Workflow and Git Safety

  • Updated AGENTS.md to strictly prohibit force-pushes, document safe alternatives, and clarify commit/rebase/reset rules. Added a troubleshooting table for common git mistakes and their safe resolutions.
  • Added a .githooks/pre-push script to block non-fast-forward pushes (force-pushes) as a safety net.
  • Updated .github/CODEOWNERS to reflect current maintainers for all code review.

Codebase and Build Configuration

  • Added missing SPDX license headers to several Java files in the backup module for license compliance. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]
  • Enabled Java assertions (-ea) in the Maven Surefire plugin configuration for improved test coverage and debugging.

These changes collectively improve project transparency, security posture, and development safety, while making the build and review process more robust and auditable.

ginccc added 11 commits April 24, 2026 19:57
- .githooks/pre-push blocks non-fast-forward pushes at client level
- AGENTS.md rule 4: explicit prohibition with root-cause prevention
- Recovery table documents correct alternatives for common scenarios
- Hook does not advertise bypass to prevent AI agents from self-bypassing
- GOVERNANCE.md: project leadership, decision-making, contribution process
- docs/code-review-standards.md: review checklist, security-sensitive areas
- Both required for OpenSSF Gold badge criteria
All source files now include:
  /* Copyright (c) 2016-2026 EDDI contributors
   * SPDX-License-Identifier: Apache-2.0 */

Required for OpenSSF Gold license_per_file criterion.
- Copyright headers now: 'Copyright EDDI contributors' (no year)
- Avoids annual maintenance and historical inaccuracy for newer files
- GOVERNANCE.md: corrected domain to https://eddi.labs.ai
- code-review-standards.md: SecretsVault -> VaultSecretProvider (actual class)
- CODEOWNERS: replace TODO placeholder with @ginccc @rolandpickl
…ity doc

- pom.xml: added -ea (enable assertions) to surefire argLine for
  dynamic_analysis_enable_assertions criterion
- docs/security-review.md: formal security review summary covering
  automated tooling (CodeQL, Trivy, ZAP, fuzz) and manual review phases
- docs/build-reproducibility.md: documents deterministic builds,
  dependency pinning, Cosign verification, and SBOM generation
…VE number, and CodeQL findings

- Template engine: Qute, not Thymeleaf (Thymeleaf was migrated away from)
- CVE: CVE-2026-25526 (from pom.xml), not fabricated CVE-2025-59340
- CodeQL findings: regex injection, path traversal, error exposure (not SQL injection)
- CODEOWNERS: remove duplicate comment and stale commented-out examples
- security-review.md: fix misleading threat model cross-reference to docs/security.md
SBOM (CycloneDX) only runs on push events to main, not on every CI
run including PRs (ci.yml line 346: if: github.event_name == 'push')
…ve sources

Lesson from Thymeleaf confabulation: codebase grep hits in migration
code gave the wrong signal. Rule: always verify tech stack claims
against pom.xml/ci.yml/Dockerfile, never infer from grep results.
@ginccc
ginccc requested a review from Copilot April 24, 2026 22:20
@coderabbitai

coderabbitai Bot commented Apr 24, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Too many files!

This PR contains 300 files, which is 150 over the limit of 150.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 16ccd387-7019-46d6-93de-86df96b76102

📥 Commits

Reviewing files that changed from the base of the PR and between cd20043 and acd7721.

📒 Files selected for processing (300)
  • .githooks/pre-push
  • .github/CODEOWNERS
  • AGENTS.md
  • GOVERNANCE.md
  • docs/build-reproducibility.md
  • docs/code-review-standards.md
  • docs/security-review.md
  • pom.xml
  • src/main/java/ai/labs/eddi/backup/IResourceSource.java
  • src/main/java/ai/labs/eddi/backup/IRestExportService.java
  • src/main/java/ai/labs/eddi/backup/IRestImportService.java
  • src/main/java/ai/labs/eddi/backup/IZipArchive.java
  • src/main/java/ai/labs/eddi/backup/impl/AbstractBackupService.java
  • src/main/java/ai/labs/eddi/backup/impl/CallbackMatcher.java
  • src/main/java/ai/labs/eddi/backup/impl/RemoteApiResourceSource.java
  • src/main/java/ai/labs/eddi/backup/impl/RestExportService.java
  • src/main/java/ai/labs/eddi/backup/impl/RestImportService.java
  • src/main/java/ai/labs/eddi/backup/impl/SourceUrlValidator.java
  • src/main/java/ai/labs/eddi/backup/impl/StructuralMatcher.java
  • src/main/java/ai/labs/eddi/backup/impl/UpgradeExecutor.java
  • src/main/java/ai/labs/eddi/backup/impl/ZipArchive.java
  • src/main/java/ai/labs/eddi/backup/impl/ZipResourceSource.java
  • src/main/java/ai/labs/eddi/backup/model/ExportPreview.java
  • src/main/java/ai/labs/eddi/backup/model/ImportPreview.java
  • src/main/java/ai/labs/eddi/backup/model/SyncMapping.java
  • src/main/java/ai/labs/eddi/backup/model/SyncRequest.java
  • src/main/java/ai/labs/eddi/configs/IRestVersionInfo.java
  • src/main/java/ai/labs/eddi/configs/OpenApiConfig.java
  • src/main/java/ai/labs/eddi/configs/admin/IRestOrphanAdmin.java
  • src/main/java/ai/labs/eddi/configs/admin/model/OrphanInfo.java
  • src/main/java/ai/labs/eddi/configs/admin/model/OrphanReport.java
  • src/main/java/ai/labs/eddi/configs/admin/rest/RestOrphanAdmin.java
  • src/main/java/ai/labs/eddi/configs/agents/AgentSigningService.java
  • src/main/java/ai/labs/eddi/configs/agents/CapabilityRegistryService.java
  • src/main/java/ai/labs/eddi/configs/agents/IAgentStore.java
  • src/main/java/ai/labs/eddi/configs/agents/IRestAgentStore.java
  • src/main/java/ai/labs/eddi/configs/agents/IRestCapabilityRegistry.java
  • src/main/java/ai/labs/eddi/configs/agents/model/AgentConfiguration.java
  • src/main/java/ai/labs/eddi/configs/agents/mongo/AgentStore.java
  • src/main/java/ai/labs/eddi/configs/agents/rest/RestAgentStore.java
  • src/main/java/ai/labs/eddi/configs/agents/rest/RestCapabilityRegistry.java
  • src/main/java/ai/labs/eddi/configs/apicalls/IApiCallsStore.java
  • src/main/java/ai/labs/eddi/configs/apicalls/IRestApiCallsStore.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/ApiCall.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/ApiCallsConfiguration.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/BatchRequestBuildingInstruction.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/BuildingInstruction.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/HttpCodeValidator.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/HttpPostResponse.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/HttpPreRequest.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/OutputBuildingInstruction.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/PostResponse.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/PreRequest.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/QuickRepliesBuildingInstruction.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/Request.java
  • src/main/java/ai/labs/eddi/configs/apicalls/model/RetryApiCallInstruction.java
  • src/main/java/ai/labs/eddi/configs/apicalls/mongo/ApiCallsStore.java
  • src/main/java/ai/labs/eddi/configs/apicalls/rest/RestApiCallsStore.java
  • src/main/java/ai/labs/eddi/configs/deployment/IDeploymentStorage.java
  • src/main/java/ai/labs/eddi/configs/deployment/IDeploymentStore.java
  • src/main/java/ai/labs/eddi/configs/deployment/IRestDeploymentStore.java
  • src/main/java/ai/labs/eddi/configs/deployment/model/DeploymentInfo.java
  • src/main/java/ai/labs/eddi/configs/deployment/mongo/DeploymentStore.java
  • src/main/java/ai/labs/eddi/configs/deployment/mongo/MongoDeploymentStorage.java
  • src/main/java/ai/labs/eddi/configs/deployment/rest/RestDeploymentStore.java
  • src/main/java/ai/labs/eddi/configs/descriptors/IDocumentDescriptorStore.java
  • src/main/java/ai/labs/eddi/configs/descriptors/IRestDocumentDescriptorStore.java
  • src/main/java/ai/labs/eddi/configs/descriptors/ResourceUtilities.java
  • src/main/java/ai/labs/eddi/configs/descriptors/model/DocumentDescriptor.java
  • src/main/java/ai/labs/eddi/configs/descriptors/model/ResourceDescriptor.java
  • src/main/java/ai/labs/eddi/configs/descriptors/model/SimpleDocumentDescriptor.java
  • src/main/java/ai/labs/eddi/configs/descriptors/mongo/DocumentDescriptorStore.java
  • src/main/java/ai/labs/eddi/configs/descriptors/rest/RestDocumentDescriptorStore.java
  • src/main/java/ai/labs/eddi/configs/dictionary/IDictionaryStore.java
  • src/main/java/ai/labs/eddi/configs/dictionary/IRestAction.java
  • src/main/java/ai/labs/eddi/configs/dictionary/IRestDictionaryStore.java
  • src/main/java/ai/labs/eddi/configs/dictionary/IRestExpression.java
  • src/main/java/ai/labs/eddi/configs/dictionary/expression/RestAction.java
  • src/main/java/ai/labs/eddi/configs/dictionary/expression/RestExpression.java
  • src/main/java/ai/labs/eddi/configs/dictionary/model/DictionaryConfiguration.java
  • src/main/java/ai/labs/eddi/configs/dictionary/mongo/DictionaryStore.java
  • src/main/java/ai/labs/eddi/configs/dictionary/rest/RestDictionaryStore.java
  • src/main/java/ai/labs/eddi/configs/groups/IAgentGroupStore.java
  • src/main/java/ai/labs/eddi/configs/groups/IGroupConversationStore.java
  • src/main/java/ai/labs/eddi/configs/groups/IRestAgentGroupStore.java
  • src/main/java/ai/labs/eddi/configs/groups/model/AgentGroupConfiguration.java
  • src/main/java/ai/labs/eddi/configs/groups/model/DiscussionStylePresets.java
  • src/main/java/ai/labs/eddi/configs/groups/model/GroupConversation.java
  • src/main/java/ai/labs/eddi/configs/groups/mongo/AgentGroupStore.java
  • src/main/java/ai/labs/eddi/configs/groups/mongo/GroupConversationStore.java
  • src/main/java/ai/labs/eddi/configs/groups/rest/RestAgentGroupStore.java
  • src/main/java/ai/labs/eddi/configs/llm/ILlmStore.java
  • src/main/java/ai/labs/eddi/configs/llm/IRestLlmStore.java
  • src/main/java/ai/labs/eddi/configs/llm/mongo/LlmStore.java
  • src/main/java/ai/labs/eddi/configs/llm/rest/RestLlmStore.java
  • src/main/java/ai/labs/eddi/configs/mcpcalls/IMcpCallsStore.java
  • src/main/java/ai/labs/eddi/configs/mcpcalls/IRestMcpCallsStore.java
  • src/main/java/ai/labs/eddi/configs/mcpcalls/model/McpCall.java
  • src/main/java/ai/labs/eddi/configs/mcpcalls/model/McpCallsConfiguration.java
  • src/main/java/ai/labs/eddi/configs/mcpcalls/mongo/McpCallsStore.java
  • src/main/java/ai/labs/eddi/configs/mcpcalls/rest/RestMcpCallsStore.java
  • src/main/java/ai/labs/eddi/configs/migration/IDocumentMigration.java
  • src/main/java/ai/labs/eddi/configs/migration/IMigrationLogStore.java
  • src/main/java/ai/labs/eddi/configs/migration/IMigrationManager.java
  • src/main/java/ai/labs/eddi/configs/migration/MigrationLogStore.java
  • src/main/java/ai/labs/eddi/configs/migration/MigrationManager.java
  • src/main/java/ai/labs/eddi/configs/migration/TemplateSyntaxMigrator.java
  • src/main/java/ai/labs/eddi/configs/migration/V6QuteMigration.java
  • src/main/java/ai/labs/eddi/configs/migration/V6RenameMigration.java
  • src/main/java/ai/labs/eddi/configs/migration/model/MigrationLog.java
  • src/main/java/ai/labs/eddi/configs/output/IOutputStore.java
  • src/main/java/ai/labs/eddi/configs/output/IRestOutputStore.java
  • src/main/java/ai/labs/eddi/configs/output/keys/IRestOutputActions.java
  • src/main/java/ai/labs/eddi/configs/output/model/OutputConfiguration.java
  • src/main/java/ai/labs/eddi/configs/output/model/OutputConfigurationSet.java
  • src/main/java/ai/labs/eddi/configs/output/mongo/OutputStore.java
  • src/main/java/ai/labs/eddi/configs/output/rest/RestOutputStore.java
  • src/main/java/ai/labs/eddi/configs/output/rest/keys/RestOutputActions.java
  • src/main/java/ai/labs/eddi/configs/parser/IParserStore.java
  • src/main/java/ai/labs/eddi/configs/parser/IRestParserStore.java
  • src/main/java/ai/labs/eddi/configs/parser/model/ParserConfiguration.java
  • src/main/java/ai/labs/eddi/configs/parser/mongo/ParserStore.java
  • src/main/java/ai/labs/eddi/configs/parser/rest/RestParserStore.java
  • src/main/java/ai/labs/eddi/configs/patch/PatchInstruction.java
  • src/main/java/ai/labs/eddi/configs/properties/IRestPropertiesStore.java
  • src/main/java/ai/labs/eddi/configs/properties/IRestUserMemoryStore.java
  • src/main/java/ai/labs/eddi/configs/properties/IUserMemoryStore.java
  • src/main/java/ai/labs/eddi/configs/properties/model/Properties.java
  • src/main/java/ai/labs/eddi/configs/properties/model/Property.java
  • src/main/java/ai/labs/eddi/configs/properties/model/PropertyInstruction.java
  • src/main/java/ai/labs/eddi/configs/properties/model/UserMemoryEntry.java
  • src/main/java/ai/labs/eddi/configs/properties/mongo/MongoUserMemoryStore.java
  • src/main/java/ai/labs/eddi/configs/properties/mongo/PropertiesMigrationService.java
  • src/main/java/ai/labs/eddi/configs/properties/rest/RestPropertiesStore.java
  • src/main/java/ai/labs/eddi/configs/properties/rest/RestUserMemoryStore.java
  • src/main/java/ai/labs/eddi/configs/propertysetter/IPropertySetterStore.java
  • src/main/java/ai/labs/eddi/configs/propertysetter/IRestPropertySetterStore.java
  • src/main/java/ai/labs/eddi/configs/propertysetter/model/PropertySetterConfiguration.java
  • src/main/java/ai/labs/eddi/configs/propertysetter/mongo/PropertySetterStore.java
  • src/main/java/ai/labs/eddi/configs/propertysetter/rest/RestPropertySetterStore.java
  • src/main/java/ai/labs/eddi/configs/rag/IRagStore.java
  • src/main/java/ai/labs/eddi/configs/rag/IRestRagIngestion.java
  • src/main/java/ai/labs/eddi/configs/rag/IRestRagStore.java
  • src/main/java/ai/labs/eddi/configs/rag/model/RagConfiguration.java
  • src/main/java/ai/labs/eddi/configs/rag/mongo/RagStore.java
  • src/main/java/ai/labs/eddi/configs/rag/rest/RestRagIngestion.java
  • src/main/java/ai/labs/eddi/configs/rag/rest/RestRagStore.java
  • src/main/java/ai/labs/eddi/configs/rest/RestVersionInfo.java
  • src/main/java/ai/labs/eddi/configs/rules/IRestRuleSetStore.java
  • src/main/java/ai/labs/eddi/configs/rules/IRuleSetStore.java
  • src/main/java/ai/labs/eddi/configs/rules/model/RuleConditionConfiguration.java
  • src/main/java/ai/labs/eddi/configs/rules/model/RuleConfiguration.java
  • src/main/java/ai/labs/eddi/configs/rules/model/RuleGroupConfiguration.java
  • src/main/java/ai/labs/eddi/configs/rules/model/RuleSetConfiguration.java
  • src/main/java/ai/labs/eddi/configs/rules/mongo/RuleSetStore.java
  • src/main/java/ai/labs/eddi/configs/rules/rest/RestRuleSetStore.java
  • src/main/java/ai/labs/eddi/configs/schema/IJsonSchemaCreator.java
  • src/main/java/ai/labs/eddi/configs/schema/JsonSchemaCreator.java
  • src/main/java/ai/labs/eddi/configs/snippets/IPromptSnippetStore.java
  • src/main/java/ai/labs/eddi/configs/snippets/IRestPromptSnippetStore.java
  • src/main/java/ai/labs/eddi/configs/snippets/model/PromptSnippet.java
  • src/main/java/ai/labs/eddi/configs/snippets/mongo/PromptSnippetStore.java
  • src/main/java/ai/labs/eddi/configs/snippets/rest/RestPromptSnippetStore.java
  • src/main/java/ai/labs/eddi/configs/workflows/IRestWorkflowStepStore.java
  • src/main/java/ai/labs/eddi/configs/workflows/IRestWorkflowStore.java
  • src/main/java/ai/labs/eddi/configs/workflows/IWorkflowStore.java
  • src/main/java/ai/labs/eddi/configs/workflows/model/ExtensionDescriptor.java
  • src/main/java/ai/labs/eddi/configs/workflows/model/WorkflowConfiguration.java
  • src/main/java/ai/labs/eddi/configs/workflows/mongo/WorkflowStore.java
  • src/main/java/ai/labs/eddi/configs/workflows/rest/RestWorkflowStepStore.java
  • src/main/java/ai/labs/eddi/configs/workflows/rest/RestWorkflowStore.java
  • src/main/java/ai/labs/eddi/datastore/AbstractResourceStore.java
  • src/main/java/ai/labs/eddi/datastore/DataStoreProducers.java
  • src/main/java/ai/labs/eddi/datastore/DescriptorStore.java
  • src/main/java/ai/labs/eddi/datastore/HistorizedResourceStore.java
  • src/main/java/ai/labs/eddi/datastore/IResourceFilter.java
  • src/main/java/ai/labs/eddi/datastore/IResourceStorage.java
  • src/main/java/ai/labs/eddi/datastore/IResourceStorageFactory.java
  • src/main/java/ai/labs/eddi/datastore/IResourceStore.java
  • src/main/java/ai/labs/eddi/datastore/ModifiableHistorizedResourceStore.java
  • src/main/java/ai/labs/eddi/datastore/bootstrap/PersistenceModule.java
  • src/main/java/ai/labs/eddi/datastore/model/ResourceId.java
  • src/main/java/ai/labs/eddi/datastore/mongo/AbstractMongoResourceStore.java
  • src/main/java/ai/labs/eddi/datastore/mongo/DescriptorStore.java
  • src/main/java/ai/labs/eddi/datastore/mongo/HistorizedResourceStore.java
  • src/main/java/ai/labs/eddi/datastore/mongo/ModifiableHistorizedResourceStore.java
  • src/main/java/ai/labs/eddi/datastore/mongo/MongoResourceStorage.java
  • src/main/java/ai/labs/eddi/datastore/mongo/MongoResourceStorageFactory.java
  • src/main/java/ai/labs/eddi/datastore/mongo/ResourceFilter.java
  • src/main/java/ai/labs/eddi/datastore/mongo/ResultManipulator.java
  • src/main/java/ai/labs/eddi/datastore/mongo/codec/JacksonCodec.java
  • src/main/java/ai/labs/eddi/datastore/mongo/codec/JacksonProvider.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresAgentTriggerStore.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresAttachmentStorage.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresAuditStore.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresConversationMemoryStore.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresDatabaseLogs.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresDeploymentStorage.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresHealthCheck.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresMigrationLogStore.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresMigrationManager.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresResourceStorage.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresResourceStorageFactory.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresScheduleStore.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresUserConversationStore.java
  • src/main/java/ai/labs/eddi/datastore/postgres/PostgresUserMemoryStore.java
  • src/main/java/ai/labs/eddi/datastore/serialization/DeserializationException.java
  • src/main/java/ai/labs/eddi/datastore/serialization/DocumentBuilder.java
  • src/main/java/ai/labs/eddi/datastore/serialization/IDescriptorStore.java
  • src/main/java/ai/labs/eddi/datastore/serialization/IDocumentBuilder.java
  • src/main/java/ai/labs/eddi/datastore/serialization/IJsonSerialization.java
  • src/main/java/ai/labs/eddi/datastore/serialization/Id.java
  • src/main/java/ai/labs/eddi/datastore/serialization/IdDeserializer.java
  • src/main/java/ai/labs/eddi/datastore/serialization/IdSerializer.java
  • src/main/java/ai/labs/eddi/datastore/serialization/JsonSerialization.java
  • src/main/java/ai/labs/eddi/datastore/serialization/SerializationCustomizer.java
  • src/main/java/ai/labs/eddi/engine/a2a/A2AModels.java
  • src/main/java/ai/labs/eddi/engine/a2a/A2ATaskHandler.java
  • src/main/java/ai/labs/eddi/engine/a2a/AgentCardService.java
  • src/main/java/ai/labs/eddi/engine/a2a/RestA2AEndpoint.java
  • src/main/java/ai/labs/eddi/engine/api/IConversationService.java
  • src/main/java/ai/labs/eddi/engine/api/IGroupConversationService.java
  • src/main/java/ai/labs/eddi/engine/api/ILogoutEndpoint.java
  • src/main/java/ai/labs/eddi/engine/api/IRestAgentAdministration.java
  • src/main/java/ai/labs/eddi/engine/api/IRestAgentEngine.java
  • src/main/java/ai/labs/eddi/engine/api/IRestAgentEngineStreaming.java
  • src/main/java/ai/labs/eddi/engine/api/IRestAgentManagement.java
  • src/main/java/ai/labs/eddi/engine/api/IRestAgentSetup.java
  • src/main/java/ai/labs/eddi/engine/api/IRestCoordinatorAdmin.java
  • src/main/java/ai/labs/eddi/engine/api/IRestGroupConversation.java
  • src/main/java/ai/labs/eddi/engine/api/IRestLogAdmin.java
  • src/main/java/ai/labs/eddi/engine/audit/AuditHmac.java
  • src/main/java/ai/labs/eddi/engine/audit/AuditLedgerService.java
  • src/main/java/ai/labs/eddi/engine/audit/AuditStore.java
  • src/main/java/ai/labs/eddi/engine/audit/IAuditEntryCollector.java
  • src/main/java/ai/labs/eddi/engine/audit/IAuditStore.java
  • src/main/java/ai/labs/eddi/engine/audit/model/AuditEntry.java
  • src/main/java/ai/labs/eddi/engine/audit/rest/IRestAuditStore.java
  • src/main/java/ai/labs/eddi/engine/audit/rest/RestAuditStore.java
  • src/main/java/ai/labs/eddi/engine/caching/CacheFactory.java
  • src/main/java/ai/labs/eddi/engine/caching/CacheImpl.java
  • src/main/java/ai/labs/eddi/engine/caching/ICache.java
  • src/main/java/ai/labs/eddi/engine/caching/ICacheFactory.java
  • src/main/java/ai/labs/eddi/engine/compliance/ComplianceStartupChecks.java
  • src/main/java/ai/labs/eddi/engine/exception/IllegalArgumentExceptionMapper.java
  • src/main/java/ai/labs/eddi/engine/exception/RejectedExecutionExceptionMapper.java
  • src/main/java/ai/labs/eddi/engine/exception/ResourceAlreadyExistsExceptionMapper.java
  • src/main/java/ai/labs/eddi/engine/exception/ResourceModifiedExceptionMapper.java
  • src/main/java/ai/labs/eddi/engine/exception/ResourceNotFoundExceptionMapper.java
  • src/main/java/ai/labs/eddi/engine/exception/ResourceStoreExceptionMapper.java
  • src/main/java/ai/labs/eddi/engine/exception/SneakyThrow.java
  • src/main/java/ai/labs/eddi/engine/gdpr/GdprComplianceService.java
  • src/main/java/ai/labs/eddi/engine/gdpr/GdprDeletionResult.java
  • src/main/java/ai/labs/eddi/engine/gdpr/IRestGdprAdmin.java
  • src/main/java/ai/labs/eddi/engine/gdpr/ProcessingRestrictedException.java
  • src/main/java/ai/labs/eddi/engine/gdpr/ProcessingRestrictedExceptionMapper.java
  • src/main/java/ai/labs/eddi/engine/gdpr/RestGdprAdmin.java
  • src/main/java/ai/labs/eddi/engine/gdpr/UserDataExport.java
  • src/main/java/ai/labs/eddi/engine/httpclient/ICompleteListener.java
  • src/main/java/ai/labs/eddi/engine/httpclient/IHttpClient.java
  • src/main/java/ai/labs/eddi/engine/httpclient/IRequest.java
  • src/main/java/ai/labs/eddi/engine/httpclient/IResponse.java
  • src/main/java/ai/labs/eddi/engine/httpclient/SafeHttpClient.java
  • src/main/java/ai/labs/eddi/engine/httpclient/bootstrap/HttpClientModule.java
  • src/main/java/ai/labs/eddi/engine/httpclient/impl/HttpClientWrapper.java
  • src/main/java/ai/labs/eddi/engine/httpclient/impl/VertxHttpClient.java
  • src/main/java/ai/labs/eddi/engine/internal/ContextLogger.java
  • src/main/java/ai/labs/eddi/engine/internal/ConversationService.java
  • src/main/java/ai/labs/eddi/engine/internal/GroupConversationService.java
  • src/main/java/ai/labs/eddi/engine/internal/IContextLogger.java
  • src/main/java/ai/labs/eddi/engine/internal/RestAgentAdministration.java
  • src/main/java/ai/labs/eddi/engine/internal/RestAgentEngine.java
  • src/main/java/ai/labs/eddi/engine/internal/RestAgentEngineStreaming.java
  • src/main/java/ai/labs/eddi/engine/internal/RestAgentManagement.java
  • src/main/java/ai/labs/eddi/engine/internal/RestCoordinatorAdmin.java
  • src/main/java/ai/labs/eddi/engine/internal/RestGroupConversation.java
  • src/main/java/ai/labs/eddi/engine/internal/RestLogAdmin.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/ConversationEventSink.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/GroupConversationEventSink.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/IComponentCache.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/IConversation.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/ILifecycleManager.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/ILifecycleTask.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/bootstrap/LifecycleExtensions.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/bootstrap/LifecycleModule.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/CannotExecuteException.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/ConversationStopException.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/IllegalExtensionConfigurationException.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/LifecycleException.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/UnrecognizedExtensionException.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/WorkflowConfigurationException.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/internal/ComponentCache.java
  • src/main/java/ai/labs/eddi/engine/lifecycle/internal/LifecycleManager.java
  • src/main/java/ai/labs/eddi/engine/mcp/McpAdminTools.java
  • src/main/java/ai/labs/eddi/engine/mcp/McpApiToolBuilder.java
  • src/main/java/ai/labs/eddi/engine/mcp/McpConversationTools.java
  • src/main/java/ai/labs/eddi/engine/mcp/McpDocResources.java
  • src/main/java/ai/labs/eddi/engine/mcp/McpGdprTools.java
  • src/main/java/ai/labs/eddi/engine/mcp/McpGroupTools.java
  • src/main/java/ai/labs/eddi/engine/mcp/McpMemoryTools.java

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

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/openssf-gold-prep

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.

@github-actions

github-actions Bot commented Apr 24, 2026

Copy link
Copy Markdown

⚠️ Deprecation Warning: The deny-licenses option is deprecated for possible removal in the next major release. For more information, see issue 997.

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

@ginccc
ginccc requested a review from rolandpickl April 24, 2026 22:20

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Prepares the repository for OpenSSF Best Practices (Gold) by formalizing governance/review policies, tightening Git safety, improving security/build documentation, and aligning source files with SPDX license header requirements.

Changes:

  • Added governance, code review standards, security review, and build reproducibility documentation.
  • Added a pre-push Git hook and updated contributor guidance / CODEOWNERS to enforce safer workflows and reviews.
  • Added SPDX license headers across many Java sources and enabled Java assertions for Maven Surefire tests.

Reviewed changes

Copilot reviewed 300 out of 1097 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
src/main/java/ai/labs/eddi/engine/mcp/McpMemoryTools.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/mcp/McpGroupTools.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/mcp/McpGdprTools.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/mcp/McpDocResources.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/mcp/McpConversationTools.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/mcp/McpApiToolBuilder.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/mcp/McpAdminTools.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/internal/LifecycleManager.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/internal/ComponentCache.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/WorkflowConfigurationException.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/UnrecognizedExtensionException.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/LifecycleException.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/IllegalExtensionConfigurationException.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/ConversationStopException.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/exceptions/CannotExecuteException.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/bootstrap/LifecycleModule.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/bootstrap/LifecycleExtensions.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/ILifecycleTask.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/ILifecycleManager.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/IConversation.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/IComponentCache.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/GroupConversationEventSink.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/lifecycle/ConversationEventSink.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/internal/RestLogAdmin.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/internal/RestGroupConversation.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/internal/RestCoordinatorAdmin.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/internal/RestAgentManagement.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/internal/RestAgentEngineStreaming.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/internal/RestAgentEngine.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/internal/RestAgentAdministration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/internal/IContextLogger.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/internal/GroupConversationService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/internal/ConversationService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/internal/ContextLogger.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/httpclient/impl/VertxHttpClient.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/httpclient/impl/HttpClientWrapper.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/httpclient/bootstrap/HttpClientModule.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/httpclient/SafeHttpClient.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/httpclient/IResponse.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/httpclient/IRequest.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/httpclient/IHttpClient.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/httpclient/ICompleteListener.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/gdpr/UserDataExport.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/gdpr/RestGdprAdmin.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/gdpr/ProcessingRestrictedExceptionMapper.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/gdpr/ProcessingRestrictedException.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/gdpr/IRestGdprAdmin.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/gdpr/GdprDeletionResult.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/gdpr/GdprComplianceService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/exception/SneakyThrow.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/exception/ResourceStoreExceptionMapper.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/exception/ResourceNotFoundExceptionMapper.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/exception/ResourceModifiedExceptionMapper.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/exception/ResourceAlreadyExistsExceptionMapper.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/exception/RejectedExecutionExceptionMapper.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/exception/IllegalArgumentExceptionMapper.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/compliance/ComplianceStartupChecks.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/caching/ICacheFactory.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/caching/ICache.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/caching/CacheImpl.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/caching/CacheFactory.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/audit/rest/RestAuditStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/audit/rest/IRestAuditStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/audit/model/AuditEntry.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/audit/IAuditStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/audit/IAuditEntryCollector.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/audit/AuditStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/audit/AuditLedgerService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/audit/AuditHmac.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/api/IRestLogAdmin.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/api/IRestGroupConversation.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/api/IRestCoordinatorAdmin.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/api/IRestAgentSetup.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/api/IRestAgentManagement.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/api/IRestAgentEngineStreaming.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/api/IRestAgentEngine.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/api/IRestAgentAdministration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/api/ILogoutEndpoint.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/api/IGroupConversationService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/api/IConversationService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/a2a/RestA2AEndpoint.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/a2a/AgentCardService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/a2a/A2ATaskHandler.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/engine/a2a/A2AModels.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/serialization/SerializationCustomizer.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/serialization/JsonSerialization.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/serialization/IdSerializer.java Add SPDX license header for compliance (file contains third-party notice)
src/main/java/ai/labs/eddi/datastore/serialization/IdDeserializer.java Add SPDX license header for compliance (file contains third-party notice)
src/main/java/ai/labs/eddi/datastore/serialization/Id.java Add SPDX license header for compliance (file contains third-party notice)
src/main/java/ai/labs/eddi/datastore/serialization/IJsonSerialization.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/serialization/IDocumentBuilder.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/serialization/IDescriptorStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/serialization/DocumentBuilder.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/serialization/DeserializationException.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresUserMemoryStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresUserConversationStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresScheduleStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresResourceStorageFactory.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresResourceStorage.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresMigrationManager.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresMigrationLogStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresHealthCheck.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresDeploymentStorage.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresDatabaseLogs.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresConversationMemoryStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresAuditStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresAttachmentStorage.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/postgres/PostgresAgentTriggerStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/mongo/codec/JacksonProvider.java Add SPDX license header for compliance (file contains third-party notice)
src/main/java/ai/labs/eddi/datastore/mongo/codec/JacksonCodec.java Add SPDX license header for compliance (file contains third-party notice)
src/main/java/ai/labs/eddi/datastore/mongo/ResultManipulator.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/mongo/ResourceFilter.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/mongo/MongoResourceStorageFactory.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/mongo/MongoResourceStorage.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/mongo/ModifiableHistorizedResourceStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/mongo/HistorizedResourceStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/mongo/DescriptorStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/mongo/AbstractMongoResourceStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/model/ResourceId.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/bootstrap/PersistenceModule.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/ModifiableHistorizedResourceStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/IResourceStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/IResourceStorageFactory.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/IResourceStorage.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/IResourceFilter.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/HistorizedResourceStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/DescriptorStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/DataStoreProducers.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/datastore/AbstractResourceStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/workflows/rest/RestWorkflowStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/workflows/rest/RestWorkflowStepStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/workflows/mongo/WorkflowStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/workflows/model/WorkflowConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/workflows/model/ExtensionDescriptor.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/workflows/IWorkflowStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/workflows/IRestWorkflowStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/workflows/IRestWorkflowStepStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/snippets/rest/RestPromptSnippetStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/snippets/mongo/PromptSnippetStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/snippets/model/PromptSnippet.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/snippets/IRestPromptSnippetStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/snippets/IPromptSnippetStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/schema/JsonSchemaCreator.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/schema/IJsonSchemaCreator.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rules/rest/RestRuleSetStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rules/mongo/RuleSetStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rules/model/RuleSetConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rules/model/RuleGroupConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rules/model/RuleConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rules/model/RuleConditionConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rules/IRuleSetStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rules/IRestRuleSetStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rest/RestVersionInfo.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rag/rest/RestRagStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rag/rest/RestRagIngestion.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rag/mongo/RagStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rag/model/RagConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rag/IRestRagStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rag/IRestRagIngestion.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/rag/IRagStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/propertysetter/rest/RestPropertySetterStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/propertysetter/mongo/PropertySetterStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/propertysetter/model/PropertySetterConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/propertysetter/IRestPropertySetterStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/propertysetter/IPropertySetterStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/properties/rest/RestUserMemoryStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/properties/rest/RestPropertiesStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/properties/mongo/PropertiesMigrationService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/properties/mongo/MongoUserMemoryStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/properties/model/UserMemoryEntry.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/properties/model/PropertyInstruction.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/properties/model/Property.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/properties/model/Properties.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/properties/IUserMemoryStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/properties/IRestUserMemoryStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/properties/IRestPropertiesStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/patch/PatchInstruction.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/parser/rest/RestParserStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/parser/mongo/ParserStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/parser/model/ParserConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/parser/IRestParserStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/parser/IParserStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/output/rest/keys/RestOutputActions.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/output/rest/RestOutputStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/output/mongo/OutputStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/output/model/OutputConfigurationSet.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/output/model/OutputConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/output/keys/IRestOutputActions.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/output/IRestOutputStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/output/IOutputStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/migration/model/MigrationLog.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/migration/V6RenameMigration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/migration/V6QuteMigration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/migration/TemplateSyntaxMigrator.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/migration/MigrationManager.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/migration/MigrationLogStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/migration/IMigrationManager.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/migration/IMigrationLogStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/migration/IDocumentMigration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/mcpcalls/rest/RestMcpCallsStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/mcpcalls/mongo/McpCallsStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/mcpcalls/model/McpCallsConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/mcpcalls/model/McpCall.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/mcpcalls/IRestMcpCallsStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/mcpcalls/IMcpCallsStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/llm/rest/RestLlmStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/llm/mongo/LlmStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/llm/IRestLlmStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/llm/ILlmStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/groups/rest/RestAgentGroupStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/groups/mongo/GroupConversationStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/groups/mongo/AgentGroupStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/groups/model/GroupConversation.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/groups/model/DiscussionStylePresets.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/groups/model/AgentGroupConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/groups/IRestAgentGroupStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/groups/IGroupConversationStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/groups/IAgentGroupStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/dictionary/rest/RestDictionaryStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/dictionary/mongo/DictionaryStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/dictionary/model/DictionaryConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/dictionary/expression/RestExpression.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/dictionary/expression/RestAction.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/dictionary/IRestExpression.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/dictionary/IRestDictionaryStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/dictionary/IRestAction.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/dictionary/IDictionaryStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/descriptors/rest/RestDocumentDescriptorStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/descriptors/mongo/DocumentDescriptorStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/descriptors/model/SimpleDocumentDescriptor.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/descriptors/model/ResourceDescriptor.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/descriptors/model/DocumentDescriptor.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/descriptors/ResourceUtilities.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/descriptors/IRestDocumentDescriptorStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/descriptors/IDocumentDescriptorStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/deployment/rest/RestDeploymentStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/deployment/mongo/MongoDeploymentStorage.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/deployment/mongo/DeploymentStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/deployment/model/DeploymentInfo.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/deployment/IRestDeploymentStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/deployment/IDeploymentStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/deployment/IDeploymentStorage.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/rest/RestApiCallsStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/mongo/ApiCallsStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/RetryApiCallInstruction.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/Request.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/QuickRepliesBuildingInstruction.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/PreRequest.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/PostResponse.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/OutputBuildingInstruction.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/HttpPreRequest.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/HttpPostResponse.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/HttpCodeValidator.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/BuildingInstruction.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/BatchRequestBuildingInstruction.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/ApiCallsConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/model/ApiCall.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/IRestApiCallsStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/apicalls/IApiCallsStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/agents/rest/RestCapabilityRegistry.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/agents/rest/RestAgentStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/agents/mongo/AgentStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/agents/model/AgentConfiguration.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/agents/IRestCapabilityRegistry.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/agents/IRestAgentStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/agents/IAgentStore.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/agents/CapabilityRegistryService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/agents/AgentSigningService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/admin/rest/RestOrphanAdmin.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/admin/model/OrphanReport.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/admin/model/OrphanInfo.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/admin/IRestOrphanAdmin.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/OpenApiConfig.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/configs/IRestVersionInfo.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/model/SyncRequest.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/model/SyncMapping.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/model/ImportPreview.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/model/ExportPreview.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/impl/ZipResourceSource.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/impl/ZipArchive.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/impl/UpgradeExecutor.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/impl/StructuralMatcher.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/impl/SourceUrlValidator.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/impl/RestImportService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/impl/RestExportService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/impl/RemoteApiResourceSource.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/impl/CallbackMatcher.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/impl/AbstractBackupService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/IZipArchive.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/IRestImportService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/IRestExportService.java Add SPDX license header for compliance
src/main/java/ai/labs/eddi/backup/IResourceSource.java Add SPDX license header for compliance
pom.xml Enable Java assertions for Surefire test runs
docs/security-review.md Add formal security review summary documentation
docs/code-review-standards.md Add code review standards documentation
docs/build-reproducibility.md Add build reproducibility documentation
GOVERNANCE.md Add governance and project decision-making documentation
AGENTS.md Strengthen contributor guidance around force-push avoidance and verification
.github/CODEOWNERS Update code owners to core maintainers
.githooks/pre-push Add hook to block non-fast-forward pushes

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread docs/security-review.md
Comment thread docs/code-review-standards.md
Comment thread .githooks/pre-push Outdated
Comment thread AGENTS.md
Comment thread AGENTS.md
Comment thread AGENTS.md
Comment thread AGENTS.md Outdated
ginccc added 2 commits April 25, 2026 00:26
- Renumber AGENTS.md workflow steps 3-8 (was duplicating step 7)
- Fix 5 third-party derived files: Portions copyright EDDI contributors
  (JacksonCodec, JacksonProvider, Id, IdDeserializer, IdSerializer)
- Harden pre-push hook for shallow clones: auto-fetch remote ref before
  declaring non-fast-forward, remove non-ASCII emoji from output
…ew.md

Verified against ci.yml:
- Cosign: every push to main + tags (not just releases)
- SLSA Provenance: same
- Trivy: filesystem scan on every push+PR, image scan in Docker job
@ginccc
ginccc merged commit 4d87109 into main Apr 26, 2026
22 of 23 checks passed
@ginccc
ginccc deleted the chore/openssf-gold-prep branch April 26, 2026 15:33
ginccc added a commit that referenced this pull request Apr 27, 2026
- changelog: corrected LogSanitizer behavior description (replace vs strip)
- AgentOrchestrator: sanitize groupIds entries before logging (CWE-117)
- LogSanitizerTest: fixed @DisplayName range to include 0x0B-0x0C
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.

3 participants