MakazhanAlpamys/Soup - Open Source PR Review Scorecard

Fine-tune LLMs from one YAML. Layer streaming trains an 8B model on a 4 GB laptop GPU.

C-Rank Grade: A (Welcoming) - 66/100

External PR Merge Rate: 22%

Response Time: 1h

First Timer Success: 33%

Frequently Asked Questions

Is MakazhanAlpamys/Soup welcoming to first-time open-source contributors?

MakazhanAlpamys/Soup has a recorded first-timer success rate of 33.3%. Repositories ranked A typically provide actionable feedback during code reviews and actively nurture new community contributors.

How fast can I expect code review feedback on my pull request?

Maintainers in MakazhanAlpamys/Soup respond to incoming external pull requests in approximately 1.2 hours on average. Keeping PRs focused on single tasks and ensuring tests pass helps maintainers review faster.

What does the 65.6 C-Rank™ score (A Tier) represent?

The C-Rank™ system evaluates GitHub projects on a 0–100 scale using real data: PR merge rates, review turnaround time, active maintainer presence, and first-time contributor success. A score of 65.6 places MakazhanAlpamys/Soup in the A tier.

What is the external contributor pull request merge rate for MakazhanAlpamys/Soup?

The external contributor pull request merge rate for MakazhanAlpamys/Soup is 21.8%, based on public PR activity from non-core contributors.

Are there Good First Issues available in MakazhanAlpamys/Soup?

MakazhanAlpamys/Soup currently has 42 active issue(s) tagged with beginner-friendly labels like "good first issue", "beginner", or "up-for-grabs".

MakazhanAlpamys
MakazhanAlpamys/SoupA•Welcoming8.3k
GitHub
Back to Explorer
MakazhanAlpamys

MakazhanAlpamys/Soup

8,339
Active (30d)A•Welcoming(66/100)Python

Fine-tune LLMs from one YAML. Layer streaming trains an 8B model on a 4 GB laptop GPU.

GitHub
Compare••
Jump to:

AI Maintainer Review Guidelines

Review Persona

Strict Quality Architect

Warmth Score
6.6/10
Patience Score
7.2/10
Nitpick Rate
43%

Active Python repository in MakazhanAlpamys/Soup with ongoing community development and issue triage.

Top PR Submission Do's

  • •Ensure code complies with Python style conventions
  • •Keep PRs scoped and well-documented
  • •Include relevant test coverage for changes

Top PR Friction Pitfalls (Don'ts)

  • •Do not submit unlinked PRs without context
  • •Do not break existing automated test suites
  • •Do not mix unrelated refactors with feature work
Response Velocity
1 hours
Standard maintainer review cycle

Average Response Latency

Tracks hours until a maintainer leaves a review, comment, or PR response.

Merge Efficiency
21.8%
Selective PR acceptance rate

External Acceptance Rate

Percentage of community pull requests successfully merged into main.

First-Timer Success
33.3%
Accepts new contributor PRs

First PR Conversion

Rate at which developers submitting their first repository PR succeed.

Active Maintainers
62 core
Highly collaborative maintainer core
Diagnostic Health HUD
21.8%
Merge Gauge
33.3%
1st-Timer
Community Vibe48/100

Embed C-Rank Badge

Show contributors that your repository actively reviews and merges external pull requests.

GetMerged C-Rank badge for MakazhanAlpamys/Soup
[![GetMerged C-Rank](https://getmerged.abhishekco.de/api/badge/MakazhanAlpamys/Soup)](https://getmerged.abhishekco.de/MakazhanAlpamys/Soup?utm_source=github&utm_medium=badge)

Active Good First Issues (5)

View on GitHub

soup deploy measure has its own copy of the OK / MINOR / MAJOR ladder (measure_candidate in src/soup_cli/utils/deploy_measure.py, around lines 301-310) and compares the raw float drop with the thresholds, the same defect #1740 fixed in eval quant-check (#1743). An exact five-point drop computed from task counts, 19/20 to 18/20, gives delta = -0.04999999999999993 and is classified MINOR instead of MAJOR. Found while reviewing #1743. Expected The same rule as #1740: round the drop before comparing it with the thresholds (round(-delta, 9) or an equivalent boundary check), at both the minor and the major boundary, with thresholds, scoring and output unchanged. Better still, call the shared classify_delta from eval/quant_check.py instead of keeping a second copy of the ladder, if the thresholds and labels are the same; say in the PR which you chose and why. Acceptance criteria 19/20 -> 18/20 is MAJOR and an exact two-point drop is MINOR through measure_candidate (and through soup deploy m

📅 Opened Oct 8, 2026💬 1 comment
Quality: 90/100Contribute

Two guards in BufferedCanaryOutcomes (src/soup_cli/utils/canary_router.py, from #1712) have no test that fails when they are removed. Both behaviours are documented, so each needs a pin; the two tests below pass on the merged tree and each fails its mutation (checked during the #1712 review on head 4f7b709f). 1. The accept-time rollout check in record What it does. record() checks _is_current(rollout_id) when an outcome arrives and drops a late completion of a superseded rollout on the spot. Without it the sample is buffered and only dropped by the flush-time identity check, which also forces one early flush of the current batch. Mutation that survives. Remove the accept-time _is_current check in record (canary_router.py:385): the 30 tests in tests/test_issue1320_canary_io.py and tests/test_issue815_canary_runtime.py still pass, because the flush-time check keeps the counts right. 2. The pre-record flush that refuses outcomes during an outage What it does. Before buffering a new outcom

📅 Opened Oct 8, 2026💬 3 comments
Quality: 90/100Contribute

What happens today When soup train fails on a Lambda instance, the controller reports the exit code and terminates the instance, and the real error goes with it. A non-zero /home/ubuntu/soup.exit raises remote soup train exited N (cloud/lambda_labs.py:262-263), main() prints Lambda training failed: ... (:316-317), and the finally block terminates the instance (:318-326). The controller never reads remote output: its only ssh commands are the status poll (:217) and the checkpoint scp (:271), and the user_data script (:100-118) keeps soup train output nowhere the controller reads. #1584 changes the config the stub embeds and does not touch the controller. A missing data file was the case in #1430, but the same blind spot hides an out-of-memory error or a failed pip install: the user sees exited 1, and finding out why costs another boot. Modal is not affected: train() does not capture soup train output (cloud/modal.py:179-183), so it is in Modal's own logs. Expected Before terminating, th

📅 Opened Oct 7, 2026💬 2 comments
Quality: 90/100Contribute

What happens today soup train --cloud lambda|modal ships the config and nothing else. commands/train.py:996-1000 passes plan_func the config path, and cloud/lambda_labs.py:351-352 and cloud/modal.py:267-268 re-open it. The remote machine gets soup.yaml and no data: Lambda runs soup train in /home/ubuntu/soup (lambda_labs.py:115-117), Modal in /outputs/<run> (modal.py:174-183). soup init defaults to ./data/train.jsonl (commands/init.py:187) and the templates use local paths too, so the default flow cannot work. #1584 does not change that. It embeds the effective config and adds cloud/_shipped.py, whose refuse_unshipped_inputs exits 2 at plan time, naming each local-file field and suggesting a Hub dataset id. The default flow now stops cleanly before the paid boot, but still cannot use local data. Expected A first change ships local data.train files on both backends, and the refusal in _shipped.py narrows to what is still not shipped. Image/audio/video directories, local model paths, rew

📅 Opened Oct 7, 2026💬 0 comments
Quality: 90/100Contribute

Description #983 refused use_flash_attn / use_liger outside {sft, tts}, and #1587 does the same for reasoning_effort / train_on_eot outside {sft, distill, tts}. Both gates look at the task name only. task: sft is several code paths, and on most of them these four fields are read by nothing. The config loads, the run trains, and nothing says the setting was dropped. This is the within-sft half of #806, and the same split that #1581 makes for freeze_layers. I raised it in my review of #1587 (2026-10-05) and asked for it as its own issue. Who reads each field on main (fe3ca445): reasoning_effort and train_on_eot: build_format_row (data/sft_format.py:65-70), called from SFTTrainerWrapper.setup (trainer/sft.py:899, only on the last branch of the dataset dispatch at :876-899) and from trainer/distill.py:776. train_on_eot has one more reader: preprocess_mask_mode (utils/data_pipeline.py:357-358), which puts +eot into the cache key that soup data preprocess writes (commands/data.py:2563, :263

📅 Opened Oct 7, 2026💬 1 comment
Quality: 90/100Contribute
Looking for more Python beginner tasks?Explore Python GFI

Contributor Community Vibe Feedback

Rate what actually matters after opening a pull request here.

Have you contributed to this repo?

Rate your first-hand PR experience (review speed, maintainer responsiveness, and onboarding ease) to help other contributors.

3 ratings required
Maintainer helpfulness
Review speed
Beginner friendliness

Contributor Compatibility & Review Speed Analysis for MakazhanAlpamys/Soup

When evaluating whether to contribute to MakazhanAlpamys/Soup, response velocity and maintainer engagement are crucial. GetMerged continuously tracks pull request trajectories, first-comment latency, and code review rounds to help developers avoid submitting pull requests to backlogged repositories.

Currently, maintainers of MakazhanAlpamys/Soup acknowledge new external contributions in approximately 1 hours. Out of all submitted pull requests from non-core authors in the last 180-day window, 21.8% were successfully merged into the primary branch.

Frequently Asked Questions - Contributing to MakazhanAlpamys/Soup

01

Is MakazhanAlpamys/Soup welcoming to first-time open-source contributors?

MakazhanAlpamys/Soup has a recorded first-timer success rate of 33.3%. Repositories ranked Welcoming typically provide actionable feedback during code reviews and actively nurture new community contributors.

02

How fast can I expect code review feedback on my pull request?

The initial maintainer response time averages ~1 hours. Keeping PRs scoped to single concerns and ensuring CI checks succeed will optimize review turnaround.

03

What does the 65.6 C-Rank™ score represent?

The C-Rank™ index scores repositories on a 0 to 100 scale using an objective formula: external PR merge rates, initial response speed, active maintainer count, and first-time contributor retention. A score of 65.6 places MakazhanAlpamys/Soup in the Welcoming tier.

04

What is the external contributor pull request merge rate for MakazhanAlpamys/Soup?

The external pull request merge rate is 21.8%. GetMerged isolates non-core community contributions so external developers get an accurate benchmark of PR acceptance probability.

05

Are there beginner Good First Issues open in MakazhanAlpamys/Soup?

Yes, MakazhanAlpamys/Soup currently has 42 active issue(s) tagged with beginner-friendly labels. You can inspect these directly from the repository issues tab.

GetMerged C-Rank™ Indexing Standard

All metrics displayed for MakazhanAlpamys/Soup are automatically retrieved via the public GitHub API and recalculated daily. Insider pull requests submitted by repository owners or organization members are excluded from merge rate calculations to preserve objective external contributor statistics.