Skip to content

Self-referential submodule: ai/primitives points at primitives.org.ai itself (the nested double) #36

Open

Description

@nathanclevenger

Discovered while bumping the primitives.org.ai submodule pins in dot-do/dotdo and dot-do/workers (Lane B / Epic B — primitives collapse to one home, ADR 0001).

The defect

This repo's own .gitmodules declares:

[submodule "ai/primitives"]
	path = ai/primitives
	url = https://github.com/dot-org-ai/primitives.org.ai.git

i.e. ai/primitives is a submodule pointing at this same repository (currently pinned at gitlink 8bf06bcb172436398cad513846819fe7b205f127). ai/ otherwise contains only that one entry.

That is the nested double (primitives/ai/primitives when checked out as a submodule elsewhere): any consumer that recursively initializes the primitives submodule re-clones primitives.org.ai inside itself, and so on. It also means the workspace has two homes for the same packages inside a single repo.

Why it's reported here, not fixed in the consumers

Per the Epic-B task rule: the nesting lives inside the primitives.org.ai repo itself, so it must be resolved at the source, not patched in each consumer.

Suggested fix

Remove the ai/primitives self-submodule (deinit + drop the .gitmodules section + git rm --cached ai/primitives), and if any workspace glob or import expects packages under ai/primitives, repoint it to the real packages/* home. Confirm no pnpm-workspace.yaml glob depends on the self-nested path.

Related: submodule-pin bumps dot-do/dotdo#70, dot-do/workers#81; workspace collapse dot-org-ai/mdx.org.ai#1.

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions