Feature: Repo indexing service coverage boost
  Additional scenarios targeting uncovered error-handling paths in
  repo_indexing_service.py (lines 182-185, 219-236, 367-368+).

  Background:
    Given a coverage-boost fresh in-memory indexing service

  # -- Walk failure + persist_status double-fault (lines 182-185) ----------

  Scenario: Walk failure on fresh resource with persist_status also failing logs warning
    Given a coverage-boost temporary directory with sample files
    When walk_and_index is mocked to fail and persist_status also fails on a fresh resource
    Then a coverage-boost error should have been raised
    And the coverage-boost double-fault warning about walk failure should have been logged

  # -- persist_index failure on fresh resource (lines 219-228) -------------

  Scenario: persist_index failure on fresh resource persists ERROR status
    Given a coverage-boost temporary directory with sample files
    When walk_and_index succeeds but persist_index fails on a fresh resource
    Then a coverage-boost error should have been raised
    And the coverage-boost persisted status should be "error"

  # -- persist_index failure + persist_status double-fault (lines 231-234, 236) --

  Scenario: persist_index failure with persist_status also failing logs warning
    Given a coverage-boost temporary directory with sample files
    When walk_and_index succeeds but persist_index and persist_status both fail on a fresh resource
    Then a coverage-boost error should have been raised
    And the coverage-boost double-fault warning about persist failure should have been logged

  # -- persist_index failure on existing good index (lines 219-236 else branch) --

  Scenario: persist_index failure on existing good index re-raises without ERROR status
    Given a coverage-boost temporary directory with sample files
    And a coverage-boost successful full index exists
    When persist_index is mocked to fail during re-index of the existing resource
    Then a coverage-boost error should have been raised
    And the coverage-boost persisted status should still be "ready"

  # -- refresh_index: persist_index failure (lines 367-368) ----------------

  Scenario: refresh_index persist failure logs warning and re-raises
    Given a coverage-boost temporary directory with sample files
    And a coverage-boost successful full index exists
    When persist_index is mocked to fail during refresh
    Then a coverage-boost error should have been raised
    And the coverage-boost refresh persist warning should have been logged
