﻿# Inherit config across workspaces

- **Status**: Todo
- **Kind**: Feature
- **Authors**: jp
- **Date**: 2026-08-19
- **Label**: package=jp_config
- **Label**: type=feature

A workspace cannot reuse another workspace's configuration.
This ticket records the problem and a rough direction; the design is worth
arguing properly, so it should be promoted to an RFD before implementation.

## Problem

The moment a directory gains its own `.jp/`, `find_root` stops there and it is a
standalone workspace.
It inherits nothing from the workspace it sits inside, or from any other
workspace.

So a second workspace needs its own copies of everything worth sharing: tool
configuration, personas, skills, knowledge sections, model definitions, render
style.
Copies drift, and the drift is silent — the second workspace simply behaves
like an older version of the first.

This is separate from [RFD 035] (multi-root *load path* resolution, which is
about where `--cfg` looks for named entries within one workspace) and from [RFD
D38] (which is about anchoring a single `extends` path at a named config root).
Neither addresses one workspace inheriting another's config as a whole.

## Rough direction

An `extends`-like mechanism that crosses the workspace boundary, so a
workspace's `.jp/config.toml` can declare "start from that workspace's config,
then override".
Open questions that make this RFD-shaped rather than ticket-shaped:

- What is the unit of inheritance?
  Whole config, or named entries only?
- How is the parent identified — path, workspace id, or something stable across
  machines?
- What happens when the parent is unavailable (moved, deleted, different
  machine)?
  Hard error, or degrade with a warning?
- Does inheritance compose transitively, and how are cycles handled?
- How does this interact with the four implicit sources and their precedence
  ([RFD 079])?

## Related

- [RFD D38] — root-qualified extends paths.
  Solves the narrow case of addressing one file in another root; this ticket is
  the general case.
- [RFD 046] — nested workspace projection.

## Next step

Promote to an RFD.
The problem is real and recurring, but the answer is a design argument, not an
implementation.
