aind-metadata-mapper

v1.3.0 suspicious
4.0
Medium Risk

Package to manage mapping of source data into aind-data-schema metadata files.

🤖 AI Analysis

Final verdict: SUSPICIOUS

The package exhibits moderate risks due to potential insecure links and lack of associated GitHub repository, despite having legitimate credentials and no direct evidence of malicious activities.

  • non-secure links
  • no associated GitHub repository
Per-check LLM notes
  • Network: The presence of network calls suggests the package interacts with external services, which could be legitimate if documented and necessary for its functionality.
  • Shell: No shell execution patterns were detected, indicating there's no immediate risk from command execution.
  • Obfuscation: No obfuscation patterns detected, indicating low risk of malicious intent.
  • Credentials: No credential harvesting patterns detected, indicating safe handling of sensitive information.
  • Metadata: The package has some red flags including non-secure links and no associated GitHub repository, but the maintainer seems legitimate with only one package.

📦 Package Quality Overall: Low (4.4/10)

✦ High Test Suite 9.0

Test suite present — 7 test file(s) found

  • Test runner config found: pyproject.toml
  • 7 test file(s) detected (e.g. test_base.py)
◈ Medium Documentation 5.0

Some documentation present

  • Detailed PyPI description (10757 chars)
○ Low Contributing Guide 2.0

No contributing guide or governance files found

  • No CONTRIBUTING, CODE_OF_CONDUCT, or governance files found
◈ Medium Type Annotations 5.0

Partial type annotation coverage

  • 55 type-annotated function signatures detected in source
○ Low Multiple Contributors 1.0

Unable to verify contributor count: no GitHub repository found

  • No GitHub repository linked — contributor count unavailable

🔬 Heuristic Checks

Outbound Network Calls score 3.0

Found 2 network call pattern(s)

  • try: response = requests.get(url, timeout=timeout) if response.status_code ==
  • eplace else {} response = requests.post(base_url, json=source_dict, params=params) # POST 400 is
Code Obfuscation

No obfuscation patterns detected

Shell / Subprocess Execution

No shell execution patterns detected

Credential Harvesting

No credential harvesting patterns detected

Typosquatting

No typosquatting candidates detected

Registered Email Domain

No author email provided

Suspicious Page Links score 4.0

Found 2 suspicious link(s) on the package page

  • Non-HTTPS external link: http://aind-metadata-service
  • Non-HTTPS external link: http://aind-metadata-service`
Git Repository History

No GitHub repository linked

  • No GitHub repository link found
Maintainer History score 2.0

1 maintainer concern(s) found

  • Author "Allen Institute for Neural Dynamics" appears to have only 1 package on PyPI (new or inactive account)
Known CVE Vulnerabilities

No known vulnerabilities found in OSV database.

💡 AI App Starter Prompt

Use this prompt to build a project with aind-metadata-mapper
Create a Python-based mini-application called 'MetadataMapperTool' that leverages the 'aind-metadata-mapper' package to streamline the process of converting raw experimental data into standardized metadata files according to the aind-data-schema standard. This tool should be user-friendly and efficient, providing researchers and data managers with an easy way to ensure their datasets are compliant with industry standards.

The application should have the following core functionalities:
1. **Data Importation**: Users should be able to upload various types of raw data files (e.g., CSV, JSON, XML). The application must validate these files before proceeding.
2. **Mapping Configuration**: Implement a feature where users can define custom mapping rules between the fields in their raw data and the required fields in the aind-data-schema. This could include specifying transformations (like date formatting changes), filtering out irrelevant data, or merging multiple input files.
3. **Automatic Mapping Suggestions**: Utilize the 'aind-metadata-mapper' package to provide automatic suggestions for how fields in the raw data might map to the aind-data-schema. These suggestions should be based on field names, data types, and content.
4. **Metadata Generation**: Once the mapping is defined, the application should generate the corresponding metadata files in the aind-data-schema format. It should also allow for manual adjustments before finalizing.
5. **Validation and Reporting**: After generating the metadata files, the application should validate them against the aind-data-schema standard and provide a detailed report of any discrepancies or errors found.
6. **Export Options**: Finally, the application should offer options to export the validated metadata files in various formats (e.g., JSON, YAML) and provide instructions on how to use these files in further data processing pipelines.

Additional Features:
- A user interface (optional): Develop a simple GUI using libraries like PyQt or Tkinter to make the application more accessible to non-technical users.
- Batch Processing Capability: Allow users to submit multiple raw data files at once and process them in batches.
- Integration with Version Control Systems: Enable users to commit their mapping configurations and generated metadata files directly to a Git repository.
- Documentation: Provide comprehensive documentation and examples on how to use the tool effectively, including common mapping scenarios and troubleshooting tips.

In your development process, focus on utilizing the 'aind-metadata-mapper' package to its fullest potential, especially in the areas of automatic mapping suggestion and validation against the aind-data-schema. Ensure that your application is robust, scalable, and well-documented.

💬 Discussion Feed

Leave a comment

No discussion yet. Be the first to share your thoughts!