aa-conversion-funnel-a…
Analyzes a multi-step conversion funnel to find where visitors drop off and which steps have…
AEM Cloud Service expert skill — add explicit connect/read/socket timeouts to outbound HTTP clients constructed without one (Apache HttpClient 4.x/5.x, OkHttp, JDK java.net.http.HttpClient), including the JDK per-request read timeout on HttpRequest. Use for \"add HTTP
$ npx -y skills add adobe/skills --skill outbound-call-timeouts --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/outbound-call-timeoutsContext preview
The summary Claude sees to decide when to auto-load this skill.
AEM Cloud Service expert skill — add explicit connect/read/socket timeouts to outbound HTTP clients constructed without one (Apache HttpClient 4.x/5.x, OkHttp, JDK java.net.http.HttpClient), including the JDK per-request read timeout on HttpRequest. Use for \"add HTTP
name: outbound-call-timeouts description: "AEM Cloud Service expert skill — add explicit connect/read/socket timeouts to outbound HTTP clients constructed without one (Apache HttpClient 4.x/5.x, OkHttp, JDK java.net.http.HttpClient), including the JDK per-request read timeout on HttpRequest. Use for \"add HTTP timeouts\", \"this external/outbound call has no timeout\", or a scan that flags a timeout-less client. Highest-frequency CSO outage cause: a client on default (effectively infinite) timeouts holds request threads on a slow upstream until the Jetty pool saturates and the site goes down. The analyzer locates timeout-less construction sites; mechanical per-library remediation applies CSO-backed default timeouts (recipe.md)." license: Apache-2.0
> This pattern is executed by the code-assessment runbook — follow [`../references/runbook.md`](../references/runbook.md) for the full flow (preflight → plan → apply → verify, run log). This skill supplies the detection + recipe the runbook applies.
An HTTP client built without an explicit timeout inherits effectively-infinite connect/read defaults. When an upstream slows or hangs, every request thread blocks on that call; on AEM CS the shared Jetty request-thread pool saturates and the whole instance stops serving — this is the single highest-frequency cause in the CSO outage dataset. The fix sets a connect timeout **and** a read/socket timeout (and, for Apache, a connection-request timeout) so a stuck upstream fails fast instead of taking the instance down.
Detection is performed by the analyzer ([`../scripts/analyze.sh`](../scripts/README.md)), run by the runbook:
bash ../scripts/analyze.sh <workspace-root> --pattern outbound-call-timeouts
**Match criteria (what the detector flags):**
Parse-level only — no type resolution, so matching is textual.
**Conservative posture (intentional false negatives).** If a timeout is configured *anywhere* in the enclosing scope the site is skipped, even if it is the wrong knob — the detector prefers missing a real issue to flagging a safe client. The residual false-positive case (a client whose timeout is supplied from a *different* method — an injected `RequestConfig` or a shared `HttpClientFactory`) is caught at remediation by the recipe's skip policy, not at detection.
**self-evident** — fixed default timeouts are applied; the developer supplies nothing up front (they review the resulting diff). Defaults: **connect 3 s, read/socket 8 s, Apache connection-request 2 s** — bounded against the infinite-hang outage and CSO-aligned; tighten in review if the upstream's SLA is stricter. The library and edit template are picked deterministically from the construction site's import package (`org.apache.http` → Apache 4.x, `org.apache.hc` → Apache 5.x, `okhttp3` → OkHttp, `java.net.http` → JDK). All are fully mechanical — for the JDK client the connect timeout goes on the client, and JDK `HttpRequest.newBuilder()…build()` chains are detected and fixed separately with a per-request `.timeout(...)`. Cases that cannot be completed deterministically (non-standard construction shapes) are skipped with a reason, never guessed.
Read [`recipe.md`](recipe.md) in full before editing: input contract, locator, per-library remediation (Apache 4.x/5.x, OkHttp, JDK `ja
Repo: adobe/skills
Analyzes a multi-step conversion funnel to find where visitors drop off and which steps have…
Generates a concise, executive-ready performance summary covering key metrics, trends, and…
Produces a compact KPI digest showing how key metrics changed over a period and what's…
Compares the performance of two or more audience segments across key metrics side by side.…
Identifies which items (pages, campaigns, products, channels, regions) had the biggest…
Comprehensive dimension analysis and reporting for CJA. Use this skill whenever the user…