Skip to content

Fix JSON model loading and probability mode validation - #68

Merged
hyperpolymath merged 13 commits into
mainfrom
coderabbit/fix-julia-ci-failures/983d675a
Oct 10, 2026
Merged

hyperpolymath merged 13 commits into
mainfrom
coderabbit/fix-julia-ci-failures/983d675a

Conversation

@coderabbitai

@coderabbitai coderabbitai Bot commented Oct 10, 2026

Copy link
Copy Markdown
Contributor

Materialize JSON model data as concrete dictionaries with string keys to avoid lazy JSON3 indexing during static analysis while preserving ArgumentError for malformed field types. Reject unknown probability modes before evaluating paths, including empty models.

Extend end-to-end tests for supported modes, invalid modes in empty models, JSON round-trip equivalence, and malformed JSON fields and roots.

Validation: inspected the pinned diff; tests were not run.

View coding task

hyperpolymath and others added 12 commits October 10, 2026 10:56
… gate (#61)

Project.toml declared julia = "1.9", but AcceleratorGate.jl (hard dep) requires
1.10, so the floor could never resolve. Floor is now 1.10.

Adds Test/Aqua/LinearAlgebra compat bounds and Aqua to [extras]+[targets]
(rsr-criteria 5.2.3, 5.2.5). runtests.jl runs Aqua.test_all first and seeds
the RNG so the rand()-based tests are reproducible.
Replaces ci.yml with julia-ci.yml: fmt (JuliaFormatter, check mode), JET and
test jobs, matrix ["1.10", "1"] so the floor is tested, ubuntu-24.04,
fail-fast: false, no continue-on-error. Pins use commit SHAs. The
AcceleratorGate revision is developed before resolution in every job.
boj-build.yml posted to boj-server.local, which hosted runners cannot resolve,
behind continue-on-error. It now uses the canonical estate form: it runs only
when BOJ_SERVER_URL (secret or variable) is set. Release pins are aligned
with the template lock and runners moved to ubuntu-24.04. Also fixes a
concatenated .gitignore line.
)

docs/make.jl already expected index.md and api.md, but docs/src held only
AsciiDoc, so the build could not run. Converts both pages to Markdown and adds
a docs environment and julia-docs.yml. Declares the julia-library preset in
.machine_readable/rsr-profile.a2ml (julia, library, docs-site,
published-package), so these capabilities are enforced.
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Signed-off-by: Jonathan D.A. Jewell <6759885+hyperpolymath@users.noreply.github.com>
…emporary)

Temporary instrumentation: the failing install/format/JET output is not visible in logs outside the UI, so it is emitted as check annotations. Removed once the root cause is fixed.
…Formatter.format_text (#61)

Root cause of the red test (1.10) and test (1.11) checks: Pkg.develop(url=..., rev=...) is rejected by Pkg ('rev argument not supported by develop'), so every job failed in its install step before any test ran. This is also why the failure predates #60. Pkg.add(url=..., rev=...) pins the same revision.\n\nThe same call is fixed in the JET job, the docs workflow, the release workflow and the user install docs. The release notes now install AcceleratorGate first, since it is not in the General registry. The fmt job uses JuliaFormatter.format_text, because format_string does not exist in JuliaFormatter 2.x.
…est (#61)

JET reports every read_model_json field access as a possible MethodError, because JSON3 values are Unions that include Nothing. Typed accessors check each value once and raise ArgumentError on malformed input. Also publishes Pkg.test failure output as annotations (temporary). Adds a temporary JuliaFormatter apply workflow, which commits through the API so GitHub signs it.
Automated JuliaFormatter pass (DefaultStyle) over src/ and test/, committed through the GitHub API so GitHub signs it.
…e bans Python) (#61)

The governance gate bans Python in the repository. The temporary diagnostic and commit helpers are rewritten in bash. Also adds the SPDX header and job-level permissions to the temporary format workflow.
…orkflow (#61)

Pkg.test only exposes project deps and extras, so 'using Random' in test/runtests.jl failed with 'Package Random not found'. Random is now a declared test extra with a compat bound (rsr-criteria 5.2.3). Also restores the SPDX header and job-level permissions of the temporary format workflow, which had been reverted, and widens the temporary diagnostics window.
@coderabbitai

coderabbitai Bot commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor Author

Important

Review skipped

This PR was authored by the user configured for CodeRabbit reviews. CodeRabbit does not review PRs authored by this user. It's recommended to use a dedicated user account to post CodeRabbit review feedback.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: ASSERTIVE
  • Plan: Essentials
  • Run ID: 0c4da1da-e80d-47c7-b6b2-c123523e40fa

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

Base automatically changed from arena/ebd419f3-bowtierisk-jl to main October 10, 2026 10:34
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
@hyperpolymath
hyperpolymath enabled auto-merge (squash) October 10, 2026 10:46
fi
# Last 40 KB of output, in 3 KB pieces. Escape % and newlines per the
# workflow-command rules so each piece is one annotation.
tail -c 40000 "$f" | split -b 3000 - /tmp/diag-piece.
# workflow-command rules so each piece is one annotation.
tail -c 40000 "$f" | split -b 3000 - /tmp/diag-piece.
n=0
for piece in /tmp/diag-piece.*; do
echo "::error title=diag ${n}::${esc}"
n=$((n + 1))
done
rm -f /tmp/diag-piece.*
fileChanges: {additions: $adds, deletions: []},
expectedHeadOid: $head
}}
}' > /tmp/format-req.json
}}
}' > /tmp/format-req.json

gh api graphql --input /tmp/format-req.json
@hyperpolymath
hyperpolymath merged commit 100020a into main Oct 10, 2026
30 of 31 checks passed
@hyperpolymath
hyperpolymath deleted the coderabbit/fix-julia-ci-failures/983d675a branch October 10, 2026 15:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants