PulseForge
AI-driven pipeline that turns unstructured log streams into categorized, templated, health-scored signal — a sibling project to ParseForge, reusing its trial → integration → promotion template pipeline instead of reimplementing it.
Full design plan: SPEC.md.
Why
CLI-command output ("show interface status") and log-body messages ("%LINK-3-UPDOWN: Interface ... changed state to down") are both just "unstructured text that recurs in a small number of shapes and needs a template." ParseForge already solves the hard part of that problem — LLM-drafted templates, self-validated against their own sample, clustered by output schema, and promoted only once they clear a match-rate gate, with a human-reviewed path for anything short of it. PulseForge applies that same machinery to log messages, and adds the two things logs need that CLI output doesn't:
- Envelope splitting — a log line isn't one blob, it's a
<date-time-marker>: <log-body>pair. The marker has to be split off before anything downstream (naming, templating) sees clean body text. - Category naming instead of command naming — there's no fixed
command vocabulary to resolve against; an AI has to look at a log body
and name its type (
LINK-3-UPDOWN) before a template can even be requested for it. - Pulse (health) scoring — once a category has an authoritative template, PulseForge tracks its match-rate, frequency, and field-value distribution over time and flags when a category goes unhealthy or inconsistent — not just "the template broke" (drift), but "this category's behavior looks wrong."
Architecture
ingestion -> envelope split -> category naming -> template forge (delegates
to parseforge) -> parse -> pulse/health scoring -> sink
See SPEC.md for the full breakdown of each stage.
Status
Scaffold only. Directory layout and module boundaries are in place;
pipeline stages are stubs (NotImplementedError) pending real
implementation. Nothing here is wired end to end yet.
Installation
# local development
pip install -e ".[dev,sampling]"
Relationship to ParseForge
PulseForge depends on parseforge as an ordinary pip package — the
template-forging stage (pulseforge/forge/adapter.py) calls straight into
parseforge.api rather than forking or copying its pipeline. A PulseForge
"category" is passed into that pipeline the same way ParseForge's own CLI
resolves and passes a "cli-name": as the key a group of samples is
generated, validated, and promoted under.
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 pulseforge-0.1.0.tar.gz.
File metadata
- Download URL: pulseforge-0.1.0.tar.gz
- Upload date:
- Size: 12.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c8c02cae50935cbc3631d955e189a5a618369df823738aa3b016aaf25d41edbe
|
|
| MD5 |
98b2e4f788dbe053ba852e25cf6fd113
|
|
| BLAKE2b-256 |
b49c319103ee63a2d238c67397f9d607ca768802c0a3c1bd9d237275fcdfd830
|
Provenance
The following attestation bundles were made for pulseforge-0.1.0.tar.gz:
Publisher:
publish-pypi.yml on Geeks-Trident-LLC/pulseforge
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pulseforge-0.1.0.tar.gz -
Subject digest:
c8c02cae50935cbc3631d955e189a5a618369df823738aa3b016aaf25d41edbe - Sigstore transparency entry: 2340769911
- Sigstore integration time:
-
Permalink:
Geeks-Trident-LLC/pulseforge@a24dedffa6365b8356c45fa5d805416ed65081d7 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Geeks-Trident-LLC
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@a24dedffa6365b8356c45fa5d805416ed65081d7 -
Trigger Event:
release
-
Statement type:
File details
Details for the file pulseforge-0.1.0-py3-none-any.whl.
File metadata
- Download URL: pulseforge-0.1.0-py3-none-any.whl
- Upload date:
- Size: 16.9 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 |
6ad6fd22801d98f5ee52073e32f0df33842543b682a2c545b930b5daefd2844c
|
|
| MD5 |
5911fdc28ee46d8e4e903b9060efc782
|
|
| BLAKE2b-256 |
c087069bac1e49744a4c74a4e317e9a6ddb657b4ea396ac50fc6ce015eeca48b
|
Provenance
The following attestation bundles were made for pulseforge-0.1.0-py3-none-any.whl:
Publisher:
publish-pypi.yml on Geeks-Trident-LLC/pulseforge
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pulseforge-0.1.0-py3-none-any.whl -
Subject digest:
6ad6fd22801d98f5ee52073e32f0df33842543b682a2c545b930b5daefd2844c - Sigstore transparency entry: 2340769978
- Sigstore integration time:
-
Permalink:
Geeks-Trident-LLC/pulseforge@a24dedffa6365b8356c45fa5d805416ed65081d7 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Geeks-Trident-LLC
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@a24dedffa6365b8356c45fa5d805416ed65081d7 -
Trigger Event:
release
-
Statement type: