• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

dcdpr / jp / 16230190925
58%

Build:
DEFAULT BRANCH: main
Ran 11 Jul 2025 09:40PM UTC
Jobs 1
Files 132
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

11 Jul 2025 09:34PM UTC coverage: 35.57% (+0.1%) from 35.436%
16230190925

push

github

web-flow
refactor(config): Simplify configuration file loading architecture (#181)

A vacation special, coming in hot after a couple of evenings relaxing
and typing away on a beach in Normandy, France.

---

Previously, configuration loading used a complex recursive search system
that was difficult to understand and maintain. The new approach loads
configuration files from specific, well-defined locations in a clear
order, making the system more predictable and easier to reason about.

The loading order is now explicitly defined as:

1. `$XDG_CONFIG_HOME/jp/config.toml` (user-global)
2. `<workspace>/.jp/config.toml` (workspace)
3. `$CWD/.jp.toml` (current directory, recursively upwards)
4. `$XDG_DATA_HOME/jp/<workspace_id>/config.toml` (user-workspace)

Key architectural changes include separating the monolithic
`load_partial_from_file` function into focused, single-purpose
functions: `load_partials_with_inheritance` for inheritance logic,
`load_partial_at_path` for loading single files, and
`load_partial_at_path_recursive` for directory traversal. The
inheritance logic is now explicit and centralized, making it easier to
understand when and why configuration inheritance is disabled.

This refactoring improves code maintainability and adds extensive test
coverage for the new loading logic.

This commit also adds an initial effort to document the configuration
loading mechanism at https://jp.computer/configuration.

Signed-off-by: Jean Mertz <git@jeanmertz.com>

100 of 205 new or added lines in 13 files covered. (48.78%)

16 existing lines in 6 files now uncovered.

3922 of 11026 relevant lines covered (35.57%)

4.14 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
0.0
0.0% crates/jp_cli/src/cmd/conversation/rm.rs
1
79.89
0.0% crates/jp_conversation/src/conversation.rs
2
0.0
0.0% crates/jp_cli/src/cmd/conversation/edit.rs
2
0.0
0.0% crates/jp_cli/src/cmd/conversation/ls.rs
2
0.0
0.0% crates/jp_cli/src/cmd/conversation/show.rs
4
46.53
0.0% crates/jp_workspace/src/lib.rs
6
64.95
-1.87% crates/jp_config/src/assignment.rs
7
90.28
5.99% crates/jp_config/src/parse.rs
15
8.33
-3.43% crates/jp_config/src/model/parameters.rs
16
46.22
0.0% crates/jp_storage/src/lib.rs
49
0.0
0.0% crates/jp_cli/src/lib.rs

Uncovered Existing Lines

Lines Coverage ∆ File
1
0.0
0.0% crates/jp_cli/src/cmd/conversation/edit.rs
1
46.53
0.0% crates/jp_workspace/src/lib.rs
2
0.0
0.0% crates/jp_cli/src/lib.rs
3
27.78
-16.67% crates/jp_config/src/assistant/provider/openrouter.rs
3
46.22
0.0% crates/jp_storage/src/lib.rs
6
90.28
5.99% crates/jp_config/src/parse.rs
Jobs
ID Job ID Ran Files Coverage
1 16230190925.1 11 Jul 2025 09:40PM UTC 132
35.57
GitHub Action Run
Source Files on build 16230190925
  • Tree
  • List 132
  • Changed 27
  • Source Changed 24
  • Coverage Changed 19
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #16230190925
  • a165d25e on github
  • Prev Build on main (#16098836874)
  • Next Build on main (#16230849373)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc