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
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file plm_knowledge-1.3.1.tar.gz.
File metadata
- Download URL: plm_knowledge-1.3.1.tar.gz
- Upload date:
- Size: 285.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ad65c6fc08fcb29a6c6e7f6bd76f45c500d429654521324dae352156525d1d07
|
|
| MD5 |
d145fa5d6bf428e4b4a7920cc1b4de74
|
|
| BLAKE2b-256 |
a7aa3565b5c0d0c93a534e7cc04b11d99bf8be29d374224a2f024bfecfec7a92
|
Provenance
The following attestation bundles were made for plm_knowledge-1.3.1.tar.gz:
Publisher:
release-please.yml on plm-engine/plm-knowledge
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
plm_knowledge-1.3.1.tar.gz -
Subject digest:
ad65c6fc08fcb29a6c6e7f6bd76f45c500d429654521324dae352156525d1d07 - Sigstore transparency entry: 2748424873
- Sigstore integration time:
-
Permalink:
plm-engine/plm-knowledge@9260d0f1cfd1730d4ed8b91963f2af03bb8ff380 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/plm-engine
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-please.yml@9260d0f1cfd1730d4ed8b91963f2af03bb8ff380 -
Trigger Event:
push
-
Statement type:
File details
Details for the file plm_knowledge-1.3.1-py3-none-any.whl.
File metadata
- Download URL: plm_knowledge-1.3.1-py3-none-any.whl
- Upload date:
- Size: 328.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1a3441442d5af8f5ae278f32a597a6c2601c288593e0c309268dbff15c5f1b12
|
|
| MD5 |
9b06167be5ab71e08bde457a1ea2b4ba
|
|
| BLAKE2b-256 |
f163fbb6a2179156e4bb7e796dc5183c6172e1964aa2ec71fec1aa238674ead2
|
Provenance
The following attestation bundles were made for plm_knowledge-1.3.1-py3-none-any.whl:
Publisher:
release-please.yml on plm-engine/plm-knowledge
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
plm_knowledge-1.3.1-py3-none-any.whl -
Subject digest:
1a3441442d5af8f5ae278f32a597a6c2601c288593e0c309268dbff15c5f1b12 - Sigstore transparency entry: 2748424967
- Sigstore integration time:
-
Permalink:
plm-engine/plm-knowledge@9260d0f1cfd1730d4ed8b91963f2af03bb8ff380 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/plm-engine
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-please.yml@9260d0f1cfd1730d4ed8b91963f2af03bb8ff380 -
Trigger Event:
push
-
Statement type: