Expose three small, independently callable source-to-DSL APIs over the existing extractors:
code2dsl converts supported repository source files through the current
multi-language AST coordinator;docs2dsl resolves explicitly supplied files or documentation patterns and
runs the deterministic documentation converter;config2dsl converts supported repository configuration and infrastructure
files.Every API accepts a repository root plus an explicit T2CConfig, can be called
without constructing the full pipeline, and returns the existing
ExtractionResult contract. Requiring explicit configuration preserves the
deterministic no-LLM/no-secret-environment import boundary; a standalone
converter must not silently read ambient provider configuration. Before the
result crosses the new API boundary, all emitted records are validated as
t2c.intent/v1. The result is intentionally partial: it contains only evidence
owned by that input channel and makes no repository-completeness claim.
ExtractionResult remains an adapter envelope; each item in records is the
canonical DSL document. The ticket does not invent a second collection schema
or mislabel warnings/cache metadata as semantic DSL content.
The existing extractAstIntent, extractDocumentationBaseline and
extractConfigurationIntent functions remain compatible. Because their
modules are already re-exported by src/index.ts, the additive APIs require no
package-manifest, root-export or pipeline change.
The inspected Wellmanifest standards and their exact applicability are recorded in STANDARDS.md. They require facade parity with the existing SSOT, one-way module dependencies, strict canonical-record validation and a descriptive/no-authority boundary. Experimental or uncommitted standards remain design inputs only; this ticket does not fabricate a standards lock or claim formal conformance.
code2dsl, docs2dsl and config2dsl are independently
callable from the package root with a common { root } entry shape and
a required explicit T2CConfig.assertIntentRecords validator and retains source provenance.docs2dsl accepts explicit resolved files or resolves bounded
include/exclude patterns, using the configured documentation patterns by
default..env
secret material.user-* file was created.The human owner explicitly approved ticket-076 and requested implementation on
2026-08-14. The ticket is now IN_PROGRESS / PUBLICATION. Conversation
approval is an audit note, not trusted merge authorization.
.env.example remains discoverable while
actual .env content is neither emitted nor leaked.npm run verify passed, including TypeScript build, the full Node suite,
transitive no-LLM checks and module-boundary validation (124 modules, 545
internal imports, no cycles and independent core). The existing JDK-only
Java test remained skipped because the JDK is not installed../project/governance-check.sh, make docker-smoke and git diff --check
passed on 2026-08-14.verify, the required JDK fixture and Koru passed on exact final head
944288f8c6a458ccc26d1d7c13217b84414edbb7.todo2code-pr-92-ticket-076-history-repair-2. Its advisory GLM 5.2 opinion
was unavailable, so approval authority rests explicitly on deterministic
evidence.governance / governance / enforce resolver accepted the
plan-first history and exact-head App review.main@24ca3a13f0529da99f56ff06b6e992bb34c1dff3; GitHub automatically deleted
ticket-076-standalone-source-dsl-apis.t2c.intent/v1.dsl-manifest.json, modularity workspace or standards lock; those belong
to a separately approved integration ticket with immutable revisions and
artifact digests.