plm-knowledge
TracePulse PLM Knowledge product-line. Wave 6.5 Conv B sibling-package carve per PRD §3 #6.
Scope (PRD §3 #6 verbatim — 4 sub-layers)
| Sub-layer | Source | Carve disposition |
|---|---|---|
| Foundation | 01_Dictionnaries/** (146 .md files at repo root) + plm_taxonomy + plm_evaluation_grids |
Path stays at repo root through Wave 6.5 per Decision #171 = (c) defer relocation to Wave 7. plm_knowledge.foundation_loader is a thin reader that resolves the path through config.dictionnaries_path (already configurable); no git mv of the dictionary tree. |
| Rule & Policy | 02_App/backend/services/issue_classification.py + 02_App/backend/agents/business_validator.py |
Lifted via git mv to 02_App/plm-knowledge/plm_knowledge/{issue_classification,business_validator}.py. Re-export shims at every old monolith path. |
| Retrieval | 02_App/backend/services/rag_service.py + 02_App/backend/skills/knowledge_pack_loader.py + 02_App/backend/skills/knowledge_search_engine.py (BM25) |
Lifted via git mv to 02_App/plm-knowledge/plm_knowledge/{rag_service,knowledge_pack_loader,knowledge_search_engine}.py. Re-export shims at every old monolith path. |
| Operational | V1 placeholder per D-LOCKED-15 + Decision #172 = (a) keep in-process state V1 | plm_knowledge.operational exposes a stable but inert public surface so downstream callers can target the future operational telemetry hooks without an interface bump. |
Public surface (frozen V1 — KNOWLEDGE_PACKAGE_VERSION = "v1.0.0-wave6.5")
- The 5 lifted modules at top level of the package (
rag_service,issue_classification,business_validator,knowledge_pack_loader,knowledge_search_engine). plm_knowledge.foundation_loader— thin reader for the Foundation layer (path resolution + .md enumeration).plm_knowledge.operational— V1 placeholder (per D-LOCKED-15 + Decision #172).plm_knowledge.lifecycle— 4-state FSM aligned verbatim with PRD §8.11.3 (mirror of Wave 6.5 Conv Aplm-skill-packagesper Decision #167).plm_knowledge.manifests— YAML manifest loader (mirror of Decision #168 precedent — YAML + filesystem; no SQL, no admin UI in V1).plm_knowledge.contracts— wire-contract Pydantic v2 frozen models for the public surface (Decision #160 interface-freeze pattern).plm_knowledge.registry— manifest+lifecycle registry exposed to the kernel (capability registry callers).
Foundation MVP-0 corpus qualification (FTR-2219 / US-2219-01)
plm_knowledge.foundation turns the bundled 146-document Markdown corpus,
taken at an exact pinned commit SHA, into a reviewable, byte-reproducible
qualification matrix under the versioned policy
foundation-corpus-qualification/0.1.0. It is build-time governance, not a
runtime search surface (retrieval stays out of scope for MVP-0).
- Every candidate is classified
included/excluded/invalidwith a reason code; no candidate disappears from the matrix. Included documents carryqualified_seedauthority. - Approved MVP-0 perimeter:
plm/bpmn/ontology/data/rgpdare the included seed;customersis excludedsensitiveandprompt_libraryis excludedout_of_scope. At the pinned seed revision the matrix is 146 candidates → 55 included / 91 excluded / 0 invalid (the 4 zero-byte category-index files are reason-codedempty). - Stable identity:
document_id = "doc:" + sha256(NFC(source_relative_path)); content is EOL-normalized before hashing socontent_sha256is reproducible across checkouts. Canonical serialization is UTF-8 / LF / sorted-keys / compact JSON with no timestamps or absolute paths.
python scripts/qualify_foundation_corpus.py # dry-run report (writes nothing)
python scripts/qualify_foundation_corpus.py --execute # write the approved inventory
python scripts/qualify_foundation_corpus.py --check # determinism gate: fail on any drift
The executed inventory lives in-repo at
plm_knowledge/foundation/inventory/foundation-inventory.json and is consumed
by downstream package-projection / integrity stories from the source tree. It
is intentionally not shipped as wheel package-data, since the matrix
enumerates the paths of perimeter-excluded sensitive documents.
Lifecycle FSM (PRD §8.11.3 verbatim — Decision #167 mirrored)
draft ──► released ──► deprecated ──► retired
│
└──► (terminal)
States are strictly forward-flowing; the FSM rejects skip
transitions, out-of-terminal moves, and unknown states. Mirrors the
4-state contract in plm_shared.capability_registry.
Transitional dependency note (Wave 6.5 → Wave 7 Extraction)
Lifted code retains its existing from services.X / from agents.base_agent /
from config import settings imports. These resolve at runtime in the
backend process via PYTHONPATH (also via pip install -e ../plm-knowledge
declared in 02_App/backend/requirements.txt); sibling tests configure
tests/conftest.py to extend sys.path. Wave 7 Extraction physically
separates the repos and at that point inbound deps refactor to
ports/Protocols. Pattern matches Wave 6.5 Conv A plm-skill-packages
precedent verbatim.
Re-export shims
The following monolith paths are thin re-export shims pointing to the canonical sibling-package modules. They keep legacy callers working through Wave 7 Extraction (drop after 90-day soak per US-DC.1).
02_App/backend/services/rag_service.py02_App/backend/services/issue_classification.py02_App/backend/agents/business_validator.py02_App/backend/skills/knowledge_pack_loader.py02_App/backend/skills/knowledge_search_engine.py
References
- PRD §3 #6 —
plm-knowledgeproduct-line definition - PRD §8.11.3 — 4-state capability lifecycle FSM
- WAVE-6-READINESS-SWEEP.md §11.2 — Wave 6.5 conv-by-conv
- W6.5-CONV-A-FOLLOWUPS.md — Wave 6.5 Conv B warm-up
- Decisions #170-#173 — Wave 6.5 Conv B Q-W6.5B-* answers
Metadata
Release files for plm-knowledge 1.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| plm_knowledge-1.4.0.tar.gz | 481.6 kB | With provenance | Details for plm_knowledge-1.4.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| plm_knowledge-1.4.0-py3-none-any.whl | Python 3 | none | any | Details for plm_knowledge-1.4.0-py3-none-any.whl |
Total release size: 1.1 MB
Release files / plm_knowledge-1.4.0.tar.gz
| Download URL | plm_knowledge-1.4.0.tar.gz |
|---|---|
| Size | 481.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
694da478b432dc66a0a75fd09743433886c2132b0489d690af3a4965cf2252c7
|
|
BLAKE2b-256 checksum How to use checksums |
37cf579a86e182512e23943436039a5b86b563e1f2ba40beebdd58da1351316d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 6, 2026.
Transparency logRelease files / plm_knowledge-1.4.0-py3-none-any.whl
| Download URL | plm_knowledge-1.4.0-py3-none-any.whl |
|---|---|
| Size | 587.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7af29d85efb6a048556b7c0d911a96dc1c3537e135faff44f5e0249df01438e7
|
|
BLAKE2b-256 checksum How to use checksums |
108a6f74028b6fe536d437cf9b154d82fd08f89b9a18d67a06c483a956e830f7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 6, 2026.
Transparency logSecurity for plm-knowledge 1.4.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for plm_knowledge-1.4.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 6, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.