Tracking: open issues by priority (2026-09-28 convergence pass)
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 18/100
- Issue type
- Documentation
- Clarity
- Needs clarification
- Activity status
- Active
- Domain
- documentation, tooling
Research direction
This is a tracking index of many open issues, not a single change. Do not implement from this ticket. Pick one named child issue (for example CodeLaser/maddi#4 javadoc CI noise, or a Tier 1 row) and work from that issue’s first-step column. Done here would only mean the table is kept in sync after those issues close.
Written by the indexing model from the issue text.
Description
Every open issue as of 2026-09-28, after the convergence pass that closed 30 of 59 (fixed on devel or on ws/dsl that day) and fixed CodeLaser/maddi#22, CodeLaser/maddi#30, CodeLaser/maddi#31, CodeLaser/maddi#40, CodeLaser/maddi#60, CodeLaser/maddi#64 (items 2, 3), CodeLaser/maddi#66 directly. Ordered by cost/benefit within each tier; sizes are S (hours), M (a day or two), L (design first). "Owner" is the branch that has been working the area.
Tier 1: small, unblocks something, do next
| # | issue | size | why now | first step |
|---|---|---|---|---|
| CodeLaser/maddi#68 | Kotlin body call to a Java-source member does not resolve | S-M | blocks the downstream unmodifiable-collection diagnostic | add the J.fill / J().put shape to TestMixedProjectInspector, assert no k2-unresolved-call; fix likely in members() for a Java-source TypeInfo whose members are not loaded when Kotlin bodies convert (ws/python) |
| CodeLaser/maddi#67 | printed Kotlin does not compile: smart-cast comparison | S | one fixture tells whether the last placeholder in that list is already gone since 69c94b14f | add when (o) { is Int -> if (o > 10) ... } to WhenSeveralIsTest; raise the jar-name mismatch log to WARN; close items 3 and 4 as intended |
| CodeLaser/maddi#64 (item 1) | Collections.sort's list not @Modified in the JSON | M | every Collections/Arrays mutator reads undecided | codec writes unmodifiedParameter:0 (or the loader reads absence on an annotated-API parameter as decided false), then annotate sort, reverse, shuffle, ... |
| CodeLaser/maddi-mod#7 | hints compiler computes libs/test, libs/log defaults without the jdk results | S code, M validation | wrong defaults for String/CharSequence parameters in two libraries | pass the jdk preload to the shared compiler in CompileAnalysisHints, regenerate, corpus A/B as the issue asks |
| CodeLaser/maddi#15 | LinksImpl.equals ignores linkSet | S | last-wins exists (f747b2105, WIP under the merge) but nothing pins it | fast test for last-wins in VariableInfoImpl.setLinkedVariables; decide whether the primary-change throw is reachable; squash the WIP |
| CodeLaser/maddi#4 | javadoc warnings on CI | S | the only noise on a clean CI run | javadoc on Commutable's members, or one Xdoclint block in the convention plugin |
| CodeLaser/maddi-dist#1 | IDE: coalesced triggers dropped | S | a silently lost build is user-visible | PENDING flag beside RUNNING in MaddiAnalysis (Eclipse) and MaddiAnalysisService (IntelliJ), reschedule once in finally |
Tier 2: medium, scheduled work
| # | issue | size | note |
|---|---|---|---|
| CodeLaser/maddi#5 | no Gradle toolchain; dev on 27, CI on 26 | M | now real drift; needs a build to validate, do with the next JDK-27 CI bump |
| CodeLaser/maddi#69 | lowered <i>.0/.1 indices lose the local at <i+1> |
M | per-block renumbering after building; touches every lowering test's indices (ws/python) |
| CodeLaser/maddi#19 | VariableData order non-deterministic | S-M | sort by source position at build(); risk to this/fields/params-first consumers |
| CodeLaser/maddi-mod#3 | no version/schema marker in analysis results | S-M | header field + check in LoadAnalysisResults |
| CodeLaser/maddi-mod#10 | fork for switch, loop, try; exclude exiting branches | M per step | six-corpus A/B each; NOFORK gate stays |
| CodeLaser/maddi-mod#5 | full-pipeline crash survey | M | build on RunAnalyzer fault-tolerant listing + the corpus catalogue; bucket by (exception, class:line) |
| CodeLaser/maddi#58 | non-local return: owner decision | decision | marker (current) vs refuse vs inline scope functions for the 125 detekt sites under analyze{}; then close as "front end done, engine in CodeLaser/maddi-mod#11" |
| CodeLaser/maddi-dist#2 | Eclipse: whole-workspace marker churn | S-M | per-file delete; prerequisite of CodeLaser/maddi-dist#3 |
| CodeLaser/maddi-mod#12 | Elasticsearch variablesLinkedToObject@LCI oscillation |
M | re-run on devel with the per-iteration change log; latest-wins may have changed it |
| CodeLaser/maddi#49 | printer: brace placement, literal spelling, comment fidelity | L, split in 3 | (a) bracePlacement option, (b) carry literal source text from javac, (c) comment/blank-line fidelity |
Tier 3: design first
| # | issue | note |
|---|---|---|
| CodeLaser/maddi-mod#11 | link engine ignores exitLevels (non-local return value never reaches the enclosing return) |
soundness hole; start with the S fixture asserting find's return variable links to xs |
| CodeLaser/maddi-mod#9 | reassigned parameter's later values summarised as facts about the caller's object | SSA-style rename from the first reassignment |
| CodeLaser/maddi-mod#8 | method summaries mark a parameter modified, never which part | field-path modification in summaries |
| CodeLaser/maddi-mod#6 | Cassandra does not converge | re-run on devel with the change log after latest-wins; profiling + partial reporting |
| CodeLaser/maddi-dist#3 | Eclipse builder / project nature | days; depends on the daemon accepting a scope |
| CodeLaser/maddi-dist#4 | Eclipse quick fixes | needs an edit protocol from the daemon |
| CodeLaser/maddi-dist#5 | Eclipse GUI install path | 30 min manual, whoever next has Eclipse open |
| CodeLaser/maddi-mod#1, CodeLaser/maddi-mod#2 | tracking issues | progress comments posted 09-28; keep as indexes |
- Dominant language
- Java
- Stars
- 1
- Forks
- 1
- Avg merge
- 2h 51m
- Merged PRs (30d)
- 3
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from CodeLaser/maddi
-
build/ci good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 3/5 Half a day Newbie friendliness 62/100
-
enhancement
Difficulty 3/5 1-2 days Newbie friendliness 45/100
-
Java → C# translation: an idiomatic C# printer driven by the modification and nullability analysesOpenenhancement extension front-end:csharp
Difficulty 5/5 Over a week Newbie friendliness 8/100
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 40/100
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
lugassawan/swe-workbench#799 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
Vakore/ZappierGames#89 ·
-
1.20.1-FORGE Module-Enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
MehVahdJukaar/WoodGood#1340 · 1 comment ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
PssbleTrngle/dye_depot#123 ·
-
bug question
Difficulty 2/5 1-3 hours Newbie friendliness 67/100