Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 9 additions & 3 deletions capabilities/families/session-memory.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -512,7 +512,9 @@ nodes:
contract_level: executable
primary_parent: session-memory.stewardship.project
owner: {repo: aoa-session-memory, surface: skills/aoa-session-reindex/SKILL.md, authority: authored}
lifecycle: *deferred_lifecycle
lifecycle:
<<: *deferred_lifecycle
version: 1.0.1
applicability:
use_when: [Preserved archives require projection rebuild after source-owned classifier, schema, taxonomy, or relation changes.]
do_not_use_when: [Raw evidence itself is missing or the request only needs a query against a current index.]
Expand Down Expand Up @@ -596,7 +598,9 @@ nodes:
contract_level: executable
primary_parent: session-memory.stewardship.curate
owner: {repo: aoa-session-memory, surface: skills/aoa-session-batch-distill/SKILL.md, authority: authored}
lifecycle: *deferred_lifecycle
lifecycle:
<<: *deferred_lifecycle
version: 1.0.1
applicability:
use_when: [A reviewed set of indexed sessions needs a bounded provisional distillation wave.]
do_not_use_when: [Exactly one indexed session is in scope; use first-pass distill., The operator expects automatic promotion.]
Expand Down Expand Up @@ -774,7 +778,9 @@ nodes:
contract_level: executable
primary_parent: session-memory.stewardship.name
owner: {repo: aoa-session-memory, surface: skills/aoa-session-phase-discovery/SKILL.md, authority: authored}
lifecycle: *deferred_lifecycle
lifecycle:
<<: *deferred_lifecycle
version: 1.0.1
applicability:
use_when: [A long or multi-topic session needs phase candidates before semantic naming.]
do_not_use_when: [A short session already has one reviewed semantic name.]
Expand Down
479 changes: 433 additions & 46 deletions generated/capability_graph.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion generated/capability_graph.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Derived from `capabilities/families/*.yaml`. This file is a read model, not capability authority.

Source content hash: `8e0659361a4ff83f8b7bbcaea696e4dadfb41b3871bdec37b81a0825fd6a9fd7`
Source content hash: `3aaf12c1c030d6381e8b864db4ee8397cf11648edf3e314cd8c0686ea559ef80`

## Semantic tree

Expand Down
26 changes: 23 additions & 3 deletions skills/aoa-session-batch-distill/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,25 @@ truth.

## Procedure

Batch distillation is set-oriented and has no positional session argument.
Declare a bounded set with `--since`, `--since-days`, `--until`, and/or
`--limit`, then carry the same predicate through any separately authorized
follow-on route. The current batch and title-repair implementations use the
same chronological registry selector, but a report is the binding set: before
any follow-on apply, compare its selected session IDs with the prior report.
Stop on any mismatch and re-plan that changed set under explicit scope
authorization. An archive-wide `all` selector in a maintenance command is a
new scope decision; it is never implied by processing one session or one
bounded batch.

Start with a planning report:

```bash
python3 scripts/aoa_session_memory.py batch-distill \
--workspace-root <workspace-root> \
--aoa-root <aoa-root> \
--since-days 21 \
--limit 10 \
--write-report
```

Expand All @@ -47,13 +59,15 @@ Inspect owner quality before applying a broad pass. Each profile contains
`project_grounding` and `owner_resolution`; fallback grounding is not the same
as a resolved owner.

Repair weak imported titles before a broad manual review wave:
If title repair is separately authorized for this same bounded set, repair
weak imported titles before a broad manual review wave:

```bash
python3 scripts/aoa_session_memory.py repair-session-titles all \
--workspace-root <workspace-root> \
--aoa-root <aoa-root> \
--since-days 21 \
--limit 10 \
--write-report
```

Expand All @@ -66,6 +80,7 @@ python3 scripts/aoa_session_memory.py batch-distill \
--workspace-root <workspace-root> \
--aoa-root <aoa-root> \
--since-days 21 \
--limit 10 \
--apply \
--write-report
```
Expand Down Expand Up @@ -93,8 +108,11 @@ promoted claims and samples, not carry the entire archive in active attention.

After each batch, inspect `improvement_candidates` in the report. If the queue
shows recurring parser misses, noisy names, missing indexes, hook gaps, or
repeatable command patterns, improve the bundle itself with a narrow patch and
rerun `doctor`, `audit`, and tests.
repeatable command patterns, emit the candidate as a provisional owner-routed
handoff. Do not patch, retrain, change hooks or CLI behavior, or rerun a repair
inside the data-processing batch. A separately authorized owner task may
inspect the candidate, make a narrow source change, run its owner checks, and
start a new bounded batch after review.

## Verification

Expand All @@ -103,6 +121,8 @@ rerun `doctor`, `audit`, and tests.
- All produced artifacts remain explicitly provisional.
- Owner resolution and evidence refs are present before project-specific
interpretation.
- Mechanics candidates remain owner-routed handoffs; the batch does not change
the bundle or its processing mechanism.
- No claim, skill change, automation, or durable lesson was promoted.

## Stop Line
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Generated from owner capability contracts. This card is a retrieval read model, not procedure or proof authority.

Source graph hash: `8e0659361a4ff83f8b7bbcaea696e4dadfb41b3871bdec37b81a0825fd6a9fd7`
Source graph hash: `3aaf12c1c030d6381e8b864db4ee8397cf11648edf3e314cd8c0686ea559ef80`
Federation: `aoa-session-memory` specializes `aoa-skills:sessions`.

| skill | visibility | use when | do not use when | version | fingerprint |
Expand All @@ -13,7 +13,7 @@ Federation: `aoa-session-memory` specializes `aoa-skills:sessions`.
| `aoa-codex-hooks-status` | deferred | Native Codex hook registration or trust must be inspected for one selected root. | The runtime is not Codex or the question concerns archive content rather than hook state. | 1.0.0 | `adc1e110880d28ee` |
| `aoa-codex-session-segment-archive` | deferred | A concrete Codex transcript must be archived or a missed archive event must be replayed. | The source is not a Codex transcript or the raw source cannot be read and verified. | 1.0.0 | `06f718756dbb22dd` |
| `aoa-session-archive-init` | deferred | A workspace lacks a valid session-memory root or requires an explicit install or repair. | The selected root is already healthy and no install or repair was requested. | 1.0.0 | `87fec5f9466556ab` |
| `aoa-session-batch-distill` | deferred | A reviewed set of indexed sessions needs a bounded provisional distillation wave. | Exactly one indexed session is in scope; use first-pass distill.; The operator expects automatic promotion. | 1.0.0 | `653ff014b7b39c0f` |
| `aoa-session-batch-distill` | deferred | A reviewed set of indexed sessions needs a bounded provisional distillation wave. | Exactly one indexed session is in scope; use first-pass distill.; The operator expects automatic promotion. | 1.0.1 | `07641eb703fa9889` |
| `aoa-session-experience-metabolism` | deferred | A bounded set of closed; reviewed; aligned stage profiles needs privacy-safe recurring-motif candidates. | The evidence is raw; live; provisional; or asks for an eval verdict or automatic adoption. | 1.0.0 | `c7b79fab929414cd` |
| `aoa-session-first-pass-distill` | deferred | One indexed session needs provisional candidate extraction. | The task asks for reviewed truth; final promotion; or a multi-session conveyor. | 1.0.0 | `2b577834951dd51f` |
| `aoa-session-history-import` | deferred | Historical Codex JSONL sources must be discovered and imported into one selected root. | Only the current live transcript needs archiving or the history source is not explicitly bound. | 1.0.0 | `9aa0e6b23b0a92fa` |
Expand All @@ -23,10 +23,10 @@ Federation: `aoa-session-memory` specializes `aoa-skills:sessions`.
| `aoa-session-memory-stress-pass` | deferred | A large archive or logical compaction boundary requires bounded stress validation. | A normal root health or release readiness check is sufficient. | 1.0.0 | `2f7b1a05b8f48775` |
| `aoa-session-naming-readiness` | deferred | A naming wave or broad semantic renaming is being considered. | A single reviewed name is already ready for explicit application. | 1.0.0 | `fb178af39591faa8` |
| `aoa-session-naming-wave` | deferred | A reviewed bounded set of phase or title candidates is ready for a guarded naming wave. | Readiness; phase candidates; review approval; or current index freshness is missing. | 1.0.0 | `79685864e99daf24` |
| `aoa-session-phase-discovery` | deferred | A long or multi-topic session needs phase candidates before semantic naming. | A short session already has one reviewed semantic name. | 1.0.0 | `f42f29065ad5da68` |
| `aoa-session-phase-discovery` | deferred | A long or multi-topic session needs phase candidates before semantic naming. | A short session already has one reviewed semantic name. | 1.0.1 | `aaba1ef4cec35f32` |
| `aoa-session-raw-diagnostic` | deferred | A transcript read failed during hook or manual archive processing. | The raw source is readable or no concrete archive failure exists. | 1.0.0 | `d31074a22beda78e` |
| `aoa-session-rehydrate` | deferred | A named archived session must be resumed or inspected without full raw loading. | The current active session already contains the required state or raw forensic review is explicitly required. | 1.0.0 | `dfe4d4924145df48` |
| `aoa-session-reindex` | deferred | Preserved archives require projection rebuild after source-owned classifier; schema; taxonomy; or relation changes. | Raw evidence itself is missing or the request only needs a query against a current index. | 1.0.0 | `5749a8e863003dac` |
| `aoa-session-reindex` | deferred | Preserved archives require projection rebuild after source-owned classifier; schema; taxonomy; or relation changes. | Raw evidence itself is missing or the request only needs a query against a current index. | 1.0.1 | `aff124cb63b3067e` |
| `aoa-session-search` | deferred | A bounded archive query or explicit portable search-index refresh is required. | A current file; owner API; or typed entity route answers the question without archive search. | 1.0.0 | `42e8da2474fb99d3` |

Load the named `SKILL.md` for procedure. Use the full generated graph for ABI, effects, failures, relations, and composition; do not infer invocation or benefit from selection alone.
8 changes: 7 additions & 1 deletion skills/aoa-session-phase-discovery/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,19 @@ python3 scripts/aoa_session_memory.py phase-discovery <session-label-or-id> \
Then refresh the indexes:

```bash
python3 scripts/aoa_session_memory.py naming-readiness all \
python3 scripts/aoa_session_memory.py naming-readiness <session-label-or-id> \
--workspace-root <workspace-root> \
--aoa-root <aoa-root> \
--refresh-indexes \
--write-report
```

Keep the same session selector through this follow-on route. The refresh may
rewrite shared naming maps as a generated dependency, but `all` is a separate
scope choice: use it only when that scope is explicitly authorized and a
shared index dependency makes it necessary. Discovery never widens one
selected session into an archive-wide naming pass by itself.

## Reading The Artifact

- `naming/phase-discovery.json`: machine-readable candidate list.
Expand Down
29 changes: 25 additions & 4 deletions skills/aoa-session-reindex/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,26 +21,34 @@ need to be regenerated under the current classifier.

## Procedure

Start with a dry run:
Start with a dry run for the selected session:

```bash
python3 scripts/aoa_session_memory.py reindex-sessions all \
python3 scripts/aoa_session_memory.py reindex-sessions <session-label-or-id> \
--workspace-root <workspace-root> \
--aoa-root <aoa-root> \
--dry-run \
--write-report
```

For a bounded smoke pass:
For an explicitly authorized bounded batch with a shared projection
dependency, use `all` with the same declared window and limit in every batch
command:

```bash
python3 scripts/aoa_session_memory.py reindex-sessions all \
--workspace-root <workspace-root> \
--aoa-root <aoa-root> \
--since-days 21 \
--limit 10 \
--write-report
```

`all` is never an automatic companion to a one-session trial. Carry the
selected session or the exact bounded batch predicate into each follow-on
route, and obtain separate scope plus a shared-dependency reason when moving
from one session to `all`.

For one target session:

```bash
Expand All @@ -51,12 +59,25 @@ python3 scripts/aoa_session_memory.py reindex-sessions <session-label-or-id> \
```

After a classifier or schema reindex, refresh generated projections through the
named catch-up route:
named catch-up route for the same selected session:

```bash
python3 scripts/aoa_session_memory.py projection-catchup <session-label-or-id> \
--workspace-root <workspace-root> \
--aoa-root <aoa-root> \
--apply \
--write-report
```

For a separately authorized bounded batch, repeat the same `all` selector and
window explicitly:

```bash
python3 scripts/aoa_session_memory.py projection-catchup all \
--workspace-root <workspace-root> \
--aoa-root <aoa-root> \
--since-days 21 \
--limit 10 \
--apply \
--write-report
```
Expand Down