1686 Commits

Author SHA1 Message Date
Affaan Mustafa
75c2503abd feat: add ecc2 git staging ui controls 2026-04-09 20:22:51 -07:00
Affaan Mustafa
e2b24e43a2 feat: share dependency caches across ecc2 worktrees 2026-04-09 20:09:41 -07:00
Affaan Mustafa
d0dbb20805 feat: add ecc2 merge queue reporting 2026-04-09 20:04:04 -07:00
Affaan Mustafa
cf8b5473c7 feat: group ecc2 sessions by project and task 2026-04-09 19:54:28 -07:00
Affaan Mustafa
181bc26b29 docs: add ecc recovery guidance for wiped setups 2026-04-09 18:13:07 -07:00
AlexisLeDain
46db568c38 fix: use doNothing for void Panache persist() in verification test example
Panache persist() returns void, so when().thenReturn() won't compile.
Replaced with doNothing().when().persist() which is the correct
Mockito pattern for void methods.
2026-04-09 18:39:21 +02:00
Alexis Le Dain
408b262f11
Update skills/quarkus-tdd/SKILL.md
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-09 18:35:52 +02:00
Alexis Le Dain
aca8dda78c
Update skills/quarkus-patterns/SKILL.md
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-09 18:35:23 +02:00
Alexis Le Dain
53e2e798f7
Update skills/quarkus-tdd/SKILL.md
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-09 18:35:08 +02:00
Alexis Le Dain
e3d4e33ddb
Update skills/quarkus-patterns/SKILL.md
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-09 18:30:31 +02:00
Alexis Le Dain
80daa6dc78
Update skills/quarkus-verification/SKILL.md
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-09 18:20:11 +02:00
Alexis Le Dain
6ed9b49a5b
Update skills/quarkus-patterns/SKILL.md
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-09 18:16:23 +02:00
Affaan Mustafa
0513898b9d feat: add otel export for ecc sessions 2026-04-09 09:02:39 -07:00
Affaan Mustafa
2048f0d6f5 feat: add word diff highlighting to tui diffs 2026-04-09 08:55:53 -07:00
Affaan Mustafa
f5437078e1 feat: add diff view modes and hunk navigation 2026-04-09 08:41:10 -07:00
Affaan Mustafa
13f99cbf1c feat: add worktree retention cleanup policy 2026-04-09 08:29:21 -07:00
AlexisLeDain
56bbbb3dbe fix: handle checked JsonProcessingException in serializePayload
writeValueAsString throws checked JsonProcessingException which was
unhandled, causing a compile error. Wrapped in try/catch, rethrowing
as IllegalStateException.
2026-04-09 17:28:56 +02:00
Affaan Mustafa
491f213fbd feat: enforce queued parallel worktree limits 2026-04-09 08:23:01 -07:00
Affaan Mustafa
941d4e6172 feat(ecc2): enforce configurable worktree branch prefixes 2026-04-09 08:08:42 -07:00
Affaan Mustafa
b01a300c31 feat(ecc2): persist tool log params and trigger context 2026-04-09 08:04:18 -07:00
Affaan Mustafa
f28f55c41e feat(ecc2): surface overlapping file activity 2026-04-09 07:54:27 -07:00
Affaan Mustafa
31f672275e feat(ecc2): infer tracked write modifications 2026-04-09 07:48:29 -07:00
Affaan Mustafa
eee9768cd8 feat(ecc2): persist file activity patch previews 2026-04-09 07:45:37 -07:00
AlexisLeDain
e928ceacee fix: assert Camel route body as String after JSON marshalling
The route calls .marshal().json() before reaching the mock endpoint,
so the body is a JSON String, not a POJO. Removed expectedBodiesReceived
with POJO and getBody(BusinessRulesPayload.class), replaced with
String body assertion using contains().
2026-04-09 16:42:26 +02:00
Affaan Mustafa
c395b42d2c feat(ecc2): persist file activity diff previews 2026-04-09 07:40:28 -07:00
Affaan Mustafa
edd027edd4 feat(ecc2): classify typed file activity 2026-04-09 07:33:42 -07:00
Affaan Mustafa
a0f69cec92 feat(ecc2): surface per-file session activity 2026-04-09 07:27:17 -07:00
Affaan Mustafa
24a3ffa234 feat(ecc2): add session heartbeat stale detection 2026-04-09 07:20:40 -07:00
AlexisLeDain
c399627377 fix: add input guards to EventService to match TDD test expectations
Tests assert null-payload and blank-error-message guards but the
implementation had none. Added Objects.requireNonNull for payload
and blank check for errorMessage. Also added missing objectMapper
field to locale copies.
2026-04-09 16:12:44 +02:00
AlexisLeDain
eddfeb6fbf fix(security): reject requests with missing/malformed auth header
The custom auth filter only rejected invalid tokens but silently
passed through requests without an Authorization header, creating
a complete auth bypass. Inverted the guard to reject-first: abort
immediately when header is absent or malformed, then validate.
2026-04-09 16:09:10 +02:00
AlexisLeDain
8f65048bc3 fix(security): replace spoofable X-Forwarded-For with getRemoteAddr in rate limiter
X-Forwarded-For is client-controlled and trivially bypassable for rate
limiting. Replaced with HttpServletRequest.getRemoteAddr() which uses
the container-provided remote address. Added note about configuring
quarkus.http.proxy.proxy-address-forwarding for trusted proxy setups.
2026-04-09 16:07:46 +02:00
AlexisLeDain
893eca0369 fix: use Quarkus Platform Camel BOM instead of Apache Camel BOM
org.apache.camel.quarkus:camel-quarkus-bom follows its own release
cadence and doesn't align with quarkus.platform.version. Replaced
with io.quarkus.platform:quarkus-camel-bom which is published at
the same version as quarkus-bom.
2026-04-09 16:05:28 +02:00
AlexisLeDain
9b4704fe3d fix: resolve compile errors in quarkus code examples
- Add missing @Slf4j and bucketName field to FileStorageService
- Fix PaginatedList → List type mismatch (Panache returns List)
- Fix executorService.submit → execute mock (supplyAsync uses execute)
- Update S3 failure test to throw from putObject instead of failed future

Applied to English + all 3 locale copies (tr, ja-JP, zh-CN).
2026-04-09 16:04:06 +02:00
Affaan Mustafa
48fd68115e feat(ecc2): sync hook activity into session metrics 2026-04-09 07:02:24 -07:00
Affaan Mustafa
6f08e78456 feat: auto-pause ecc2 sessions when budgets are exceeded 2026-04-09 06:47:28 -07:00
Affaan Mustafa
67d06687a0 feat: add ecc2 configurable budget thresholds 2026-04-09 06:36:22 -07:00
Alexis Le Dain
ca7ff001ce
Update skills/quarkus-patterns/SKILL.md
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-09 15:32:51 +02:00
Affaan Mustafa
95c33d3c04 feat: add ecc2 budget alert thresholds 2026-04-09 06:31:54 -07:00
Affaan Mustafa
08f61f667d feat: sync ecc2 cost tracker metrics 2026-04-09 06:22:20 -07:00
Affaan Mustafa
cf9c68846c feat: add ecc2 ctrl-w pane commands 2026-04-09 06:08:59 -07:00
Affaan Mustafa
a54799127c feat: make ecc2 pane navigation shortcuts configurable 2026-04-09 06:05:27 -07:00
Affaan Mustafa
c6e26ddea4 feat: surface ecc2 tool and file metrics in sessions pane 2026-04-09 05:58:54 -07:00
Affaan Mustafa
f136a4e0d6 feat: add ecc2 direct pane focus shortcuts 2026-04-09 05:53:55 -07:00
Affaan Mustafa
3c16c85a75 feat: add ecc2 global timeline scope 2026-04-09 05:48:58 -07:00
Affaan Mustafa
0c509fe57e feat: add ecc2 session timeline mode 2026-04-09 05:43:34 -07:00
Affaan Mustafa
996edff6d1 feat: collapse ecc2 detail panes 2026-04-09 05:34:36 -07:00
Affaan Mustafa
f2cfaee6fe feat: jump ecc2 approval queue targets 2026-04-09 05:27:43 -07:00
Affaan Mustafa
dc36a636af feat: navigate delegates from ecc2 lead board 2026-04-09 05:21:02 -07:00
Affaan Mustafa
6fc3f7c3f4 feat: scroll ecc2 metrics across full teams 2026-04-09 05:10:40 -07:00
Affaan Mustafa
f29e70883c feat: add ecc2 delegate blocker hints 2026-04-09 05:05:53 -07:00