Skip to content

fix: resolve nix CI failures - #1428

Merged
shunkakinoki merged 8 commits into
mainfrom
fix/nix-ci-failures
Apr 11, 2026
Merged

fix: resolve nix CI failures#1428
shunkakinoki merged 8 commits into
mainfrom
fix/nix-ci-failures

Conversation

@shunkakinoki

@shunkakinoki shunkakinoki commented Apr 11, 2026

Copy link
Copy Markdown
Owner

Summary

  • tests/overlays.nix: accept lib and inputs args to match call site in tests/default.nix:16 (fixed nix-test and nix-flake)
  • home-manager/modules/obsidian/default.nix:24: use inherit (pkgs) obsidian instead of assignment (fixed nix-lint W04)
  • .beads/metadata.json: add trailing newline (fixed nix-format)
  • treefmt.toml: exclude .beads/metadata.json from json formatter
  • .beads/config.yaml: remove extra blank lines (formatter cleanup)

Test plan

  • Nix CI passes (nix-flake, nix-test, nix-format, nix-lint)

Summary by cubic

Fix Nix CI by aligning test overlay args, fixing a lint warning, stabilizing formatter config, and cleaning up Git ignores/submodules. nix flake, nix test, nix-format, and nix-lint now pass.

  • Bug Fixes
    • tests/overlays.nix: accept lib and inputs to match the test call site.
    • home-manager/modules/obsidian/default.nix: use inherit (pkgs) obsidian to satisfy lint W04.
    • Formatting: exclude .beads/* via treefmt, add a trailing newline to .beads/metadata.json, and trim .beads/config.yaml.
    • Git: remove orphan polecats submodule entries and ensure crew, polecats, and refinery are ignored in .gitignore.

Written for commit ecdfe60. Summary will update on new commits.

…line)

- tests/overlays.nix: accept `lib` and `inputs` args to match call site
- home-manager/modules/obsidian/default.nix: use `inherit` instead of assignment
- .beads/metadata.json: add trailing newline for formatter
- treefmt.toml: exclude .beads/metadata.json from json formatter
Copilot AI review requested due to automatic review settings April 11, 2026 08:56
@mesa-dot-dev

mesa-dot-dev Bot commented Apr 11, 2026

Copy link
Copy Markdown

You do not have enough credits to review this pull request. Please purchase more credits to continue.

@coderabbitai

coderabbitai Bot commented Apr 11, 2026

Copy link
Copy Markdown
📝 Walkthrough

Walkthrough

This PR applies housekeeping updates across configuration, build, and module files: whitespace cleanup in YAML, trailing newline additions in JSON, submodule commit pointer updates, Nix syntax modernization, function signature expansion, and formatter configuration adjustments.

Changes

Cohort / File(s) Summary
Configuration & Formatting
.beads/config.yaml, treefmt.toml
Removed separator blank lines from YAML config; added .beads/metadata.json to JSON formatter exclusions list.
Metadata & File Formatting
.beads/metadata.json
Added trailing newline to ensure file ends with newline character.
Nix Module Updates
home-manager/modules/obsidian/default.nix, tests/overlays.nix
Modernized Nix syntax in obsidian module from explicit binding to inherit form; expanded overlay test module signature to include lib and inputs parameters alongside existing pkgs.
Submodule References
polecats/furiosa/dotfiles, polecats/nux/dotfiles, polecats/slit/dotfiles
Updated Git submodule commit pointers to latest revisions across three polecats dotfiles repositories.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

Poem

🐰 Tidy whiskers, configs neat,
Newlines placed so trim and sweet,
Submodules dance to latest beat,
Nix syntax makes the change complete!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title 'fix: resolve nix CI failures' accurately summarizes the main objective of the changeset, which is to fix multiple Nix CI issues.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description check ✅ Passed The pull request description clearly outlines all changes: fixing test overlay arguments, resolving a lint warning, adding a trailing newline, excluding files from formatting, and removing blank lines. Each item directly corresponds to the changeset.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/nix-ci-failures

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@mesa-dot-dev

mesa-dot-dev Bot commented Apr 11, 2026

Copy link
Copy Markdown

Mesa Description

TL;DR

Resolved Nix CI failures by updating Nix configurations and formatting rules.

What changed?

  • tests/overlays.nix: Modified to accept lib and inputs arguments, resolving nix-test and nix-flake issues.
  • home-manager/modules/obsidian/default.nix: Refactored obsidian package reference using inherit (pkgs) obsidian to fix nix-lint W04.
  • .beads/metadata.json: Added a trailing newline to comply with formatting.
  • treefmt.toml: Configured to exclude .beads/* from formatting to prevent conflicts.
  • .beads/config.yaml: Cleaned up by removing extra blank lines.
  • .gitignore: Added polecats/ to prevent tracking and removed orphan polecats/ submodules.

Description generated by Mesa. Update settings

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request includes configuration cleanups in .beads, updates to dotfile submodules, and Nix refactoring in the Obsidian module. It also modifies treefmt.toml and the function signature in tests/overlays.nix. A review comment suggests using an ellipsis in the tests/overlays.nix function signature to handle unused arguments more idiomatically.

Comment thread tests/overlays.nix
Comment on lines +1 to +5
{
pkgs,
lib,
inputs,
}:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The arguments lib and inputs are not used within this file. Instead of explicitly naming them to match the call site, it is more idiomatic and robust to use an ellipsis (...) in the attribute set pattern. This allows the function to accept any additional arguments passed by the caller (such as system, which is also passed in flake.nix) without requiring them to be explicitly listed or causing 'unexpected argument' errors if the caller's arguments change in the future.

{
  pkgs,
  ...
}:

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 8 files

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
polecats/slit/dotfiles (1)

15-17: Use literal grep matching for model IDs in tests.

These assertions use regex-mode grep to match model IDs containing ., which are regex metacharacters. While unlikely to cause false positives in practice, use grep -F for literal matching to ensure exact string matches and improve test robustness.

Affects: spec/fish/_coxel_function_test.fish (lines 10, 23), spec/fish/_coxelh_function_test.fish (line 13), spec/fish/_pixel_function_test.fish (lines 10, 19), spec/fish/_pixelh_function_test.fish (line 13), spec/fish/_ocxel_function_test.fish (lines 10, 21), spec/fish/_ocxelh_function_test.fish (line 14).

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@polecats/slit/dotfiles` around lines 15 - 17, The tests that assert the
substituted Qwen model currently use grep without fixed-string mode which treats
dots as regex metacharacters; update the grep invocations in the test cases
(e.g., the `@test` "no args uses substituted Qwen model" assertions that call grep
-c "qwen3.5-0.8b-optiq" $log1) to use grep -F (or grep --fixed-strings) so the
model ID is matched literally; apply the same change to the other affected test
assertions mentioned in the review (the corresponding `@test` lines across the
_coxel*, _coxelh*, _pixel*, _pixelh*, _ocxel*, and _ocxelh* function tests).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@polecats/slit/dotfiles`:
- Around line 15-17: The tests that assert the substituted Qwen model currently
use grep without fixed-string mode which treats dots as regex metacharacters;
update the grep invocations in the test cases (e.g., the `@test` "no args uses
substituted Qwen model" assertions that call grep -c "qwen3.5-0.8b-optiq" $log1)
to use grep -F (or grep --fixed-strings) so the model ID is matched literally;
apply the same change to the other affected test assertions mentioned in the
review (the corresponding `@test` lines across the _coxel*, _coxelh*, _pixel*,
_pixelh*, _ocxel*, and _ocxelh* function tests).

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: d5aa4022-bbac-45df-ac9b-56bd5f0ae58e

📥 Commits

Reviewing files that changed from the base of the PR and between a2c254b and 64acb82.

📒 Files selected for processing (8)
  • .beads/config.yaml
  • .beads/metadata.json
  • home-manager/modules/obsidian/default.nix
  • polecats/furiosa/dotfiles
  • polecats/nux/dotfiles
  • polecats/slit/dotfiles
  • tests/overlays.nix
  • treefmt.toml
💤 Files with no reviewable changes (1)
  • .beads/config.yaml

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR aims to fix Nix CI failures by aligning test overlay function arguments with their call sites, addressing Nix lint/style warnings, and adjusting formatting configuration for .beads metadata/config files.

Changes:

  • Update tests/overlays.nix to accept additional arguments (lib, inputs) to match its import call site.
  • Resolve a nix-lint warning in the Obsidian Home Manager module by switching to inherit (pkgs) obsidian.
  • Formatting-related cleanup: add newline to .beads/metadata.json, remove blank lines in .beads/config.yaml, and exclude .beads/metadata.json from the JSON formatter in treefmt.toml.

Reviewed changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
treefmt.toml Excludes .beads/metadata.json from jsonfmt to avoid formatter conflicts.
tests/overlays.nix Adjusts overlay test import interface to match tests/default.nix call site.
home-manager/modules/obsidian/default.nix Uses inherit (pkgs) obsidian in replaceVars attrset to satisfy nix-lint.
.beads/metadata.json Adds trailing newline for formatting compliance.
.beads/config.yaml Removes extra blank lines for formatter cleanliness.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tests/overlays.nix
Comment on lines +3 to +4
lib,
inputs,

Copilot AI Apr 11, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tests/overlays.nix now binds lib and inputs but neither is used anywhere in this file. CI runs deadnix . (see Makefile), which will flag unused function arguments and likely keep nix-lint failing. To accept extra args from the call site without introducing unused bindings, switch the function args to { pkgs, ... }: (or use _lib/_inputs if you want to keep them explicitly).

Suggested change
lib,
inputs,
...

Copilot uses AI. Check for mistakes.
@shunkakinoki
shunkakinoki merged commit f5d46ba into main Apr 11, 2026
31 checks passed
@shunkakinoki
shunkakinoki deleted the fix/nix-ci-failures branch April 11, 2026 09:03
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