Skip to content

Releases: waterflane/ContextForge

ContextForge v0.6.0b1

Choose a tag to compare

@github-actions github-actions released this 13 Oct 07:19
e27e2f7

What's Changed

Added

  • Added Index v3 structural-first generations containing deterministic
    CodeMaps, a provenance-bearing relationship graph, PageRank/connectivity
    metrics, structural retrieval postings, and a complete orientation map.
  • Added sparse grounded Semantic Cards with code/documentation/config/test
    profiles, item-level validation, one bounded repair, deterministic fallback,
    priority scheduling, and a path-neutral content-addressed cache.
  • Added persisted exact/BM25/graph retrieval with CandidateCards, bounded
    agentic search/symbol/graph/map evidence planning, Working Set and diff
    boosts, and deterministic fallback on every provider or plan failure.
  • Added TokenEstimator, ContextBudget, MAP/SUMMARY/SLICE/FULL representations,
    Context Capsule v2, and stable <contextforge schema_version="2"> prompts.
  • Added public Python map/retrieval/compiler APIs, contextforge map, Capsule v2
    CLI options, read-only MCP and HTTP map/search/symbol/compile operations, and
    Bridge 2.1 with advertised artifact schemas.
  • Added benchmark required ranges, optional files, useful-token accounting,
    file precision/recall, precision@5, range/token precision, model/provider
    calls, lifecycle latency, and ungrounded-claim rate.
  • Added typed evidence/provenance projections to repository maps, normative
    OrientationMap/RepositoryMap schemas, CLI map --kind, and the additive
    benchmark index_v3_capsule pipeline with grounded/dropped-claim metrics.
  • Added off|auto|required model-assisted Evidence Plans, Bridge 2.2 planning
    negotiation, and paired same-model answer regressions with an ordinary
    full-file baseline, range-validated citations, three-vote blinded
    groundedness judging, and phase-separated token accounting.
  • Added closed task-evidence roles and ID-only CoverageLedger diagnostics across
    retrieval, planning, and materialization. Bridge 2.2, MCP, HTTP, and CLI
    compilation results expose additive evidence-coverage diagnostics without
    changing legacy Bridge or artifact contracts.
  • Added bounded multilingual planner query expansion from supplied repository
    vocabulary, including expression/result-ID diagnostics, without domain
    dictionaries or model-created source facts.
  • Added semantic-retrieval comparison reporting and per-file deterministic
    scheduler/value diagnostics, separating grounded retrieval value from model
    request cost.
  • Added source-bound function descriptions and deterministic function-level
    discovery over immutable CodeMaps, plus compact numbered source prompt export
    through the Python API and context create --compact-prompt.

Changed

  • Index build/update now publish a usable structural generation before semantic
    enrichment. Enrichment failure, timeout, or cancellation leaves that
    structural generation active; old immutable generations remain until explicit
    index clean.
  • Index/manifest/record schemas are version 4. Earlier schemas are status-readable as
    rebuild_required, excluded from retrieval, rejected by index update, and
    replaced only by a full build without semantic migration.
  • Task-based context suggest and context create default to Index v3 retrieval
    and Capsule v2 when available. --legacy-discovery and --legacy-handoff
    retain the previous flow; manual ContextPackage v1 creation is unchanged.
  • Repository orientation, architecture, conventions, and feature maps are now
    deterministic aggregations of graph, CodeMaps, and grounded cards, without
    separate repository-wide model calls.
  • Semantic enrichment now uses analyzer 7 / semantic-card-v3.4, declaration-
    aware one-to-four chunk planning, full-request/schema token accounting, one
    scheduler-owned repair authority, and lexical anchors for ranking prose.
  • Enriched retrieval generations now store a digest-bound semantic overlay over
    structural postings, preserving the public RetrievalIndex API while avoiding
    a second near-complete postings corpus.

Fixed

  • Kept descriptive verbs after "which function" as topical search terms while
    retaining explicit named identifiers and directed caller/callee requests.

  • Retained verified planner discovery after later provider failures and honored
    explicitly disabled structured-response repairs without a hidden local retry.

  • Reduced planner menus and previews while retaining available required evidence,
    resolved source anchors and complete local diagnostics.

  • Materialized mandatory source above the automatic soft target when it fits
    inside the unchanged hard context budget.

  • Stabilized config-key digests, parse-error reuse, and no-op updates; added
    Kotlin structural extraction and compact bounded occurrence/card evidence.

  • Enforced source-spanning planner previews, session-wide round/action/token
    ceilings, strict whole-plan fallback, model-order materialization, and safe
    FULL → SLICE → MAP downgrade without weakening freshness or hard budgets.

  • Counted response schemas embedded by plain-JSON providers in preflight and
    bounded every agentic round against the provider's complete context window,
    shrinking candidates, module inventory, and previews before dispatch.

  • Corrected paired efficiency measurement to compare Capsule input with the
    ordinary full required/working-file payload rather than the hand-selected
    oracle, while preserving the oracle and blinded judge as quality gates.

  • Added verified non-call reference edges, module-level environment-key facts,
    scoped config-consumer projections, and centrality metrics that exclude both
    inferred and synthetic source-test relationships.

  • Grounded model-inferred relationships in supplied content-addressed targets
    and source evidence, with item-level validation and source/target rename
    rebinding. Updated semantic priority scheduling and behavioral barrel routing.

  • Prevented centrality-only task material, added bounded planner representation
    influence, and enforced a 30% automatic Capsule soft ceiling without weakening
    explicit-material or hard-budget rules.

  • Restricted retrieval graph scoring to verified/best-effort structural edges,
    while retaining inferred neighbors as non-authoritative CandidateCard context.

  • Allocated automatic capsule sections inside the post-envelope soft payload,
    seeded complementary MAPs before upgrades, and penalized duplicate concepts,
    ranges, and graph neighbors during marginal-utility selection.

  • Reported all current v3 repository maps after builds and added a digest-bound
    generated-artifact registry so unchanged package/Capsule/prompt outputs do
    not enter later index updates.

  • Serialized generated-artifact registry updates with a bounded, ownership-
    checked stale-recoverable lock so concurrent writers do not lose entries.

  • Completed twelve-language Python/Tree-sitter import/call/reference extraction,
    ambiguity-aware
    provenance, and key-digest-scoped config-consumer relationships without
    storing configuration values.

  • Sharded graph and retrieval records into digest-bound 4 MiB artifacts,
    removed duplicated generation facts, and made warm retrieval load compact
    file projections plus embedded grounded evidence instead of every CodeMap and
    Semantic Card.

  • Replaced fill-to-30% automatic compilation with minimum-sufficient Evidence
    Plan coverage; the 30% allocation is now a soft ceiling while explicit
    material remains governed by the hard budget.

  • Reused digest-matched published Semantic Cards across unrelated structural
    updates, avoiding retries of unchanged fallback/partial files while still
    rebinding or dropping inferred targets against the current snapshot.

  • Distinguished the closed Semantic Card evidence-ID set from untrusted source
    container IDs, preventing compatible providers from returning transport IDs
    that cannot ground ranking claims.

  • Decoupled Bridge progress delivery from index cancellation: queue overflow
    coalesces intermediate events, counts dropped/coalesced updates, and always
    prioritizes terminal state. A slow progress consumer cannot cancel a job.

  • Separated Bridge client wait timeout, per-provider-attempt timeout, and whole
    operation timeout. Client timeout leaves the job tracked by operation_id
    with its writer lock held through completion/cleanup; explicit cancellation
    and shutdown still cancel it.

  • Resolved relative TypeScript emitted import suffixes only through the declared
    .js/.jsx/.mjs/.cjs to source-suffix table. Exact files still win,
    package imports remain external, and ambiguity remains unresolved with
    best-effort structural provenance.

  • Replaced the isolated Python test-path policy with a declarative shared file
    policy. Source-test edges now prefer resolved test imports, calls, and
    references, carry provenance, and remain excluded from centrality.

  • Constrained entrypoint-handler edges to verified callback or direct bootstrap
    shapes instead of promoting every entrypoint import/call.

  • Made every planner action demonstrate a measurable evidence-coverage gain;
    no-gain actions cannot extend a bounded session.

  • Validated plan sufficiency after actual capsule materialization. Missing
    planned items, evidence/ranges, mandatory role coverage, or task material now
    downgrade effective sufficiency with bounded reason codes.

  • Made automatic capsule selection coverage-first and prevented upgrades from
    displacing the final evidence for a required role. Added an automatic compact
    profile for one short exact file only when it is cheaper than the ordinary
    verified capsule.

  • Bound --force-reanalyze to semantic cache/card reuse. Structural reanalysis
    has an explicit internal control, and a semantic-force no-op does not publish
    an ...

Read more

ContextForge v0.5.1

Choose a tag to compare

@github-actions github-actions released this 08 Sep 13:35

What's Changed

Added

  • Added independent --fail-fast and --max-failures N index policies, a
    bounded semantic scheduler, and a job-scoped provider circuit breaker.
  • Added --progress jsonl for clean, flushed ProgressEvent schema 3 streams
    from index build and index update.
  • Added opt-in Bridge 2.0 tracked build/update jobs, correlated
    $/progress notifications, cooperative cancellation, schema capabilities,
    and a normative Bridge 2 JSON Schema. Bridge 1.0/1.1 remain supported.
  • Added verified Tree-sitter declaration extraction for JavaScript, TypeScript,
    Java, C#, Go, Rust, C, C++, PHP, and Ruby, including language-specific
    ownership, signatures, modifiers, exports, and parser diagnostics.
  • Added index schema v2 source regions and resumable semantic chunk checkpoints
    with explicit coverage, required-symbol budgeting, and partial-result
    provenance.
  • Added bridge protocol 1.1 verified expansion candidates and index coverage
    while retaining protocol 1.0 compatibility.
  • Added an opt-in, read-only Qwen retrieval and semantic regression script for
    local OpenAI-compatible model servers.

Changed

  • Classified authentication, authorization, missing credential, quota, rate
    limit, model, configuration, timeout, and service failures so terminal
    provider-wide failures are not retried per file.
  • Made semantic and repository-map analyzer identity depend on provider/model
    and analysis contracts rather than an OpenAI-compatible endpoint. Legacy
    +base.<sha256> records migrate on update without model calls.
  • Prioritized exact current-source identifiers, verified declarations, inferred
    regions, and explicit task facets during discovery; verified symbol questions
    now prefer compact declaration and dependency ranges.
  • Made structured providers default to reasoning disabled, retry bounded
    truncated responses, and rebuild requests against unambiguous smaller runtime
    context limits.
  • Expanded semantic planning so every required symbol receives response budget,
    oversized work splits before dispatch, and validated chunks can resume after
    interruption.
  • Preserved exact identifier ranges through discovery review and required
    sufficient multi-symbol context before accepting model finalization.
  • Preserved shadowed builtin dependencies, TypeScript destructuring defaults,
    and JavaScript function-scoped var bindings during context selection.
  • Preserved complete C/C++ prototype declarations and derived polyglot async
    and visibility metadata from syntax nodes rather than bounded source text.
  • Counted unsupported source languages in relationship coverage, prioritized
    Kotlin declaration hints, audited fallback dependencies, and returned an
    explicit deterministic fallback when non-strict model discovery times out.
  • Corrected polyglot declaration ownership, callable classification, source
    ranges, and coverage reporting across supported grammar variants.

Fixed

  • Enforce the caller's expected snapshot inside the index workflow, revalidate
    it immediately before atomic publication, and check cancellation at the
    manifest activation boundary.
  • Return Bridge index timeouts at the caller's deadline while retaining
    cooperative cleanup and its writer lock as tracked background work.
  • Bound Bridge progress delivery with one writer task, coalesce synchronous
    cumulative progress bursts, detect sustained client backpressure, drain every
    completed semantic task, and preserve typed provider causes through semantic
    and map aggregation.
  • Preserve the prior active generation on cancellation, failure limits,
    provider circuit opening, source drift, or progress backpressure.
  • Return safe typed Bridge index errors without provider bodies, credentialed
    URLs, absolute paths, tracebacks, or exception representations.
  • Updated installed wheel and source-distribution smoke validation for Bridge
    2.0 while retaining explicit checks for 1.0 and 1.1 compatibility.

Maintenance

Full Changelog: v0.5.0...v0.5.1

ContextForge v0.5.0

Choose a tag to compare

@github-actions github-actions released this 24 Aug 15:48
395c9c1

What's Changed

Added

  • Added immutable, model-free repository discovery application contracts for
    deterministic candidate preparation, read-only expansion, verified source
    reads, and canonical context packaging.
  • Added the generic ContextForge bridge protocol v1 ADR, normative JSON Schema,
    persistent workspace-bound JSON-RPC 2.0 service over bounded UTF-8 NDJSON
    stdio, and a runnable generic client example.
  • Added explicit protocol negotiation and compatibility failures for missing or
    unsupported v1 handshakes, cooperative JSON-RPC request cancellation, typed
    source-identity drift, deterministic preparation/selection identities, and
    bounded concurrent requests with serialized responses.
  • Added bridge architecture, CLI, troubleshooting, security, stream,
    cancellation, read-only, repository-truth, and source-verification guidance.

Changed

  • Kept model-assisted discovery on the existing provider-backed path while
    sharing its snapshot, mode, ranking, stale-index, path, and budget semantics
    with the new public preparation API.
  • Stabilized the public model-free expansion DTO around closed operations and
    explicit result fields. Removed the unused competing bridge envelope and
    stopped JSON-RPC responses from serializing internal model actions, tool
    names, steps, request echoes, or whole application DTOs.
  • Kept the read-only MCP server independent and unchanged while adding the
    separate bridge transport.

Security

  • Defined bridge v1 as a trusted-local integration transport rather than an
    authentication, sandbox, network, or multi-tenant boundary. The fixed
    workspace permits verified reads only: no provider/network access, shell,
    arbitrary subprocess, source/Git/index mutation, or disk artifact publish.

Full Changelog: v0.4.2...v0.5.0

ContextForge v0.4.2.post2

Choose a tag to compare

@github-actions github-actions released this 21 Aug 13:28
25bc622

What's Changed

Added

  • Added versioned discovery benchmark manifests and the
    contextforge benchmark discovery command with text, Markdown, and canonical
    JSON reports for quality, repeatability, performance, warnings, and provider
    accounting.

Changed

  • Relicensed ContextForge 0.4.2 and later under Apache License 2.0; earlier
    tagged releases remain under the license included in their snapshots.
  • Prepared the first public PyPI release as contextforge-repo while preserving
    the contextforge import package and the contextforge and ctxf commands.
  • Opened the contribution workflow to fork-based pull requests targeting
    dev, with owner review through CODEOWNERS and Apache-2.0 inbound terms.
  • Enabled GitHub Discussions for ordinary usage questions and Q&A, and added a
    private project conduct-reporting address with a GitHub abuse-reporting
    fallback.
  • Replaced the editable-install-only CI path with locked, provider-independent
    lint, type, test, distribution, and clean-install validation.
  • Added owner-triggered OIDC publication for TestPyPI and PyPI, draft GitHub
    releases, checksums, SBOM generation, and non-PR dependency/security audits.
  • Archived completed implementation plans and removed machine-specific paths
    from the public documentation set.
  • Redesigned the public README, added a restrained ContextForge visual identity,
    prepared a complete English GitHub Wiki workspace, and clarified the current
    solo-maintainer review policy.
  • Tightened distribution metadata and source-distribution exclusions so local
    state, tests, planning documents, Wiki files, and development-only repository
    metadata are not packaged.
  • Stabilized context suggest around text as the default interactive output and
    documented text, Markdown, and JSON as presentation renderers over the same
    canonical structured selection.
  • Documented fresh, indexed, and hybrid intent, valid cross-mode selection
    differences, exact agreement versus semantic stability, grouped warning and
    stdout/stderr behavior, and the limits of model-backed repeatability for the
    v0.4.2 discovery work.

Installation

python -m pip install contextforge-repo==0.4.2.post2