T5-P4-A4-WP2 Eliminate Generator G6 (Dead Canonical Constant)#4096
Merged
Trecek merged 4 commits intoJun 12, 2026
Merged
Conversation
…rch_dirs and materialize Codex profile skills Make BackendConventions.project_local_skill_search_dirs the live dispatch key for project-local skill discovery. When a backend is available, init_session passes its conventions' search dirs, scoping discovery to the backend's declared directories (claude-code excludes .codex/skills, etc.). The _OVERRIDE_SEARCH_DIRS identity binding is preserved as the no-backend fallback. Additionally, extract _materialize_profile_skills in the Codex backend to symlink ~/.codex/skills/ profile skills into session directories during setup_session_dir, with shutil.copytree fallback for environments where symlink creation fails.
- Use monkeypatch.setattr('pathlib.Path.home') instead of setenv('HOME')
to correctly isolate _materialize_profile_skills tests
- Add layer enforcement exceptions for workspace tests that legitimately
import from autoskillit.execution (backend conventions and codex backend)
- Update codex.py line limit exemption from 1066 to 1109 to account
for _materialize_profile_skills (+43 lines)
- Add mock_backend.capabilities.project_local_skills_capable = False
in test_marker_dir_routes_through_session_locator to prevent
Mock() iteration error in detect_project_local_overrides
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
When symlink_to raises OSError, the original failure was silently swallowed. Add logger.debug so the root cause (e.g. unsupported filesystem vs permissions) is preserved if copytree also fails. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The debug-level symlink failure log added 5 net lines, pushing execution/backends/codex.py from 1109 to 1114 lines. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Make
BackendConventions.project_local_skill_search_dirsthe live dispatch key for project-local skill discovery by parameterizingdetect_project_local_overrideswith asearch_dirsargument. When a backend is available,init_sessionpasses its conventions' search dirs, scoping discovery to the backend's declared directories (e.g., claude-code excludes.codex/skills). The_OVERRIDE_SEARCH_DIRSidentity binding is preserved as the no-backend fallback. Additionally, extract_materialize_profile_skillsin the Codex backend to symlink~/.codex/skills/profile skills into session directories duringsetup_session_dir.Other call sites of
detect_project_local_overrides: Two additional call sites exist —src/autoskillit/recipe/rules/rules_skills.py:116andsrc/autoskillit/cli/_onboarding.py:27. Both are intentionally left withoutsearch_dirs(defaulting toNone→_OVERRIDE_SEARCH_DIRS) because no backend is available in the recipe validation or CLI onboarding contexts. The new default-Noneparameter preserves their existing behavior.Closes #4021
Implementation Plan
Plan file:
/home/talon/projects/autoskillit-runs/impl-20260612-133807-351054/.autoskillit/temp/make-plan/t5_p4_a4_wp2_eliminate_generator_g6_plan_2026-06-12_140000.md🤖 Generated with Claude Code via AutoSkillit
Token Usage Summary
* Step used a non-Anthropic provider; caching behavior may differ.
Token Efficiency
Model Usage Breakdown