Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save jwmatthews/38d56cc9099874d94ed3f49fea315242 to your computer and use it in GitHub Desktop.

Select an option

Save jwmatthews/38d56cc9099874d94ed3f49fea315242 to your computer and use it in GitHub Desktop.
Notes running semver-analyzer with updates_rebased PR 5/26/2026

Overview

Testing PR konveyor-ecosystem/semver-analyzer#24

Building Zip File

$ cat test_build_updates-rebased.sh
export SEMVER_REPO_BRANCH=updates-rebased
export SEMVER_REPO_URL=https://github.com/jwmatthews/semver-analyzer.git
./build.sh

Testing Zip File with patternfly6-migration-bench

git clone git@github.com:jwmatthews/patternfly6-migration-bench.git

$ cat test_patternfly6_migration_bench.sh
time ./run.sh --migrate ./patternfly6-migration-bench --non-interactive

$ time ./test_patternfly6_migration_bench.sh
[INFO]  Using pre-packaged rules
[INFO]  Base branch: main
[INFO]  Creating migration branch: semver/goose/052626-1433
Already on 'main'
Your branch is up to date with 'origin/main'.
Switched to a new branch 'semver/goose/052626-1433'
[INFO]  Project:   /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/patternfly6-migration-bench
[INFO]  Branch:    semver/goose/052626-1433
[INFO]  Rules:     /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules
[INFO]  Agent:     goose
[INFO]  Temp dir:  /var/folders/4c/970lt3wx2kj653cfmt7xxrpc0000gn/T//pf-migrate.ClCeEm

[STEP 1/8] Generating provider settings

[STEP 2/8] Starting frontend-analyzer-provider
[INFO]  Running '/Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/bin/frontend-analyzer-provider serve -p 9002'
[INFO]  frontend-analyzer-provider started (PID 26828, port 9002)

[STEP 3/8] Running kantra analysis
[INFO]  Running '/Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/.kantra/kantra analyze --input /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/patternfly6-migration-bench --output /var/folders/4c/970lt3wx2kj653cfmt7xxrpc0000gn/T//pf-migrate.ClCeEm/kantra --rules /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules --override-provider-settings /var/folders/4c/970lt3wx2kj653cfmt7xxrpc0000gn/T//pf-migrate.ClCeEm/provider_settings.json --enable-default-rulesets=false --run-local --overwrite'
[INFO]  Follow logs: tail -f /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/logs/20260526T143347/kantra.log
[INFO]  Kantra analysis complete (0m15s)

[STEP 4/8] Stopping frontend-analyzer-provider
[INFO]  frontend-analyzer-provider stopped

[STEP 5/8] Converting kantra output to JSON
[INFO]  Converted: /var/folders/4c/970lt3wx2kj653cfmt7xxrpc0000gn/T//pf-migrate.ClCeEm/kantra/output.json

[STEP 6/8] Applying pattern-based fixes
[INFO]  Running 'unbuffer /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/bin/fix-engine-cli fix /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/patternfly6-migration-bench --input /var/folders/4c/970lt3wx2kj653cfmt7xxrpc0000gn/T//pf-migrate.ClCeEm/kantra/output.json --log-dir /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/logs/20260526T143347/fix-debug --strategies /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules/topology/fix-guidance/fix-strategies.json --strategies /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules/patternfly/fix-guidance/fix-strategies.json --strategies /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules/rcg/fix-guidance/fix-strategies.json --strategies /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules/sdk/fix-guidance/fix-strategies.json --strategies /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules/react-types/fix-guidance/fix-strategies.json'
[INFO]  Follow logs: tail -f /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/logs/20260526T143347/fix-pattern.log
[INFO]  Pattern-based fixes complete (0m17s)

[STEP 7/8] Applying LLM-based fixes
[INFO]  Running 'unbuffer /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/bin/fix-engine-cli fix /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/patternfly6-migration-bench --input /var/folders/4c/970lt3wx2kj653cfmt7xxrpc0000gn/T//pf-migrate.ClCeEm/kantra/output.json --llm-provider goose --goose-timeout 300 --log-dir /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/logs/20260526T143347/fix-debug --strategies /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules/topology/fix-guidance/fix-strategies.json --strategies /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules/patternfly/fix-guidance/fix-strategies.json --strategies /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules/rcg/fix-guidance/fix-strategies.json --strategies /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules/sdk/fix-guidance/fix-strategies.json --strategies /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/rules/react-types/fix-guidance/fix-strategies.json'
[INFO]  Follow logs: tail -f /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/logs/20260526T143347/fix-llm.log
[INFO]  LLM-based fixes complete (16m17s)
[INFO]  Committed automated fixes

[STEP 8/8] Running goose for remaining fixes
[INFO]  Running 'env GOOSE_MODE=auto goose run -i /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/prompt.md'
[INFO]  Follow logs: tail -f /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/logs/20260526T143347/agent-goose.log
[INFO]  Goose agent complete (4m57s)
[INFO]  Committed AI agent fixes
[INFO]  Stats written to: /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/patternfly6-migration-bench/.pf-migration/stats.json

[INFO]  Migration complete!
[INFO]  Project: /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/patternfly6-migration-bench
[INFO]  Kantra output: /var/folders/4c/970lt3wx2kj653cfmt7xxrpc0000gn/T//pf-migrate.ClCeEm/kantra/
[INFO]  Logs: /Users/jmatthews/synced/semver_example_runs/2026_05_26_updates_rebased/patternfly-tools/logs/20260526T143347/
[INFO]  Total runtime: 21m52s

real    21m52.411s
user    1m34.594s
sys     1m24.289s
./test_patternfly6_migration_bench.sh  94.60s user 84.29s system 13% cpu 21:52.42 total



Testing Zip File with quipucords-ui


git@github.com:jwmatthews/quipucords-ui.git
cd quipucords-ui
git checkout original_2.1.0

$ time ./run.sh --migrate ./quipucords-ui --base-branch original_2.1.0 --non-interactive


Building Container

$ cat build_container.sh
podman build -f Containerfile \
    -t semver-analyzer:updates-rebased \
    --build-arg SEMVER_REPO=https://github.com/jwmatthews/semver-analyzer.git  \
    --build-arg SEMVER_BRANCH=updates-rebased
  
 ...
 ...
 
 --> 817a1becdfc3
[10/10] STEP 28/33: RUN chmod 444 /root/.config/goose/config.yaml
--> 8649a19215b0
[10/10] STEP 29/33: COPY run.sh eval.sh prompt.md eval_prompt.md* ./
--> f3658df23fa6
[10/10] STEP 30/33: RUN chmod +x run.sh eval.sh bin/* .kantra/kantra
--> e988c5226c34
[10/10] STEP 31/33: VOLUME ["/workspace"]
--> d64d42028372
[10/10] STEP 32/33: ENTRYPOINT ["/opt/patternfly-tools/run.sh"]
--> b09c3a2e3462
[10/10] STEP 33/33: CMD ["--help"]
[10/10] COMMIT semver-analyzer:updates-rebased
--> c44691c53797
Successfully tagged localhost/semver-analyzer:updates-rebased
c44691c53797bd4bde7b938164cf27fc04b50620b1953e4e0af693782930c704
./build_container.sh  0.20s user 0.35s system 0% cpu 26:42.46 total
    

Testing the Container

$ cat test_kickoff.sh
IMAGE=semver-analyzer:updates-rebased
export GCP_PROJECT_ID="$ANTHROPIC_VERTEX_PROJECT_ID"
export GCP_LOCATION="$CLOUD_ML_REGION"

time ./run_container.sh --migrate quipucords-ui --base-branch original_2.1.0 --image ${IMAGE} --enable-eval --non-interactive 2>&1 | tee run_container_semver_from_$(date +%Y%m%d).log


$ ./test_kickoff.sh
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment