Skip to content

Graphify: private revision-bound local graph lifecycle #913

Description

@jeffhuber

Part of #902.

Problem

If #876 adopts Graphify, Code Mower needs a safe lifecycle that cannot index an active checkout or confuse a stale graph with current source.

Scope

Add an optional exact Graphify pin, immutable tracked-file materialization, scrubbed environment/network posture, private 0700 state, atomic build manifest/artifact, and build/refresh/status/remove plus doctor commands. No hooks, watcher, hosted service, semantic extraction, or default dependency.

Dependencies

Acceptance criteria

  • Work starts only if Context: evaluate official Graphify as a local repository provider for v1.4.1 #876 records adopt.
  • Every artifact binds full commit/tree SHA, provider version/options, build time, tracked census/digest, graph digest/bytes, and completeness.
  • Untracked/private files cannot enter the graph.
  • Refresh is explicit and atomically publishes a new immutable generation.
  • Stale, corrupt, oversized, partial, and permission-invalid artifacts fail closed.

Code Mower delivery

Produce exactly one independently reviewable PR for this issue. Record the named builder, keep one writer on the branch, run focused tests and applicable full checks, obtain an independent Code Mower review against the exact current head, resolve every P0/P1/P2 finding, and pass normal CI plus code-mower/gate. Update the parent epic with PR/head, review, validation, outcome, and safe metadata-only upload evidence. Do not put credentials, source, diffs, prompts, transcripts, private context, task/message prose, or raw provider output in cloud data.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    builder:claudeCode Mower generated labeldispatched:claudeCode Mower generated labelenhancementNew feature or requestparallel-okCan be implemented in parallel once shared contracts are stabletier:RCode Mower generated label

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions