Skip to content

adf migrate: new modules not registered in manifest or CLAUDE.md module index #239

Description

@stackbilt-admin

Problem

charter adf migrate creates new ADF module files (e.g. core.adf, infra.adf, frontend.adf) when content from CLAUDE.md doesn't fit existing modules — but it does not register those new modules in .ai/manifest.adf or update the <!-- charter:module-index --> block in the thin pointer.

After a migration that produces new files, the modules exist on disk but no agent knows they exist or when to load them. Manual steps required:

  1. Edit manifest.adf to add ON_DEMAND entries with triggers
  2. Edit CLAUDE.md to add rows to the module index table

Observed behavior

Plan:
  MERGE .ai/governor.adf  (+9 CONTEXT, +69 CONSTRAINTS)
  MERGE .ai/core.adf      (+15 CONTEXT, +131 CONSTRAINTS)   ← new file
  MERGE .ai/infra.adf     (+13 CONSTRAINTS, +2 CONTEXT)     ← new file
  MERGE .ai/frontend.adf  (+11 CONSTRAINTS, +1 ADVISORY)    ← new file
  KEEP CLAUDE.md          (thin pointer)

manifest.adf after migration — no entries for core.adf, infra.adf, or frontend.adf.

Expected behavior

For each newly created module, migrate should:

  • Infer trigger keywords from the content it placed there (section headings, key terms already classified during routing)
  • Add the module to manifest.adf ON_DEMAND with those triggers (or DEFAULT_LOAD if content matches required wiring criteria)
  • Update the <!-- charter:module-index:start/end --> block in the thin pointer file

The dry-run output already shows which module each item routes to — the trigger inference would be a natural extension of that routing logic.

Context

Encountered during charter adf migrate --source CLAUDE.md on a ~375-line project config (Colony OS / Stackbilt-dev/colonyos). Three new modules were created, all required manual manifest wiring before charter doctor would pass.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:adfADF parser/bundler/patcher packageenhancementNew feature or requestpriority:p1Should ship this cycle

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions