You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Protected develop@622e5e6c3d534f230c390f10e3832efadfc01825 configures Java compiler encoding as UTF-8 but does not define Maven's project resource encoding. Current hosted builds repeatedly emit:
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
for etl-service, cdc-service, config-server, eureka-server, zuul-gateway, and test resources. CI #216 run 31365172201, macOS job 93381895015, reproduced this on Java 25.0.3 while the full reactor otherwise succeeded.
Status: known_gap / defer_until_trigger for root-POM mutation while direct-develop security PR #160 actively owns pom.xml. Do not create a competing root-POM writer merely to clear the warning. Re-read active POM owners and exact protected base immediately before implementation.
RCA
Immediate cause: Maven Resources Plugin has no explicit project/resource encoding and falls back to the platform default.
Technical root cause: compiler source encoding and resource-copy/filter encoding are separate Maven inputs; configuring <maven-compiler-plugin><encoding>UTF-8</encoding> does not establish ${project.build.sourceEncoding} for Maven resource goals.
Risk: a different default platform encoding can transform filtered/non-ASCII resource bytes differently from the same source, weakening reproducibility and potentially changing runtime configuration/content without a source diff.
Apache Maven Resources Plugin documents the encoding parameter default as ${project.build.sourceEncoding} and its maintained encoding guidance identifies defining <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> in project properties as the best-practice project-wide contract. Maven's reproducible-build guidance separately defines reproducibility in terms of recreating identical artifacts from the same source/build inputs.
Bounded remediation after the root-POM writer lane is clear
Re-read protected root pom.xml, every open PR touching it, and the exact active writer lease.
RED first: add a repository/POM contract requiring exact project.build.sourceEncoding=UTF-8 and, where properties-resource semantics require distinction, prove whether project.build.outputTimestamp / propertiesEncoding are separately needed rather than guessing.
Observe hosted RED at the Maven configuration/resource boundary; setup/import/fixture failure does not qualify.
Apply the smallest supported root-POM property change. Do not duplicate an active fix(security): move Jackson to fixed 2.21.5 baseline #160 POM edit, introduce a competing Maven Resources Plugin version without cause, or rely on runner-wide file.encoding as repository authority.
Re-run the full hosted matrix and require the platform-encoding resource warnings to disappear across all reactor modules.
Add source-backed reproducibility doctoring/CHANGELOG only after behavior GREEN if a fail-first documentation contract requires it.
Buyer / reproducibility gap
Protected
develop@622e5e6c3d534f230c390f10e3832efadfc01825configures Java compiler encoding as UTF-8 but does not define Maven's project resource encoding. Current hosted builds repeatedly emit:for
etl-service,cdc-service,config-server,eureka-server,zuul-gateway, and test resources. CI #216 run31365172201, macOS job93381895015, reproduced this on Java 25.0.3 while the full reactor otherwise succeeded.Status:
known_gap/defer_until_triggerfor root-POM mutation while direct-develop security PR #160 actively ownspom.xml. Do not create a competing root-POM writer merely to clear the warning. Re-read active POM owners and exact protected base immediately before implementation.RCA
<maven-compiler-plugin><encoding>UTF-8</encoding>does not establish${project.build.sourceEncoding}for Maven resource goals.Apache Maven Resources Plugin documents the
encodingparameter default as${project.build.sourceEncoding}and its maintained encoding guidance identifies defining<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>in project properties as the best-practice project-wide contract. Maven's reproducible-build guidance separately defines reproducibility in terms of recreating identical artifacts from the same source/build inputs.Bounded remediation after the root-POM writer lane is clear
pom.xml, every open PR touching it, and the exact active writer lease.project.build.sourceEncoding=UTF-8and, where properties-resource semantics require distinction, prove whetherproject.build.outputTimestamp/propertiesEncodingare separately needed rather than guessing.file.encodingas repository authority.Acceptance
resources:resourcesandresources:testResourcesno longer report platform-dependent encoding on supported hosted runners;Primary references — APA 7
Apache Maven Project. (2026). Specifying a character encoding scheme. Apache Maven Resources Plugin. https://maven.apache.org/plugins/maven-resources-plugin/examples/encoding.html
Apache Maven Project. (2026). resources:resources. Apache Maven Resources Plugin. https://maven.apache.org/plugins/maven-resources-plugin/resources-mojo.html
Apache Maven Project. (2026). Configuring for reproducible builds. https://maven.apache.org/guides/mini/guide-reproducible-builds.html
Relationships: #165 release/reproducibility; #160 active shared root-POM security owner; #159 canonical documentation.