Skip to content

Setup local package linking for PHP dependency testing #7

@Snider

Description

@Snider

Description

The PHP packages in the monorepo have interdependencies (e.g., core-tenant depends on host-uk/core), but composer install fails because the private packages aren't available.

Current State

Only core-php can be tested locally because it has no package dependencies.

Packages that need host-uk/core (and fail to install):

  • core-tenant
  • core-admin
  • core-api
  • core-mcp
  • core-agentic
  • core-bio
  • core-social
  • core-analytics
  • core-notify
  • core-trust
  • core-support
  • core-commerce
  • core-content
  • core-tools
  • core-uptelligence
  • core-developer

Proposed Solution

  1. Add a composer.local.json template that uses path repositories pointing to local clones
  2. Add a setup script that configures Composer to use local packages
  3. Document the workflow in CLAUDE.md

Example composer.local.json:

{
    "repositories": [
        {"type": "path", "url": "../core-php"},
        {"type": "path", "url": "../core-tenant"},
        {"type": "path", "url": "../core-admin"}
    ]
}

Then use: COMPOSER=composer.local.json composer install

Related

  • core-template already has a dev:packages script for this pattern
  • Issue discovered during core php ci dogfood testing

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions