Skip to content

feat(project): add PR search, grouping, and memory tags - #42

Merged
AetherAI3 merged 2 commits into
mainfrom
codex/nano-project-intelligence-v1
Sep 16, 2026
Merged

AetherAI3 merged 2 commits into
mainfrom
codex/nano-project-intelligence-v1

Conversation

@AetherAI3

@AetherAI3 AetherAI3 commented Sep 16, 2026

Copy link
Copy Markdown
Owner

Why does this change belong in Nano?

Aether Online needs to turn short phrases such as frontend css pending review into consistent PR search filters, group thousands of records, and give agents compact context from the same tags in APR memory.

This implements the Nano-side foundation described in #41: a deterministic project vocabulary and query contract shared by PR, commit, and memory discovery.

What changed?

  • Added nano.project: evidence-bearing classification, conventional title suggestions, compact capsules, explicit tag overrides, and versioned project aliases.
  • Added a bounded search compiler supporting natural phrases, bracketed chips, quoted text, AND/OR, exclusions, explicit selectors, grouping, sorting, and diagnostic spans.
  • Added a project-scoped in-memory reference index with facet filtering, pagination, full-result group counts, stable ordering, and detached result cards.
  • Kept review/CI tied to the supplied source SHA; missing or mismatched bindings become unknown. Labels and title words cannot manufacture operational status.
  • Added nano project parse|classify|search, synthetic fixtures, a packaged query schema, and installed-wheel checks.
  • Documented the Online search UX, complete-corpus ingestion, APR derived annotations, current status overlays, existing Agent memory commands, and a correction/alias improvement loop in the integration guide.

The project query/annotation contract is independently versioned at 1.0.0. Online UI wiring, GitHub ingestion, persistent search, and graph annotation writes are follow-on Cloud/Agent integration work. ProjectIndex is a reference index over supplied snapshots; project scope is not authorization.

Validation

  • Project coverage: 81 tests passed within the full suite (run separately with python -m pytest tests/test_project.py -q), including 10,000 records, project isolation, exclusions/OR, literal syntax, draft lifecycle, breaking-change title markers, current-head status, correction overrides, deterministic replay, and mixed PR/commit/memory fixtures.
  • Full suite: 1,189 passed, 2 skipped on Python 3.12.14. Existing skips: optional aether_protocol_c unavailable and the README no longer advertising a test count.
  • Contribution checker: all 55 entries ready for review.
  • Wheel built; both package-verification scripts from CI passed, including project discovery from the wheel outside the checkout.
  • Draft 2020-12 query schema validated against 12 valid/diagnostic envelopes; all new project modules accept Python 3.10 syntax.
  • Documentation and synthetic examples match implemented behavior.
  • git diff --check passed.
  • GitHub CI run #80 passed all six jobs at head 7d0bee948410f98efbfff7df9d23582d4d90ed39: Python 3.10–3.13, contribution shape, and package verification.

Boundary check

  • Identical supplied inputs and vocabulary produce deterministic annotations and query results.
  • No network/model calls, ambient clock/RNG, persistence, external actuation, or DecisionGate bypass was added to the project core.
  • Host authorization, freshness, durable identity, source verification, and canonical APR graph authority stay with the host.
  • No strategy or watchdog entries are added by this change.

Closes #41.

@AetherAI3
AetherAI3 merged commit 76c91e4 into main Sep 16, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Proposal: deterministic project tags, PR search, and memory annotations

1 participant