with one click
release-notes
Generate release notes for the current version.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Generate release notes for the current version.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Monitor GitLab CI and GitHub Actions for this repo: start check-ci, tail results with ci-watch, investigate failures, and report. Use when the user asks to check, watch, or monitor CI, or to see whether a pipeline passed.
Analyze a dd-trace-php crash report (event.json) to identify the crashing binary, correlate stacktraces to source code, and determine root cause. Use when investigating wild crash reports from crash tracking.
| name | release-notes |
| description | Generate release notes for the current version. |
| allowed-tools | Bash Read Grep Glob Agent |
| effort | high |
Creating CHANGELOG.md.
Have a look at the VERSION file in the dd-trace-php root. Increment the minor version by one, unless the file is already modified in the current worktree.
Go to the milestones of https://github.com/Datadog/dd-trace-php and fetch all pull requests matching the to-be-released version.
Assess all pull requests according to whether they are purely maintainance-related (CI, internal infrastructure, minor test fixes, ... everything not influencing the release artifact itself), or not. If not, categorize them:
Further check which product category a fix belongs in: Tracer, Profiling or AppSec. Loader (SSI) or general changes affecting multiple products belong to the All products section.
Evaluate for any PR whether it's just a fixup of a previous PR.
Create a CHANGED-PRs.md detailing the categorization for each PR with an one sentence summary describing the reason.
Compare the pinned commit of libdatadog against the libdatadog commit from the latest release. Find all libdatadog changes and assess whether they're meaningfully adding to a feature. Important: Ignore those commits which are clearly not related to functionalities exposed by ddtrace. Outright ignore everything not a dependency of the sidecar. Skip changes categorized as internal, unless they directly affect the sidecar / ipc.
Add a secondary section to CHANGED-PRs.md, which includes all non-ignored commits.
Do the same categorization than in Phase 1, and mark those which are clearly encompassed by other PRs from Phase 1.
Keep in mind that most changes in libdatadog are related to the Tracer.
Example structure of a CHANGELOG.md to generate:
Changelog for older versions can be found in our [release page](https://github.com/DataDog/dd-trace-php/releases).
## All products
### Internal
- Update and shrink build images, migrate to clang 19 #3771
## Tracer
### Added
- Support ApmTracingMulticonfig in dynamic config #3773, #3843
### Fixed
- Improve Symfony http.route resolution performance #3779 (thank you @<name> for the report!)
- Wrap PDO::__construct for signal handling #3786
### Internal
- Fix spawn\_worker trampoline issues DataDog/libdatadog#1844
## Profiling
### Changed
- Improved performance by avoiding a copy of func name when utf8 #3700
## AppSec
### Added
- Enable rust helper on PHP 8.5 #3780 (can be disabled with `DD_APPSEC_HELPER_RUST_REDIRECTION=false`)
Present the CHANGELOG.md to the user.
When uncertain about the categorization of some PRs, use the AskUserQuestion tool and ask the user to categorize himself, with a your preference and reason why. Otherwise, we're done.