Remove legacy model_multipliers.json artifacts and file-based multiplier merge path#38642
Conversation
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
model_multipliers.json artifacts and file-based multiplier merge path
There was a problem hiding this comment.
Pull request overview
This PR removes the legacy model_multipliers.json artifacts and the remaining runtime path that merged model multipliers into AWF config from a file under /tmp/gh-aw/. Model multipliers now remain inline in the generated AWF config JSON, and related tests/golden outputs are updated accordingly.
Changes:
- Delete legacy multiplier JSON assets and the JS runtime merge script/tests, and stop generating
/tmp/gh-aw/model_multipliers.json. - Remove the runtime invocation path that post-processed AWF config; keep
apiProxy.modelMultipliersinline in generated AWF config JSON. - Update docs/schema/comments and wasm golden fixtures/tests to match the new generated workflow/config output.
Show a summary per file
| File | Description |
|---|---|
| scripts/generate-model-tables.js | Drops multiplier-table generation; updates docs output to model aliases only. |
| pkg/workflow/testdata/TestWasmGolden_CompileFixtures/with-imports.golden | Removes multipliers artifact upload + merge script invocation from golden output. |
| pkg/workflow/testdata/TestWasmGolden_CompileFixtures/smoke-copilot.golden | Removes multipliers artifact upload + merge script invocation from golden output. |
| pkg/workflow/testdata/TestWasmGolden_CompileFixtures/playwright-cli-mode.golden | Removes multipliers artifact upload + merge script invocation from golden output. |
| pkg/workflow/testdata/TestWasmGolden_CompileFixtures/basic-copilot.golden | Removes multipliers artifact upload + merge script invocation from golden output. |
| pkg/workflow/testdata/TestWasmGolden_AllEngines/pi.golden | Removes multipliers artifact upload + merge script invocation from golden output. |
| pkg/workflow/testdata/TestWasmGolden_AllEngines/gemini.golden | Removes multipliers artifact upload + merge script invocation from golden output. |
| pkg/workflow/testdata/TestWasmGolden_AllEngines/copilot.golden | Removes multipliers artifact upload + merge script invocation from golden output. |
| pkg/workflow/testdata/TestWasmGolden_AllEngines/codex.golden | Removes multipliers artifact upload + merge script invocation from golden output. |
| pkg/workflow/testdata/TestWasmGolden_AllEngines/claude.golden | Removes multipliers artifact upload + merge script invocation from golden output. |
| pkg/workflow/engine.go | Updates TokenWeights comment to remove references to model_multipliers.json. |
| pkg/workflow/compiler_activation_job_builder.go | Stops uploading /tmp/gh-aw/model_multipliers.json as an activation artifact. |
| pkg/workflow/awf_helpers.go | Removes the “strip multipliers then merge-from-file” runtime path; emits AWF config JSON directly. |
| pkg/workflow/awf_config_test.go | Updates command-building test expectations for inline modelMultipliers. |
| pkg/types/token_weights.go | Updates docs/comments to remove model_multipliers.json coupling. |
| pkg/types/spec_test.go | Updates test comment to remove model_multipliers.json coupling. |
| pkg/parser/schemas/main_workflow_schema.json | Updates schema description to remove model_multipliers.json references. |
| pkg/cli/effective_tokens.go | Updates comments referencing where cost data comes from (but still needs alignment with current implementation). |
| pkg/cli/data/model_multipliers.json | Deleted legacy multiplier registry copy. |
| actions/setup/js/model_multipliers.json | Deleted legacy multiplier registry copy. |
| actions/setup/js/merge_awf_model_multipliers.test.cjs | Deleted obsolete runtime merger test. |
| actions/setup/js/merge_awf_model_multipliers.cjs | Deleted obsolete runtime merger script. |
| actions/setup/js/generate_aw_info.test.cjs | Updates setup-action tests to stop expecting merged multipliers file output. |
| actions/setup/js/generate_aw_info.cjs | Stops writing /tmp/gh-aw/model_multipliers.json; persists custom token weights in aw_info.json. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 24/24 changed files
- Comments generated: 3
| * node scripts/generate-model-tables.js | ||
| * | ||
| * Inputs: | ||
| * pkg/cli/data/model_aliases.json – Built-in alias → pattern mappings |
| // Generate a JSON config file and reference it via --config "${RUNNER_TEMP}/gh-aw/awf-config.json". | ||
| // This replaces several verbose CLI flags (--allow-domains, --enable-api-proxy, --image-tag, | ||
| // API targets) with a structured JSON file that is easier to audit and extend. | ||
| // | ||
| // The config file is written at runtime (inside the run: step) immediately before the AWF | ||
| // invocation, using printf to a fixed path inside the pre-existing ${RUNNER_TEMP}/gh-aw/ | ||
| // directory that is already set up by actions/setup. | ||
| var configFileSetup string | ||
| configWithoutInlineMultipliers := config | ||
| configWithoutInlineMultipliers.WorkflowData = cloneWorkflowDataWithoutModelMultipliers(config.WorkflowData) | ||
| awfConfigJSON, err := BuildAWFConfigJSON(configWithoutInlineMultipliers) | ||
| awfConfigJSON, err := BuildAWFConfigJSON(config) |
| // Token class weights and model costs are derived from embedded models catalog data. | ||
| // | ||
| // Key responsibilities: | ||
| // - Embedding model_multipliers.json at compile time | ||
| // - Applying token class weights before the model multiplier | ||
| // - Applying token class weights before model normalization | ||
| // - Computing effective tokens from raw per-model token usage data |
|
❌ Test Quality Sentinel failed during test quality analysis. |
|
|
|
🧠 Matt Pocock Skills Reviewer failed during the skills-based review. |
|
❌ Design Decision Gate 🏗️ failed during design decision gate check. |
|
@copilot update compiler to fix https://github.com/github/gh-aw/actions/runs/27360549647/job/80848084375?pr=38642 |
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Updated and pushed in |
|
@copilot merge main, recompie, fix conflicts |
|
https://gh.io/copilot-coding-agent-docs merge main, recompie, fix conflicts |
|
@copilot merge main and recompile |
…-files-model-multipliers # Conflicts: # .github/workflows/ab-testing-advisor.lock.yml # .github/workflows/ace-editor.lock.yml # .github/workflows/agent-performance-analyzer.lock.yml # .github/workflows/agent-persona-explorer.lock.yml # .github/workflows/agentic-token-audit.lock.yml # .github/workflows/agentic-token-optimizer.lock.yml # .github/workflows/agentic-token-trend-audit.lock.yml # .github/workflows/ai-moderator.lock.yml # .github/workflows/api-consumption-report.lock.yml # .github/workflows/approach-validator.lock.yml # .github/workflows/archie.lock.yml # .github/workflows/architecture-guardian.lock.yml # .github/workflows/artifacts-summary.lock.yml # .github/workflows/audit-workflows.lock.yml # .github/workflows/auto-triage-issues.lock.yml # .github/workflows/avenger.lock.yml # .github/workflows/aw-failure-investigator.lock.yml # .github/workflows/blog-auditor.lock.yml # .github/workflows/bot-detection.lock.yml # .github/workflows/brave.lock.yml # .github/workflows/breaking-change-checker.lock.yml # .github/workflows/changeset.lock.yml # .github/workflows/chaos-pr-bundle-fuzzer.lock.yml # .github/workflows/ci-coach.lock.yml # .github/workflows/ci-doctor.lock.yml # .github/workflows/claude-code-user-docs-review.lock.yml # .github/workflows/cli-consistency-checker.lock.yml # .github/workflows/cli-version-checker.lock.yml # .github/workflows/cloclo.lock.yml # .github/workflows/code-scanning-fixer.lock.yml # .github/workflows/code-simplifier.lock.yml # .github/workflows/codex-github-remote-mcp-test.lock.yml # .github/workflows/commit-changes-analyzer.lock.yml # .github/workflows/constraint-solving-potd.lock.yml # .github/workflows/contribution-check.lock.yml # .github/workflows/copilot-agent-analysis.lock.yml # .github/workflows/copilot-cli-deep-research.lock.yml # .github/workflows/copilot-opt.lock.yml # .github/workflows/copilot-pr-merged-report.lock.yml # .github/workflows/copilot-pr-nlp-analysis.lock.yml # .github/workflows/copilot-pr-prompt-analysis.lock.yml # .github/workflows/copilot-session-insights.lock.yml # .github/workflows/craft.lock.yml # .github/workflows/daily-agent-of-the-day-blog-writer.lock.yml # .github/workflows/daily-agentrx-trace-optimizer.lock.yml # .github/workflows/daily-ambient-context-optimizer.lock.yml # .github/workflows/daily-architecture-diagram.lock.yml # .github/workflows/daily-assign-issue-to-user.lock.yml # .github/workflows/daily-astrostylelite-markdown-spellcheck.lock.yml # .github/workflows/daily-aw-cross-repo-compile-check.lock.yml # .github/workflows/daily-awf-spec-compiler-surfacing.lock.yml # .github/workflows/daily-byok-ollama-test.lock.yml # .github/workflows/daily-cache-strategy-analyzer.lock.yml # .github/workflows/daily-caveman-optimizer.lock.yml # .github/workflows/daily-choice-test.lock.yml # .github/workflows/daily-cli-performance.lock.yml # .github/workflows/daily-cli-tools-tester.lock.yml # .github/workflows/daily-code-metrics.lock.yml # .github/workflows/daily-community-attribution.lock.yml # .github/workflows/daily-compiler-quality.lock.yml # .github/workflows/daily-compiler-threat-spec-optimizer.lock.yml # .github/workflows/daily-credit-limit-test.lock.yml # .github/workflows/daily-doc-healer.lock.yml # .github/workflows/daily-doc-updater.lock.yml # .github/workflows/daily-experiment-report.lock.yml # .github/workflows/daily-fact.lock.yml # .github/workflows/daily-file-diet.lock.yml # .github/workflows/daily-firewall-report.lock.yml # .github/workflows/daily-formal-spec-verifier.lock.yml # .github/workflows/daily-function-namer.lock.yml # .github/workflows/daily-geo-optimizer.lock.yml # .github/workflows/daily-hippo-learn.lock.yml # .github/workflows/daily-issues-report.lock.yml # .github/workflows/daily-malicious-code-scan.lock.yml # .github/workflows/daily-max-ai-credits-test.lock.yml # .github/workflows/daily-mcp-concurrency-analysis.lock.yml # .github/workflows/daily-model-inventory.lock.yml # .github/workflows/daily-multi-device-docs-tester.lock.yml # .github/workflows/daily-news.lock.yml # .github/workflows/daily-observability-report.lock.yml # .github/workflows/daily-performance-summary.lock.yml # .github/workflows/daily-regulatory.lock.yml # .github/workflows/daily-reliability-review.lock.yml # .github/workflows/daily-rendering-scripts-verifier.lock.yml # .github/workflows/daily-repo-chronicle.lock.yml # .github/workflows/daily-safe-output-integrator.lock.yml # .github/workflows/daily-safe-output-optimizer.lock.yml # .github/workflows/daily-safe-outputs-conformance.lock.yml # .github/workflows/daily-safeoutputs-git-simulator.lock.yml # .github/workflows/daily-secrets-analysis.lock.yml # .github/workflows/daily-security-observability.lock.yml # .github/workflows/daily-security-red-team.lock.yml # .github/workflows/daily-semgrep-scan.lock.yml # .github/workflows/daily-sentrux-report.lock.yml # .github/workflows/daily-skill-optimizer.lock.yml # .github/workflows/daily-spdd-spec-planner.lock.yml # .github/workflows/daily-syntax-error-quality.lock.yml # .github/workflows/daily-team-evolution-insights.lock.yml # .github/workflows/daily-team-status.lock.yml # .github/workflows/daily-testify-uber-super-expert.lock.yml # .github/workflows/daily-token-consumption-report.lock.yml # .github/workflows/daily-windows-terminal-integration-builder.lock.yml # .github/workflows/daily-workflow-updater.lock.yml # .github/workflows/dataflow-pr-discussion-dataset.lock.yml # .github/workflows/dead-code-remover.lock.yml # .github/workflows/deep-report.lock.yml # .github/workflows/delight.lock.yml # .github/workflows/dependabot-burner.lock.yml # .github/workflows/dependabot-campaign.lock.yml # .github/workflows/dependabot-go-checker.lock.yml # .github/workflows/dependabot-repair.lock.yml # .github/workflows/dependabot-worker.lock.yml # .github/workflows/deployment-incident-monitor.lock.yml # .github/workflows/design-decision-gate.lock.yml # .github/workflows/designer-drift-audit.lock.yml # .github/workflows/dev-hawk.lock.yml # .github/workflows/dev.lock.yml # .github/workflows/developer-docs-consolidator.lock.yml # .github/workflows/dictation-prompt.lock.yml # .github/workflows/discussion-task-miner.lock.yml # .github/workflows/docs-noob-tester.lock.yml # .github/workflows/draft-pr-cleanup.lock.yml # .github/workflows/duplicate-code-detector.lock.yml # .github/workflows/example-permissions-warning.lock.yml # .github/workflows/example-workflow-analyzer.lock.yml # .github/workflows/firewall-escape.lock.yml # .github/workflows/firewall.lock.yml # .github/workflows/functional-pragmatist.lock.yml # .github/workflows/github-mcp-structural-analysis.lock.yml # .github/workflows/github-mcp-tools-report.lock.yml # .github/workflows/github-remote-mcp-auth-test.lock.yml # .github/workflows/glossary-maintainer.lock.yml # .github/workflows/go-fan.lock.yml # .github/workflows/go-logger.lock.yml # .github/workflows/go-pattern-detector.lock.yml # .github/workflows/gpclean.lock.yml # .github/workflows/grumpy-reviewer.lock.yml # .github/workflows/hippo-embed.lock.yml # .github/workflows/hourly-ci-cleaner.lock.yml # .github/workflows/instructions-janitor.lock.yml # .github/workflows/issue-arborist.lock.yml # .github/workflows/issue-monster.lock.yml # .github/workflows/issue-triage-agent.lock.yml # .github/workflows/jsweep.lock.yml # .github/workflows/layout-spec-maintainer.lock.yml # .github/workflows/lint-monster.lock.yml # .github/workflows/linter-miner.lock.yml # .github/workflows/lockfile-stats.lock.yml # .github/workflows/mattpocock-skills-reviewer.lock.yml # .github/workflows/mcp-inspector.lock.yml # .github/workflows/mergefest.lock.yml # .github/workflows/metrics-collector.lock.yml # .github/workflows/necromancer.lock.yml # .github/workflows/notion-issue-summary.lock.yml # .github/workflows/objective-impact-report.lock.yml # .github/workflows/org-health-report.lock.yml # .github/workflows/outcome-collector.lock.yml # .github/workflows/pdf-summary.lock.yml # .github/workflows/plan.lock.yml # .github/workflows/poem-bot.lock.yml # .github/workflows/pr-code-quality-reviewer.lock.yml # .github/workflows/pr-description-caveman.lock.yml # .github/workflows/pr-nitpick-reviewer.lock.yml # .github/workflows/pr-sous-chef.lock.yml # .github/workflows/pr-triage-agent.lock.yml # .github/workflows/prompt-clustering-analysis.lock.yml # .github/workflows/python-data-charts.lock.yml # .github/workflows/q.lock.yml # .github/workflows/refactoring-cadence.lock.yml # .github/workflows/refiner.lock.yml # .github/workflows/release.lock.yml # .github/workflows/repo-audit-analyzer.lock.yml # .github/workflows/repo-tree-map.lock.yml # .github/workflows/repository-quality-improver.lock.yml # .github/workflows/research.lock.yml # .github/workflows/ruflo-backed-task.lock.yml # .github/workflows/safe-output-health.lock.yml # .github/workflows/schema-consistency-checker.lock.yml # .github/workflows/schema-feature-coverage.lock.yml # .github/workflows/scout.lock.yml # .github/workflows/security-compliance.lock.yml # .github/workflows/security-review.lock.yml # .github/workflows/semantic-function-refactor.lock.yml # .github/workflows/sergo.lock.yml # .github/workflows/slide-deck-maintainer.lock.yml # .github/workflows/smoke-agent-all-merged.lock.yml # .github/workflows/smoke-agent-all-none.lock.yml # .github/workflows/smoke-agent-public-approved.lock.yml # .github/workflows/smoke-agent-public-none.lock.yml # .github/workflows/smoke-agent-scoped-approved.lock.yml # .github/workflows/smoke-antigravity.lock.yml # .github/workflows/smoke-call-workflow.lock.yml # .github/workflows/smoke-ci.lock.yml # .github/workflows/smoke-claude.lock.yml # .github/workflows/smoke-codex.lock.yml # .github/workflows/smoke-copilot-aoai-apikey.lock.yml # .github/workflows/smoke-copilot-arm.lock.yml # .github/workflows/smoke-copilot-sdk.lock.yml # .github/workflows/smoke-copilot.lock.yml # .github/workflows/smoke-create-cross-repo-pr.lock.yml # .github/workflows/smoke-crush.lock.yml # .github/workflows/smoke-gemini.lock.yml # .github/workflows/smoke-multi-pr.lock.yml # .github/workflows/smoke-opencode.lock.yml # .github/workflows/smoke-otel-backends.lock.yml # .github/workflows/smoke-pi.lock.yml # .github/workflows/smoke-project.lock.yml # .github/workflows/smoke-service-ports.lock.yml # .github/workflows/smoke-temporary-id.lock.yml # .github/workflows/smoke-test-tools.lock.yml # .github/workflows/smoke-update-cross-repo-pr.lock.yml # .github/workflows/smoke-workflow-call-with-inputs.lock.yml # .github/workflows/smoke-workflow-call.lock.yml # .github/workflows/spec-enforcer.lock.yml # .github/workflows/spec-extractor.lock.yml # .github/workflows/spec-librarian.lock.yml # .github/workflows/stale-pr-cleanup.lock.yml # .github/workflows/stale-repo-identifier.lock.yml # .github/workflows/static-analysis-report.lock.yml # .github/workflows/step-name-alignment.lock.yml # .github/workflows/sub-issue-closer.lock.yml # .github/workflows/super-linter.lock.yml # .github/workflows/technical-doc-writer.lock.yml # .github/workflows/terminal-stylist.lock.yml # .github/workflows/test-create-pr-error-handling.lock.yml # .github/workflows/test-dispatcher.lock.yml # .github/workflows/test-project-url-default.lock.yml # .github/workflows/test-quality-sentinel.lock.yml # .github/workflows/test-workflow.lock.yml # .github/workflows/tidy.lock.yml # .github/workflows/typist.lock.yml # .github/workflows/ubuntu-image-analyzer.lock.yml # .github/workflows/uk-ai-operational-resilience.lock.yml # .github/workflows/unbloat-docs.lock.yml # .github/workflows/update-astro.lock.yml # .github/workflows/video-analyzer.lock.yml # .github/workflows/visual-regression-checker.lock.yml # .github/workflows/weekly-blog-post-writer.lock.yml # .github/workflows/weekly-editors-health-check.lock.yml # .github/workflows/weekly-issue-summary.lock.yml # .github/workflows/weekly-safe-outputs-spec-review.lock.yml # .github/workflows/workflow-generator.lock.yml # .github/workflows/workflow-health-manager.lock.yml # .github/workflows/workflow-normalizer.lock.yml # .github/workflows/workflow-skill-extractor.lock.yml # pkg/workflow/testdata/TestWasmGolden_AllEngines/claude.golden # pkg/workflow/testdata/TestWasmGolden_AllEngines/codex.golden # pkg/workflow/testdata/TestWasmGolden_AllEngines/copilot.golden # pkg/workflow/testdata/TestWasmGolden_AllEngines/gemini.golden # pkg/workflow/testdata/TestWasmGolden_AllEngines/pi.golden # pkg/workflow/testdata/TestWasmGolden_CompileFixtures/basic-copilot.golden # pkg/workflow/testdata/TestWasmGolden_CompileFixtures/playwright-cli-mode.golden # pkg/workflow/testdata/TestWasmGolden_CompileFixtures/smoke-copilot.golden # pkg/workflow/testdata/TestWasmGolden_CompileFixtures/with-imports.golden Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
🚀 Smoke Antigravity MISSION COMPLETE! Antigravity has spoken. ✨ |
|
|
|
🚀 Smoke Pi MISSION COMPLETE! Pi delivered. 🥧 |
|
✅ All tools validated successfully! Agent Container Smoke Test confirms agent container is ready. |
|
✨ The prophecy is fulfilled... Smoke Codex has completed its mystical journey. The stars align. 🌟 |
|
🎬 THE END — Smoke Claude MISSION: ACCOMPLISHED! The hero saves the day! ✨ |
|
📰 BREAKING: Smoke Copilot is now investigating this pull request. Sources say the story is developing... |
|
📰 BREAKING: Smoke Copilot - AOAI (apikey) is now investigating this pull request. Sources say the story is developing... |
Agent Container Tool Check
Result: 12/12 tools available ✅ Overall Status: PASS
|
💥 Smoke Test: Claude — Run 27368962830Core #1-12: ✅ all passed Overall: PARTIAL (1 skipped, rest passed) Warning Firewall blocked 6 domainsThe following domains were blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "accounts.google.com"
- "android.clients.google.com"
- "clients2.google.com"
- "contentautofill.googleapis.com"
- "safebrowsingohttpgateway.googleapis.com"
- "www.google.com"See Network Configuration for more information.
|
There was a problem hiding this comment.
💥 Automated smoke test review - all systems nominal!
Warning
Firewall blocked 6 domains
The following domains were blocked by the firewall during workflow execution:
accounts.google.comandroid.clients.google.comclients2.google.comcontentautofill.googleapis.comsafebrowsingohttpgateway.googleapis.comwww.google.com
To allow these domains, add them to the
network.allowedlist in your workflow frontmatter:
network:
allowed:
- defaults
- "accounts.google.com"
- "android.clients.google.com"
- "clients2.google.com"
- "contentautofill.googleapis.com"
- "safebrowsingohttpgateway.googleapis.com"
- "www.google.com"See Network Configuration for more information.
💥 [THE END] — Illustrated by Smoke Claude · 71.7 AIC · ⌖ 25.6 AIC
| @@ -390,7 +390,6 @@ jobs: | |||
| include-hidden-files: true | |||
| path: | | |||
| /tmp/gh-aw/aw_info.json | |||
There was a problem hiding this comment.
Smoke test: clean removal of the legacy model_multipliers.json artifact path. 👍
| @@ -753,7 +752,6 @@ jobs: | |||
| (umask 177 && touch /tmp/gh-aw/agent-stdio.log) | |||
There was a problem hiding this comment.
Smoke test: good to see the merge_awf_model_multipliers.cjs invocation removed here.
|
Commit pushed:
|
|
Remove legacy model_multipliers.json artifacts and file-based multiplier merge path Warning Firewall blocked 6 domainsThe following domains were blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "accounts.google.com"
- "android.clients.google.com"
- "clients2.google.com"
- "contentautofill.googleapis.com"
- "safebrowsingohttpgateway.googleapis.com"
- "www.google.com"See Network Configuration for more information.
|
|
@copilot review all comments and address unresolved review feedback. Please refresh the branch and rerun checks once that is done.
|
This change removes all repository copies of legacy
model_multipliers.jsonand eliminates the remaining runtime path that depended on/tmp/gh-aw/model_multipliers.json. Model multipliers now flow directly through generated AWF config instead of a post-generation file merge script.Scope reduction (legacy assets removed)
actions/setup/js/model_multipliers.jsonpkg/cli/data/model_multipliers.jsonactions/setup/js/merge_awf_model_multipliers.cjsactions/setup/js/merge_awf_model_multipliers.test.cjsRuntime wiring removal
/tmp/gh-aw/model_multipliers.jsonin setup action info generation.merge_awf_model_multipliers.cjs./tmp/gh-aw/model_multipliers.json.Config behavior alignment
engine.token-weights.multipliersinline in generated AWF config JSON rather than stripping and re-injecting from file.Reference cleanup
model_multipliers.jsonas the built-in source.scripts/generate-model-tables.jsto stop depending on the removed multipliers file.✨ PR Review Safe Output Test - Run 27368962830
Warning
Firewall blocked 6 domains
The following domains were blocked by the firewall during workflow execution:
accounts.google.comandroid.clients.google.comclients2.google.comcontentautofill.googleapis.comsafebrowsingohttpgateway.googleapis.comwww.google.comSee Network Configuration for more information.
Changeset