Purpose
-------
Provide shared fixtures for ``oct.core`` tests, in particular the git
integration tests in ``test_git.py`` (Phase 4A / G-A6).
Responsibilities
----------------
- ``git_repo``: initialise a real git repository in a pytest tmp_path
and return its resolved path. Skips the test if the ``git`` binary is
not available on the host.
- ``can_symlink``: cached session-scoped probe that determines whether
the platform allows creating symlinks in a temp directory (Linux/
macOS always, Windows only with Developer Mode or admin).
Diagnostics
-----------
Domain: CORE-TESTS
Levels:
L2 — fixture lifecycle
L3 — fixture setup details
L4 — deep tracing
Contracts
---------
- ``git_repo`` always returns a directory that is a real git working
tree with ``user.name`` / ``user.email`` pre-configured so that
commit operations in tests do not fail on unconfigured identity.
- ``can_symlink`` must never raise; it returns ``True`` or ``False``.