Repository navigation
Releases: project-tech4dev/sangam
Releases · project-tech4dev/sangam
Release list
Sangam 0.1.1
What's Changed
- ci: coverage bar to 75% (M0), and the plan to reach it by @siddhant3030 in #274
- test(backend): coverage 60% → 94%, backend floor at 75% (M1+M2) by @siddhant3030 in #275
- test(frontend): component tests, coverage 1% → 97%, frontend gates at 75% (M3+M4) by @siddhant3030 in #276
- perf(workspace): Funder Match and RFP Watch open with one call by @siddhant3030 in #284
- chore(db): pool limits, checkpointer DDL out of boot, one permission table (stacked on #284) by @siddhant3030 in #285
- chore(ask): hide the attach and voice composer stubs by @apekshagangurde in #287
- docs(plan): Sangam Pitch fills in the funder's form by @siddhant3030 in #288
- feat(proposals): fill the funder's form from the written parts, backend (M1, stacked on #288) by @siddhant3030 in #289
- feat(proposals): Make a case step with a secondary research brief (stacked on #289) by @siddhant3030 in #291
- feat(proposals): download in the funder's form, filled in one call, its report, step 2 fixes, and Word reading (M2) by @siddhant3030 in #293
- test(ingest): stop DoneReport's onCounts assertions racing the effect by @siddhant3030 in #296
- feat(home): partner logos for NoDe, SeSTA and FFRH; drop Bridgespan by @vinod-rajasekaran in #295
- feat(tracing): name the caller and their organisations on every chat trace by @siddhant3030 in #297
- fix(pitch): confirm the funder's form upload, and stop NUL bytes failing it by @siddhant3030 in #298
- perf(search): check a search's hits at once (Pitch research M1) by @siddhant3030 in #299
- feat(pitch): a supervisor launches researchers at once, and the card lists them (M2) by @siddhant3030 in #300
- chore(release): Sangam 0.1.1 by @siddhant3030 in #302
Full Changelog: v0.1.0...v0.1.1
Sangam 0.1.0
What's Changed
- Per-environment DB config, external Postgres support, migration runner by @siddhant3030 in #32
- Vercel deploy readiness: build fix, preview-safe CORS, deployment guide by @siddhant3030 in #33
- New files by @siddhant3030 in #50
- docs: make CLAUDE.md usable for a cold start by @siddhant3030 in #51
- Restructure backend and frontend for scale by @siddhant3030 in #52
- Feat/langfuse detailed tracing by @siddhant3030 in #53
- Safe text-to-SQL agent: the model writes the query, the database refuses the rest by @siddhant3030 in #54
- The v3 data model, as ten additive migrations by @siddhant3030 in #57
- Sangam Import: discover, match and import funder data by @siddhant3030 in #58
- docs: feature plans (prototype v1, data model v3) and data platform architecture spec for review by @vinod-rajasekaran in #55
- feat(frontend): add shadcn/ui and a new home page by @apekshagangurde in #60
- Supabase Google sign-in by @apekshagangurde in #64
- fix(dev): stop the frontend container serving stale node_modules by @vinod-rajasekaran in #63
- Read Supabase auth vars from the root .env by @apekshagangurde in #68
- fix(dev): install frontend deps when the manifests change, not on a flag by @siddhant3030 in #69
- chore(deploy): add the workflow that will deploy on a merge to master by @siddhant3030 in #71
- chore(deploy): deploy only on a merge to master by @siddhant3030 in #72
- chore(deploy): name the Vercel projects instead of passing opaque ids by @siddhant3030 in #76
- fix(backend): lock pypdf, which production was missing by @siddhant3030 in #77
- docs: rewrite the README as the project's front door by @siddhant3030 in #78
- perf(frontend): charge only /ask and /import for the chat runtime by @siddhant3030 in #79
- Document storage: an archive for what we fetch, a vault for what orgs upload by @siddhant3030 in #61
- Sangam Import: the agent architecture, and the funder/NGO split it carries by @siddhant3030 in #82
- feat(ingest): say exactly what we want pulled, produced and written by @siddhant3030 in #84
- feat(ingest): push org data the way funder data goes by @siddhant3030 in #85
- feat(frontend): Phase 1 — a public Ask preview, one navbar everywhere, a tighter design system by @vinod-rajasekaran in #86
- docs(plan): the UI roadmap after Phase 1 by @vinod-rajasekaran in #87
- feat(ingest): a standing home for funder eligibility, and the calls it attaches to by @siddhant3030 in #89
- feat(ask): one trace, one task, and a source for every row by @siddhant3030 in #91
- docs(features-plans): authorization plan — roles and RLS by @vinod-rajasekaran in #74
- feat(auth): Supabase sign-in, requests run as the caller, table grants and RLS by @apekshagangurde in #92
- feat(settings): settings page, /api/me, and org member management for admins and staff by @apekshagangurde in #97
- feat(taxonomy): theme taxonomy in tags, cross-references in tag_links by @siddhant3030 in #98
- docs(plan): funder model consolidation, spend domains, staff-only CSR sources by @vinod-rajasekaran in #99
- feat(taxonomy): Environment and Others domains, and no Draft labels by @siddhant3030 in #101
- feat(funders): consolidate nine funder tables into five (plan B) by @siddhant3030 in #103
- feat(import): staff-only source workbooks — private bucket, read_source_rows, staff-last lock by @siddhant3030 in #105
- ci(deploy): deploy only when run by hand, never on a merge to master by @siddhant3030 in #106
- docs(design): Sangam Design System v2, and keep it in step with every UI PR by @vinod-rajasekaran in #107
- fix(import): use the shared corner tokens instead of inline 8/10px by @vinod-rajasekaran in #108
- fix(import): check staff figures against their cell; one rule for money units by @vinod-rajasekaran in #113
- docs(plan): CSO model consolidation, evidence tiers, registry access and prior research by @vinod-rajasekaran in #102
- feat(cso): M1 — CSO facts get a home and an evidence tier (0033) by @siddhant3030 in #109
- feat(cso): M2 — grant money lives only in funder_activity (0034) by @siddhant3030 in #110
- feat(import): M3 — staff registry checks and the credential skill by @siddhant3030 in #111
- feat(import): M4 — path-scoped aggregators, pinned prior research, private-address egress block by @siddhant3030 in #112
- feat(import): pick staff workbooks from Storage, confirmed by staff (HITL) by @siddhant3030 in #117
- docs(plan): Import updates what is clearly the same, asks about the rest by @siddhant3030 in #119
- feat(import): update what is clearly the same, ask about the rest (M1 backend) by @siddhant3030 in #120
- fix(ask): collapsible "Recent chats"; sidebar styles move to classes by @vinod-rajasekaran in #122
- feat(ask): Use Cases in the sidebar, a question-first new chat, Lucide icons by @vinod-rajasekaran in #124
- feat(ask): reopening a past chat shows its messages, from any browser (#123) by @siddhant3030 in #125
- feat(import): coverage report with a chart, confirm every write, stop and start over by @siddhant3030 in #127
- Guided Import: Start → Working → Review → Done, and its own page by @siddhant3030 in #130
- Import: pin the safeguards from the security review by @siddhant3030 in #131
- Model tiers: Opus reasons, Sonnet researches, Haiku formats by @siddhant3030 in #133
- Import: fallbacks, a reading budget, escalation on a failed save, a rubric and cheaper summaries by @siddhant3030 in #134
- Import for every role (A): private sources stay out of briefs; tools can see the caller by @siddhant3030 in #136
- Import for every role, step B: open Import by role by @siddhant3030 in #137
- Import for every role, step C: read an organisation's Doc Vault before the web by @siddhant3030 in #138
- Import D: who saved what, and staff undo and delete by @siddhant3030 in #139
- Import: choose where Sangam reads from, before anything is read by @siddhant3030 in #141
- Sangam Scout: Import as one chat thread, and staff can read any org's Doc Vault by @siddhant3030 in #144
- docs: design system sync for Sangam Scout by @siddhant3030 in #146
- perf(deploy): run both Vercel functions in Mumbai (bom1), beside Supabase — 1/6 by @siddhant3030 in #148
- feat(ask): funder matching under match-v1 — compare_fit scores an org against funders in one call by @siddhant3030 in #100
- feat(match): staff, stewards and org admins run and save a funder match by @siddhant3030 in #142
- feat(match): the Funder Match page, with Rerun match by @siddhant3030 in #150
- feat(ui): one list pattern for list pages by @siddhant3030 in #151
- feat(match): Funder Match on the list pattern (prototype v40) by @siddhant3030 in #152
- feat(proposals): the Proposals screens and steps 1–2, kept in the browser by @siddhant3030 in htt...