Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
444 commits
Select commit Hold shift + click to select a range
a7f3c79
Merge pull request #159 from parthrohit22/feature/158-snapshot-depend…
parthrohit22 Jul 25, 2026
604bfb0
fix(repositories): remove the always-"real" data_source placeholder (…
parthrohit22 Jul 25, 2026
d791788
fix(frontend): drop the dataSource placeholder field and literal (#96)
parthrohit22 Jul 25, 2026
292d9cf
chore(dev): restrict uvicorn reload watcher to backend source (#161)
parthrohit22 Jul 25, 2026
9375e01
fix(analysis): retry transient poll failures instead of declaring ana…
parthrohit22 Jul 25, 2026
114fcf7
Merge pull request #160 from parthrohit22/fix/96-remove-placeholder-v…
parthrohit22 Jul 25, 2026
29a5f93
Merge branch 'dev' into chore/161-restrict-dev-reload-watcher
parthrohit22 Jul 25, 2026
56b70d8
Merge pull request #163 from parthrohit22/chore/161-restrict-dev-relo…
parthrohit22 Jul 25, 2026
e0c02cf
Merge branch 'dev' into fix/164-resilient-analysis-status-polling
parthrohit22 Jul 25, 2026
1ddcb14
Merge pull request #165 from parthrohit22/fix/164-resilient-analysis-…
parthrohit22 Jul 25, 2026
d26e531
fix(core): detect and resolve dev database schema drift at startup (#…
parthrohit22 Jul 25, 2026
cdac340
test(core): cover schema-drift detection and stamp fresh test databas…
parthrohit22 Jul 25, 2026
46d7e0f
fix(core): eliminate SQLite lock contention between analysis worker a…
parthrohit22 Jul 25, 2026
f0207ac
Merge pull request #167 from parthrohit22/fix/166-dev-schema-drift-de…
parthrohit22 Jul 25, 2026
461f4a6
Merge branch 'dev' into fix/162-sqlite-concurrency
parthrohit22 Jul 25, 2026
0873cf4
Merge pull request #168 from parthrohit22/fix/162-sqlite-concurrency
parthrohit22 Jul 25, 2026
ea8ddd3
feat(intelligence): seal repository read model
SHAURYAKSHARMA24 Jul 26, 2026
fe3adc8
docs: add Partha logo v1 and v2 SVG assets
parthrohit22 Jul 26, 2026
a27ed25
Merge pull request #195 from Second-Origin/docs/add-partha-logo-assets
parthrohit22 Jul 26, 2026
88e8375
fix(intelligence): layer documentation architecture and fix yaml depl…
parthrohit22 Jul 26, 2026
67bf008
test(intelligence): raise repository benchmark recall threshold to 0.95
parthrohit22 Jul 26, 2026
5dc081f
Merge pull request #196 from parthrohit22/feat/191-192-193-doc-benchm…
parthrohit22 Jul 26, 2026
e45d2a0
docs(contributing): clarify issue claim workflow
parthrohit22 Jul 26, 2026
835a751
docs(readme): clarify product value and workflow
parthrohit22 Jul 26, 2026
2cfdebc
docs(readme): refine hero and explain ri.v1
parthrohit22 Jul 26, 2026
6847b94
docs: remove stale documentation artifacts
parthrohit22 Jul 26, 2026
e099b66
docs(system-overview): scope symlink-escape claim to upload; clone ga…
parthrohit22 Jul 26, 2026
fd4fb1e
Merge pull request #197 from parthrohit22/chore/docs-cleanup
parthrohit22 Jul 26, 2026
1ca0daf
fix(frontend): stop analysis poll loop stalling before terminal state
parthrohit22 Jul 26, 2026
6cb2401
fix(frontend): stop deep-linked routes from crashing with a raw 404
parthrohit22 Jul 26, 2026
bcfc89b
Merge pull request #198 from parthrohit22/fix/175-179-ux-freeze-deeplink
parthrohit22 Jul 26, 2026
5e1676a
feat(frontend): lead the repository landing view with an outcome-firs…
parthrohit22 Jul 26, 2026
79fc9f0
Merge pull request #199 from parthrohit22/feat/176-outcome-first-home
parthrohit22 Jul 26, 2026
a40276a
chore(ops): add self-hosted release acceptance gate and runbook
parthrohit22 Jul 26, 2026
32c9733
Merge pull request #200 from parthrohit22/chore/115-self-hosted-relea…
parthrohit22 Jul 26, 2026
31c4b56
chore(deps-dev): bump the frontend-minor-and-patch group (#201)
dependabot[bot] Jul 27, 2026
8497885
chore(deps): bump framer-motion in /apps/frontend (#204)
dependabot[bot] Jul 27, 2026
34f1f4a
chore(deps): bump react-dropzone from 14.4.1 to 19.1.1 in /apps/front…
dependabot[bot] Jul 27, 2026
b6e7779
docs(governance): add roadmap merge gate to contributing and PR templ…
parthrohit22 Jul 27, 2026
f22844b
security(backend): guard clone symlinks and require auth on /metrics
parthrohit22 Jul 27, 2026
91e4cb2
Merge pull request #212 from parthrohit22/fix/182-183-backend-security
parthrohit22 Jul 27, 2026
dc9fce9
fix(frontend): surface AI provider-required state and field-level val…
parthrohit22 Jul 27, 2026
ac963ad
security(infra): harden compose exposure and split pytest out of runt…
parthrohit22 Jul 27, 2026
0a3f6c4
Merge pull request #213 from parthrohit22/fix/177-180-frontend-honesty
parthrohit22 Jul 27, 2026
ae240b0
Merge branch 'dev' into fix/185-186-187-infra-hardening
parthrohit22 Jul 27, 2026
08cbacc
Merge pull request #214 from parthrohit22/fix/185-186-187-infra-harde…
parthrohit22 Jul 27, 2026
7d03f4f
chore(gitignore): update to include local-only strategy documents and…
parthrohit22 Jul 27, 2026
34608af
feat(infra): add full-stack compose launcher
parthrohit22 Jul 27, 2026
0473cd0
Merge pull request #223 from parthrohit22/feat/222-frontend-compose-l…
parthrohit22 Jul 27, 2026
362e7f1
feat(infra): add partha:up instant restart and partha:down (#223 foll…
parthrohit22 Jul 27, 2026
3aa8a94
Merge pull request #224 from parthrohit22/feat/222-launcher-no-build
parthrohit22 Jul 27, 2026
44b3b37
fix(analysis): require a sealed snapshot for Architecture, remove fab…
parthrohit22 Jul 27, 2026
71c51dc
fix(frontend): honest missing-snapshot state and remove fabricated co…
parthrohit22 Jul 27, 2026
2f8dc85
fix(frontend): treat analysis 429 as transient, respect Retry-After
parthrohit22 Jul 27, 2026
7d5bcb7
fix(frontend): guided no-snapshot state for Review, Insights, Documen…
parthrohit22 Jul 27, 2026
c780898
fix(frontend): avoid a duplicate rate-limit banner during Analysis ca…
parthrohit22 Jul 27, 2026
8e2b3e9
feat(intelligence): add snapshot impact query (#173)
hardikuppal04 Jul 27, 2026
a5dec48
Merge pull request #225 from parthrohit22/chore/217-architecture-truth
parthrohit22 Jul 27, 2026
23ec44f
Merge branch 'dev' into fix/169-178-honest-recoverable-states
parthrohit22 Jul 27, 2026
053ea09
Merge pull request #226 from parthrohit22/fix/169-178-honest-recovera…
parthrohit22 Jul 27, 2026
0b54bc6
Merge branch 'dev' into feature/173-impact-query
parthrohit22 Jul 27, 2026
3b2f2f9
Merge pull request #229 from hardikuppal04/feature/173-impact-query
parthrohit22 Jul 27, 2026
c66d792
style(backend): format Python source with Ruff
hardikuppal04 Jul 27, 2026
38534e4
chore(ci): add backend Ruff and Mypy checks (#188)
hardikuppal04 Jul 27, 2026
7338922
style(backend): format rebased architecture source
hardikuppal04 Jul 27, 2026
c9e899d
style(backend): format rebased intelligence source
hardikuppal04 Jul 27, 2026
a83f959
Merge pull request #230 from hardikuppal04/chore/188-backend-static-a…
parthrohit22 Jul 27, 2026
fcd7d68
chore(intelligence): add capability registry golden gate
SHAURYAKSHARMA24 Jul 27, 2026
c29c6b4
fix(ci): keep contract drift check with API contracts
SHAURYAKSHARMA24 Jul 27, 2026
96ae171
fix(registry): reconcile change-impact capability
SHAURYAKSHARMA24 Jul 27, 2026
a440136
fix(registry): address review feedback
SHAURYAKSHARMA24 Jul 28, 2026
cfb70e6
feat: generate frontend API contracts from OpenAPI
SHAURYAKSHARMA24 Jul 27, 2026
39b3d59
fix(ci): secure generated API contract checks
SHAURYAKSHARMA24 Jul 27, 2026
b1086ce
chore(api): refresh generated contract after rebase
SHAURYAKSHARMA24 Jul 27, 2026
987ce27
fix(api): address contract review feedback
SHAURYAKSHARMA24 Jul 28, 2026
7bb0bf3
Merge pull request #227 from SHAURYAKSHARMA24/chore/208-capability-re…
parthrohit22 Jul 28, 2026
30cea00
Merge branch 'dev' into codex/feat/issue-114-openapi-contracts
parthrohit22 Jul 28, 2026
a38d7e1
Merge pull request #228 from SHAURYAKSHARMA24/codex/feat/issue-114-op…
parthrohit22 Jul 28, 2026
e301ffe
feat(ai): persist AI workspace conversation history
parthrohit22 Jul 28, 2026
5c3588e
fix(ai): satisfy mypy on conversation turn role literal
parthrohit22 Jul 28, 2026
950f170
fix(ai): regenerate frontend API contract for AiConversationResponse
parthrohit22 Jul 28, 2026
6271b01
fix(ai): address review - cascade delete, sequence uniqueness, load-e…
parthrohit22 Jul 28, 2026
17be001
fix(ai): shorten migration revision id to fit alembic_version varchar…
parthrohit22 Jul 28, 2026
39bb587
Stream analysis sources and enforce resource budgets
SHAURYAKSHARMA24 Jul 28, 2026
9ce06ce
fix(ai): drop legacy composite index before unique constraint in migr…
parthrohit22 Jul 28, 2026
6f5723c
Merge pull request #233 from SHAURYAKSHARMA24/chore/221-stream-analys…
parthrohit22 Jul 28, 2026
47c0d65
fix(ai): address P1/P2 merge blockers on conversation persistence
parthrohit22 Jul 28, 2026
c8d8b34
fix(ai): discard in-flight query answer when active repository changes
parthrohit22 Jul 28, 2026
d428959
Merge pull request #232 from parthrohit22/feat/231-ai-conversation-pe…
parthrohit22 Jul 28, 2026
ff227c6
feat(intelligence): extract lockfile pins, service interactions, and …
SHAURYAKSHARMA24 Jul 28, 2026
5e10ac7
fix(ci): apply Ruff formatting
SHAURYAKSHARMA24 Jul 29, 2026
5bb63ca
Merge pull request #234 from SHAURYAKSHARMA24/feature/209-extraction-…
parthrohit22 Jul 29, 2026
89ee75d
fix(frontend): open global search file results (#245)
SHAURYAKSHARMA24 Aug 3, 2026
9ad982e
fix(frontend): disclose notification preference status (#246)
SHAURYAKSHARMA24 Aug 3, 2026
04d8e2b
test(a11y): establish WCAG 2.2 AA baseline (#241)
SHAURYAKSHARMA24 Aug 3, 2026
9958572
feat(frontend): add non-visual architecture graph list view (#239) (#…
parthrohit22 Aug 7, 2026
4872df1
security(deps): bump dompurify, js-yaml, brace-expansion, undici (#257)
parthrohit22 Aug 7, 2026
7712c3d
fix(infra): fix backend Docker build cache invalidation and missing .…
parthrohit22 Aug 7, 2026
3cbe72e
chore(ci): add scheduled dependency-audit scan against dev (#264)
parthrohit22 Aug 7, 2026
086d9a5
chore(deps-dev): bump jsdom from 29.1.1 to 30.0.1 in /apps/frontend
dependabot[bot] Aug 7, 2026
8bc442a
Merge pull request #248 from Second-Origin/dependabot/npm_and_yarn/ap…
parthrohit22 Aug 8, 2026
b23f02d
chore(deps): bump pypdf from 6.14.2 to 6.15.0 in /apps/backend
dependabot[bot] Aug 7, 2026
ad6d656
Merge pull request #260 from Second-Origin/dependabot/pip/apps/backen…
parthrohit22 Aug 8, 2026
32f7bec
chore(deps): bump cryptography from 49.0.0 to 50.0.0 in /apps/backend
dependabot[bot] Aug 8, 2026
87ccb21
fix(deps): patch react-router advisory and retire its stale exception
parthrohit22 Aug 8, 2026
a7fe010
Merge pull request #267 from parthrohit22/fix/dependency-audit-stale-…
parthrohit22 Aug 8, 2026
b28b64c
Merge branch 'dev' into dependabot/pip/apps/backend/cryptography-50.0.0
parthrohit22 Aug 8, 2026
2563af9
chore(deps): group lockstep dependencies and ignore breaking majors
parthrohit22 Aug 8, 2026
f46184e
chore(deps): bump backend minor and patch versions
parthrohit22 Aug 8, 2026
aa9e75a
Merge pull request #254 from Second-Origin/dependabot/pip/apps/backen…
parthrohit22 Aug 8, 2026
2a3a507
Merge branch 'dev' into chore/dependabot-grouping-policy
parthrohit22 Aug 8, 2026
ee1a56b
Merge pull request #268 from parthrohit22/chore/dependabot-grouping-p…
parthrohit22 Aug 8, 2026
98c0ac8
Merge branch 'dev' into chore/backend-deps-266-rescue
parthrohit22 Aug 8, 2026
362c0eb
chore(deps): bump the frontend-minor-and-patch group
dependabot[bot] Aug 8, 2026
a83e692
chore(deps): bump framer-motion from 12.42.2 to 13.0.0 in /apps/frontend
dependabot[bot] Aug 8, 2026
9964ad0
Merge pull request #269 from parthrohit22/chore/backend-deps-266-rescue
parthrohit22 Aug 8, 2026
07aef70
chore(deps): bump websockets from 16.1 to 17.0.1 in /apps/backend
dependabot[bot] Aug 8, 2026
74489f3
Merge branch 'dev' into dependabot/npm_and_yarn/apps/frontend/dev/fro…
parthrohit22 Aug 8, 2026
ceb35b6
Merge pull request #276 from Second-Origin/dependabot/pip/apps/backen…
parthrohit22 Aug 8, 2026
6d0074d
Merge branch 'dev' into dependabot/npm_and_yarn/apps/frontend/dev/fro…
parthrohit22 Aug 8, 2026
fa3c132
Merge pull request #271 from Second-Origin/dependabot/npm_and_yarn/ap…
parthrohit22 Aug 8, 2026
e9c1984
Merge branch 'dev' into dependabot/npm_and_yarn/apps/frontend/dev/fra…
parthrohit22 Aug 8, 2026
4bc7797
chore(deps): bump react-dropzone from 19.1.1 to 20.0.0 in /apps/frontend
dependabot[bot] Aug 8, 2026
7af9e93
Merge pull request #272 from Second-Origin/dependabot/npm_and_yarn/ap…
parthrohit22 Aug 8, 2026
5b3927b
Merge branch 'dev' into dependabot/npm_and_yarn/apps/frontend/dev/rea…
parthrohit22 Aug 8, 2026
c500297
chore(deps-dev): bump @testing-library/jest-dom in /apps/frontend
dependabot[bot] Aug 8, 2026
39f1d60
Merge pull request #273 from Second-Origin/dependabot/npm_and_yarn/ap…
parthrohit22 Aug 8, 2026
22fa33a
Merge branch 'dev' into dependabot/npm_and_yarn/apps/frontend/dev/tes…
parthrohit22 Aug 8, 2026
91f20b3
Merge pull request #274 from Second-Origin/dependabot/npm_and_yarn/ap…
parthrohit22 Aug 8, 2026
beccc51
chore(deps): ignore pydantic-core and bump starlette to 1.4.1
parthrohit22 Aug 8, 2026
a5ab22c
chore(deps-dev): bump axe-core
dependabot[bot] Aug 8, 2026
9976081
Merge pull request #279 from Second-Origin/dependabot/npm_and_yarn/ap…
parthrohit22 Aug 8, 2026
e2c9f92
fix(security): scan the default branch on push to keep CodeQL current
parthrohit22 Aug 8, 2026
319870a
Merge pull request #280 from parthrohit22/fix/codeql-stale-default-br…
parthrohit22 Aug 8, 2026
cf352b6
security(core): harden tar extraction and cover archive path guards (…
parthrohit22 Aug 8, 2026
30f93aa
chore(deps-dev): bump the frontend-minor-and-patch group (#284)
dependabot[bot] Aug 10, 2026
e474cc2
chore(deps-dev): bump the backend-minor-and-patch group
dependabot[bot] Aug 10, 2026
9601635
feat(frontend): implement iteration 1 product design (#252)
parthrohit22 Aug 10, 2026
a97ea91
fix(frontend): meet primary action contrast requirements (#252)
parthrohit22 Aug 10, 2026
7cf9857
fix(frontend): restore prototype accessibility gate (#252)
parthrohit22 Aug 10, 2026
6249c02
Merge pull request #287 from parthrohit22/feat/252-iteration-1-frontend
parthrohit22 Aug 10, 2026
71b3283
chore(dev): remove monolithic compose launcher (#292)
parthrohit22 Aug 10, 2026
13da951
Merge pull request #293 from parthrohit22/chore/292-remove-compose-la…
parthrohit22 Aug 10, 2026
268e831
Merge pull request #286 from adity982/fix/235-repository-action-labels
adity982 Aug 11, 2026
02507f1
docs: RFC-0002 resolved — Repository Lineage identity design (#297)
parthrohit22 Aug 11, 2026
9a8c266
feat(frontend): group sidebar into Analysis/Assist, pin Settings, rew…
parthrohit22 Aug 10, 2026
a4e30fe
fix(frontend): meet WCAG AA contrast on Analysis/Assist section labels
parthrohit22 Aug 10, 2026
f6bff6f
feat(frontend): surface most recently analysed repository on the dash…
parthrohit22 Aug 10, 2026
11baa0f
fix(frontend): correct AI Workspace memory claims and restore Setting…
claude Aug 11, 2026
059fd15
Merge pull request #300 from Second-Origin/claude/pr-review-294-296-c…
parthrohit22 Aug 11, 2026
9100aa6
docs: correct stale claims, document conversation retention, fix brok…
claude Aug 11, 2026
3654019
docs: complete the endpoint surface, disclose retention to testers, i…
claude Aug 11, 2026
b39f614
feat(frontend): show the analysed revision on the repository detail page
claude Aug 12, 2026
9031d50
Merge pull request #302 from Second-Origin/claude/pr-review-294-296-c…
parthrohit22 Aug 12, 2026
412dcc1
docs: add discord community link to readme
parthrohit22 Aug 13, 2026
d905f1e
docs: correct roadmap filename in contributing and pr template
parthrohit22 Aug 13, 2026
edfa341
docs: remove private roadmap references, add Discord and RFC-0002 poi…
parthrohit22 Aug 13, 2026
90881ae
docs: correct stale symlink-risk claim in System Overview
parthrohit22 Aug 13, 2026
496e827
fix(frontend): bump pinned nanoid override to 3.3.18 (GHSA-2v37-7h3g-…
parthrohit22 Aug 13, 2026
278990d
ci: bring release validation to CI parity, fix stale CodeQL comment
parthrohit22 Aug 13, 2026
a4a28d8
feat(auth): add verified account deletion across database, storage, a…
parthrohit22 Aug 13, 2026
799e235
fix(backend): apply ruff formatting to ai_provider_config.py
parthrohit22 Aug 13, 2026
c2cf29b
docs+chore: drop prototype/pre-alpha framing, rename test:prototype t…
parthrohit22 Aug 13, 2026
0c25f98
Merge pull request #303 from Second-Origin/feature/290-account-deletion
parthrohit22 Aug 13, 2026
00953c4
ci: fix stale dependabot.yml comment
parthrohit22 Aug 13, 2026
4ca3180
fix(backend): apply sqlite anon-fk workaround to repositories in 0010
parthrohit22 Aug 13, 2026
29528ac
chore(deps): bump the frontend-minor-and-patch group across 1 directo…
dependabot[bot] Aug 17, 2026
e761a47
chore(deps): bump the backend-minor-and-patch group across 1 director…
dependabot[bot] Aug 17, 2026
3b72a02
Merge pull request #308 from Second-Origin/dependabot/npm_and_yarn/ap…
parthrohit22 Aug 18, 2026
1a29544
Merge branch 'dev' into dependabot/pip/apps/backend/dev/backend-minor…
parthrohit22 Aug 18, 2026
4e18842
Merge pull request #309 from Second-Origin/dependabot/pip/apps/backen…
parthrohit22 Aug 18, 2026
e4609f3
fix(frontend): resolve WCAG AA contrast and accessible-name defects (…
parthrohit22 Aug 18, 2026
e00901d
docs: align public documentation with current product truth
parthrohit22 Aug 18, 2026
280f567
docs(a11y): record partial manual validation close-out
parthrohit22 Aug 18, 2026
1e1494d
docs(a11y): record maintainer VoiceOver confirmation
parthrohit22 Aug 18, 2026
373306d
docs(a11y): close out maintainer manual validation
parthrohit22 Aug 19, 2026
459564a
ops(db): rehearse migrations and document rollback
SHAURYAKSHARMA24 Aug 19, 2026
0301ece
ci(db): rehearse migrations on PostgreSQL
SHAURYAKSHARMA24 Aug 19, 2026
fa06679
fix(db): harden migration rehearsal cleanup and close review gaps
parthrohit22 Aug 19, 2026
442541d
fix(db): fail migration rehearsal on cleanup errors
parthrohit22 Aug 20, 2026
97b8206
docs(core): define repository lineage migration plan (#299)
SHAURYAKSHARMA24 Aug 18, 2026
6e28c95
docs(core): reconcile RFC-0002 with lineage migration plan
SHAURYAKSHARMA24 Aug 18, 2026
00e836d
docs(lineage): rebase migration plan and remove review-state material
SHAURYAKSHARMA24 Aug 19, 2026
30489c9
docs(lineage): record owner approval
parthrohit22 Aug 20, 2026
5f39460
feat(frontend): implement refreshed product experience
parthrohit22 Aug 22, 2026
dc92884
fix(frontend): restore accessible brand contrast
parthrohit22 Aug 22, 2026
f94de17
chore(deps): bump the frontend-minor-and-patch group
dependabot[bot] Aug 24, 2026
ddbfeea
chore(deps): bump the backend-minor-and-patch group
dependabot[bot] Aug 24, 2026
acb1933
chore(deps): bump argon2-cffi-bindings in /apps/backend
dependabot[bot] Aug 24, 2026
27ee983
fix(backend): serve the built frontend from FastAPI for single-servic…
parthrohit22 Aug 25, 2026
d7881c5
chore(deploy): add a Render Blueprint and Dockerfile for partha.uk
parthrohit22 Aug 25, 2026
8f62931
feat(auth): add an invite-gated registration flow
parthrohit22 Aug 25, 2026
c086fc1
feat(frontend,backend): add landing page waitlist signup capture
parthrohit22 Aug 25, 2026
8b2fca0
feat(frontend): add theme toggle and route the app through dark-mode …
parthrohit22 Aug 25, 2026
660410d
fix(frontend): stop presenting diagnostic counts as a severity-styled…
parthrohit22 Aug 25, 2026
aed796a
fix(frontend): bound Engineering Review findings rendering to stay re…
parthrohit22 Aug 25, 2026
6fe23b0
fix(analysis): exclude test/fixture files from auth explanation and A…
parthrohit22 Aug 25, 2026
1b5a57b
Merge pull request #350 from Second-Origin/dependabot/npm_and_yarn/ap…
parthrohit22 Aug 25, 2026
cbd741f
Merge pull request #351 from Second-Origin/dependabot/pip/apps/backen…
parthrohit22 Aug 25, 2026
62f639c
Merge pull request #353 from Second-Origin/dependabot/pip/apps/backen…
parthrohit22 Aug 25, 2026
b7cdbe3
feat(frontend): give the landing page its own dark mode, remove it fr…
parthrohit22 Aug 25, 2026
15eefa8
fix(frontend): match the theme switcher to the actual Figma reference
parthrohit22 Aug 25, 2026
c93f014
fix(frontend): remove the duplicate theme switcher baked into the foo…
parthrohit22 Aug 26, 2026
c4e9674
fix(backend,frontend): paginate the Engineering Review findings API (…
parthrohit22 Aug 26, 2026
90ec124
test(frontend): raise coverage on the API client/service layer and co…
parthrohit22 Aug 26, 2026
6313420
test(backend): cover analysis-job and snapshot cascade in account del…
parthrohit22 Aug 26, 2026
b973213
test(backend): close remaining resource_budget/source_stream gaps (#3…
parthrohit22 Aug 26, 2026
99ed252
ops(ci): publish JUnit test results and coverage reports as CI artifa…
parthrohit22 Aug 26, 2026
7fb1909
security(backend): reject symlinks when parsing a GitHub-imported rep…
parthrohit22 Aug 26, 2026
1d92ce0
test(backend): cover remaining archive/GitHub-import validation bound…
parthrohit22 Aug 26, 2026
2694f5c
test(frontend): cover RepositoriesPage loading, empty, and error stat…
parthrohit22 Aug 26, 2026
b23be64
test(frontend): cover the mobile navigation drawer's behavior (#317) …
parthrohit22 Aug 26, 2026
5d8e12d
test(frontend): cover the upload form and GitHub import form (#312) (…
parthrohit22 Aug 26, 2026
37788ce
test(frontend): cover Settings sections, AI provider config, and hone…
parthrohit22 Aug 26, 2026
e0e2df2
ops(backend): add a rehearsed backup/restore drill on disposable targ…
parthrohit22 Aug 26, 2026
0d34c2e
chore(frontend): remove landing assets superseded by the full-canvas …
parthrohit22 Aug 26, 2026
886c9f0
feat(ai): drive provider setup UI from a single capability registry (…
parthrohit22 Aug 26, 2026
73fd974
docs: consolidate local development, testing, and troubleshooting (#3…
parthrohit22 Aug 26, 2026
248229b
feat(backend): implement Repository Lineage per RFC-0002 (#299) (#372)
parthrohit22 Aug 28, 2026
4cf8142
feat(auth): add Google/GitHub OAuth sign-in, credentials deferred (#2…
parthrohit22 Aug 28, 2026
37dd2b5
feat(auth): replace invite-code registration with an admin-managed em…
parthrohit22 Aug 29, 2026
5b70997
fix(auth): dev-only bypass + first-user-becomes-owner bootstrap for t…
parthrohit22 Sep 1, 2026
25f5803
feat(frontend): landing page CTA goes straight to login/register (#386)
parthrohit22 Sep 1, 2026
7e52cf8
feat(marketing): free static marketing site reusing the real landing …
parthrohit22 Sep 1, 2026
f2afb87
security(frontend): bump browserslist to 4.28.7, closes two high advi…
parthrohit22 Sep 3, 2026
aa22998
fix(backend): stop bare builtin/global calls from becoming Unresolved…
parthrohit22 Sep 3, 2026
c646e47
fix(backend): drop macOS AppleDouble artifacts on upload and GitHub i…
parthrohit22 Sep 3, 2026
33ad382
docs(readme): correct drifted repository lineage claims (#401) (#402)
parthrohit22 Sep 4, 2026
6cd888f
fix(frontend): add a root HydrateFallback to silence the router warni…
parthrohit22 Sep 4, 2026
0ee9724
chore(backend): widen ruff lint/format scope to tests/ (#405) (#406)
parthrohit22 Sep 4, 2026
c7d174a
feat(backend): Repository Lineage read API (#400) (#407)
parthrohit22 Sep 4, 2026
bc09cd6
feat(backend): extract HTTP call origins from f-strings and template …
parthrohit22 Sep 4, 2026
8b11f60
feat(frontend): Repository Lineage History UI (#400) (#411)
parthrohit22 Sep 4, 2026
ac0c950
chore(deps): bump the frontend-minor-and-patch group across 1 directo…
dependabot[bot] Sep 4, 2026
8f09614
fix(backend): correct architecture node classification and module gro…
parthrohit22 Sep 4, 2026
e1a6640
chore(scale): introduce the W2 queue and control-plane boundary (#376)
SHAURYAKSHARMA24 Sep 4, 2026
34ef105
fix(backend): stop stdlib/declared-dependency imports from becoming f…
parthrohit22 Sep 4, 2026
4d10b94
fix(backend): cap Ollama to one in-flight request at a time (#414) (#…
parthrohit22 Sep 5, 2026
953084c
fix: centered landing modal, honest unresolved-relationship count, Ol…
parthrohit22 Sep 9, 2026
b1df39f
fix(backend): stop the Architecture view flagging external-code refer…
parthrohit22 Sep 9, 2026
29152f6
fix(marketing): wire every footer link to real content (#424)
parthrohit22 Sep 9, 2026
ce159e4
docs: reflect the unresolved-relationship split and Ollama timeout (#…
parthrohit22 Sep 9, 2026
fdcda2c
feat(marketing): responsive landing page for phones and tablets
parthrohit22 Sep 9, 2026
3dd5051
Merge pull request #426 from Second-Origin/feat/marketing-responsive-…
parthrohit22 Sep 9, 2026
6a4d4cb
feat(marketing): match the mobile landing layout to the authored design
parthrohit22 Sep 9, 2026
8596085
feat(marketing): align the landing tokens and mobile layout to Founda…
parthrohit22 Sep 9, 2026
d9f61e6
Merge pull request #427 from Second-Origin/feat/marketing-mobile-bran…
parthrohit22 Sep 9, 2026
54094cf
feat(marketing): use the designer's illustration assets in the mobile…
parthrohit22 Sep 9, 2026
64841e2
Merge pull request #428 from Second-Origin/feat/marketing-mobile-desi…
parthrohit22 Sep 9, 2026
a41180a
docs: correct lineage capability status + document same-site session;…
parthrohit22 Sep 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
25 changes: 25 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
.git
**/.venv
**/__pycache__
**/*.pyc
**/.pytest_cache
**/.mypy_cache
**/.ruff_cache
**/*.egg-info
apps/backend/.local
apps/backend/local
apps/backend/tests
apps/backend/coverage
apps/backend/htmlcov
apps/backend/.coverage
**/.env
**/.env.*
!**/.env.example
node_modules
apps/frontend/node_modules
apps/frontend/dist
apps/frontend/coverage
apps/frontend/test-results
apps/frontend/e2e-report
.DS_Store
.claude
15 changes: 10 additions & 5 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,14 @@ REDIS_URL=redis://localhost:6379/0
STORAGE_PATH=./apps/backend/.local/storage
CORS_ORIGINS=http://localhost:5173,http://127.0.0.1:5173
AUTO_CREATE_TABLES=true
ANALYSIS_MAX_REPOSITORY_SOURCE_BYTES=1073741824
ANALYSIS_MAX_PROCESS_RSS_BYTES=2147483648
ANALYSIS_MAX_DURATION_SECONDS=1800

# Docker Compose PostgreSQL defaults. Compose consumes these values; the local
# backend .env example uses SQLite so direct local startup works without services.
POSTGRES_USER=partha
POSTGRES_PASSWORD=partha
POSTGRES_DB=partha
# AI provider outbound egress policy. Hosted is the safe default: built-in
# cloud providers keep their fixed HTTPS origins and no tenant-configurable
# endpoint is enabled. To use a local/internal Ollama endpoint, explicitly set
# self_hosted and provide both exact administrator-owned allowlists below.
AI_EGRESS_MODE=hosted
AI_EGRESS_ALLOWED_BASE_URLS=
AI_EGRESS_ALLOWED_CIDRS=
33 changes: 33 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# PARTHA .gitattributes
# Normalise line endings and keep binary assets safe across platforms.
# Generated lockfiles (package-lock.json) are large but text; Git/Linguist
# already treats them as generated, so we keep them as text for sane diffs.

# Default: normalise to LF on commit, convert to native on checkout.
* text=auto eol=lf

# Lockfiles and dependency manifests are text (large diffs, not binary).
*.lock text
package-lock.json text
pnpm-lock.yaml text
requirements*.txt text

# Hand-authored SVG stays text (editable in-repo).
*.svg text

# Binary assets must never be line-ending-converted.
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.webp binary
*.ico binary
*.woff binary
*.woff2 binary
*.ttf binary
*.otf binary
*.eot binary
*.zip binary
*.gz binary
*.tar binary
*.pdf binary
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @parthrohit22
10 changes: 8 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@ description: Report broken or incorrect behavior in PARTHA.
title: "bug: "
labels: [bug]
body:
- type: markdown
attributes:
value: |
Do not report security vulnerabilities here. Public issues are the wrong
channel — disclose them privately as described in
[SECURITY.md](https://github.com/Second-Origin/PARTHA/blob/dev/SECURITY.md).
- type: textarea
id: summary
attributes:
Expand Down Expand Up @@ -50,9 +56,9 @@ body:
id: evidence
attributes:
label: Evidence
description: Logs, screenshots, response payloads, or audit references.
description: Logs, screenshots, or response payloads. Do not include secrets, credentials, or private repository contents.
- type: textarea
id: environment
attributes:
label: Environment
description: Browser, OS, Node/Python versions, Docker availability, branch/commit.
description: Browser, OS, Node/Python versions, and branch/commit.
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/engineering_task.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: Engineering Task
description: Track technical debt, refactors, tests, infrastructure, or audit backlog work.
description: Track technical debt, refactors, tests, or infrastructure work.
title: "chore: "
labels: [engineering]
body:
Expand All @@ -21,7 +21,7 @@ body:
id: references
attributes:
label: References
description: Link audit rows, files, logs, or related issues.
description: Link files, logs, or related issues.
- type: textarea
id: implementation
attributes:
Expand Down
139 changes: 139 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@
# Dependabot configuration for the PARTHA monorepo.
#
# Part of the dependency, secret, and code scanning baseline. Branch protection
# is already enabled on dev/main; Dependabot doesn't produce a status check of
# its own to require -- the PRs it opens go through the normal CI gate (ci.yml)
# like any other PR.
#
# Two ecosystems, one per app: npm for the React/TS frontend, pip for the
# FastAPI backend.
#
# Grouping policy
# ---------------
# The default "one PR per package" behaviour produces PRs that cannot go green,
# because several of our dependencies are only installable in lockstep:
#
# * `pydantic` pins `pydantic-core` exactly. Bumping the core alone yields
# `ResolutionImpossible` at `pip install`, before a single test runs.
# * `react` and `react-dom` must move together, and both are peer dependencies
# of `@testing-library/react` and `@xyflow/react`. Bumping either alone
# yields an ERESOLVE failure at `npm ci`.
#
# Those PRs are not review load, they are noise: no reviewer action can make
# them pass. The groups below force each cohort into a single PR so the
# resolver has a consistent set to work with, and the lockstep majors are
# ignored outright so they are raised as deliberate migration work instead of
# an unmergeable weekly bump.
version: 2

updates:
# ---------------------------------------------------------------------------
# Frontend — npm (apps/frontend)
# ---------------------------------------------------------------------------
- package-ecosystem: npm
directory: /apps/frontend
# `dev` is the real trunk and is now the repository default branch, so both
# version updates and security updates land here. CONTRIBUTING.md requires
# all PRs to target `dev`.
target-branch: dev
schedule:
interval: weekly
day: monday
time: "06:00"
timezone: Etc/UTC
open-pull-requests-limit: 5
commit-message:
# Produces `chore(deps): ...` — Conventional Commits, per CONTRIBUTING.md.
prefix: chore
include: scope
groups:
# React and everything that peer-depends on it. Keeping these in one PR is
# what makes a React major reviewable at all: split across PRs, each half
# fails `npm ci` and none of them can be merged first.
react-ecosystem:
patterns:
- react
- react-dom
- "@types/react"
- "@types/react-dom"
- "@testing-library/react"
update-types:
- minor
- patch
frontend-minor-and-patch:
applies-to: version-updates
update-types:
- minor
- patch
ignore:
# React 19 is a coordinated migration, not a dependency bump: it moves
# react + react-dom + both `@types` packages and requires a
# v19-compatible `@testing-library/react`, with `@xyflow/react`,
# `framer-motion` and `react-dropzone` all re-verified. Dependabot raised
# it as two independent PRs (#249, #203); neither could install, so both
# sat red for twelve days. Track it as an issue and drop this ignore when
# the migration is scheduled.
- dependency-name: react
update-types: ["version-update:semver-major"]
- dependency-name: react-dom
update-types: ["version-update:semver-major"]
- dependency-name: "@types/react"
update-types: ["version-update:semver-major"]
- dependency-name: "@types/react-dom"
update-types: ["version-update:semver-major"]
# lucide-react v1 removed every brand icon, including `Github`, which
# PARTHA imports in four components. The bump therefore requires an icon
# migration in the same change and cannot be applied mechanically (#250).
- dependency-name: lucide-react
update-types: ["version-update:semver-major"]

# ---------------------------------------------------------------------------
# Backend — pip (apps/backend)
# ---------------------------------------------------------------------------
- package-ecosystem: pip
directory: /apps/backend
target-branch: dev
schedule:
interval: weekly
day: monday
time: "06:00"
timezone: Etc/UTC
open-pull-requests-limit: 5
commit-message:
prefix: chore
include: scope
groups:
# `pydantic` pins `pydantic-core` to an exact version, so the two must
# appear in the same PR or the group is uninstallable. This is what broke
# #266: `pydantic-core` moved to 2.47.0 while `pydantic` stayed at 2.13.4,
# which requires `pydantic-core==2.46.4`.
pydantic-stack:
patterns:
- pydantic
- pydantic-core
- pydantic_core
- pydantic-settings
update-types:
- minor
- patch
backend-minor-and-patch:
applies-to: version-updates
update-types:
- minor
- patch
ignore:
# `pydantic-core` is not a direct dependency: pyproject.toml declares
# `pydantic`, and requirements.txt is `pip freeze` output, so the core
# only appears there as a resolved transitive pin. `pydantic` pins it to
# an exact version, so it has no independent upgrade path — the correct
# version is always whatever the installed `pydantic` asks for.
#
# Grouping alone does not stop this. A group only forms when one of its
# members actually has an update; with `pydantic` already at the latest
# release, a lone `pydantic-core` bump falls through to the catch-all
# `backend-minor-and-patch` group and breaks the build exactly as before
# (#266, then #277 again after the groups landed). Ignoring it outright
# is the only thing that holds: it now moves only when `pydantic` moves
# and drags it along.
- dependency-name: pydantic-core
- dependency-name: pydantic_core
83 changes: 60 additions & 23 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,75 @@
## Summary

-
<!-- What does this PR do, and why? -->

## Type
## Linked issue

- [ ] Bug fix
- [ ] Feature
- [ ] Engineering task
- [ ] Documentation
- [ ] Security
<!-- Use "Closes #123" ONLY if this PR fully satisfies every acceptance criterion.
Otherwise use "Related to #123", "Part of #123", or "Follow-up to #123". -->

## Verification
Closes #

- [ ] Frontend build/lint run where relevant
- [ ] Backend tests run where relevant
- [ ] Docker Compose config/runtime readiness checked where relevant
- [ ] Release/deployment docs updated where relevant
- [ ] Manual verification described below
## Scope

Commands/results:
<!-- MERGE GATE. Every PR must advance a tracked GitHub issue or an accepted
RFC, with accepted evidence. If this PR does not trace to either, it is
out of scope and should not be merged. Breadth additions (new surfaces,
new languages) that do not deepen the existing moat need explicit owner
justification in "Scope changes". -->

- Issue or RFC this advances:
- Why this is in scope (not a "quick useful surface" or breadth addition):
- Accepted evidence it is real (test/usage/repo state, not intent):

## What changed

<!-- The main changes, by area (backend, frontend, docs, infra). -->

## Acceptance criteria completed

<!-- List each acceptance criterion from the issue and whether it is complete.
If one was dropped or changed, say so here — not only in a review comment. -->

## Testing performed

<!-- Exact commands run and their results. Do not claim a check you did not run.
If you could not run something locally, say so and explain why. -->

```text

```

## Risk and Rollback
## Screenshots

<!-- Required for any visible UI change. Write "Not applicable" if there is none. -->

## Security and data considerations

<!-- Auth, owner scoping, secrets, logging, untrusted input, migrations, data loss.
Write "None" if genuinely none. Never include an exploit or proof of concept —
report vulnerabilities privately via SECURITY.md. -->

## Dependencies and blocked work

<!-- "Depends on #<pr-number>" for stacked work, plus the required merge order.
Link any follow-up issues or PRs. Write "None" if none. -->

## Scope changes or remaining work

- Risk level: Low / Medium / High
- Rollback plan:
<!-- Anything deferred, descoped, or discovered mid-implementation. Write "None" if none. -->

## Checklist
## Contributor checklist

- [ ] No unrelated behavior changes
- [ ] No secrets, local env files, generated build artifacts, or local databases committed
- [ ] API behavior documented if changed
- [ ] UI states covered for loading, empty, error, and success where relevant
- [ ] Security/privacy impact considered
- [ ] This PR targets `dev`
- [ ] I claimed the issue and had it assigned or acknowledged before starting substantial work
- [ ] The branch was created from an up-to-date `upstream/dev`
- [ ] The branch is rebased on the latest `upstream/dev`
- [ ] This PR addresses one clearly scoped issue
- [ ] This PR is in scope: it advances a tracked issue or an accepted RFC (Scope section filled)
- [ ] Every acceptance criterion I claim as complete is actually complete
- [ ] Relevant tests pass
- [ ] Documentation is updated for any user-visible change
- [ ] No secrets, credentials, local env files, or generated artifacts are included
- [ ] No unrelated files were changed
- [ ] Closing syntax (`Closes`) is used only because the issue is fully resolved
- [ ] Dependencies and follow-up work are linked
Loading
Loading