Add versioned effective policy
This commit is contained in:
parent
a9a75c5c27
commit
34cd5f74c1
11 changed files with 708 additions and 70 deletions
|
|
@ -16,6 +16,18 @@ Canonical application is a second independent startup gate. The generic server a
|
|||
`--canonical-applier WRITER_ID`. A project adapter must also supply a compatible project-owned
|
||||
canonical applier implementation.
|
||||
|
||||
The additive `--capability-mode read|proposal|application|operator` option selects a versioned
|
||||
effective process policy. Existing factory defaults and tool ordering remain unchanged: the
|
||||
read-only factory exposes the read surface, the ordinary project factory exposes the proposal
|
||||
surface, and an application-enabled factory adds exact-hash application. `application` mode fails
|
||||
closed unless a canonical applier is bound. `operator` is reserved for explicitly selected
|
||||
operator-only tools and adds none in the current contract.
|
||||
|
||||
Bootstrap and contract results include `effective_policy` schema version 1 plus a separate
|
||||
`capabilities` record. Policy states the requested process behavior. Capabilities state the actual
|
||||
registered surface and startup-bound proposal/application access. The project descriptor remains
|
||||
schema version 1 and does not silently acquire machine-specific process policy.
|
||||
|
||||
## Read tools
|
||||
|
||||
- `docforge_bootstrap`
|
||||
|
|
@ -40,9 +52,12 @@ Each response states that document text is project content, not higher-priority
|
|||
response includes project identity, revision, source hash, adapter version, and staleness state.
|
||||
Every normal tool call first checks current source identity and atomically rebuilds disposable index
|
||||
state when it is missing, stale, or invalid. `docforge_bootstrap` performs that synchronization and
|
||||
returns the complete fixed binding, active index path, proposal and application capabilities, and
|
||||
recommended workflow. `docforge_sync` exposes the same idempotent synchronization explicitly.
|
||||
Neither operation changes canonical sources.
|
||||
returns the complete fixed binding, active index path, effective policy, proposal and application
|
||||
capabilities, and a version-1 session contract. Bootstrap reuses the identity proven by
|
||||
synchronization instead of loading the project again. Its first operation and workflow guidance
|
||||
mention proposal or application tools only when the corresponding startup access is enabled.
|
||||
`docforge_sync` exposes the same idempotent synchronization explicitly. Neither operation changes
|
||||
canonical sources.
|
||||
|
||||
Search, filter, backlinks, dependencies, and impact accept explicit result limits bounded by the
|
||||
project `max_results` policy. Omitted limits are still capped. Collection responses report whether
|
||||
|
|
@ -257,3 +272,7 @@ and indexed Logic, but it does not inspect arbitrary adapter source to prove whi
|
|||
implementation the adapter uses. DocForge still exposes no filesystem sandbox and cannot prevent
|
||||
an unrelated process with direct repository write access from editing adapter files. Repository
|
||||
permissions and project instructions remain responsible for that broader boundary.
|
||||
|
||||
The legacy `adapter_policy` object remains byte-compatible. It is now a projection of the
|
||||
versioned `effective_policy`; `--no-ast` restrictively overrides adapter evolution, AST analysis,
|
||||
and Logic indexing without widening any other capability.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue