Skip to content

fix: cross-platform compatibility, config deep merge, and pipeline ro… - #160

Merged
ASuresh0524 merged 4 commits into
StarTrail-org:mainfrom
smartworldarafath:fix/pipeline-and-platform-bugs
Sep 27, 2026
Merged

ASuresh0524 merged 4 commits into
StarTrail-org:mainfrom
smartworldarafath:fix/pipeline-and-platform-bugs

Conversation

@smartworldarafath

Copy link
Copy Markdown
Contributor

…bustness

  • pipelines: use url2pathname for Windows file:// paths in _department_of
  • pipelines: use atomic replace for image tiles.json and safely close mmap handles
  • sources/local: standardize to RFC 8089 as_uri() format for file URLs
  • config: deep merge nested sections in load_config, enforce utf-8, and support backslashes
  • sources/web: specify utf-8 encoding for urls_file reading
  • render: forward extract_text for local HTML files in pixelshot CLI
  • sources/kiwix: cross-platform process termination fallback for Windows in _kill_proc
  • chunk: fix Windows shard_dir trailing slash parsing, ensure PNG format in fast path, and use atomic write
  • index: clamp nlist to vector count in build_faiss to prevent crash on small datasets
  • web: safely handle malformed URI components in agent-server and chat route
  • tests: unblock department build tests in core test suite and add regression tests

…bustness

- pipelines: use url2pathname for Windows file:// paths in _department_of
- pipelines: use atomic replace for image tiles.json and safely close mmap handles
- sources/local: standardize to RFC 8089 as_uri() format for file URLs
- config: deep merge nested sections in load_config, enforce utf-8, and support backslashes
- sources/web: specify utf-8 encoding for urls_file reading
- render: forward extract_text for local HTML files in pixelshot CLI
- sources/kiwix: cross-platform process termination fallback for Windows in _kill_proc
- chunk: fix Windows shard_dir trailing slash parsing, ensure PNG format in fast path, and use atomic write
- index: clamp nlist to vector count in build_faiss to prevent crash on small datasets
- web: safely handle malformed URI components in agent-server and chat route
- tests: unblock department build tests in core test suite and add regression tests
@vercel

vercel Bot commented Sep 23, 2026

Copy link
Copy Markdown

@smartworldarafath is attempting to deploy a commit to the andylizf's projects Team on Vercel.

A member of the Team first needs to authorize it.

@smartworldarafath

Copy link
Copy Markdown
Contributor Author

Hi maintainers, I've resolved cross-platform issues and edge-case bugs across config, sources, and pipelines, verified all tests and Ruff formatting locally. Ready for review when you have a moment!

ASuresh0524 and others added 2 commits September 27, 2026 01:31
# Conflicts:
#	tests/test_department_filter.py
The test passed a bare MagicMock to `_kill_proc`. A MagicMock's `.pid`
satisfies `__index__` as 1, so the POSIX branch executed

    os.killpg(os.getpgid(1), signal.SIGTERM)

for real. Under CI that group contains the runner: the Tests job died with
exit 143 ("the runner has received a shutdown signal") partway through this
file, twice, which reads as an unrelated infrastructure flake rather than a
test defect. Locally it looked green only because the resulting OSError was
swallowed by the `except (OSError, ProcessLookupError)` in `_kill_proc`.

Replaced with three tests that patch `os.getpgid`/`os.killpg` and assert on
them, covering the branches the original conflated:

- POSIX: the child's process group is signalled, with a real pid
- Windows (no `os.killpg`): falls back to `proc.terminate()`
- already exited (`poll()` returns a status): nothing is signalled at all

8 tests pass; ruff check and format clean.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@ASuresh0524
ASuresh0524 merged commit 6e087f8 into StarTrail-org:main Sep 27, 2026
4 of 5 checks passed
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