Remove the forge-derived substrate catalog generator #1647

Closed
opened 2026-08-05 10:09:05 +00:00 by coilyco-ops · 1 comment
Member

Outcome

Remove the hidden ward container substrate-catalog generator and its forge-derived metadata. Retain explicit provider-neutral substrate declarations and verified dependency mounts.

Scope

  • Delete substrate_catalog.go, the hidden command, the generated catalog artifact and reader when they exist only for this path, associated tests and documentation, and infrastructure-specific trigger assumptions.
  • Keep the explicit manifest and mount behavior needed by the provider-neutral substrate and multi-repository contracts.
  • Do not replace the generator with another live forge inventory dependency.

Preserved boundary

  • Exact declarations continue to determine dependency mounts.
  • Verified dependency mounting already shipped on main remains supported.

Acceptance

  • Building or using a substrate does not require a live forge inventory or generated forge metadata.
  • Explicit provider-neutral declarations determine the mounted dependencies.
  • Current declared dependency flows continue to work.
  • No hidden generator command or product documentation remains.

Coordinates with #1622. Blocks documentation consolidation in #1624.

## Outcome Remove the hidden `ward container substrate-catalog` generator and its forge-derived metadata. Retain explicit provider-neutral substrate declarations and verified dependency mounts. ## Scope * Delete `substrate_catalog.go`, the hidden command, the generated catalog artifact and reader when they exist only for this path, associated tests and documentation, and infrastructure-specific trigger assumptions. * Keep the explicit manifest and mount behavior needed by the provider-neutral substrate and multi-repository contracts. * Do not replace the generator with another live forge inventory dependency. ## Preserved boundary * Exact declarations continue to determine dependency mounts. * Verified dependency mounting already shipped on main remains supported. ## Acceptance * Building or using a substrate does not require a live forge inventory or generated forge metadata. * Explicit provider-neutral declarations determine the mounted dependencies. * Current declared dependency flows continue to work. * No hidden generator command or product documentation remains. Coordinates with #1622. Blocks documentation consolidation in #1624.
Author
Member

Settled implementation contract

  • Hard-delete ward container substrate-catalog, substrate_catalog.go, its Forgejo listing path, serialized schema, generated artifact reader, catalog-only tests, and catalog-specific documentation.
  • Keep ward container substrate-inventory, but derive it only from mounted directory names and local README.md, AGENTS.md, or docs/FEATURES.md content.
  • Keep the explicit compiled substrate manifest, catalog.dependsOn, external dependency seeding, manifest deduplication, and explicit repository grants unchanged.
  • Repository discovery must not consult Forgejo or another live inventory.
  • Stop generating or copying substrate-catalog.json. A stale artifact is inert and ignored. Ward performs no migration or runtime deletion.
  • Preserve stable directory-name ordering and the bare mounted path when no local tagline exists.
  • Delete catalog-specific tests. Retain or adjust inventory and dependency tests to prove local self-description, explicit selection, and deduplication.
  • No cross-repository consumer or infrastructure trigger was found in the current checkout inventory, so this issue needs no companion rollout issue.

The generator is enrichment-only. Runtime mount selection already comes from explicit declarations.

Priority is P2 because this blocks #1624.

## Settled implementation contract * Hard-delete ward container substrate-catalog, substrate_catalog.go, its Forgejo listing path, serialized schema, generated artifact reader, catalog-only tests, and catalog-specific documentation. * Keep ward container substrate-inventory, but derive it only from mounted directory names and local README.md, AGENTS.md, or docs/FEATURES.md content. * Keep the explicit compiled substrate manifest, catalog.dependsOn, external dependency seeding, manifest deduplication, and explicit repository grants unchanged. * Repository discovery must not consult Forgejo or another live inventory. * Stop generating or copying substrate-catalog.json. A stale artifact is inert and ignored. Ward performs no migration or runtime deletion. * Preserve stable directory-name ordering and the bare mounted path when no local tagline exists. * Delete catalog-specific tests. Retain or adjust inventory and dependency tests to prove local self-description, explicit selection, and deduplication. * No cross-repository consumer or infrastructure trigger was found in the current checkout inventory, so this issue needs no companion rollout issue. The generator is enrichment-only. Runtime mount selection already comes from explicit declarations. Priority is P2 because this blocks #1624.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
coilyco-flight-deck/ward#1647
No description provided.