Skip to content

fix(titan-run): sync --start-from enum and phase-timestamp list#1482

Merged
carlos-alm merged 5 commits into
mainfrom
fix/titan-run-phase-enum-1473
Jun 13, 2026
Merged

fix(titan-run): sync --start-from enum and phase-timestamp list#1482
carlos-alm merged 5 commits into
mainfrom
fix/titan-run-phase-enum-1473

Conversation

@carlos-alm

Copy link
Copy Markdown
Contributor

Two doc-drift fixes in titan-run/SKILL.md:

  • Adds close to the --start-from enum (GRIND skip condition referenced it but it wasn't listed)
  • Adds grind to the phase-timestamps <PHASE> substitution list (Step 4.5 records grind timestamps but the helper omitted it)

Closes #1473

@claude

claude Bot commented Jun 13, 2026

Copy link
Copy Markdown

Claude finished @carlos-alm's task —— View job


PR Review — fix(titan-run): sync --start-from enum and phase-timestamp list

  • Gather context and read changed files
  • Phase 1: Root cause analysis
  • Phase 2: Configuration change detection
  • Phase 3: Test integrity check
  • Phase 4: Code quality review
  • Phase 5: Backlog compliance
  • Post final review

Root Cause Analysis

Problem Being Solved: Two doc-drift issues in titan-run/SKILL.md:

  1. --start-from enum in the argument-hint frontmatter omitted close, even though the GRIND skip condition (Step 4.5) explicitly references --start-from close as a skip trigger.
  2. The <PHASE> substitution list in the phase-timestamps helper omitted grind, even though Step 4.5 records grind timestamps (phaseTimestamps.grind.startedAt/completedAt).

Both are genuine inconsistencies between the skill's documentation and its own logic — not cosmetic nits.

Why This Approach: Direct minimal fixes to the two affected strings. No behavioral changes; the actual pipeline logic already handled both phases correctly. The doc was wrong, the code was right — fix the doc.

Risk Assessment: Extremely low. These are documentation-only fixes in a skill file. The two supporting changes in the same PR (.gitignore and visitor.test.ts) are independent housekeeping items unrelated to the stated fix.


Change-by-Change Analysis

SKILL.md — argument-hint fix (+close to enum) ✓

argument-hint line 4: parityparity|close

Verified correct: Step 4.6 (parity skip) and Step 4.5 (grind skip) both reference --start-from close as a condition. The argument hint was showing users an incomplete list of valid values.

SKILL.md — phase-timestamp <PHASE> list (+grind) ✓

Line 53: …sync, forge, parity, or close…sync, forge, grind, parity, or close

Verified correct: Step 4.5a uses phaseTimestamps.grind.startedAt and Step 4.5c uses phaseTimestamps.grind.completedAt. The helper snippet's comment was the only place grind was missing.

.gitignore — add napi-rs generated artifacts ✓

Adds three patterns:

crates/codegraph-core/index.js
crates/codegraph-core/index.d.ts
crates/codegraph-core/*.node

These are build outputs from the napi-rs Rust binding — generated at compile time, should never be committed. The CLAUDE.md already notes *.node artifacts in this location. Low-risk, correct housekeeping.

tests/unit/visitor.test.ts — remove stale biome-ignore comment ✓

Removes:

// biome-ignore lint/suspicious/noExplicitAny: tree-sitter parser type is complex and not worth typing for tests

The suppression was left over from a previous commit (ef8ea4f). The let parse: any; declaration retained its type; removing the suppression means biome would now flag it if the noExplicitAny rule is enabled. No assertion changed, no test weakened.

Minor note: The PR title says "Two doc-drift fixes in titan-run/SKILL.md" but the PR bundles 3 distinct concerns: the doc fix, the .gitignore update, and the biome comment removal. Per the repo's "One PR = one concern" convention this is technically scope mixing. None of the extra changes are harmful, but it's worth noting for future PRs.


Phase 2: Configuration Change Detection

No linting rules changed, no test timeouts altered, no build config modified. The biome-ignore comment removed was already listed in a prior commit as "unused" — it's a cleanup, not silencing a warning.

Phase 3: Test Integrity

The only test file change removes a no-op biome suppression comment. No assertion was weakened, no expectation lowered. The actual test logic is identical after the change.


Backlog Compliance

  • Zero-dep: ✓ — no new runtime dependencies
  • Foundation-aligned: ✓ — documentation fix; no pipeline behavior change; no cloud calls, no schema changes
  • Problem-fit: 3/5 — improves skill accuracy so AI agents running /titan-run see the correct --start-from options and correctly apply phase timestamps; indirectly reduces hallucination risk when agents follow the skill, but doesn't directly address core graph/dependency navigation
  • Breaking: No — no CLI changes, no API changes, no DB schema changes
  • Tier: 1

Critical Concerns

None.


Final Recommendation

  • Rating: ⭐⭐⭐⭐ (4/5)
  • Action: APPROVE
  • Reasoning: Both doc fixes are factually correct and verifiable against the skill's own logic. The supporting changes (.gitignore, biome comment) are clean and uncontroversial. The only minor process note is that bundling three concerns into one PR diverges from the "one PR = one concern" convention — harmless here, but worth keeping tidy in future work.

@greptile-apps

greptile-apps Bot commented Jun 13, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR fixes two documentation-drift issues in the titan-run skill's orchestrator instructions. The --start-from enum was missing close (even though the GRIND skip condition explicitly checks for it), and the phase-timestamps <PHASE> substitution list was missing grind (even though Step 4.5 records grind timestamps).

  • Adds close to the --start-from enum in both the YAML argument-hint frontmatter and the prose description, making the documented values consistent with the skip conditions that already reference --start-from close.
  • Adds grind to the timestamp helper's <PHASE> substitution list, aligning the documentation with Step 4.5 which already records phaseTimestamps.grind.startedAt and phaseTimestamps.grind.completedAt.

Confidence Score: 5/5

Documentation-only change to a skill instruction file — no executable code paths are modified.

Both additions are directly backed by existing content in the same file: close is already referenced in the GRIND and PARITY skip conditions, and grind already has startedAt/completedAt recording in Steps 4.5a and 4.5c. The changes bring the enumeration lists into sync with the documented behavior — no new logic is introduced.

No files require special attention.

Important Files Changed

Filename Overview
.claude/skills/titan-run/SKILL.md Two accurate doc-drift fixes: close added to the --start-from enum (argument-hint + prose description), and grind added to the phase-timestamp <PHASE> substitution list. Both match the existing runtime behavior already described in Steps 4.5 and 5 of the same file.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[--start-from argument] --> B{enum value?}
    B --> C[recon]
    B --> D[gauntlet]
    B --> E[sync]
    B --> F[forge]
    B --> G[grind]
    B --> H[parity]
    B --> I[close added]

    J[Phase Timestamp Helper] --> K[Replace PHASE with...]
    K --> L[recon]
    K --> M[gauntlet]
    K --> N[sync]
    K --> O[forge]
    K --> P[grind added]
    K --> Q[parity]
    K --> R[close]
Loading

Reviews (4): Last reviewed commit: "fix(titan-run): add close to prose --sta..." | Re-trigger Greptile

carlos-alm and others added 2 commits June 12, 2026 19:17
The argument-hint frontmatter and phase-timestamp list were already
updated in the prior commit, but the prose bullet describing
--start-from still omitted `close` from its enum. All three
occurrences now agree.
@carlos-alm

Copy link
Copy Markdown
Contributor Author

Fixed — the prose --start-from bullet on line 19 now includes close (was the one remaining inconsistency Greptile flagged). All three occurrences in the file now agree: argument-hint frontmatter, prose description, and phase-timestamp list.

@carlos-alm

Copy link
Copy Markdown
Contributor Author

@greptileai

@carlos-alm

Copy link
Copy Markdown
Contributor Author

Addressed Greptile's feedback: added close to the prose --start-from description (commit c15d6a2), so all three locations in the file now agree (argument-hint frontmatter, prose bullet list, and phase-timestamp helper). Claude's minor note about mixing 3 concerns (.gitignore, visitor.test.ts, SKILL.md fixes) is noted — those are the shared base commits that landed alongside the primary fix; the .gitignore and test changes were trivial housekeeping that didn't warrant separate PRs.

@carlos-alm carlos-alm merged commit 589463e into main Jun 13, 2026
22 checks passed
@carlos-alm carlos-alm deleted the fix/titan-run-phase-enum-1473 branch June 13, 2026 03:45
@github-actions github-actions Bot locked and limited conversation to collaborators Jun 13, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

titan-run skill: --start-from enum and <PHASE> timestamp list are out of sync with actual phases

1 participant