Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
153 commits
Select commit Hold shift + click to select a range
fae7598
Add Claude Code support and documentation for Conductor
jasonkneen Dec 19, 2025
73d5f29
Update README.md
jasonkneen Dec 19, 2025
391d656
fixes
jasonkneen Dec 19, 2025
776c02c
feat: add portable skill support for Claude CLI, OpenCode, and Codex
bardusco Dec 23, 2025
09d1ae6
fix: improve skill description and installer
bardusco Dec 23, 2025
42686b0
refactor: remove duplicate references, use symlinks to original files
bardusco Dec 23, 2025
8e1caf7
fix: add rule to avoid slash command suggestions
bardusco Dec 23, 2025
31e5b4b
feat(vcs): Add git workflow for VCS abstraction
Jan 20, 2026
77dba6b
refactor(setup): Decouple VCS logic from project inception
Jan 20, 2026
1d9cbba
refactor(setup): Abstract VCS-specific file listing
Jan 20, 2026
493ff82
refactor(revert): Decouple revert logic from Git
Jan 20, 2026
e7fcbb1
refactor(vcs): Replace git notes with VCS-agnostic metadata log
Jan 20, 2026
d81bc79
feat(revert): Enhance revert plan with detailed commit summaries
Jan 20, 2026
58a3617
fix(conductor): Create and update metadata log
Jan 20, 2026
66101e9
fix(vcs): Implement safe JSONL logging for metadata
Jan 21, 2026
6dffea0
feat(vcs): Enhance git.md with structured error handling
Jan 21, 2026
9dab75f
refactor(conductor): Use get_commit_metadata command
Jan 21, 2026
b0f21df
conductor(setup): Add conductor setup files
edithatogo Dec 30, 2025
a6a2d55
conductor(plan): Mark task 'Create development branch' as complete
edithatogo Dec 30, 2025
e9a0a5d
Add Claude Code support and documentation for Conductor
jasonkneen Dec 19, 2025
3a35574
Update README.md
jasonkneen Dec 19, 2025
c66e896
fixes
jasonkneen Dec 19, 2025
ff409d0
conductor(plan): Mark task 'Merge PR #9' as complete
edithatogo Dec 30, 2025
2ec14c4
feat: add portable skill support for Claude CLI, OpenCode, and Codex
bardusco Dec 23, 2025
3c65d3b
fix: improve skill description and installer
bardusco Dec 23, 2025
4fec68b
refactor: remove duplicate references, use symlinks to original files
bardusco Dec 23, 2025
5b57cc4
fix: add rule to avoid slash command suggestions
bardusco Dec 23, 2025
dffe3f6
conductor(plan): Mark task 'Merge PR #25' as complete
edithatogo Dec 30, 2025
c6ed8f1
conductor(checkpoint): Checkpoint end of Phase 1: Preparation & PR In…
edithatogo Dec 30, 2025
65c1d43
conductor(plan): Mark Phase 1 as complete
edithatogo Dec 30, 2025
3ccb646
feat(core): Initialize conductor-core package structure
edithatogo Dec 30, 2025
5127747
feat(core): Implement Pydantic data models for Tracks and Plans
edithatogo Dec 30, 2025
63d495c
feat(core): Implement Jinja2-based PromptProvider
edithatogo Dec 30, 2025
6b07052
feat(core): Implement GitService abstraction layer
edithatogo Dec 30, 2025
2a58c4e
test(core): Add coverage for checkout and merge in GitService
edithatogo Dec 30, 2025
58a5fe1
conductor(checkpoint): Checkpoint end of Phase 2: Core Library Extrac…
edithatogo Dec 30, 2025
c502e7c
conductor(plan): Mark Phase 2 as complete
edithatogo Dec 30, 2025
f904d90
feat(gemini): Initialize conductor-gemini adapter skeleton
edithatogo Dec 30, 2025
810dd67
test(gemini): Add CLI routing tests for Gemini adapter
edithatogo Dec 30, 2025
d0fac36
feat(gemini): Implement functional CLI adapter and refactor setup com…
edithatogo Dec 30, 2025
d106e97
feat(core): Add automated validation service for protocol consistency
edithatogo Dec 30, 2025
241fad5
conductor(plan): Mark Phase 3 complete (Automated)
edithatogo Dec 30, 2025
1106259
conductor(sync): Align all platforms with Core protocol templates
edithatogo Dec 30, 2025
169bd87
feat(release): Configure GitHub Actions for VSIX and PyPI packaging
edithatogo Dec 30, 2025
0358910
feat(release): Add VSIX build script
edithatogo Dec 30, 2025
67d0746
feat(release): Add PyPI build script
edithatogo Dec 30, 2025
d121627
feat(release): Add build scripts and VS Code scaffolding
edithatogo Dec 30, 2025
519f069
conductor(plan): Mark Phase 1 of Robustness track as complete
edithatogo Dec 30, 2025
da25804
feat(core): use Enums for Task and Track status
edithatogo Dec 30, 2025
0e04a6f
feat(core): implement ProjectManager service
edithatogo Dec 30, 2025
af7dbbe
conductor(plan): Mark ProjectManager task as complete
edithatogo Dec 30, 2025
c474ce2
test(core): add edge case tests for GitService
edithatogo Dec 30, 2025
da0d515
feat(core): add robust error handling to PromptProvider
edithatogo Dec 30, 2025
5c14b60
fix(gemini): fix CLI tests and ensure directory exists in create_track
edithatogo Dec 30, 2025
3267ae5
feat(qwen): add qwen-extension.json configuration
edithatogo Dec 30, 2025
518ffd5
feat(vscode): configure extensionKind for remote development support
edithatogo Dec 30, 2025
0c7b9c4
conductor(plan): Mark Phase 3 complete (Automated)
edithatogo Dec 30, 2025
2143c27
conductor(plan): Mark Phase 4 complete (Automated)
edithatogo Dec 30, 2025
6c4cbb8
feat(core): add LSP feasibility study prototype
edithatogo Dec 30, 2025
051a845
feat(test): add E2E smoke test script
edithatogo Dec 30, 2025
dfb8b32
conductor(cleanup): archive robustness track
edithatogo Dec 30, 2025
eb32e47
chore: ignore build artifacts
edithatogo Dec 30, 2025
4992745
feat(gemini): Refactor status and implement commands using new core T…
edithatogo Dec 31, 2025
bf87009
conductor(plan): Mark Phase 1 as complete
edithatogo Dec 31, 2025
599e483
feat(vscode): Add setup, status, implement commands and implementation
edithatogo Dec 31, 2025
2adf83c
conductor(plan): Mark Phase 2 as complete
edithatogo Dec 31, 2025
352e9e0
feat(core): Robust ID generation, Git notes, and Task/Phase management
edithatogo Dec 31, 2025
27fbd56
conductor(plan): Mark Phase 3 as complete
edithatogo Dec 31, 2025
3248a33
chore: Bump versions to 0.2.0 and update CHANGELOG
edithatogo Dec 31, 2025
1953abe
conductor(plan): Mark Phase 4 and track as complete
edithatogo Dec 31, 2025
b01ef83
docs(plan): Finalize all tracks and statuses for 0.2.0 release
edithatogo Dec 31, 2025
1c1d3b2
feat: Synchronize platforms, implement revert command, and verify build
edithatogo Dec 31, 2025
5993ad9
ci: Add CI workflow to run on push
edithatogo Dec 31, 2025
3abc54d
ci: Install test dependencies
edithatogo Dec 31, 2025
a4d09a0
ci: Upgrade Node.js to 20 and use npm ci
edithatogo Dec 31, 2025
c601194
ci: Upgrade Node.js to 20 in release workflow
edithatogo Dec 31, 2025
7289d24
feat(skill): Add Codex as an installation target in the installer
edithatogo Dec 31, 2025
d136633
docs(track): audit skill artifact baseline
edithatogo Jan 1, 2026
ae3a265
conductor(plan): complete skill artifact inventory
edithatogo Jan 1, 2026
11a7e9f
docs(track): capture command syntax matrix
edithatogo Jan 1, 2026
d48fcd4
conductor(plan): complete command syntax inventory
edithatogo Jan 1, 2026
1e246ed
docs(track): summarize skill setup gaps
edithatogo Jan 1, 2026
09f1011
conductor(plan): complete gap analysis
edithatogo Jan 1, 2026
1b91777
conductor(checkpoint): Checkpoint end of Phase 1
edithatogo Jan 1, 2026
fc6e144
conductor(plan): mark phase 1 complete
edithatogo Jan 1, 2026
edcd668
chore(skills): add initial manifest schema
edithatogo Jan 1, 2026
5fb6dc6
conductor(plan): complete manifest schema
edithatogo Jan 1, 2026
872250c
docs(track): outline generation targets
edithatogo Jan 1, 2026
7fa8f2d
conductor(plan): complete generation targets
edithatogo Jan 1, 2026
8e113c1
docs(track): outline validation strategy
edithatogo Jan 1, 2026
baea52d
conductor(plan): complete validation strategy
edithatogo Jan 1, 2026
9912210
conductor(checkpoint): Checkpoint end of Phase 2
edithatogo Jan 1, 2026
bbc2405
conductor(plan): mark phase 2 complete
edithatogo Jan 1, 2026
30e2b27
test(skills): add manifest generation tests
edithatogo Jan 1, 2026
12dc05d
conductor(plan): complete manifest tests
edithatogo Jan 1, 2026
61637cf
feat(skills): load manifest for sync generation
edithatogo Jan 1, 2026
a068cf3
conductor(plan): complete manifest-driven sync
edithatogo Jan 1, 2026
a506ea4
feat(skills): sync extension manifests
edithatogo Jan 1, 2026
cebf522
conductor(plan): complete extension manifest sync
edithatogo Jan 1, 2026
2a0407d
feat(skills): guard template rendering
edithatogo Jan 1, 2026
837e560
conductor(plan): complete protocol guard
edithatogo Jan 1, 2026
0d35987
conductor(checkpoint): Checkpoint end of Phase 3
edithatogo Jan 1, 2026
06eda08
conductor(plan): mark phase 3 complete
edithatogo Jan 1, 2026
6ebdcd1
test(skills): add installer and validator checks
edithatogo Jan 1, 2026
1b2cf84
conductor(plan): complete installer test setup
edithatogo Jan 1, 2026
dcfa61c
feat(install): add non-interactive options
edithatogo Jan 1, 2026
d6e5cf1
conductor(plan): complete installer UX
edithatogo Jan 1, 2026
cd13135
feat(skills): add manifest validation
edithatogo Jan 1, 2026
107bb02
conductor(plan): complete validation tooling
edithatogo Jan 1, 2026
3b1b797
conductor(checkpoint): Checkpoint end of Phase 4
edithatogo Jan 1, 2026
9143311
conductor(plan): mark phase 4 complete
edithatogo Jan 1, 2026
cf24dbf
docs: add tool command syntax guide
edithatogo Jan 1, 2026
0aaf104
conductor(plan): complete docs update
edithatogo Jan 1, 2026
dd9d0ac
feat(skills): add sync check script
edithatogo Jan 1, 2026
e855096
conductor(plan): complete sync check
edithatogo Jan 1, 2026
d345dc3
conductor(checkpoint): Checkpoint end of Phase 5
edithatogo Jan 1, 2026
433db2a
conductor(plan): mark phase 5 complete
edithatogo Jan 1, 2026
541f497
conductor(skip): manual verification skipped
edithatogo Jan 1, 2026
9adda45
conductor(plan): record manual verification skip
edithatogo Jan 1, 2026
7c65e84
conductor(tracks): complete skills setup review
edithatogo Jan 1, 2026
6858cae
conductor(archive): archive skills setup review
edithatogo Jan 1, 2026
1f63ed9
fix(skills): align generated outputs
edithatogo Jan 1, 2026
f085876
fix(ci): align templates and dependencies
edithatogo Jan 1, 2026
8e268bb
fix(templates): align docs and sync outputs
edithatogo Jan 1, 2026
799a8f2
fix: address review feedback and cleanup
edithatogo Jan 1, 2026
3b5bb7d
chore(core): add lsp dependencies
edithatogo Jan 1, 2026
2a864e5
fix: polish setup and new track templates
edithatogo Jan 1, 2026
0cc2f72
feat(vscode): Implement Antigravity/Copilot chat participant and comm…
edithatogo Jan 29, 2026
1d61140
test(scripts): Add unit tests for Antigravity skill sync
edithatogo Jan 29, 2026
eb72c78
conductor(plan): Mark task 'Execute unit tests' as complete
edithatogo Jan 29, 2026
1c78079
chore(conductor): Add missing track files for Antigravity integration
edithatogo Jan 29, 2026
dbe9420
test(gemini): Add VS Code contract integration tests
edithatogo Jan 29, 2026
f34b687
conductor(plan): Mark task 'Perform integration testing' as complete
edithatogo Jan 29, 2026
0695ec5
test(scripts): Add comprehensive Antigravity validation script
edithatogo Jan 29, 2026
a02a918
conductor(plan): Mark track 'Google Antigravity/Copilot VS Code Plugi…
edithatogo Jan 29, 2026
fb217c2
chore(conductor): Mark track 'Google Antigravity/Copilot VS Code Plug…
edithatogo Jan 29, 2026
2efbb95
chore(conductor): Archive track 'Google Antigravity/Copilot VS Code P…
edithatogo Jan 29, 2026
3643399
feat(conductor): migrate interactive prompts to AskUser tool
jerop Jan 29, 2026
cd3e374
chore(conductor): rename AskUser tool to ask_user
jerop Jan 29, 2026
fef5dd2
feat(conductor): use ask_user tool in review command
jerop Jan 29, 2026
58c1f31
feat(implement): add ralph mode loop
moisgobg Jan 27, 2026
9bffd6b
feat(ralph): refactor autonomous loop to MCP-based AfterTool hooks
moisgobg Jan 29, 2026
a3e0126
chore(conductor): Ensure Ralph state file is ignored in VCS
moisgobg Jan 29, 2026
fee58cf
refactor(ralph): Move directive to Markdown and use relative path res…
moisgobg Jan 30, 2026
a40d66f
chore(conductor): Add post-execution advice to commands
sherzat3 Jan 30, 2026
79527f3
chore(sync): Align all adapters and skills with modernized core templ…
edithatogo Jan 31, 2026
f79724c
Merge main into feature/foundation-core and resolve conflicts
edithatogo Jan 31, 2026
3df4d9a
Merge pr-9 and resolve independent Claude support conflicts
edithatogo Jan 31, 2026
7fc0fb0
Merge pr-25 and resolve multi-platform skill conflicts
edithatogo Jan 31, 2026
63ca893
Merge upstream/chore/add-post-execution-tips and resolve template con…
edithatogo Jan 31, 2026
e197e1c
Merge upstream/feat/ralph-loop and resolve autonomous mode conflicts
edithatogo Jan 31, 2026
665218c
Merge upstream/feat/use-ask-user-tool and resolve tool integration co…
edithatogo Jan 31, 2026
e79fc23
Merge upstream/vcs-support and resolve protocol conflicts
edithatogo Jan 31, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
182 changes: 182 additions & 0 deletions .antigravity/skills/conductor-implement/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,182 @@
---
name: conductor-implement
description: Execute tasks from a track's plan following the TDD workflow.
license: Apache-2.0
compatibility: Works with Claude Code, Gemini CLI, and any Agent Skills compatible CLI
---

## 1.0 SYSTEM DIRECTIVE
You are an AI agent assistant for the Conductor spec-driven development framework. Your current task is to implement a track. You MUST follow this protocol precisely.

CRITICAL: You must validate the success of every tool call. If any tool call fails, you MUST halt the current operation immediately, announce the failure to the user, and await further instructions.

---

## 1.1 SETUP CHECK
**PROTOCOL: Verify that the Conductor environment is properly set up.**

1. **Verify Core Context:** Using the **Universal File Resolution Protocol**, resolve and verify the existence of:
- **Product Definition**
- **Tech Stack**
- **Workflow**

2. **Handle Failure:**
- IF ANY of these files are missing (or their resolved paths do not exist), you MUST halt the operation immediately.
- Announce: "Conductor is not set up. Please run `/conductor:setup` to set up the environment."
- Do NOT proceed to Track Selection.

---

## 2.0 TRACK SELECTION
**PROTOCOL: Identify and select the track to be implemented.**

1. **Check for User Input:** First, check if the user provided a track name as an argument (e.g., `/conductor:implement <track_description>`).

2. **Locate and Parse Tracks Registry:**
- Resolve the **Tracks Registry**.
- Read and parse this file. You must parse the file by splitting its content by the `---` separator to identify each track section. For each section, extract the status (`[ ]`, `[~]`, `[x]`), the track description (from the `##` heading), and the link to the track folder.
- **CRITICAL:** If no track sections are found after parsing, announce: "The tracks file is empty or malformed. No tracks to implement." and halt.

3. **Continue:** Immediately proceed to the next step to select a track.

4. **Select Track:**
- **If a track name was provided:**
1. Perform an exact, case-insensitive match for the provided name against the track descriptions you parsed.
2. If a unique match is found, confirm the selection with the user: "I found track '<track_description>'. Is this correct?"
3. If no match is found, or if the match is ambiguous, inform the user and ask for clarification. Suggest the next available track as below.
- **If no track name was provided (or if the previous step failed):**
1. **Identify Next Track:** Find the first track in the parsed tracks file that is NOT marked as `[x] Completed`.
2. **If a next track is found:**
- Announce: "No track name provided. Automatically selecting the next incomplete track: '<track_description>'."
- Proceed with this track.
3. **If no incomplete tracks are found:**
- Announce: "No incomplete tracks found in the tracks file. All tasks are completed!"
- Halt the process and await further user instructions.

5. **Handle No Selection:** If no track is selected, inform the user and await further instructions.

---

## 3.0 TRACK IMPLEMENTATION
**PROTOCOL: Execute the selected track.**

1. **Announce Action:** Announce which track you are beginning to implement.

2. **Update Status to 'In Progress':**
- Before beginning any work, you MUST update the status of the selected track in the **Tracks Registry** file.
- This requires finding the specific heading for the track (e.g., `## [ ] Track: <Description>`) and replacing it with the updated status (e.g., `## [~] Track: <Description>`) in the **Tracks Registry** file you identified earlier.

3. **Load Track Context:**
a. **Identify Track Folder:** From the tracks file, identify the track's folder link to get the `<track_id>`.
b. **Read Files:**
- **Track Context:** Using the **Universal File Resolution Protocol**, resolve and read the **Specification** and **Implementation Plan** for the selected track.
- **Workflow:** Resolve **Workflow** (via the **Universal File Resolution Protocol** using the project's index file).
c. **Error Handling:** If you fail to read any of these files, you MUST stop and inform the user of the error.

4. **Execute Tasks and Update Track Plan:**
a. **Announce:** State that you will now execute the tasks from the track's **Implementation Plan** by following the procedures in the **Workflow**.
b. **Iterate Through Tasks:** You MUST now loop through each task in the track's **Implementation Plan one by one.
c. **For Each Task, You MUST:**
i. **Defer to Workflow:** The **Workflow** file is the **single source of truth** for the entire task lifecycle. You MUST now read and execute the procedures defined in the "Task Workflow" section of the **Workflow** file you have in your context. Follow its steps for implementation, testing, and committing precisely.

5. **Finalize Track:**
- After all tasks in the track's local **Implementation Plan** are completed, you MUST update the track's status in the **Tracks Registry**.
- This requires finding the specific heading for the track (e.g., `## [~] Track: <Description>`) and replacing it with the completed status (e.g., `## [x] Track: <Description>`).
- **Commit Changes:** Stage the **Tracks Registry** file and commit with the message `chore(conductor): Mark track '<track_description>' as complete`.
- Announce that the track is fully complete and the tracks file has been updated.

---

## 4.0 SYNCHRONIZE PROJECT DOCUMENTATION
**PROTOCOL: Update project-level documentation based on the completed track.**

1. **Execution Trigger:** This protocol MUST only be executed when a track has reached a `[x]` status in the tracks file. DO NOT execute this protocol for any other track status changes.

2. **Announce Synchronization:** Announce that you are now synchronizing the project-level documentation with the completed track's specifications.

3. **Load Track Specification:** Read the track's **Specification**.

4. **Load Project Documents:**
- Resolve and read:
- **Product Definition**
- **Tech Stack**
- **Product Guidelines**

5. **Analyze and Update:**
a. **Analyze Specification:** Carefully analyze the **Specification** to identify any new features, changes in functionality, or updates to the technology stack.
b. **Update Product Definition:**
i. **Condition for Update:** Based on your analysis, you MUST determine if the completed feature or bug fix significantly impacts the description of the product itself.
ii. **Propose and Confirm Changes:** If an update is needed, generate the proposed changes. Then, present them to the user for confirmation:
> "Based on the completed track, I propose the following updates to the **Product Definition**:"
> ```diff
> [Proposed changes here, ideally in a diff format]
> ```
> "Do you approve these changes? (yes/no)"
iii. **Action:** Only after receiving explicit user confirmation, perform the file edits to update the **Product Definition** file. Keep a record of whether this file was changed.
c. **Update Tech Stack:**
i. **Condition for Update:** Similarly, you MUST determine if significant changes in the technology stack are detected as a result of the completed track.
ii. **Propose and Confirm Changes:** If an update is needed, generate the proposed changes. Then, present them to the user for confirmation:
> "Based on the completed track, I propose the following updates to the **Tech Stack**:"
> ```diff
> [Proposed changes here, ideally in a diff format]
> ```
> "Do you approve these changes? (yes/no)"
iii. **Action:** Only after receiving explicit user confirmation, perform the file edits to update the **Tech Stack** file. Keep a record of whether this file was changed.
d. **Update Product Guidelines (Strictly Controlled):**
i. **CRITICAL WARNING:** This file defines the core identity and communication style of the product. It should be modified with extreme caution and ONLY in cases of significant strategic shifts, such as a product rebrand or a fundamental change in user engagement philosophy. Routine feature updates or bug fixes should NOT trigger changes to this file.
ii. **Condition for Update:** You may ONLY propose an update to this file if the track's **Specification** explicitly describes a change that directly impacts branding, voice, tone, or other core product guidelines.
iii. **Propose and Confirm Changes:** If the conditions are met, you MUST generate the proposed changes and present them to the user with a clear warning:
> "WARNING: The completed track suggests a change to the core **Product Guidelines**. This is an unusual step. Please review carefully:"
> ```diff
> [Proposed changes here, ideally in a diff format]
> ```
> "Do you approve these critical changes to the **Product Guidelines**? (yes/no)"
iv. **Action:** Only after receiving explicit user confirmation, perform the file edits. Keep a record of whether this file was changed.

6. **Final Report:** Announce the completion of the synchronization process and provide a summary of the actions taken.
- **Construct the Message:** Based on the records of which files were changed, construct a summary message.
- **Commit Changes:**
- If any files were changed (**Product Definition**, **Tech Stack**, or **Product Guidelines**), you MUST stage them and commit them.
- **Commit Message:** `docs(conductor): Synchronize docs for track '<track_description>'`
- **Example (if Product Definition was changed, but others were not):**
> "Documentation synchronization is complete.
> - **Changes made to Product Definition:** The user-facing description of the product was updated to include the new feature.
> - **No changes needed for Tech Stack:** The technology stack was not affected.
> - **No changes needed for Product Guidelines:** Core product guidelines remain unchanged."
- **Example (if no files were changed):**
> "Documentation synchronization is complete. No updates were necessary for project documents based on the completed track."

---

## 5.0 TRACK CLEANUP
**PROTOCOL: Offer to archive or delete the completed track.**

1. **Execution Trigger:** This protocol MUST only be executed after the current track has been successfully implemented and the `SYNCHRONIZE PROJECT DOCUMENTATION` step is complete.

2. **Ask for User Choice:** You MUST prompt the user with the available options for the completed track.
> "Track '<track_description>' is now complete. What would you like to do?
> A. **Archive:** Move the track's folder to `conductor/archive/` and remove it from the tracks file.
> B. **Delete:** Permanently delete the track's folder and remove it from the tracks file.
> C. **Skip:** Do nothing and leave it in the tracks file.
> Please enter the letter of your choice (A, B, or C)."

3. **Handle User Response:**
* **If user chooses "A" (Archive):**
i. **Create Archive Directory:** Check for the existence of `conductor/archive/`. If it does not exist, create it.
ii. **Archive Track Folder:** Move the track's folder from its current location (resolved via the **Tracks Directory**) to `conductor/archive/<track_id>`.
iii. **Remove from Tracks File:** Read the content of the **Tracks Registry** file, remove the entire section for the completed track (the part that starts with `---` and contains the track description), and write the modified content back to the file.
iv. **Commit Changes:** Stage the **Tracks Registry** file and `conductor/archive/`. Commit with the message `chore(conductor): Archive track '<track_description>'`.
v. **Announce Success:** Announce: "Track '<track_description>' has been successfully archived."
* **If user chooses "B" (Delete):**
i. **CRITICAL WARNING:** Before proceeding, you MUST ask for a final confirmation due to the irreversible nature of the action.
> "WARNING: This will permanently delete the track folder and all its contents. This action cannot be undone. Are you sure you want to proceed? (yes/no)"
ii. **Handle Confirmation:**
- **If 'yes'**:
a. **Delete Track Folder:** Resolve the **Tracks Directory** and permanently delete the track's folder from `<Tracks Directory>/<track_id>`.
b. **Remove from Tracks File:** Read the content of the **Tracks Registry** file, remove the entire section for the completed track, and write the modified content back to the file.
c. **Commit Changes:** Stage the **Tracks Registry** file and the deletion of the track directory. Commit with the message `chore(conductor): Delete track '<track_description>'`.
d. **Announce Success:** Announce: "Track '<track_description>' has been permanently deleted."
- **If 'no' (or anything else)**:
a. **Announce Cancellation:** Announce: "Deletion cancelled. The track has not been changed."
* **If user chooses "C" (Skip) or provides any other input:**
* Announce: "Okay, the completed track will remain in your tracks file for now."
Loading