dgenio / dgenio/contextweaver

Add a scheduled cross-repo Weaver Stack integration smoke test

Open
#652 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

complexity:complex ecosystem integrations priority: medium reliability testing
Dominant language
Python
Stars
9
Forks
17
Avg merge
21h 36m
Merged PRs (30d)
22

Description

Summary

Add a scheduled (weekly, non-gating) CI workflow that exercises contextweaver against its sibling repositories end-to-end — an agent-kernel Frame ingested into the context engine, a routed/built result, and a telemetry/handoff payload consumed by ChainWeaver's contract — so cross-repo drift in the Weaver Stack surfaces as a red scheduled run instead of an adopter bug report.

Why this matters

The stack's value proposition is that the sibling projects compose: weaver-spec defines contracts, agent-kernel produces Frames, contextweaver compiles context, ChainWeaver consumes telemetry. Today only the schema layer is verified (conformance gate); no executable test proves the repos still work together at HEAD. Cross-repo integration is exactly where independently evolving codebases drift silently — and where the existing boundary work (#352) and telemetry contract (#382) need an enforcement mechanism.

Current evidence

  • .github/workflows/ci.yml:111 — the "Weaver-spec conformance" step validates against schemas (scripts/weaver_spec_conformance.py), with #469 (open) pinning it to a tagged schema version — schema-level only, no sibling code executed.
  • Open #352 documents the Frame-boundary seam with agent-kernel ("contextweaver receives Frames, not raw output"; I-05 only partially satisfied) and open #382 defines the telemetry handoff contract to ChainWeaver — both are contracts an executable smoke would pin.
  • The repo already has the cron-workflow pattern to copy: weekly scorecard and deps-latest workflows exist (.github/workflows/deps-latest-weekly.yml).
  • examples/architectures/contextweaver_to_chainweaver/ exists — a natural seed scenario for the smoke.

External context

Multi-repo ecosystems commonly run scheduled "canary" integration builds at HEAD (non-gating) to separate integration drift from per-repo PR signal.

Proposed implementation

  1. Define the minimal smoke scenario with the maintainer: construct a Frame per weaver-spec (or import agent-kernel's producer), ingest via the Frame adapter path, build_sync a pack, route a query, emit the ChainWeaver-bound telemetry/handoff payload, and validate it against ChainWeaver's consumer (or its published schema if installing ChainWeaver is too heavy for v1).
  2. New workflow weaver-stack-smoke.yml: weekly cron + manual dispatch; installs sibling repos from GitHub at default-branch HEAD; runs the scenario; never gates PRs.
  3. Failure routing: scheduled failure opens/updates a pinned issue (same pattern as other cron jobs if one exists, else simple gh issue step) identifying which seam broke (install, Frame shape, telemetry shape).
  4. Start with the contextweaver→ChainWeaver example as the seed; add the agent-kernel Frame leg second.

AI-agent execution notes

  • Inspect first: scripts/weaver_spec_conformance.py (what is already covered — do not duplicate it), examples/architectures/contextweaver_to_chainweaver/, docs/weaver_spec_mapping.md, sibling repos' install story (pip install git+... viability), deps-latest-weekly.yml as the workflow template.
  • Keep it smoke-sized: one scenario, minutes not hours; the goal is drift detection, not coverage.
  • Non-gating is a design decision, not an accident — sibling HEAD breakage must never block contextweaver PRs.
  • Failure modes: sibling repo install breakage (report distinctly from contract breakage); version skew between weaver-spec tag (per #469) and sibling HEADs — record all versions in the run summary.

Acceptance criteria

  • A scheduled workflow installs at least one sibling repo and runs the cross-repo scenario green at current HEADs.
  • A deliberately broken contract fixture (tested via workflow-dispatch on a branch) produces a failure that names the seam.
  • Run summary records the exact sibling commits/versions exercised.
  • PR CI duration and gating behavior are unchanged.

Test plan

The workflow is the test; verify via manual dispatch on the PR branch; one local runner script (documented) so maintainers can reproduce failures without CI.

Documentation plan

docs/weaver_spec_mapping.md or ecosystem docs note describing the smoke and what it guarantees; AGENTS/agent-context workflow docs entry; CHANGELOG.

Migration and compatibility notes

Not expected to require migration; CI-only addition.

Risks and tradeoffs

Scheduled-job neglect is the classic failure (mitigate with the auto-filed issue on failure); sibling repos' instability could make the signal noisy (start with the most stable seam — ChainWeaver schema validation — before live-code legs); maintenance falls on one maintainer across repos (keep the scenario tiny). Alternative — schema conformance only — already exists and demonstrably cannot catch behavioral drift.

Suggested labels

testing, ecosystem, integrations, reliability

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with .github/workflows/deps-latest-weekly.yml, scripts/weaver_spec_conformance.py, and examples/architectures/contextweaver_to_chainweaver/; inspect the sibling repositories' installation instructions and docs/weaver_spec_mapping.md. Reproduce the seed scenario locally before designing the scheduled workflow and manual dispatch path. Done means the workflow runs non-gating at current sibling HEADs, records exact versions, reports the failing seam, and has the documented local reproduction path.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, python
Domain
ci-cd, devops, testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.