Repository navigation
AI usage policy
This policy concerns contributions to SPECFEM packages that involved the usage of AI.
AI systems are development tools and are not authors, maintainers, reviewers, or scientific authorities. The human contributor submitting a change is responsible for its correctness, scientific validity, reproducibility, security, licensing, performance, and long-term maintainability.
AI-generated material must be reviewed and understood by a human before it is incorporated into the project.
AI-generated code must not be assumed to be scientifically or numerically correct because it compiles or passes existing tests.
Changes affecting mathematical formulations, physical models, numerical methods, discretization, stability, boundary conditions, precision, or parallel numerical behavior require scientific validation appropriate to the change. Where applicable, validation should include analytical solutions, manufactured solutions, convergence studies, independent reference implementations, regression tests, or other appropriate evidence.
AI-generated scientific references, equations, algorithms, and claims must be independently verified against authoritative sources.
AI-generated tests are subject to the same review requirements as AI-generated production code. Tests generated from the same reasoning as the implementation should not be considered independent evidence of correctness.
All contributions remain subject to the project's normal testing, review, and validation requirements. AI assistance does not justify weakening tests, numerical tolerances, compiler checks, performance requirements, or other acceptance criteria.
AI systems may assist with code review but may not be the sole reviewer or approver of a contribution.
Human review remains mandatory. For scientifically significant changes, review by a person with appropriate scientific or numerical expertise should be obtained.
Contributors remain responsible for ensuring that AI-assisted code complies with the project's license and contribution requirements. AI systems must not be used to intentionally reproduce proprietary or third-party code without appropriate authorization and licensing.
Where the provenance of generated code is uncertain, the contributor must investigate it before submission.
Contributions must not contain confidential, proprietary, or otherwise restricted material that is not intended for public release. This includes private research data, non-public source code, and material subject to institutional, collaboration, or publication restrictions.
Contributors are responsible for ensuring that any material incorporated into a contribution can legally and appropriately be made public. The use of AI or other development tools does not change these requirements.
Routine AI assistance such as code completion, spelling correction, or minor documentation assistance normally does not require disclosure.
Substantial AI involvement should be disclosed in the pull request. This includes substantial code generation, major refactoring, development of numerical algorithms, scientific formulation, performance-critical changes, or autonomous/agentic development.
The disclosure should identify the nature of the AI assistance and, where relevant, the AI tool used.
AI systems must not be listed as authors or co-authors.
AI-assisted code must conform to the project's coding, architectural, documentation, testing, and maintenance standards.
The project must remain understandable and maintainable without access to the AI system that produced the code. No essential knowledge about the implementation may exist only in an AI interaction.
Autonomous or agentic AI systems may be used only within explicitly defined permissions.
Agents must not independently merge changes into protected branches or publish releases. Permissions should follow the principle of least privilege.
Agents must not modify tests, validation criteria, numerical tolerances, CI configuration, or other safeguards merely to make their own changes pass.
All agent-generated changes remain subject to the same human review and scientific validation requirements as manually generated changes.
This policy applies independently of the particular AI technology used, including IDE assistants, chat-based systems, APIs, locally hosted models, autonomous coding agents, repository agents, and future AI development systems.
The SPECFEM project may impose additional restrictions on AI use where required by scientific, security, licensing, or maintenance considerations.
Development wiki for SPECFEM3D Cartesian
Development wiki
- Home
- Development plan
- Best Practices
- AI usage policy
- Using Git for SPECFEM
- Advanced Git Topics
- Versioning Conventions
- Merging Development Branches into Master
User manual
- 01_introduction
- 02_getting_started
- 03_mesh_generation
- 04_creating_databases
- 05_running_the_solver
- 06_fault_sources
- 07_adjoint_simulations
- 08_doing_tomography
- 08b_performing_full_waveform_inversion_FWI_or_source_inversions
- 09_noise_simulations
- 10_gravity_calculations
- 11_graphics
- 12_running_scheduler
- 13_changing_the_model
- 14_post_processing
- 15_informations_for_developers
- A_reference_frame
- B_channel_codes
- C_troubleshooting
- D_license
- authors
- bug_reports
- copyright_and_version
- features
- manual_SPECFEM3D_Cartesian
- notes_and_acknowledgement
- sponsors