Skip to content

Commit 2fb8c95

Browse files
committed
Sync python snapshot a1aa75f
1 parent a89a009 commit 2fb8c95

37 files changed

Lines changed: 2374 additions & 47 deletions
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Benchmark Case
2+
description: Propose a benchmark, regression case, or evaluation scenario.
3+
labels: [benchmark]
4+
body:
5+
- type: textarea
6+
id: scenario
7+
attributes:
8+
label: Scenario
9+
description: What behavior should the benchmark measure?
10+
validations:
11+
required: true
12+
- type: textarea
13+
id: expected
14+
attributes:
15+
label: Expected signal
16+
description: What would a good result demonstrate?
17+
validations:
18+
required: true
19+
- type: textarea
20+
id: data
21+
attributes:
22+
label: Dataset or fixture
23+
description: Link or describe the data needed to reproduce the case.
24+
- type: textarea
25+
id: notes
26+
attributes:
27+
label: Notes
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: Bug Report
2+
description: Report a reproducible bug in the AtomicMemory Python SDK.
3+
labels: [bug]
4+
body:
5+
- type: textarea
6+
id: description
7+
attributes:
8+
label: Description
9+
description: What happened, and what did you expect instead?
10+
validations:
11+
required: true
12+
- type: textarea
13+
id: reproduce
14+
attributes:
15+
label: Steps to reproduce
16+
description: Include a minimal code sample or repository when possible.
17+
placeholder: |
18+
1. Install package version ...
19+
2. Configure provider ...
20+
3. Run ...
21+
validations:
22+
required: true
23+
- type: input
24+
id: version
25+
attributes:
26+
label: Package version
27+
placeholder: "atomicmemory==..."
28+
- type: input
29+
id: python-version
30+
attributes:
31+
label: Python version
32+
placeholder: "3.10, 3.11, 3.12, or 3.13"
33+
validations:
34+
required: true
35+
- type: textarea
36+
id: logs
37+
attributes:
38+
label: Relevant logs or errors
39+
render: shell

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
blank_issues_enabled: true
2+
contact_links:
3+
- name: Documentation
4+
url: https://docs.atomicmemory.ai
5+
about: Read the AtomicMemory docs and quickstarts.
6+
- name: Discussions
7+
url: https://github.com/atomicstrata/atomicmemory-python/discussions
8+
about: Ask questions, share ideas, and discuss roadmap items.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: Docs Issue
2+
description: Report missing, unclear, or incorrect documentation.
3+
labels: [docs]
4+
body:
5+
- type: input
6+
id: page
7+
attributes:
8+
label: Page or file
9+
placeholder: "README.md, docs URL, API section, etc."
10+
validations:
11+
required: true
12+
- type: textarea
13+
id: issue
14+
attributes:
15+
label: What is wrong or missing?
16+
validations:
17+
required: true
18+
- type: textarea
19+
id: suggestion
20+
attributes:
21+
label: Suggested fix
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Feature Request
2+
description: Suggest a Python SDK capability or improvement.
3+
labels: [enhancement]
4+
body:
5+
- type: textarea
6+
id: problem
7+
attributes:
8+
label: Problem
9+
description: What user or developer problem should this solve?
10+
validations:
11+
required: true
12+
- type: textarea
13+
id: proposal
14+
attributes:
15+
label: Proposed solution
16+
description: Describe the Python API or behavior you want.
17+
validations:
18+
required: true
19+
- type: textarea
20+
id: alternatives
21+
attributes:
22+
label: Alternatives considered
23+
- type: dropdown
24+
id: area
25+
attributes:
26+
label: Area
27+
options:
28+
- Memory client
29+
- Provider contract
30+
- Storage
31+
- Local search
32+
- Async client
33+
- Documentation
34+
- Not sure
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Provider Request
2+
description: Request support for a memory, embedding, LLM, storage, or reranking provider.
3+
labels: [provider]
4+
body:
5+
- type: input
6+
id: provider
7+
attributes:
8+
label: Provider name
9+
placeholder: "Provider or service name"
10+
validations:
11+
required: true
12+
- type: dropdown
13+
id: provider-type
14+
attributes:
15+
label: Provider type
16+
options:
17+
- Memory backend
18+
- Embedding model
19+
- LLM
20+
- Reranker
21+
- Storage
22+
- Other
23+
validations:
24+
required: true
25+
- type: textarea
26+
id: use-case
27+
attributes:
28+
label: Use case
29+
description: What workflow would this provider enable?
30+
validations:
31+
required: true
32+
- type: textarea
33+
id: references
34+
attributes:
35+
label: API docs or references

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
## Summary
2+
3+
<!-- What changed and why? -->
4+
5+
## Validation
6+
7+
- [ ] Tests were run or the reason they were not run is documented.
8+
- [ ] Typecheck/build were run when code or package output changed.
9+
- [ ] Docs were updated or no docs changes are needed.
10+
- [ ] Benchmark or performance impact was considered.
11+
12+
## Change Type
13+
14+
- [ ] Bug fix
15+
- [ ] Feature
16+
- [ ] Provider change
17+
- [ ] Refactoring (no behavior change)
18+
- [ ] Documentation
19+
- [ ] Tests / benchmarks
20+
- [ ] Chore / maintenance
21+
22+
## Breaking Changes
23+
24+
- [ ] No breaking changes
25+
- [ ] Breaking changes are documented below
26+
27+
<!-- Describe migration impact if applicable. -->

CHANGELOG.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,19 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66

77
## [Unreleased]
88

9+
## [1.0.1] - 2026-05-14
10+
11+
### Changed
12+
- Version bump for public package publication after internal-to-public repository sync.
13+
914
## [1.0.0]
1015

1116
Initial public stable release.
1217

1318
### Added
1419
- `AtomicMemoryClient` and `AsyncAtomicMemoryClient` as the primary public client surfaces.
1520
- Memory ingestion, search, package, get, list, and delete support.
16-
- AtomicMemory and Mem0 provider adapters.
21+
- AtomicMemory, Mem0, and Hindsight provider adapters.
1722
- Typed AtomicMemory namespace handles for lifecycle, audit, lessons, agents, and runtime config.
1823
- Direct artifact storage client with pointer and managed artifact workflows.
1924
- Local embedding, semantic search, and KV cache helpers.

CODE_OF_CONDUCT.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
We as members, contributors, and leaders pledge to make participation in our
6+
community a harassment-free experience for everyone, regardless of age, body
7+
size, visible or invisible disability, ethnicity, sex characteristics, gender
8+
identity and expression, level of experience, education, socio-economic status,
9+
nationality, personal appearance, race, caste, color, religion, or sexual
10+
identity and orientation.
11+
12+
## Our Standards
13+
14+
Examples of behavior that contributes to a positive environment:
15+
16+
- Using welcoming and inclusive language
17+
- Being respectful of differing viewpoints and experiences
18+
- Gracefully accepting constructive criticism
19+
- Focusing on what is best for the community
20+
- Showing empathy towards other community members
21+
22+
Examples of unacceptable behavior:
23+
24+
- The use of sexualized language or imagery, and sexual attention or advances of any kind
25+
- Trolling, insulting or derogatory comments, and personal or political attacks
26+
- Public or private harassment
27+
- Publishing others' private information without explicit permission
28+
- Other conduct which could reasonably be considered inappropriate in a professional setting
29+
30+
## Enforcement
31+
32+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
33+
reported to the project maintainers at **support@atomicstrata.ai**. All complaints
34+
will be reviewed and investigated promptly and fairly.
35+
36+
## Attribution
37+
38+
This Code of Conduct is adapted from the
39+
[Contributor Covenant](https://www.contributor-covenant.org/), version 2.1.

CONTRIBUTING.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# Contributing to atomicmemory-python
2+
3+
Thank you for helping improve the AtomicMemory Python SDK. This package mirrors
4+
the public surface of the TypeScript SDK while using Python-native conventions,
5+
typed Pydantic models, and `httpx` clients.
6+
7+
## Setup
8+
9+
Use `uv` for package management:
10+
11+
```bash
12+
uv sync --extra dev --extra embeddings
13+
```
14+
15+
Do not use `uv pip install` for repository setup.
16+
17+
## Development Checks
18+
19+
Run these before opening a pull request:
20+
21+
```bash
22+
uv sync
23+
uv run ruff check .
24+
uv run ruff format --check .
25+
uv run mypy atomicmemory --strict
26+
uv run vulture atomicmemory tests .vulture_whitelist.py --min-confidence 90
27+
uv run pytest
28+
```
29+
30+
Integration tests are opt-in and require a live provider backend:
31+
32+
```bash
33+
uv run pytest -m integration
34+
```
35+
36+
## Branch Conventions
37+
38+
- `feat/<name>` for new features
39+
- `fix/<name>` for bug fixes
40+
- `docs/<name>` for documentation-only changes
41+
- `chore/<name>` for tooling, dependency, and maintenance work
42+
43+
## Pull Request Checklist
44+
45+
- Tests or a clear validation note are included.
46+
- Public behavior changes are documented in `README.md` or examples.
47+
- Provider-specific behavior stays aligned with the TypeScript SDK contract.
48+
- New code keeps files under 400 lines and functions under 40 lines, excluding comments and docstrings.
49+
- No secrets, local credentials, or environment-specific values are committed.
50+
51+
## License
52+
53+
By contributing, you agree that your contributions will be licensed under the
54+
same license as this repository. See [LICENSE](LICENSE).

0 commit comments

Comments
 (0)