@diffpal/lintpal-linux-x64 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +77 -0
- package/bin/lintpal +0 -0
- package/package.json +21 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Alexey Samoylov
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# lintpal
|
|
2
|
+
|
|
3
|
+
`lintpal` reviews a **committed Git comparison** with declarative rules and a
|
|
4
|
+
selected System One provider. It prints a deterministic report of diagnostics
|
|
5
|
+
anchored to changed lines. The current MVP reads committed blobs only; save and
|
|
6
|
+
commit the revision you want to inspect before running it.
|
|
7
|
+
|
|
8
|
+
The first lintpal release is planned as `v0.2.0` under the [MIT license](LICENSE).
|
|
9
|
+
Once publication is verified, users will be able to install either npm identity:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npm install -g lintpal@0.2.0
|
|
13
|
+
# or
|
|
14
|
+
npm install -g @diffpal/lintpal@0.2.0
|
|
15
|
+
lintpal version
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
These registry commands become available only after the release Story finishes;
|
|
19
|
+
the local build below works now.
|
|
20
|
+
|
|
21
|
+
The earlier `jevlint` v0.1.0 tag and six scoped npm packages remain available
|
|
22
|
+
for existing installs. npm rejected the unscoped `jevlint` name, so that release
|
|
23
|
+
did not receive a GitHub release.
|
|
24
|
+
|
|
25
|
+
## Build and try locally
|
|
26
|
+
|
|
27
|
+
Go 1.26.6 or newer is required by `go.mod`. From the repository root:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
go build -o ./lintpal ./cmd/lintpal
|
|
31
|
+
./lintpal version
|
|
32
|
+
./lintpal --help
|
|
33
|
+
go test ./cmd/lintpal -run TestProcessExitAndStreams -count=1
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
The process test creates temporary committed Git repositories and a local fake
|
|
37
|
+
System One server, so the last command needs no provider secret or network
|
|
38
|
+
account. A plain local build reports version `dev`. Omnidist staging can embed
|
|
39
|
+
an explicit version; see [distribution staging](docs/distribution.md).
|
|
40
|
+
|
|
41
|
+
To lint a real comparison, run these commands **inside the repository being
|
|
42
|
+
reviewed** after both revisions are committed:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
export TYPESAFE_API_KEY='your-token'
|
|
46
|
+
./lintpal doctor --provider jev
|
|
47
|
+
mkdir -p .artifacts/lintpal
|
|
48
|
+
./lintpal lint --base origin/main --head HEAD --provider jev \
|
|
49
|
+
--format json --fail-on high --out .artifacts/lintpal/report.json
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Use an absolute path to the built executable when linting another repository.
|
|
53
|
+
The default provider is `jev`; `openrouter` reads `OPENROUTER_API_KEY`, and
|
|
54
|
+
`custom` reads `LINTPAL_TOKEN` by default and requires `--base-url`. `doctor`
|
|
55
|
+
checks the local Git repository and presence of the selected credential; it
|
|
56
|
+
does not contact the provider. A real `lint` sends bounded committed source
|
|
57
|
+
context and rule questions to the selected provider. See the [CLI guide](docs/cli.md)
|
|
58
|
+
for flags, environment settings, output formats, and exit codes. Exit code `10`
|
|
59
|
+
means the complete report was written and a finding met `--fail-on`; it can be
|
|
60
|
+
used as a CI gate.
|
|
61
|
+
|
|
62
|
+
## CI and reports
|
|
63
|
+
|
|
64
|
+
The checked-in [CI workflow](.github/workflows/ci.yml) builds and tests on
|
|
65
|
+
Linux, macOS, and Windows without provider credentials. For a repository using
|
|
66
|
+
`lintpal` as a quality gate, install a locally built or separately approved
|
|
67
|
+
binary in the job, fetch the base revision, provide the selected credential as
|
|
68
|
+
a CI secret, then run the `lint` command above with `--base` and `--head` set to
|
|
69
|
+
commits available in that checkout. Handle exit code `10` as a lint failure;
|
|
70
|
+
other nonzero codes indicate setup, provider, or export failure. Never print
|
|
71
|
+
the credential or enable shell tracing around it.
|
|
72
|
+
|
|
73
|
+
The [report reference](docs/report.md) defines the versioned JSON and human
|
|
74
|
+
formats. [Privacy and limitations](docs/privacy.md) explains source transfer,
|
|
75
|
+
local metrics, bounded inputs, and the current quality evidence. The
|
|
76
|
+
[evaluation guide](docs/evaluation.md) describes the offline corpus and an
|
|
77
|
+
optional, explicit live procedure.
|
package/bin/lintpal
ADDED
|
Binary file
|
package/package.json
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cpu": [
|
|
3
|
+
"x64"
|
|
4
|
+
],
|
|
5
|
+
"description": "lintpal binary for linux/amd64",
|
|
6
|
+
"files": [
|
|
7
|
+
"bin",
|
|
8
|
+
"README.md",
|
|
9
|
+
"LICENSE"
|
|
10
|
+
],
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"name": "@diffpal/lintpal-linux-x64",
|
|
13
|
+
"os": [
|
|
14
|
+
"linux"
|
|
15
|
+
],
|
|
16
|
+
"repository": {
|
|
17
|
+
"type": "git",
|
|
18
|
+
"url": "https://github.com/diffpal/lintpal"
|
|
19
|
+
},
|
|
20
|
+
"version": "0.2.0"
|
|
21
|
+
}
|