Skip to content

Dependencies and Adjacencies

Dependencies and adjacencies explain what bijux-canon-index can do by itself and what it deliberately leans on. They are part of the package story, not just implementation trivia, because they show where local authority ends.

This page should help a reviewer see both kinds of dependency pressure: library dependencies that shape the implementation, and neighboring packages that shape the system boundary.

Treat the foundation pages for bijux-canon-index as the package's durable self-description. If the package still feels blurry after this section, the boundary story is not clear enough yet.

Visual Summary

flowchart TB
    page["Dependencies and Adjacencies<br/>clarifies: own the right work | name the boundary | compare neighbors"]
    classDef page fill:#dbeafe,stroke:#1d4ed8,color:#1e3a8a,stroke-width:2px;
    classDef positive fill:#dcfce7,stroke:#16a34a,color:#14532d;
    classDef caution fill:#fee2e2,stroke:#dc2626,color:#7f1d1d;
    classDef anchor fill:#ede9fe,stroke:#7c3aed,color:#4c1d95;
    classDef action fill:#fef3c7,stroke:#d97706,color:#7c2d12;
    own1["vector execution semantics and backend orchestration"]
    own1 --> page
    own2["provenance-aware result artifacts and replay-oriented comparison"]
    own2 --> page
    own3["plugin-backed vector store, embedding, and runner integration"]
    own3 --> page
    limit1["document ingestion and normalization"]
    page -.keeps outside.-> limit1
    limit2["runtime-wide replay policy and execution governance"]
    page -.keeps outside.-> limit2
    limit3["repository maintenance automation"]
    page -.keeps outside.-> limit3
    anchor1["packages/bijux-canon-index/tests"]
    page --> anchor1
    anchor2["packages/bijux-canon-index"]
    page --> anchor2
    anchor3["packages/bijux-canon-index/src/bijux_canon_index"]
    page --> anchor3
    class page page;
    class own1,own2,own3 positive;
    class limit1,limit2,limit3 caution;
    class anchor1,anchor2,anchor3 anchor;

Direct Dependency Themes

  • pydantic
  • typer
  • fastapi

Adjacent Package Relationships

  • consumes prepared inputs from ingest-oriented flows
  • is governed by bijux-canon-runtime for final replay acceptance

Concrete Anchors

  • packages/bijux-canon-index as the package root
  • packages/bijux-canon-index/src/bijux_canon_index as the import boundary
  • packages/bijux-canon-index/tests as the package proof surface

Use This Page When

  • you need the package idea before the implementation detail
  • you are deciding whether work belongs here or in a neighboring package
  • you want the shortest honest explanation of what this package is for

Decision Rule

Use Dependencies and Adjacencies to decide whether a change makes bijux-canon-index easier or harder to defend as one distinct role in the overall system. If the work makes the package broader without making its role clearer, stop and re-check the boundary before treating the change as a local improvement.

What This Page Answers

  • what problem bijux-canon-index is supposed to own on purpose
  • where the package boundary stops, even when nearby code looks tempting
  • which neighboring package seams deserve comparison before the boundary is changed

Reviewer Lens

  • compare the stated boundary with the modules, artifacts, and tests that are supposed to uphold it
  • check that out-of-scope behavior is not quietly re-entering through convenience paths
  • confirm that the package story still matches the real repository layout and neighboring package docs

Honesty Boundary

This page can explain the intended boundary of bijux-canon-index, but it cannot prove that boundary by itself. The real proof still lives in the code, tests, and neighboring package seams that either support or contradict the story told here.

Next Checks

  • move to architecture when the question becomes structural rather than boundary-oriented
  • move to interfaces when the question becomes contract-facing
  • move to quality when the question becomes proof or review sufficiency

Purpose

This page explains which surrounding tools and packages bijux-canon-index depends on to do its job.

Stability

Keep it aligned with pyproject.toml and the actual package seams.