📄 Add structured AGENTS.md with nested module guides - #373
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
casenave
left a comment
There was a problem hiding this comment.
There is still mention of the large Dataset class, but we're on the verge to remove it. Could it be safer top wait for V1 ? There is a ProtoV1 branch where current work towards V1 is beeing done by Felipe. I think it would be better to adapt the agents to the V1 and merge it there instead of having obsololete references here and having to modify them later
|
Bien vu. En effet, si le Dataset est en cours de refonte dans la branche ProtoV1, on peut :
Je pencherais pour l'option 2 : merger maintenant avec une version allégée (sans référence à la taille de Dataset ni au warning "god class"), puis faire un second pass post-V1 pour adapter les AGENTS.md à la nouvelle architecture. Qu'en penses-tu ? |
ok pour option 2 |
|
Apologies for the previous comment in French -- switching to English as per repo convention. Regarding the Dataset class mention: two options:
I lean towards option 1 to avoid blocking on V1 timeline. The containers AGENTS.md can be updated in a follow-up once the ProtoV1 architecture stabilizes. What do you prefer? |
ok for option 1, Xavier-bot |
8298dfd to
406bf21
Compare
f2ade34 to
2294af1
Compare
|
Added an "Efficiency and minimalism" section to It distills token-reduction / minimalism conventions from internal reference repos into rules for coding agents working on plaid:
Note: this also fixed the branch after a previous bad push that had overwritten |
Mise à jour : corrections factuelles avant mergeJ'ai poussé un commit (
Non modifié (à dessein) : l'accord sur le retrait de la mention « god class »/taille de Dette de code adjacente (hors PR, à traiter côté code) : La PR me semble mergeable après cette passe. |
Add a comprehensive root AGENTS.md following modeles_d_agents best practices, plus nested AGENTS.md files for the containers and storage modules.
…nd confidentiality section - Remove all mentions of scimm and maestro (private repos) from public-facing content - Add confidentiality section warning agents not to mention private repos - Add PR title emoji rules from .github/pull_request_template.md - Add PR checklist reference
Sync the root, containers and storage AGENTS.md with the post-V1 repo: - root: fix project tree (drop removed bridges/pipelines/post/examples, add cli/types/viewer/downloadable_examples), fix Core abstractions table (Dataset/Features/FeatureIdentifier removed -> Sample/Infos/ProblemDefinition), doc tooling Sphinx -> Zensical, build command -> docs/generate_doc.sh - containers: Dataset/Features/FeatureIdentifier no longer exist; document Sample (pydantic BaseModel), DefaultManager and utils helpers - storage: add backend_api.py (BackendModule Protocol) and the BACKENDS registry
Distill the ponytail (minimal code, YAGNI ladder, deletion over addition) and caveman (terse communication, why over what) agent conventions into a PLAID-adapted ruleset. Includes explicit "never simplify away" guards for backward compatibility, API stability, validation, and data integrity.
…id-check, utils/, ruff ignores)
…, plaid-serve/viewer CLIs)
7a2040f to
9c5be0f
Compare
|
probe seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it. |
Review: coverage of nested guidesI audited the nested Coverage is partial, though. Two sizeable packages remain undocumented:
Suggested priority: 1) The remaining absences are justified: |
| > Note: the v1.0.0 reorganization removed the `Dataset`, `Features` and | ||
| > `FeatureIdentifier` classes. A collection of samples is now read/written through the | ||
| > `storage` layer rather than a dedicated `Dataset` class. See `docs/source/upgrade_guide.md`. |
There was a problem hiding this comment.
Not sure that keeping mentions to old classes is usefull
| - Backends must be **stateless** -- all configuration is passed through function parameters. | ||
| - Read/write operations must preserve **data integrity** exactly (no lossy conversions without explicit user consent). | ||
| - The `common/` interfaces are the **contract** -- do not add backend-specific parameters to the public API without updating the contract first. | ||
| - `zarr` is the primary backend and the most feature-complete. Use it as the reference when implementing others. |
There was a problem hiding this comment.
I don't think that zarr is the primary backend, but we can still use it as a reference.
| ## Adding a new backend | ||
|
|
||
| 1. Create a new subdirectory under `storage/` (e.g., `storage/my_format/`). | ||
| 2. Implement a backend class conforming to the `BackendModule` Protocol | ||
| (`backend_api.py`), with its `reader.py` and `writer.py` following the interfaces in `common/`. | ||
| 3. Register the new backend by adding it to the `BACKENDS` dict in `registry.py`. | ||
| 4. Add round-trip tests (write then read) to verify data integrity. |
There was a problem hiding this comment.
That will never be used, I think we can remove this section
| > Note: the v1.0.0 reorganization removed the top-level `Dataset` re-export and the | ||
| > `bridges/`, `pipelines/` and `post/` source packages under `src/plaid/`. Data is now | ||
| > handled through `Sample` objects and the `storage` layer. (The top-level `examples/` | ||
| > directory still exists — it holds usage scripts, not an importable package.) | ||
| > See `docs/source/upgrade_guide.md`. |
There was a problem hiding this comment.
note sure that this context is usefull for the agents
casenave
left a comment
There was a problem hiding this comment.
Some minimal remarks, thanks !
Summary
Add a comprehensive
AGENTS.mdwith nested guides for key modules, aligned with the v1.0.0 data model.Changes
Root
AGENTS.mdpyplaid), downstream impact# NOTE(shortcut):marker conventionSample,Infos,ProblemDefinition), storage patternNested
src/plaid/containers/AGENTS.mdSample(pydanticBaseModel, the main data container) andDefaultManagerDataset,FeaturesandFeatureIdentifier— a collection of samples is now read/written through thestoragelayer (seedocs/source/upgrade_guide.md)Nested
src/plaid/storage/AGENTS.mdNotes
main(post v1.0.0); the body above reflects the files as they are on the branch, not the pre-v1 draft.