Skip to content

Fold skill learning into skills - #5866

Closed
serrrfirat wants to merge 1 commit into
codex/reborn-layer-allowlist-w0-mainfrom
codex/reborn-w2-skill-learning
Closed

serrrfirat wants to merge 1 commit into
codex/reborn-layer-allowlist-w0-mainfrom
codex/reborn-w2-skill-learning

Conversation

@serrrfirat

Copy link
Copy Markdown
Collaborator

Summary

W2.2 of the Reborn crate-count reduction folds ironclaw_skill_learning into ironclaw_skills.

This removes one workspace crate while preserving the learning boundary:

  • moves the pure distill/refine logic to ironclaw_skills::learning
  • moves the skill extraction/refinement prompts under crates/ironclaw_skills/prompts/
  • updates Reborn composition to import the learning API from ironclaw_skills::learning
  • removes the ironclaw_skill_learning package/dependency edge
  • updates crate maps and parity docs to the new module path

Why

ironclaw_skill_learning was a good temporary extraction while the feature was taking shape, but its permanent owner is the skills domain. The code already validated through ironclaw_skills::parse_skill_md, and the only production caller was composition.

This fold keeps the important separation intact:

  • ironclaw_skills::learning owns pure prompts, parse/validate logic, and the SkillInferencePort abstraction
  • ironclaw_reborn_composition still owns concrete LLM inference adapters, transcript reads, scoped writes, safety scanning, and UI notifications

So we reduce crate count without moving runtime concerns into the skills crate.

Stack

Base: #5852 (codex/reborn-layer-allowlist-w0-main)

This is intentionally a small W2 fold PR. It should be retargeted to main after W0 lands.

Validation

  • cargo test -p ironclaw_skills -p ironclaw_architecture
  • cargo check -p ironclaw_reborn_composition --features root-llm-provider
    • passed with existing warnings in ironclaw_reborn dead-code paths and one existing composition unused import
  • cargo fmt --check
  • git diff --check
  • cargo metadata --format-version 1 --no-deps | jq '[.packages[] | select(.name=="ironclaw_skill_learning")] | length' -> 0

@ironloopai

ironloopai Bot commented Jul 9, 2026 •

Copy link
Copy Markdown
Contributor

🔎 IronLoop Review Status

Head: 667f9c743eae9df8378cbc74c1760e005f0eb4ae
Result: 1/1 reviewers completed without blocking findings.
Next: Ready for normal human review and CI checks.
Updated: 2026-07-09T10:31:27.514Z

Current reviewers:

Reviewer State Verdict Findings Last update
ironloop/common-reviewer (reviewer) Completed Approved 0 blocking findings / 1 note 2026-07-09T10:31:27.457Z
Reviewer summaries
Reviewer Detail
ironloop/common-reviewer (reviewer) Approved; 0 blocking findings; No blocking regression found in the skill-learning move. One secondary lockfile still references the removed crate and should be refreshed.
Recent activity
Time Reviewer State Detail
2026-07-09T10:24:58.804Z ironloop/common-reviewer (reviewer) Queued Accepted review request for head 667f9c7.
2026-07-09T10:24:58.804Z ironloop/common-reviewer (reviewer) Queued Waiting for this reviewer lane to become available.
2026-07-09T10:24:58.848Z ironloop/common-reviewer (reviewer) Queued Added to the local review work handoff.
2026-07-09T10:24:59.524Z ironloop/common-reviewer (reviewer) Started Reviewer worker started attempt 1.
2026-07-09T10:25:02.282Z ironloop/common-reviewer (reviewer) Workspace ready Prepared isolated checkout (merge_ref) at 0643ebc.
2026-07-09T10:31:22.232Z ironloop/common-reviewer (reviewer) Running Codex is reviewing; process live; elapsed 6m 21s; timeout in 13m 39s; last heartbeat 2026-07-09T10:31:22.232Z. Codex emitted stderr output at 2026-07-09T10:30:38.372Z.
2026-07-09T10:31:27.457Z ironloop/common-reviewer (reviewer) Result captured Approved; 0 blocking findings.
2026-07-09T10:31:27.457Z ironloop/common-reviewer (reviewer) Completed Review completed and terminal status was persisted.
Available commands
  • @ironloopai help
  • @ironloopai agents
  • @ironloopai review
  • @ironloopai review --agent <agent>
  • @ironloopai status
Run metadata

Admission: webhook accepted the request and IronLoop persisted reviewer state before this projection.

@coderabbitai

coderabbitai Bot commented Jul 9, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 80b1909a-940e-43fa-aa3a-bf748b5832b7

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

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.

@railway-app
railway-app Bot temporarily deployed to ironclaw-ci-preview / ironclaw-pr-5866 July 9, 2026 10:25 Destroyed
@github-actions github-actions Bot added scope: docs Documentation scope: dependencies Dependency updates size: M 50-199 changed lines risk: medium Business logic, config, or moderate-risk modules contributor: core 20+ merged PRs labels Jul 9, 2026

@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 consolidates the codebase by removing the separate ironclaw_skill_learning crate and integrating its pure domain logic into a new learning module within the ironclaw_skills crate. All workspace dependencies, module imports, agent documentation, and parity documentation have been updated to reference ironclaw_skills::learning instead of the deprecated crate. I have no feedback to provide as there are no review comments.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

@ironloopai ironloopai 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.

✅ IronLoop Review: reviewer

Review at a glance

Verdict Blocking Notes Inline Head
✅ Approved 0 1 1 667f9c743eae

Head: 667f9c743eae9df8378cbc74c1760e005f0eb4ae
Next: No reviewer action needed.

Run details

Status: Current
Needs human: no
Needs validation: no

Summary

No blocking regression found in the skill-learning move. One secondary lockfile still references the removed crate and should be refreshed.

Findings

Blocking: 0 / Notes: 1

Non-blocking notes (1)
1. 💬 [LOW] Refresh the latency runner lockfile after removing the crate

Location: harness/latency/runner/Cargo.lock:3192
This separate Cargo.lock still records ironclaw_reborn_composition as depending on ironclaw_skill_learning, even though the PR removes that path dependency and deletes the crate manifest. Running the latency runner with a locked build, or running it and expecting a clean worktree afterward, will require Cargo to rewrite this lockfile. Regenerate harness/latency/runner/Cargo.lock so it matches the new dependency graph.

Developer follow-up

After fixing this feedback:

  1. Push the fix to this PR branch.
  2. Re-run this reviewer with @ironloopai review --agent reviewer if you only changed this reviewer's findings.
  3. Re-run all reviewers with @ironloopai review when the fix may affect multiple areas.
  4. Use @ironloopai status to check queued/running/completed/failed/superseded state while reviewers run.
Inline review fallback

Inline comment projection fell back to a body-only PR Review because GitHub rejected the inline payload.
Reason: Unprocessable Entity: "Path could not be resolved" - https://docs.github.com/rest/pulls/reviews#create-a-review-for-a-pull-request

IronLoop preserved the inline review comment payloads below instead of dropping them.

Inline fallback 1: harness/latency/runner/Cargo.lock:3192

IronLoop reviewer: [LOW] Refresh the latency runner lockfile after removing the crate

This separate Cargo.lock still records ironclaw_reborn_composition as depending on ironclaw_skill_learning, even though the PR removes that path dependency and deletes the crate manifest. Running the latency runner with a locked build, or running it and expecting a clean worktree afterward, will require Cargo to rewrite this lockfile. Regenerate harness/latency/runner/Cargo.lock so it matches the new dependency graph.

Developer follow-up

After fixing this feedback:

  1. Push the fix to this PR branch.
  2. Re-run this reviewer with @ironloopai review --agent reviewer if you only changed this reviewer's findings.
  3. Re-run all reviewers with @ironloopai review when the fix may affect multiple areas.
  4. Use @ironloopai status to check queued/running/completed/failed/superseded state while reviewers run.

@railway-app

railway-app Bot commented Jul 9, 2026

Copy link
Copy Markdown

🚅 Deployed to the ironclaw-pr-5866 environment in ironclaw-ci-preview

Service Status Web Updated (UTC)
ironclaw ✅ Success (View Logs) Web Jul 9, 2026 at 10:35 am

@serrrfirat

Copy link
Copy Markdown
Collaborator Author

Superseded by #5874.

@serrrfirat serrrfirat closed this Jul 9, 2026

This branch was successfully deployed

No deployments
ironclaw-ci-preview / ironclaw-pr-5866 — 667f9c74 Deployed Jul 9, 2026 by railway-app[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

contributor: core 20+ merged PRs risk: medium Business logic, config, or moderate-risk modules scope: dependencies Dependency updates scope: docs Documentation size: M 50-199 changed lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant