Skip to content

mount filtering - #199

Merged
luke-lombardi merged 1 commit into
mainfrom
ll/mount-filtering
Apr 26, 2026
Merged

mount filtering#199
luke-lombardi merged 1 commit into
mainfrom
ll/mount-filtering

Conversation

@luke-lombardi

@luke-lombardi luke-lombardi commented Apr 26, 2026

Copy link
Copy Markdown
Contributor

Summary by cubic

Adds mount-level filtering to hide selected top-level roots and enforce access blocking. Extends source view APIs with optional filename templating and cache TTL, wired through the gateway and updated protos.

  • New Features

    • Mount/FS: new --hide-root flag to hide specific top-level roots; filesystem blocks list/read/write and omits them from /. Config via HiddenRoots in pkg/filesystem; tests added.
    • Source Views API: filename_format and cache_ttl supported in create/update, plus updatable output_format and file_ext. Plumbed through pkg/api/v1/filesystem.go, pkg/gateway/services/sources_queries.go, and proto/sources.proto/sources.pb.go (cache_ttl=0 = always live).
  • Refactors

    • Removed outdated hack/test_youtube_recipe.py.

Written for commit e84b8d3. Summary will update on new commits.

@luke-lombardi
luke-lombardi merged commit d52f7f7 into main Apr 26, 2026
3 checks passed
@luke-lombardi
luke-lombardi deleted the ll/mount-filtering branch April 26, 2026 15:33
@github-actions

Copy link
Copy Markdown

✅ Integration Tests PASSED

Gateway: https://api.airstore.ai
Query path: /sources/gmail/unread-emails
Timestamp: 2026-04-26T15:34:12Z

I/O Smoke Tests

Test Status Latency Bytes
list_sources PASS 223ms -
list_gmail PASS 280ms -
list_query_path PASS 500ms -
read_file PASS 418ms 1,724
stat_file PASS 148ms 69,626

Compression A/B Tests

Metric Value
Files tested 8
Total raw bytes 73,033
Total strip bytes 46,330
Total raw tokens 41,729
Total strip tokens 27,530
Tokens saved 14,199
Byte reduction 36%
Token reduction 34%
Min threshold 10%
Cache consistent Yes
Per-file results
File Raw B Strip B Raw Tok Strip Tok Tok Saved Red% Raw ms Strip ms
2024-10-15_Harris-Walz_Organizing_Tea... 2,337 2,305 976 967 9 1% 273ms 162ms
2024-10-15_Stephen_King_via_KamalaHar... 2,904 2,866 1,116 1,103 13 1% 262ms 164ms
2025-07-17_KAYAK_How_to_have_everythi... 1,724 1,670 1,220 1,204 16 3% 166ms 171ms
2025-07-17_Alamo_Drafthouse_Cinema_Th... 19,047 18,224 12,228 11,704 524 4% 309ms 175ms
2025-07-17_Alamo_Drafthouse_Cinema_Th... 18,978 18,155 12,105 11,578 527 4% 315ms 199ms
2024-10-15_Knut_at_Sanity_Join_us_tom... 1,272 726 504 209 295 42% 310ms 174ms
2025-07-17_Lindsay_Stanley_TODAY_Conf... 1,876 1,049 657 268 389 44% 290ms 158ms
2025-07-17_NORDSTROM_RACK_FLASH_Travi... 24,895 1,335 12,923 497 12,426 94% 368ms 164ms

Charts

Overall Compression
Raw vs Compressed Bytes
Token Comparison
Reduction by File
Read Latency
I/O Latency

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants