MAS-WP-0005-T08: v0.2 stand-ins and resource_id_case in policy; lint; gateway reports canonical form
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Assistant: claude-code Assistant-Model: opus Assistant-Process: 252470@bnt-lap001 Assistant-Session: ad628c8f-4be2-4979-94c9-76c7ed6f8241
This commit is contained in:
parent
7d978f1f26
commit
eb10f54fd2
6 changed files with 165 additions and 7 deletions
|
|
@ -256,7 +256,7 @@ against its own schema. Discovery accepts both.
|
|||
|
||||
```task
|
||||
id: MAS-WP-0005-T08
|
||||
status: todo
|
||||
status: done
|
||||
priority: medium
|
||||
state_hub_task_id: "a345e073-04ca-54e1-bac7-837fe7955e4e"
|
||||
```
|
||||
|
|
@ -266,6 +266,29 @@ The policy interprets `---MODE` (interaction first, enabled mode only) and
|
|||
`resource_id_case: insensitive` in the equivalence key. Statute lint covers
|
||||
the stand-in constraints. Statute-aware fixtures.
|
||||
|
||||
- 2026-10-18 done:
|
||||
- `mas_core.policy.apply_stand_ins` runs first in `resolve()`. It
|
||||
matches the interaction (`---MODE`, enabled mode, last `---`; in the
|
||||
facet or the target) and then the resource (`TYPE--ID`, declared type,
|
||||
first `--`). Everything later (classification, registry,
|
||||
`intake_for`, equivalence) sees the canonical parse, and the parser
|
||||
stays statute-blind.
|
||||
- `AddressSemantics` gains `stand_ins` and `canonical_local_part`; the
|
||||
equivalence key lower-cases resource ids under
|
||||
`resource_id_case: insensitive`.
|
||||
- The gateway event reports the canonical target and base, plus
|
||||
`target_syntax: resource-alternate` when `--` was used, while
|
||||
`local_part` keeps what arrived.
|
||||
- Lint: `stand-in-collision` (registry keys that would change meaning),
|
||||
`stand-in-mode-name`, and `stand-in-without-p2` (warning).
|
||||
- Tests: the spec §6.3 example table, correlation of
|
||||
`ticket--GS-…+comments` with `ticket=gs-…`, intake via `---`, the
|
||||
switch requirement (v0.1, off, no statute), exact id case, and lint.
|
||||
168 tests pass.
|
||||
- A v0.2 statute for mas.coulomb.social lints clean, and the gateway
|
||||
turns `ticket--gs-85qj8wc09p+comments@` into resource
|
||||
`ticket=gs-85qj8wc09p` with facet `comments`.
|
||||
|
||||
## v0.2 sending side: destination transforms in the generator
|
||||
|
||||
```task
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue