This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch 
feature/WW-5695-html5-constraint-validation
in repository https://gitbox.apache.org/repos/asf/struts.git

commit 60dfbc7c2a28e59e454941b486f674195f61fba8
Author: Lukasz Lenart <[email protected]>
AuthorDate: Mon Aug 24 20:00:13 2026 +0200

    WW-5695 docs(validation): require the licence header on every new file in 
the plan
    
    The plan's code blocks omit the ASF header for brevity, and a task reviewer
    caught an implementer transcribing that omission into a real test file.
    
    apache-rat-plugin:check runs at prepare-package, so mvn test -DskipAssembly 
—
    the command every task in the plan uses to verify itself — never runs the
    licence check. A missing header passes every task-level gate and fails CI.
    
    Co-Authored-By: Claude Opus 5 <[email protected]>
---
 docs/superpowers/plans/2026-08-24-html5-constraint-validation.md | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/docs/superpowers/plans/2026-08-24-html5-constraint-validation.md 
b/docs/superpowers/plans/2026-08-24-html5-constraint-validation.md
index ecbad39f8..aa8619535 100644
--- a/docs/superpowers/plans/2026-08-24-html5-constraint-validation.md
+++ b/docs/superpowers/plans/2026-08-24-html5-constraint-validation.md
@@ -15,6 +15,12 @@
 ## Global Constraints
 
 - Target version string in every `@Deprecated` annotation: `since = "7.4.0", 
forRemoval = true`.
+- **Every new file — main source AND test source — must carry the Apache 
licence header**, copied verbatim
+  from a sibling file in the same directory. The code blocks in this plan omit 
it for brevity; that omission
+  is not permission to skip it. `apache-rat-plugin:check` is bound to the 
`prepare-package` phase
+  (`pom.xml:549-555`), so `mvn test -DskipAssembly` — the command every task 
below uses — **never runs the
+  licence check**. A missing header therefore passes every task-level 
verification in this plan and fails
+  the real build. Add it as you create each file.
 - **Tests are JUnit 4 or JUnit 3. There is no JUnit 5 in this repo.** New 
pure-unit test classes use `org.junit.Test`. Any test that renders a tag must 
extend `AbstractUITagTest` (JUnit 3 style: methods named `testXxx()`, no 
annotation). A Jupiter `@Test` on an `XWorkTestCase` subclass silently never 
runs.
 - Commit message format: `WW-XXXX <type>(<scope>): <description>`. Ticket 
prefix is mandatory.
 - Never commit to `main`. Work happens on 
`feature/WW-5695-html5-constraint-validation`.

Reply via email to