Skip to content

Commit 8587b69

Browse files
authored
Merge pull request #22 from gowtham0992/develop
Release Link v1.1.0
2 parents 52346b4 + 23eba68 commit 8587b69

125 files changed

Lines changed: 28963 additions & 2406 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yml

Lines changed: 45 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,33 @@ name: CI
22

33
on:
44
pull_request:
5-
push:
6-
branches: [main]
75
workflow_dispatch:
86

97
permissions:
108
contents: read
119

1210
jobs:
11+
lint:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v4
15+
16+
- uses: actions/setup-python@v5
17+
with:
18+
python-version: "3.12"
19+
20+
- name: Install ruff
21+
run: python -m pip install "ruff>=0.8,<1"
22+
23+
- name: Run ruff
24+
run: python -m ruff check .
25+
1326
test:
1427
runs-on: ubuntu-latest
1528
strategy:
1629
fail-fast: false
1730
matrix:
18-
python-version: ["3.10", "3.11", "3.12"]
31+
python-version: ["3.10", "3.12", "3.14"]
1932
steps:
2033
- uses: actions/checkout@v4
2134

@@ -24,19 +37,32 @@ jobs:
2437
python-version: ${{ matrix.python-version }}
2538

2639
- name: Compile Python
27-
run: python -m py_compile serve.py link.py scripts/check_release_hygiene.py scripts/prepare_release.py mcp_package/link_mcp/server.py mcp_package/link_mcp/__main__.py mcp_package/link_mcp/__init__.py
40+
run: python -m py_compile serve.py link.py scripts/check_release_hygiene.py scripts/check_runtime_duplication.py scripts/check_tool_contract.py scripts/prepare_release.py scripts/smoke_first_use.py scripts/smoke_http_viewer.py scripts/smoke_large_wiki.py scripts/smoke_mcp_stdio.py mcp_package/link_core/*.py mcp_package/link_mcp/server.py mcp_package/link_mcp/__main__.py mcp_package/link_mcp/__init__.py
41+
42+
- name: Install MCP package for verification
43+
run: python -m pip install ./mcp_package
2844

2945
- name: Run tests
3046
run: python -m unittest discover -s tests
3147

48+
- name: Large wiki smoke test
49+
if: matrix.python-version == '3.12'
50+
run: python scripts/smoke_large_wiki.py --pages 1000
51+
3252
- name: Demo health smoke test
3353
run: |
54+
python scripts/smoke_first_use.py
3455
python link.py demo /tmp/link-demo-ci --force
3556
python /tmp/link-demo-ci/link.py doctor /tmp/link-demo-ci
3657
python /tmp/link-demo-ci/link.py rebuild-backlinks /tmp/link-demo-ci
58+
python /tmp/link-demo-ci/link.py validate /tmp/link-demo-ci
3759
python /tmp/link-demo-ci/link.py doctor /tmp/link-demo-ci
3860
PYTHONPATH=mcp_package python link.py verify-mcp /tmp/link-demo-ci --python python
3961
62+
- name: HTTP viewer smoke test
63+
if: matrix.python-version == '3.12'
64+
run: python scripts/smoke_http_viewer.py
65+
4066
installer-syntax:
4167
runs-on: ubuntu-latest
4268
steps:
@@ -57,6 +83,12 @@ jobs:
5783
- name: Check tracked files for secret-looking data
5884
run: python scripts/check_release_hygiene.py
5985

86+
- name: Check runtime duplication
87+
run: python scripts/check_runtime_duplication.py
88+
89+
- name: Check tool contract
90+
run: python scripts/check_tool_contract.py
91+
6092
package:
6193
runs-on: ubuntu-latest
6294
steps:
@@ -76,3 +108,12 @@ jobs:
76108
- name: Check package metadata
77109
working-directory: mcp_package
78110
run: python -m twine check dist/*
111+
112+
- name: Install built wheel
113+
working-directory: mcp_package
114+
run: python -m pip install dist/*.whl
115+
116+
- name: MCP stdio smoke test
117+
run: |
118+
python link.py demo /tmp/link-mcp-smoke --force
119+
python scripts/smoke_mcp_stdio.py /tmp/link-mcp-smoke/wiki

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ wiki/explorations/*
1919

2020
# Keep index and log templates but ignore personal content
2121
# (we ship empty versions in the repo)
22+
wiki/_link_schema.json
2223

2324
# OS junk
2425
.DS_Store
@@ -39,6 +40,8 @@ autoresearch/
3940

4041
# Local demo output
4142
link-demo/
43+
.link-backups/
44+
.link-cache/
4245

4346
# Integration artifacts (generated by install scripts)
4447
CLAUDE.md

CHANGELOG.md

Lines changed: 236 additions & 0 deletions
Large diffs are not rendered by default.

CONTRIBUTING.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# Contributing To Link
2+
3+
Thanks for helping improve Link. The goal is simple: make local agent memory
4+
easier to trust, inspect, and use.
5+
6+
Please open pull requests against `main` unless the maintainer asks for a
7+
different target. The `develop` branch is a maintainer integration branch for
8+
staging release work before it is proposed to `main`.
9+
10+
## Before Opening A PR
11+
12+
Run the local gate:
13+
14+
```bash
15+
python3 -m pip install "ruff>=0.8,<1"
16+
python3 -m ruff check .
17+
python3 -m unittest discover -s tests
18+
python3 scripts/check_release_hygiene.py
19+
python3 scripts/check_runtime_duplication.py
20+
python3 scripts/check_tool_contract.py
21+
git diff --check
22+
```
23+
24+
For UI changes, include a screenshot or GIF. For installer, MCP, memory-write,
25+
HTTP API, or automation changes, call that out explicitly in the PR description.
26+
27+
## PR Description
28+
29+
Include:
30+
31+
- What changed.
32+
- How you tested it.
33+
- Whether it touches memory writes, installers, MCP behavior, HTTP endpoints, or
34+
automation.
35+
- Screenshots or GIFs for UI changes.
36+
37+
Do not include personal wiki data, raw sources, registry tokens, `.env` files, or
38+
local MCP credentials in a PR.
39+
40+
Full contributor guide:
41+
https://gowtham0992.github.io/link/contributing.html

0 commit comments

Comments
 (0)