Commit graph

7944 commits

Author SHA1 Message Date
Kevin Turcios
8fe6b8fd56 fix(ci): skip e2e tests on Dependabot PRs
Dependabot PRs can't access repo secrets, so e2e tests always fail
with missing CODEFLASH_API_KEY. Skip all three e2e job groups
(Python, JS, Java) when the actor is dependabot[bot]. The gate job
already accepts skipped jobs.
2026-04-23 05:20:46 -05:00
Kevin Turcios
25ba54e3e7
Merge pull request #2101 from codeflash-ai/dependabot/github_actions/actions/cache-5
chore(deps): bump actions/cache from 4 to 5
2026-04-23 05:19:45 -05:00
Kevin Turcios
bf8a1e469e
Merge pull request #2100 from codeflash-ai/dependabot/github_actions/actions/upload-artifact-7
chore(deps): bump actions/upload-artifact from 4 to 7
2026-04-23 05:19:43 -05:00
Kevin Turcios
c0b728beff
Merge pull request #2099 from codeflash-ai/dependabot/github_actions/softprops/action-gh-release-3
chore(deps): bump softprops/action-gh-release from 2 to 3
2026-04-23 05:19:40 -05:00
Kevin Turcios
2c3e0f66e0
Merge pull request #2098 from codeflash-ai/dependabot/github_actions/astral-sh/setup-uv-8.1.0
chore(deps): bump astral-sh/setup-uv from 8.0.0 to 8.1.0
2026-04-23 05:19:37 -05:00
Kevin Turcios
f39b953af0
Merge pull request #2097 from codeflash-ai/dependabot/github_actions/actions/github-script-9
chore(deps): bump actions/github-script from 7 to 9
2026-04-23 05:19:35 -05:00
Kevin Turcios
adb1b556bf
Merge pull request #2109 from codeflash-ai/chore/fix-dependabot-alerts-and-flaky-esm
chore: triage dependabot alerts and fix flaky esm-async e2e
2026-04-23 05:12:57 -05:00
Kevin Turcios
9a2a3f734d chore: mark js-esm-async e2e as allowed failure
The async optimization e2e is LLM-quality dependent — the optimizer
struggles to produce correct candidates for Promise.all patterns,
causing consistent failures unrelated to code correctness. Mark it
continue-on-error so it doesn't block the gate job.
2026-04-23 05:11:51 -05:00
Kevin Turcios
ba56064c72
Merge pull request #2108 from codeflash-ai/chore/fix-claude-hooks
chore: fix claude hooks and add LSP tool env
2026-04-23 05:09:47 -05:00
Kevin Turcios
5cb0a44cce chore: fix claude hooks and add LSP tool env
- bash-guard: block awk (was missing from blocked commands)
- post-compact: replace fragile sed JSON escaping with jq -n --arg
- track-read: deduplicate entries before appending to .read-tracker
- settings: remove redundant Edit→require-read hook (built-in handles it)
- settings: add ENABLE_LSP_TOOL=1 for inline LSP diagnostics
2026-04-23 05:08:37 -05:00
Kevin Turcios
3224f21cf7
Merge pull request #2107 from codeflash-ai/chore/skip-linked-issue-org-members
chore: skip linked-issue check for org members
2026-04-23 05:06:53 -05:00
Kevin Turcios
92c8727495 fix: only skip linked-issue check for org members, not collaborators 2026-04-23 05:05:12 -05:00
Kevin Turcios
b2858dc328 chore: skip linked-issue check for org members
Use github.event.pull_request.author_association to bypass the
linked-issue requirement for MEMBER and COLLABORATOR authors.
External contributors still must reference an issue or discussion.
2026-04-23 05:01:02 -05:00
Kevin Turcios
dc5090e2dd
Merge pull request #2105 from codeflash-ai/feat/js-tracer-rebase-v2
feat(js): add JavaScript function tracer with Babel instrumentation
2026-04-23 05:00:22 -05:00
Kevin Turcios
d2ec01a0de
Merge pull request #2106 from codeflash-ai/chore/bump-dependency-versions
chore: bump all dependency versions to latest
2026-04-23 04:44:37 -05:00
Kevin Turcios
531ba0bc2f chore: bump all dependency lower bounds to latest 3.9-compatible versions
Update pyproject.toml lower bounds and run uv lock --upgrade to pull latest versions into the lockfile.
2026-04-23 04:43:39 -05:00
Kevin Turcios
91f603f78d
Merge pull request #2103 from codeflash-ai/chore/rebuild-claude-config
chore: rebuild .claude config from scratch
2026-04-23 04:42:30 -05:00
Kevin Turcios
0061739c03 chore: add mypy to pre-commit config and document setup
- Add mypy as a local pre-commit hook via prek (ruff-check + ruff-format
  + mypy now all run at commit time)
- Add Setup section to CLAUDE.md with uv sync and prek install steps
2026-04-23 04:38:34 -05:00
Kevin Turcios
892bff485d feat(js): add JavaScript function tracer with Babel instrumentation
Replaces source-level JavaScript function tracing with Babel AST
transformation via babel-tracer-plugin.js and trace-runner.js. Adds
replay test generation, Python-side tracer runner, and --language
flag to the tracer CLI for explicit JS/TS routing.
2026-04-23 04:33:58 -05:00
Kevin Turcios
e4b1fb854b chore: rebuild .claude config from scratch
Delete all existing .claude/ tracked files and recreate from scratch,
adapting patterns from codeflash-agent.

Hooks (6, up from 1):
- bash-guard: blocks grep/find/cat in Bash, redirects to dedicated tools
- require-read + track-read: enforces Read-before-Write/Edit
- post-compact: injects git state + project conventions into compaction
- post-edit-lint: runs prek on edited Python files (kept)
- status-line: shows user, area, branch, dirty state

Rules (10, up from 8):
- New: sessions, debugging, github (from codeflash-agent)
- Rewrote: code-style (absorbed source-code), git (added sizing/hygiene)
- Removed: source-code (folded into code-style)

Settings: permissions allowlist, attribution, includeCoAuthoredBy, full
hook wiring, status line, enableAllProjectMcpServers.

.gitignore: whitelist .claude/skills/ for tracking.
2026-04-23 04:31:04 -05:00
dependabot[bot]
86e11dbb38
chore(deps): bump actions/cache from 4 to 5
Bumps [actions/cache](https://github.com/actions/cache) from 4 to 5.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-23 09:15:47 +00:00
dependabot[bot]
a396c62160
chore(deps): bump actions/upload-artifact from 4 to 7
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-23 09:15:43 +00:00
dependabot[bot]
647eb4ba17
chore(deps): bump softprops/action-gh-release from 2 to 3
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2 to 3.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v2...v3)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-version: '3'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-23 09:15:40 +00:00
dependabot[bot]
740c61a679
chore(deps): bump astral-sh/setup-uv from 8.0.0 to 8.1.0
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 8.0.0 to 8.1.0.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/v8.0.0...v8.1.0)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 8.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-23 09:15:37 +00:00
dependabot[bot]
2b5eef8d20
chore(deps): bump actions/github-script from 7 to 9
Bumps [actions/github-script](https://github.com/actions/github-script) from 7 to 9.
- [Release notes](https://github.com/actions/github-script/releases)
- [Commits](https://github.com/actions/github-script/compare/v7...v9)

---
updated-dependencies:
- dependency-name: actions/github-script
  dependency-version: '9'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-23 09:15:32 +00:00
Kevin Turcios
bb3a447191
Remove test fixture lockfiles, re-enable Dependabot (#2096)
Remove test fixture lockfiles, re-enable Dependabot
2026-04-23 04:14:57 -05:00
Kevin Turcios
d7a4c762cf Remove test fixture lockfile: code_to_optimize_vitest 2026-04-23 04:14:16 -05:00
Kevin Turcios
d4f4563f0d Remove test fixture lockfile: code_to_optimize_ts 2026-04-23 04:14:08 -05:00
Kevin Turcios
3080c1df80 Remove test fixture lockfile: code_to_optimize_mocha 2026-04-23 04:14:01 -05:00
Kevin Turcios
a1d822801a Remove test fixture lockfile: code_to_optimize_js_esm 2026-04-23 04:13:58 -05:00
Kevin Turcios
6c58ac462b Remove test fixture lockfile: code_to_optimize_js_cjs 2026-04-23 04:13:56 -05:00
Kevin Turcios
14be2aa1f8 Remove test fixture lockfile: code_to_optimize_js 2026-04-23 04:13:54 -05:00
Kevin Turcios
d6d40ed431 Gitignore code_to_optimize lockfiles, re-enable Dependabot updates
- Add code_to_optimize/**/package-lock.json to .gitignore
- Re-enable Dependabot version updates with limit of 5 PRs per ecosystem
- Keep code_to_optimize/ ignore comment in dependabot.yml
2026-04-23 04:13:23 -05:00
Kevin Turcios
e1a7569c94
Merge pull request #2061 from codeflash-ai/dependabot/uv/uv-0.11.6
chore(deps-dev): bump uv from 0.11.2 to 0.11.6
2026-04-23 03:26:11 -05:00
Kevin Turcios
d76c516e84
Merge pull request #2078 from codeflash-ai/dependabot/uv/lxml-6.1.0
chore(deps): bump lxml from 6.0.2 to 6.1.0
2026-04-23 03:25:08 -05:00
Kevin Turcios
8956fdac22
Merge pull request #2094 from codeflash-ai/test/coverage-infrastructure
test: set up coverage infrastructure in CI
2026-04-23 03:18:57 -05:00
Kevin Turcios
970aeb4430
Merge branch 'main' into dependabot/uv/uv-0.11.6 2026-04-23 03:12:55 -05:00
Kevin Turcios
a3bb01243e
Merge branch 'main' into dependabot/uv/lxml-6.1.0 2026-04-23 03:12:54 -05:00
Kevin Turcios
14ca2c897d
Merge pull request #2093 from codeflash-ai/chore/require-linked-issue-on-prs
chore: require PRs to link an issue or discussion
2026-04-23 03:08:29 -05:00
Kevin Turcios
0232d84a7d fix: exclude test_tracer.py from coverage run and lower floor to 58%
pytest-cov's trace function conflicts with the Tracer class under test,
causing it to self-disable in CI. Linux also reports ~1% lower coverage
than macOS due to platform-specific branches.
2026-04-23 03:04:49 -05:00
Kevin Turcios
a4b74fa500
Merge pull request #2095 from codeflash-ai/chore/add-codeowners
chore: add CODEOWNERS based on git history
2026-04-23 02:56:39 -05:00
Kevin Turcios
9d9e7cd0ee chore: add CODEOWNERS based on git history
Assigns per-directory code ownership to current org members based on
full commit history analysis, so PRs automatically request reviews from
the right people.
2026-04-23 02:55:05 -05:00
Kevin Turcios
2c79e50d68 test: set up coverage infrastructure in CI
- Add pytest-cov to dev dependencies
- Add .coveragerc with branch coverage, 60% floor (current baseline),
  and source/omit configuration
- Add coverage CI job (ubuntu/py3.13) that runs pytest with --cov,
  enforces the floor, and uploads coverage.xml as an artifact
- Wire coverage into the required-checks-passed gate

Closes #2080
2026-04-23 02:30:46 -05:00
Kevin Turcios
972d88c108 chore: require PRs to link an issue or discussion
- Add PR template with required linked issue/discussion section
- Add check-linked-issue CI job that validates PR body contains a
  reference (#123, Closes/Fixes/Relates, GitHub URL, or CF-# ticket)
- Wire into required-checks-passed gate so it blocks merge
- Update CONTRIBUTING.md with the policy and motivation
2026-04-23 02:27:49 -05:00
dependabot[bot]
83c87a75a1
chore(deps): bump lxml from 6.0.2 to 6.1.0
Bumps [lxml](https://github.com/lxml/lxml) from 6.0.2 to 6.1.0.
- [Release notes](https://github.com/lxml/lxml/releases)
- [Changelog](https://github.com/lxml/lxml/blob/master/CHANGES.txt)
- [Commits](https://github.com/lxml/lxml/compare/lxml-6.0.2...lxml-6.1.0)

---
updated-dependencies:
- dependency-name: lxml
  dependency-version: 6.1.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-21 23:06:07 +00:00
mashraf-222
67cf123929
Merge pull request #2064 from codeflash-ai/fix/tracer-subprocess-exit-codes
fix: check subprocess exit codes in Java tracer
2026-04-21 15:35:46 +02:00
Kevin Turcios
1d26014d61
Merge pull request #2077 from mvanhorn/cf-522-contributing-guide
docs: add CONTRIBUTING.md
2026-04-21 03:30:52 -05:00
Matt Van Horn
1112646e4e
docs: add CONTRIBUTING.md
Closes #522

Covers the two audiences the issue calls out:

1. People contributing changes back to Codeflash - development
   environment setup with uv, the single-command verification via
   uv run prek, test runner invocation, code-style pointers to
   .claude/rules/code-style.md, and the branch / commit / PR
   conventions from .claude/rules/git.md and CLAUDE.md.

2. People using Codeflash in editable mode from a source checkout
   to optimize their own projects, including the install commands
   for uv and pip, when editable mode is appropriate vs installing
   the PyPI package, and a pointer to the README Quick Start for
   the codeflash init flow.
2026-04-21 01:29:03 -07:00
mashraf-222
ef535b8834
Merge pull request #2065 from codeflash-ai/fix/gradle-configure-on-demand
fix: add --configure-on-demand to all Gradle commands
2026-04-21 03:44:10 +02:00
Mohamed Ashraf
a4473c3684 merge: resolve conflict with main — adapt exit-code handling to combined invocation
Keep the combined JFR + tracing agent single JVM invocation from main while
preserving the fix's intent: raise when trace-db was not created, warn when
exit code is non-zero but trace-db exists. Integration tests rewritten to
match the combined-invocation semantics.
2026-04-21 01:40:26 +00:00