Repository navigation
Releases: waterflane/ContextForge
Release list
ContextForge v0.6.0b1
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
agenticsearch/symbol/graph/mapevidence 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, CLImap --kind, and the additive
benchmarkindex_v3_capsulepipeline with grounded/dropped-claim metrics. - Added
off|auto|requiredmodel-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 andcontext 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 byindex update, and
replaced only by a full build without semantic migration. - Task-based
context suggestandcontext createdefault to Index v3 retrieval
and Capsule v2 when available.--legacy-discoveryand--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 → MAPdowngrade 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 byoperation_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/.cjsto 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-reanalyzeto semantic cache/card reuse. Structural reanalysis
has an explicit internal control, and a semantic-force no-op does not publish
an ...
ContextForge v0.5.1
What's Changed
Added
- Added independent
--fail-fastand--max-failures Nindex policies, a
bounded semantic scheduler, and a job-scoped provider circuit breaker. - Added
--progress jsonlfor clean, flushedProgressEventschema 3 streams
fromindex buildandindex update. - Added opt-in Bridge 2.0 tracked
build/updatejobs, correlated
$/progressnotifications, 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-scopedvarbindings 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
- Dev by @waterflane in #36
Full Changelog: v0.5.0...v0.5.1
ContextForge v0.5.0
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
What's Changed
Added
- Added versioned discovery benchmark manifests and the
contextforge benchmark discoverycommand with text, Markdown, and canonical
JSON reports for quality, repeatability, performance, warnings, and provider
accounting.
Changed
- Relicensed ContextForge
0.4.2and 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-repowhile preserving
thecontextforgeimport package and thecontextforgeandctxfcommands. - 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 suggestaround 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